OpenStack基础运维命令

Keystone 服务运维

1)创建用户

创建一个名称为alice账户,密码为mypassword123,邮 箱为[email protected]

命令如下。

[root@controller ~]# source /etc/keystone/admin-openrc.sh

[root@controller ~]# openstack user create --password mypassword123 --email  [email protected] --domain demo alice

从上面的操作可以看出,创建用户需要用户名称、密码和邮件等信息。具体格式如下:

$ openstack user create [--domain <domain>]

                                       [--password <password>]

                                       [--email <email-address>]

                                       [--enable | --disable]

                                       <name>

其中,参数<name>代表新建用户名。

2)创建项目

创建一个名为acme项目。

[root@controller ~]# openstack project create --domain demo acme

从上面操作可以看出,创建项目需要项目名等相关信息。具体操作格式如下:

$ openstack project create [--domain <domain>]

                                          [--description <description>]

                                          [--enable | --disable]

                                         <project-name>

其中,参数<project-name>代表新建项目名,参数 <description>代表项目描述名。

3)创建角色

角色限定了用户的操作权限。例如,创建一个角色compute-user

[root@controller ~]# openstack role create compute-user

从上面操作可以看出,创建角色需要角色名称信息。具体命令格式如下。

$ openstack user create <name>

其中参<name>代表角色名称。

4)绑定用户和项目权限

添加的用户需要分配一定的权限,这就需要把用户关联绑定到对应的项目和角色。例如,

给用户alice分配acme项目下的compute-user角色,命令如下。

[root@controller ~]# openstack role add --user alice --project acme compute-user

从上面操作可以看出,绑定用户权限需要用户名称、角色名称和项目名称等信息。具体

命令格式如下。

$ openstack role add --user <user> --project <project> <role>

其中,参数 <user>代表需要绑定的用户名称,参数<role>代表用户绑定的角色名称,参数<project>代表用户绑定的项目名称。

Keystone 基础查询命令

1)用户列表查询

OpenStack 平台所使用的用户可以通过 Keystone 组件进行查询。查询当前所有用户列表

信息,命令如下:

[root@controller ~]# openstack user list

可以通过命令查询到具体用户的详细信息,可以查看到用户当前的状态,命令如下:

[root@controller ~]# openstack user show alice

(2)项目列表查询

通过命令,可以查询所创建的项目acme,也可以查询当前 OpenStack 平台中所有存

在项目列表,命令如下:

[root@controller ~]# openstack project list

通过命令可以查询acme项目的详细信息内容,命令如下。

[root@controller ~]# openstack project show acme

3)角色列表查询

通过命令查询创建的角色compute-user,通过 Keystone 组件查询角色列表信息,命

令如下:

[root@controller ~]# openstack role list

通过命令查询compute-user角色的详细信息,命令如下:

[root@controller ~]# openstack role show compute-user

(4)端点地址查询

Keystone 组件管理 OpenStack 平台中所有服务端点信息,通过命令可以查询平台中所有

服务所使用的端点地址信息,命令如下:

[root@controller ~]# openstack endpoint list

 

Glance 服务运维

 Glance 管理镜像

1)创建镜像

创建一个名称为cirros镜像,镜像文件使用提供的cirros-0.3.4-x86_64-disk.img

命令如下:

[root@controller ~]# glance image-create --name "cirros" --disk-format qcow2

--container-format bare --progress < cirros-0.3.4-x86_64-disk.img

2)查看镜像列表

查询镜像列表命令及结果如下所示。

[root@controller ~]# glance image-list

 

Glance 镜像运维

1)查看镜像详情

通过 glance image-show 命令查看镜像的详细信息(id 参数可以是对应镜像 id 或者镜像

名称),如下所示:

# glance image-show  镜像id

2)更改镜像

可以使用 glance image-update 更新镜像信息,使用 glance image-delete 删除镜像信息。

如果需要改变镜像启动硬盘最低要求值(min-disk)时 min-disk 默认单位为 G。使用 glance

image-update 命令更新镜像信息操作如下。

#glance image-update --min-disk=1 镜像ID

3)删除镜像

通过命令删除镜像 cirros 操作和执行结果如下所示。

[root@controller ~]# glance image-delete 镜像ID

[root@controller ~]# glance image-list

 

Nova 服务运维

1Nova 管理安全组规则

创建一个名为 test 的安全组,描述为'test the nova command about the rules',命令及执行

结果如下所示:

# nova secgroup-create test 'test the nova command about the rules'

2Nova 管理虚拟机类型

使用命令创建一个名为 testID 6,内存为 2048 MB,磁盘为 20 GBvCPU 数量为

2 的云主机类型。具体命令及执行结果如下所示。

# nova flavor-create test 6 2048 20 2

查看 test 云主机类型的详细信息如下所示:

# nova flavor-show test

 

Nova 实例管理

1)启动实例

格式:

nova boot [--flavor <flavor>] [--image <image>]

[--image-with <key=value>] [--boot-volume <volume_id>]

[--snapshot <snapshot_id>] [--min-count <number>]
[--max-count <number>] [--meta <key=value>]
[--file <dst-path=src-path>] [--key-name <key-name>]
[--user-data <user-data>]
[--availability-zone <availability-zone>]
[--security-groups <security-groups>]
[--block-device-mapping <dev-name=mapping>]
[--block-device key1=value1[,key2=value2...]]
[--swap <swap_size>]
[--ephemeral size=<size>[,format=<format>]]
[--hint <key=value>]
[--nic
<net-id=net-uuid,net-name=network-name,v4-fixed-ip=ip-addr,v6-fixed-ip=ip-addr,port-id=port-
uuid>]
[--config-drive <value>] [--poll] [--admin-pass <value>]
[--access-ip-v4 <value>] [--access-ip-v6 <value>]
[--description <description>]
<name>

固定参数。

<name>:实例名称

可选参数。

[--flavor <flavor>]:虚拟机类型。

[--image <image>]:选用的镜像。

[--image-with <key=value>] :镜像的元数据属性。

[--boot-volume <volume_id>:启动逻辑卷的 ID

[--snapshot <snapshot_id>] 快照

[--num-instances <number>] 实例数量

[--meta <key=value>] 元数据

[--file <dst-path=src-path>] 文件

[--key-name <key-name>] 密钥名称

[--user-data <user-data>] 注入的用户数据

[--availability-zone <availability-zone>] 可用域

[--security-groups <security-groups>] 安全组

[--block-device-mapping <dev-name=mapping>] 块存储格式化

[--block-device key1=value1[key2=value2...]] 块设备参数

[--swap <swap_size>] 交换分区大小

[--ephemeral size=<size>[format=<format>]] 连接块存储大小

[--hint <key=value>] 自定义数据

[--nic ] 配置 IP

[--config-drive <value>] 驱动使能

[--poll] 显示创建进度

 

2)删除实例

# nova delete

格式:

 nova delete [--all-tenants] <server> [<server> ...]

Immediately shut down and delete specified server(s).

Positional arguments:

<server> Name or ID of server(s).

Optional arguments:

--all-tenants Delete server(s) in another tenant by name (Admin only).

 

Neutron 服务运维

1.Neutron 查询

使用 Neutron 相关命令查询网络服务的列表信息中的binary一列,代码如下所示。

[root@xiandian ~]# neutron agent-list -c binary

2.查询网络详情

查询网络详细信息的命令和执行结果如下。

[root@xiandian ~]# neutron net-list

3.查询 Neutron 相关组件服务

[root@xiandian ~]# neutron agent-list

 

Cinder 服务运维

1.创建云硬盘

创建一个 2 GB 的云硬盘 extend-demo,命令如下。

# cinder create --name cinder-volume-demo 2

通过 cinder-list 命令查看云硬盘信息。

# cinder list

2.创建云硬盘卷类型

创建 type 标识的卷类型。

可以通过 cinder type-create 命令来创建卷类型,创建了一个名为“lvm”的卷类型。

# cinder type-create lvm

可以通过 cinder type-list 命令来查看现有的卷类型。

# cinder type-list

3.创建带标识云硬盘

下面以 type 标识为例,创建一块带“lvm”标识的云硬盘,命令如下

# cinder create --name type_test_demo --volume-type lvm 1

创建成功后可以通过命令查看结果,可以看到该卷的 volume_type 字段已修改为“lvm”,查询命令如下

# cinder show type_test_demo

删除指定的 Cinder 卷,删除 Cinder 卷的方法比较简单,用户可以通过命令“cinder delete

<volume> [<volume> ...]”来删除一个或多个 Cinder 卷,删除命令如下所示。

# cinder delete cinder-volume-demo

 

Swift 服务运维

1. Swift 查询命令

1)创建容器

通过命令行实现对 Swift 上数据的操作,首先需要创建一个名称为“test”的容器,命

令如下。

# swift post test

(2)查询容器

查看“test”容器里面的内容,命令如下

# swift list test

通过显示结果可以看出目前“test”容器里面的内容是空的,这时用户希望将本地的 file

目录内容递归上传到“test”容器内。首先创建 file 目录,并同时新建 3 个文件 one.txttwo.doc

three.png。具体命令如下:

# mkdir file

# touch one.txt

# touch two.doc

# touch three.png

2.Swift 上传和下载

1)上传文件至容器

上传时首先需要上传一个空白的“file”目录,命令如下。

# swift upload test file/

one.txt 文件上传到“test”容器内 file 目录内,命令和执行结果如下:

# swift upload test/file one.txt

换一种方式将剩下的 two.doc three.png 递归上传到“test”容器下的 file 目录内,命

令和执行结果如下:

# mv two.doc three.png file/

# swift upload test file/

file/three.png

file/two.doc

2)从容器中下载文件

数据在 Swift 集群内保存,随时供用户下载使用,现在下载 three.png 文件,命令和执行

结果如下:

# swift download test file/three.png

3)从容器中删除文件

目前磁盘容量有限,需要删除一些相对价值低的数据,空出更多的空间。这时已经将

three.png 下载到本地,所以暂时将 three.png 从对象存储服务器中删除,命令和执行结果如

下:

# swift delete test file/three.png

4)查看容器服务状态

用户还可以通过 swift stat 命令来查看整个 Account 账户下 Swift 状态,命令和执行结果

如下:

# swift stat

发布了18 篇原创文章 · 获赞 0 · 访问量 458

猜你喜欢

转载自blog.csdn.net/weixin_45678149/article/details/104589990
今日推荐