【收藏级】88条关于OpenStack命令的手册(常看常新)

文章目录

  • 前言
  • 一、openstack客户端命令
      • 1.1、openstack命令
      • 1.2、openstack-service命令
      • 1.3、openstack-status命令
      • 1.4、openstack-config命令
  • 二、Keystone(认证)
      • 2.1、创建用户、给用户赋予权限、创建实体服务
      • 2.2、创建端点endpoint:
      • 2.3、列出所有的用户
      • 2.4、查看某个用户详细信息
      • 2.5、列出认证服务目录
      • 2.6、列出所有的端点地址
      • 2.7、生成令牌并验证keystone
  • 三、glance(镜像)
      • 3.1、上传镜像
      • 3.2、更新镜像
      • 3.3、列出所有镜像
      • 3.4、查看镜像的详细信息
      • 3.5、删除镜像
  • 四、neutron(网络 )
      • 4.1、Network
        • 4.1.1、创建外部网络
        • 4.1.2、创建内部网络
        • 4.1.3、创建外部网络子网
        • 4.1.4、创建外部网络子网
        • 4.1.5、列出所有网络
        • 4.1.6、查看网络详细信息
        • 4.1.7、删除网络
      • 4.2、Route
        • 4.2.1、创建路由
        • 4.2.2、设置路由器属性
        • 4.2.3、添加内网到路由
        • 4.2.4、列出所有路由
        • 4.2.5、查看路由详细信息
        • 4.2.6、删除路由
  • 五、nova(计算)
      • 5.1、Flavor
        • 5.1.1、创建flavor类型
        • 5.1.2、列出所有flavor类型
        • 5.1.3、查看flavor详细信息
      • 5.2、安全组
        • 5.2.1、列出安全组
        • 5.2.2、查看安全组中的安全规则
        • 5.2.3、查看规则的详细信息
        • 5.2.4、创建安全组
        • 5.2.5、删除访问安全组
        • 5.2.6、在安全组中添加策略
      • 5.3、操作云主机
        • 5.3.1、创建云主机
        • 5.3.2、列出实例,实例状态
        • 5.3.3、查看云主机的控制台日志
        • 5.3.4、显示云主机的远程控制台 URL
        • 5.3.5、重启
        • 5.3.6、关机
        • 5.3.7、启动
        • 5.3.8、暂停
        • 5.3.9、挂起
        • 5.3.10、取消挂起
        • 5.3.11、重建
        • 5.3.12、创建快照
        • 5.3.13、下载快照
        • 5.3.14、调整大小
        • 5.3.15、云主机挂载云硬盘
        • 5.3.16、创建秘钥对
  • 六、cinder(块存储)
        • 6.1、创建卷lvm类型
        • 6.2、创建一个新卷
        • 6.3、列出所有卷,卷状态
        • 6.4、将卷连接到实例
        • 6.5、扩展卷
  • 七、Swift(对象存储)
        • 7.1、创建容器
        • 7.2、列出容器
        • 7.3、查看容器详情
        • 7.4、创建对象、上传对象
        • 7.5、列出容器中的对象
        • 7.6、查看对象详情
        • 7.7、下载对象
        • 7.8、删除对象
        • 7.9、删除空容器
        • 7.10、递归删除容器
        • 7.11、swift分片存储
        • 7.12、查看服务、容器以及对象的状态信息
  • 八、Heat(编排)
        • 8.1、编排创建cinder
        • 8.2、编排创建swift
        • 8.3、编排创建network和subnet
        • 8.4、编排创建flavor
        • 8.5、编排创建server
        • 8.6、编排创建user
        • 8.7、列出所有堆栈
        • 8.8、列出堆栈详情
        • 8.9、删除堆栈
  • 九、Manila(共享文件系统)
        • 9.1、创建禁用 DHSS 的默认共享类型
        • 9.2、列出共享类型
        • 9.3、创建共享目录
        • 9.4、列出共享目录
        • 9.5、查看共享目录详情
        • 9.6、允许访问共享目录
        • 9.7、查看共享目录权限及开放网段
        • 9.8、挂载共享目录
  • 参考资料
  • 最后

前言

在这里插入图片描述

大家好,我是无名小歌。

按照目录查询相关命令、 按照目录查询相关命令 、 按照目录查询相关命令
(常看常新)(常看常新)(常看常新)


相信大家都有过这样的经历哈,就是我们在操作OpenStack时,一般为了操作方便都会使用Dashboard web可视化界面上对OpenStack进行操作,如:创建用户、镜像、网络、云主机、云主机类型等等。

这里有个问题哈,这会导致我们对命令行操作命令大量失忆,在我们必须或想要使用命令操作时发现很多都已经没有多少印象了。所以在这里我罗列了80条相对比较常用的命令,方便大家查看,查看时多看目录结构找到自己所需要的区域。帮助大家快速查找,从而节约时间成本。

如果对你有帮助,还望赏个关注鸭!!!
欢迎大家加入云社区,一起学习云计算,走向年薪50万。

按照目录查询相关命令、 按照目录查询相关命令、 按照目录查询相关命令
(常看常新)(常看常新)(常看常新)


一、openstack客户端命令

1.1、openstack命令

  • OpenStack API 的命令行界面

注意:这个命令特别重要,集成了所有组件的命令(它可以使用所有组件的命令)

语法格式: openstack [参数] [Commands]

常用参数: --version

参考实例:

查看OpenStack版本

[root@controller ~]# openstack --version
openstack 4.0.1

PS:

openstack版本是按26个字母表中的顺序排序的。

比如:A是第一个版本,B是第二个版本,C是第三个版本,往后依次类推。


上面查看的版本是4.0.1,我们需要到官网上比对这个数字版本是以什么字母版本表示的。

查看OpenStack版本地址:https://releases.openstack.org/


这里以T版为例:

【收藏级】88条关于OpenStack命令的手册(常看常新)_第1张图片


我们搜索找到python-openstackclient字段,可以看到T版所发布的以数字表示的版本。只要在这区间内都是T版,最新版为4.0.2。

【收藏级】88条关于OpenStack命令的手册(常看常新)_第2张图片

1.2、openstack-service命令

  • 控制启用的openstack服务

语法格式: openstack-service [service]

常用参数:

参考实例:

查看、重启、停止、启动所有openstack组件的服务

[root@controller ~]# openstack-service status
[root@controller ~]# openstack-service restart
[root@controller ~]# openstack-service stop
[root@controller ~]# openstack-service start

查看、重启、停止、启动某个组件的服务(这里以glance为例)

[root@controller ~]# openstack-service status glance
[root@controller ~]# openstack-service restart glance
[root@controller ~]# openstack-service stop glance
[root@controller ~]# openstack-service start glance

PS:

不建议使用stop停止命令

1.3、openstack-status命令

  • 显示已安装 OpenStack 服务的状态概览

语法格式: openstack-status

常用参数:

参考实例:

查看所有组件状态

[root@controller ~]# openstack-status
== Nova services ==
openstack-nova-api:                     active
openstack-nova-compute:                 inactive  (disabled on boot)
openstack-nova-network:                 inactive  (disabled on boot)
openstack-nova-scheduler:               active
openstack-nova-conductor:               active
...
...

1.4、openstack-config命令

  • 用于操作对ini文件的应用程序,可以对ini文件增删改查。

语法格式: openstack-config --set [OPTION] config_file section [param] [value]

常用参数: --set、–get

参考实例:

修改/etc/nova/nova.conf配置文件,DEFAULT区域下enabled_apis的值为osapi_compute,metadata。

[root@controller ~]# openstack-config --set  /etc/nova/nova.conf DEFAULT enabled_apis osapi_compute,metadata

查看/etc/nova/nova.conf配置文件,DEFAULT区域下enabled_apis的值为是什么。

[root@controller ~]#  openstack-config --get  /etc/nova/nova.conf DEFAULT enabled_apis
osapi_compute,metadata

在这里插入图片描述

二、Keystone(认证)

2.1、创建用户、给用户赋予权限、创建实体服务

$ openstack user create --domain default --password 123456 glance
$ openstack role add --project service --user glance admin
$ openstack service create --name glance --description "OpenStack Image" image

2.2、创建端点endpoint:

  • public 其他用户使用地址 、internal 组件内部通信地址 、 admin用户使用地址
$ openstack endpoint create --region RegionOne image public http://controller:9292
$ openstack endpoint create --region RegionOne image internal http://controller:9292
$ openstack endpoint create --region RegionOne image admin http://controller:9292

2.3、列出所有的用户

$ openstack user list

2.4、查看某个用户详细信息

$ openstack user show admin

2.5、列出认证服务目录

$ openstack catalog list

2.6、列出所有的端点地址

$ openstack endpoint list

2.7、生成令牌并验证keystone

$ openstack token issue

三、glance(镜像)

3.1、上传镜像

$ openstack image create "cirros" --disk-format qcow2 \
  --container-format bare --public \
  --file ~/images/cirros-0.3.5-x86_64-disk.img

参数说明:

–disk-format: 映像磁盘格式,支持的选项有:ami,ari, aki, vhd, vmdk, raw, qcow2, vhdx, vdi, iso, 默认格式为:raw

–container-format: 图像容器格式,支持的选项有:ami、ari、aki、bare、docker、ova、ovf。 默认格式为:bare
–public: 镜像可供公众访问
–file: 从本地文件上传镜像

3.2、更新镜像

$ openstack  image set --min-ram 1 --min-disk 2 镜像id/name

参数说明:

–min-ram: 镜像所需的最小 RAM 大小,以兆字节为单位
–min-disk: 镜像所需的最小磁盘大小,以 GB 为单位

3.3、列出所有镜像

$ openstack image list

3.4、查看镜像的详细信息

$ openstack image show 镜像id/name

3.5、删除镜像

$ openstack image delete 镜像id/name

四、neutron(网络 )

4.1、Network

4.1.1、创建外部网络

$ openstack network create  --external --share ext-net(网络名称)

参数说明:

–external: 将此网络设置为外部网络
–share: 在项目之间共享网络

4.1.2、创建内部网络

$ openstack network create --share  int-net(网络名称)

4.1.3、创建外部网络子网

$ openstack subnet create  --subnet-range 192.168.100.0/24 --gateway 192.168.100.1 --network ext-net  ext-subnet(子网名称)

参数说明:

–subnet-range: CIDR 表示法中的子网范围
–gateway: 指定子网的网关
–network: 此子网所属的网络(名称或 ID)

4.1.4、创建外部网络子网

$ openstack subnet create --subnet-range 192.168.200.0/24 --network int-net int-subnet(子网名称)

参数说明:

–subnet-range: CIDR 表示法中的子网范围
–network: 此子网所属的网络(名称或 ID)

4.1.5、列出所有网络

$ openstack network list

4.1.6、查看网络详细信息

$ openstack network show ext-net

4.1.7、删除网络

$ openstack network show delete  int-net(网络名称)

ps:

删除网络时确保网络没有云主机(实例)使用,否则删除失败。


4.2、Route

4.2.1、创建路由

$ openstack router create route1

4.2.2、设置路由器属性

$ openstack router set --external-gateway ext-net --fixed-ip subnet=ext-subnet,ip-address=192.168.100.10 route1(路由名称)

参数说明:

–external-gateway: 用作路由器网关的外部网络(名称或 ID)
–fixed-ip: 设置route固定IP地址

  • 语法:subnet=,ip-address=(外部所需的 IP 或子网(名称或 ID)网关)

4.2.3、添加内网到路由

$ openstack router add subnet route1 int-net(网络名称)

4.2.4、列出所有路由

$ openstack router list

4.2.5、查看路由详细信息

$ openstack router show route1

4.2.6、删除路由

$ openstack router delete route1

五、nova(计算)

5.1、Flavor

5.1.1、创建flavor类型

$ openstack flavor create --ram 1024 --disk 3 --vcpus 2 m1.tiny(flavor名称)

参数说明:

–ram: 内存大小,以 MB 为单位(默认 256M)
–disk: 磁盘大小,以 GB 为单位(默认 0G)
–vcpus: cpu 数量(默认 1)

5.1.2、列出所有flavor类型

$ openstack flavor list

5.1.3、查看flavor详细信息

$ openstack flavor show m1.tiny

5.2、安全组

5.2.1、列出安全组

$ openstack security group list

5.2.2、查看安全组中的安全规则

$ openstack  security group rule list default(安全组 id/name)

5.2.3、查看规则的详细信息

$ openstack  security group rule show 35c34803-7156-4d96-8a6c-6636423beae2(规则 id)

5.2.4、创建安全组

$ openstack security group create test_name(安全组 id/name)

5.2.5、删除访问安全组

$ openstack security group delete test_name(安全组 id/name)

5.2.6、在安全组中添加策略

从入口方向放行所有ICMP、TCP、UDP规则

$ openstack security group rule create --protocol icmp --ingress  default(安全组 id/name)
$ openstack security group rule create --protocol tcp --ingress  default(安全组 id/name)
$ openstack security group rule create --protocol udp --ingress  default(安全组 id/name)

5.3、操作云主机

5.3.1、创建云主机

$ openstack server create --image cirros --flavor m1.tiny --network ext-net test_name(云主机/实例 名称)

参数说明:

–image: 创建云主机所使用镜像启动盘(名称或 ID)
–flavor: 创建云主机所使用的flavor(名称或 ID)
–network: 在云主机上创建一个 NIC 并将其连接到网络。

  • 多次指定选项以创建多个 NIC。
    –network是 ‘–nic net-id=’ 的包装,为标准提供简单语法的参数。
    有关更高级的用例,请参阅’–nic’参数。

5.3.2、列出实例,实例状态

$ openstack server list

5.3.3、查看云主机的控制台日志

$ openstack  console log show NAME(实例名称)

5.3.4、显示云主机的远程控制台 URL

$ openstack  console url show test

5.3.5、重启

$ openstack server reboot NAME

5.3.6、关机

$ openstack server stop NAME

5.3.7、启动

$ openstack server start NAME

5.3.8、暂停

$ openstack server pause NAME

5.3.9、挂起

$ openstack server suspend NAME

5.3.10、取消挂起

$ openstack server unpause NAME

5.3.11、重建

$ openstack server rebuild NAME IMAGE

5.3.12、创建快照

$ openstack server stop test(实例名称)
$ openstack server image create test (实例名称)–name testSnapshot  (创建快照)

5.3.13、下载快照

$ openstack image save --file csccvm.qcow2 testSnapshot

5.3.14、调整大小

修改/etc/nova/nova.conf配置文件,添加调整类型大小的参数

$ openstack-config --set /etc/nova/nova.conf DEFAULT scheduler_default_filters AvailabilityZoneFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ServerGroupAntiAffinityFilter,ServerGroupAffinityFilter
# 重启生效配置
$ systemctl restart openstack-nova*
$ openstack server resize NAME(实例 id/名称) FLAVOR(flavor id/名称)

# 确认服务器调整大小完成
$ openstack server resize --confirm NAME(实例名称)

5.3.15、云主机挂载云硬盘

$ openstack server add volume test_name(实例id/name) 8aa66c0b-72e8-4a2a-a305-1a1de50a505c(磁盘id/name)

5.3.16、创建秘钥对

$ openstack keypair create test > test.pem
$ chmod 600 test.pem

给实例注入一个密钥对并通过密钥对来访问实例

启动实例

$ openstack server create --image cirros-0.3.5-x86_64 --flavor m1.small \
  --key-name test MyFirstServer

使用ssh连接到实例

# ip netns exec qdhcp-98f09f1e-64c4-4301-a897-5067ee6d544f \
  ssh -i test.pem [email protected]

六、cinder(块存储)

6.1、创建卷lvm类型

[root@controller ~]# cinder type-create lvm

6.2、创建一个新卷

$ openstack volume create --type lvm --size SIZE_IN_GB NAME(卷名称)

参数说明:

–size: 以 GB 为单位的卷大小
–type: 设置卷类型

6.3、列出所有卷,卷状态

$ openstack volume list

6.4、将卷连接到实例

实例为正常状态且卷为可用状态

$ $ openstack server add volume test_name(实例id/name) 8aa66c0b-72e8-4a2a-a305-1a1de50a505c(磁盘id/name)

6.5、扩展卷

[root@controller ~]#  openstack volume list
+--------------------------------------+---------------+-----------+------+------------------------------------+
| ID                                   | Name          | Status    | Size | Attached to                        |
+--------------------------------------+---------------+-----------+------+------------------------------------+
| f3678c4a-87cf-438e-bf49-4c37076d1a0e | aa            | available |    1 |                                    |

[root@controller ~]# openstack volume set --size 2 aa(卷名称)
[root@controller ~]#  openstack volume list
+--------------------------------------+---------------+-----------+------+------------------------------------+
| ID                                   | Name          | Status    | Size | Attached to                        |
+--------------------------------------+---------------+-----------+------+------------------------------------+
| f3678c4a-87cf-438e-bf49-4c37076d1a0e | aa            | available |    2 |                                    |

参数说明:

–size: 以 GB 为单位扩展卷大小

七、Swift(对象存储)

7.1、创建容器

$ openstack  container create  test_name

7.2、列出容器

$ openstack container list 

7.3、查看容器详情

$ openstack container show test_name

7.4、创建对象、上传对象

创建对象的过程也是向容器中上传对象的过程

$ openstack object create test_name(容器名称) test/anaconda-ks.cfg (上传的文件)

7.5、列出容器中的对象

$ openstack object list test_name
+----------------------+
| Name                 |
+----------------------+
| test/anaconda-ks.cfg |
+----------------------+

7.6、查看对象详情

通过查询命令可以看出,在通过命令上传对象时,本地路径即为容器内对象路径

$ openstack object show test_name test/anaconda-ks.cfg
+----------------+---------------------------------------+
| Field          | Value                                 |
+----------------+---------------------------------------+
| account        | AUTH_13b5e35202d54a84ae7a5ae5c57b9846 |
| container      | test_name                             |
| content-length | 6880                                  |
| content-type   | application/octet-stream              |
| etag           | 41656296ae6768ae924a5b5f3fe15bf0      |
| last-modified  | Thu, 10 Feb 2022 06:54:30 GMT         |
| object         | test/anaconda-ks.cfg                  |
+----------------+---------------------------------------+

7.7、下载对象

$ openstack object save test_name test/anaconda-ks.cfg

7.8、删除对象

$ openstack object delete test_name test/anaconda-ks.cfg

7.9、删除空容器

下列命令只能删除空容器,如果容器内有对象,无法直接删除

$ openstack container delete test_name

7.10、递归删除容器

$ openstack container delete --recursive swift-test

参数说明:

–recursive: 递归删除对象和容器

7.11、swift分片存储

$ swift upload test -S 10000000 cirros-0.5.2-x86_64-disk.img
cirros-0.3.4-x86_64-disk.img segment 0
cirros-0.3.4-x86_64-disk.img segment 1
cirros-0.3.4-x86_64-disk.img

参数说明:

-S: 每一个片的大小,单位字节(B)

查看存储路径中的数据片

[root@controller ~]# openstack container list
+---------------+
| Name          |
+---------------+
| test_segments |
+---------------+
[root@controller ~]# openstack object  list test_segments
+---------------------------------------------------------------------------+
| Name                                                                      |
+---------------------------------------------------------------------------+
| cirros-0.5.2-x86_64-disk.img/1656827975.223582/16300544/10000000/00000000 |
| cirros-0.5.2-x86_64-disk.img/1656827975.223582/16300544/10000000/00000001 |
+---------------------------------------------------------------------------+

7.12、查看服务、容器以及对象的状态信息

$ swift stat
$ swift stat CONTAINER(容器名称)
$ swift stat OBJECT(对象名称)

八、Heat(编排)

8.1、编排创建cinder

$ cat cinder.yaml
heat_template_version: "2018-08-31"
description: "version 2017-09-01 created by HOT Generator at Sun, 03 Jul 2022 13:14:37 GMT."
resources: 
  Volume_1: 
    type: "OS::Cinder::Volume"
    properties: 
      name: heat_test1
      size: 2
      volume_type: "d21b433b-cdd9-4a4f-a759-9131094514f5"
    
#创建堆栈,并创建cinder
$ openstack stack create -t cinder.yaml cinder-1(栈名称)

参数说明:

-t: 模板路径

8.2、编排创建swift

$ cat swift.yaml
heat_template_version: "2018-08-31"
description: "version 2017-09-01 created by HOT Generator at Sun, 03 Jul 2022 13:19:50 GMT."
resources: 
  Container_1: 
    type: "OS::Swift::Container"
    properties: 
      name: heat_swift
      "X-Container-Write": true

#创建堆栈,并创建swift
$ openstack stack create -t swift.yaml swift-1(栈名称)

参数说明:

-t: 模板路径

8.3、编排创建network和subnet

heat_template_version: "2018-08-31"
description: "version 2017-09-01 created by HOT Generator at Sun, 03 Jul 2022 13:28:04 GMT."
resources: 
  Net_1: 
    type: "OS::Neutron::Net"
    properties: 
      admin_state_up: true
      name: Heat_Network
      shared: true
  Subnet_1: 
    type: "OS::Neutron::Subnet"
    properties: 
      name: "Heat-Subnet"
      ip_version: 4
      cidr: "10.32.10.0/24"
      network_id: 
        get_resource: Net_1
      
# #创建堆栈,并创建网络
$ openstack stack create -t network.yaml network(栈名称)

参数说明:

-t: 模板路径

8.4、编排创建flavor

$ cat falvor.ayml
heat_template_version: "2018-08-31"
description: "version 2017-09-01 created by HOT Generator at Sun, 03 Jul 2022 13:43:44 GMT."
resources:
  nova_flavor:
    type: OS::Nova::Flavor
    properties:
      name: m1.flavor
      disk: 20
      is_public: True
      ram: 1024
      vcpus: 2
      
# 创建堆栈,并创建falvor
$ openstack stack create -t falvor.ayml falvor

8.5、编排创建server

$ cat server.yaml
heat_template_version: "2018-08-31"
description: "version 2017-09-01 created by HOT Generator at Sun, 03 Jul 2022 13:33:42 GMT."
resources:
  Server_1:
    type: "OS::Nova::Server"
    properties:
      networks:
        - network: "2cd557b4-0a35-4226-8f42-274e100d52e2"
      flavor: "m1.tiny"
      name: Heat_Server
      image: "ac64f3c2-5705-4962-9fdb-6ce97b1b7876"

# #创建堆栈,并创建server
$ openstack stack create -t server.yaml server(栈名称)

参数说明:

-t: 模板路径

8.6、编排创建user

$ cat user.yaml
heat_template_version: "2018-08-31"
description: "version 2017-09-01 created by HOT Generator at Sun, 03 Jul 2022 13:33:42 GMT."
resources:
  user:
    type: OS::Keystone::User
    properties:
      name: "Heat-User"
      password: "123456"
      domain: "default"
      default_project: "admin"
      roles: [{"role": admin, "project": admin}]

# 创建堆栈,并创建user
$ openstack stack create -t user.yaml user(栈名称)

8.7、列出所有堆栈

$ openstack stack list
+--------------------------------------+------------+----------------------------------+-----------------+----------------------+--------------+
| ID                                   | Stack Name | Project                          | Stack Status    | Creation Time        | Updated Time |
+--------------------------------------+------------+----------------------------------+-----------------+----------------------+--------------+
| 5b6dd6ff-02bf-4ae9-b933-7b628ffbb94c | falvor     | 4209800f33d94f61bdfc8b487f219f06 | CREATE_COMPLETE | 2022-07-03T13:38:50Z | None         |
| b06ca53d-c30b-4f0d-95d8-83b8f406766a | server     | 4209800f33d94f61bdfc8b487f219f06 | CREATE_COMPLETE | 2022-07-03T13:34:09Z | None         |
| 4229a9b0-f278-4e22-bcad-0cded20af297 | network    | 4209800f33d94f61bdfc8b487f219f06 | CREATE_COMPLETE | 2022-07-03T13:28:33Z | None         |
| a7904f37-c967-4531-9cc6-3bb098fa95e9 | cinder-1   | 4209800f33d94f61bdfc8b487f219f06 | CREATE_COMPLETE | 2022-07-03T13:15:56Z | None         |
| 347f0741-c9a6-46b1-9fd1-03d270ff435d | swift-1    | 4209800f33d94f61bdfc8b487f219f06 | CREATE_COMPLETE | 2022-07-03T13:15:31Z | None         |
+--------------------------------------+------------+----------------------------------+-----------------+----------------------+--------------+

8.8、列出堆栈详情

$ openstack stack show network(堆栈名称)

8.9、删除堆栈

$ openstack stack delete network(堆栈名称)

九、Manila(共享文件系统)

9.1、创建禁用 DHSS 的默认共享类型

driver_handles_share_servers在使用 LVM 驱动程序创建共享之前禁用 DHSS

$ cat /etc/manila/manila.conf
[lvm]
...
driver_handles_share_servers = False
...

默认共享类型允许您使用此驱动程序创建共享,而无需再创建共享时指定共享类型。

语法:manila type-create

$ manila type-create default_share_type False
+----------------------+--------------------------------------+
| Property             | Value                                |
+----------------------+--------------------------------------+
| required_extra_specs | driver_handles_share_servers : False |
| Name                 | default_share_type                   |
| Visibility           | public                               |
| is_default           | YES                                  |
| ID                   | be070d83-e632-4c36-9839-0cb6079d3b77 |
| optional_extra_specs |                                      |
| Description          | None                                 |
+----------------------+--------------------------------------+

9.2、列出共享类型

$ manila type-list

9.3、创建共享目录

语法:manila create

$ manila create NFS 1 --name share1

参数说明:

共享协议(NFS、CIFS、CephFS、GlusterFS、HDFS、MAPRFS)。
以 GiB 为单位的共享大小。
–name: 共享名称。

9.4、列出共享目录

$ manila list

9.5、查看共享目录详情

$ manila show share_name(共享名称)

9.6、允许访问共享目录

语法:manila access-allow

manila access-allow share1 ip 10.43.8.0/22

参数说明:

共享的名称或 ID
访问规则类型仅“ip”、“user”(用户或组)、支持“cert”或“cephx”)
定义访问的网段/ip
–access-level: 共享访问级别(“rw”和“ro”访问级别是支持的)。 默认为 rw。

9.7、查看共享目录权限及开放网段

$ manila access-list share1(共享名称)

9.8、挂载共享目录

获取共享目录路径

$ manila show share1 |grep path
|                                       | path = 10.43.8.35:/var/lib/manila/mnt/share-c530b7d7-c028-4980-86de-4aea1140c148 |

compute节点挂载共享目录

$  mount -t nfs 10.43.8.35:/var/lib/manila/mnt/share-c530b7d7-c028-4980-86de-4aea1140c148 /mnt/
$  df -h
Filesystem                                                                 Size  Used Avail Use% Mounted on
devtmpfs                                                                   3.8G     0  3.8G   0% /dev
tmpfs                                                                      3.9G  4.0K  3.9G   1% /dev/shm
tmpfs                                                                      3.9G  145M  3.7G   4% /run
tmpfs                                                                      3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/vda1                                                                  100G  3.1G   97G   4% /
tmpfs                                                                      783M     0  783M   0% /run/user/0
/dev/vdb2                                                                   20G   49M   20G   1% /swift/node/vdb2
/dev/dm-8                                                                  976M  2.6M  907M   1% /var/lib/manila/mnt/share-c530b7d7-c028-4980-86de-4aea1140c148
10.43.8.35:/var/lib/manila/mnt/share-c530b7d7-c028-4980-86de-4aea1140c148  976M  2.0M  907M   1% /mnt



参考资料

https://docs.openstack.org/zh_CN/user-guide/index.html


最后

我是无名小歌,欢迎大家一键三连
加入云社区一起学习云计算,走向年薪50万。

如果对你有帮助,还望赏个关注鸭!!!

(⊙o⊙),我们下期再见!!!

你可能感兴趣的:(私有云,运维,云计算,linux)