Openstack常用命令

目录

一、创建用户

二、创建删除模板和模板其他操作

三、创建更新删除镜像

四、创建网络

五、VPN的使用

六、创建容器swift模块


前言:

在linux中使用openstakc命令前 需要source /etc/keystone/admin-openrc.sh 获取令牌

一般每个模块的命令都有create、delete、list、show等常规命令

 一、创建用户

openstack user --help 可以查看命令行的详细信息

  user create 创建一个用户
  user delete 删除一个用户
  user list 列出所有用户
  user password set 为用户创建一个密码
  user show 列出用户详细信息

openstack user create --domain demo --password 000000 --description csdn-giantfox giantfox

| Field               | Value                            |
+---------------------+----------------------------------+
| description         | csdn-giantfox                    |
| domain_id           | a38fc98e1d3d4ae3b627e300bc55fb8f |
| enabled             | True                             |
| id                  | 23bd115fbef94cf7871d63db3b4d754b |
| name                | giantfox                         |
| options             | {}                               |
| password_expires_at | None 

 如果删除用户直接 可以用openstack user delete 用户的ID或者名称

二、创建删除模板

openstack flavor create --ram 1024 --vcpus 2 --disk 20 --swap 10 --id 666  giantfox

+----------------------------+----------+
| Field                      | Value    |
+----------------------------+----------+
| OS-FLV-DISABLED:disabled   | False    |
| OS-FLV-EXT-DATA:ephemeral  | 0        |
| disk                       | 20       |
| id                         | 666      |
| name                       | giantfox |
| os-flavor-access:is_public | True     |
| properties                 |          |
| ram                        | 1024     |
| rxtx_factor                | 1.0      |
| swap                       | 10       |
| vcpus                      | 2        |
+----------------------------+----------+

openstack flavor delete giantfox

模板即被删除

  flavor create 创建
  flavor delete 删除
  flavor list 列出所有flavor类型        
  flavor set  新增添信息
  flavor show 列出某一flavor的详细信息

 三、镜像相关操作

镜像操作有两种 一个是glance 和 常规oepnstack image 这两个差不多类似 两者都会讲到

openstack image create  --container-format bare --disk-format qcow2 --min-disk 10 --min-ram 1024 --shared --tag giantfox --file CentOS-7-x86_64-2009.qcow2 centos0 

+------------------+------------------------------------------------------+
| Field            | Value                                                |
+------------------+------------------------------------------------------+
| checksum         | c939f3fc8bc41f0b0a0a5fa6f2a4ce83                     |
| container_format | bare                                                 |
| created_at       | 2022-10-25T02:21:43Z                                 |
| disk_format      | qcow2                                                |
| file             | /v2/images/26d1e1a8-77c0-4c95-b97e-488c3ed53154/file |
| id               | 26d1e1a8-77c0-4c95-b97e-488c3ed53154                 |
| min_disk         | 10                                                   |
| min_ram          | 1024                                                 |
| name             | centos0                                              |
| owner            | 1cfd6c8e24c840769dc72145df7cd508                     |
| protected        | False                                                |
| schema           | /v2/schemas/image                                    |
| size             | 399900672                                            |
| status           | active                                               |
| tags             | giantfox                                             |
| updated_at       | 2022-10-25T02:21:45Z                                 |
| virtual_size     | None                                                 |
| visibility       | shared                                               |
+------------------+------------------------------------------------------+

以上创建了一个最小硬盘为10G 内存为1G的镜像 --tag是打标签 --shared是共享镜像 --progress 是查看镜像上传的进程

测试完毕后通过openstack image delete centos0 删除镜像

glance 命令模式为

glance image-create --name centos0 --disk-format qcow2 --container-format bare --min-disk=10 --min-ram 1024 --file CentOS-7-x86_64-2009.qcow2 

glance还有一个命令是很有用的 当我们创建一个项目时里面的用户是看不到此镜像的 因为我们要把镜像共享出去并更新镜像可以使用

#首先我们创建一个项目

openstack project create --domain demo deyA

#创建一个用户

openstack user create --domain demo --paasword 123456 userA

#将用户和项目绑定

openstack role add --project deyA --user userA user

#使用命令查看用户和租户

[root@controller ~]# openstack project list    
+----------------------------------+---------+
| ID                               | Name    |
+----------------------------------+---------+
| 1cfd6c8e24c840769dc72145df7cd508 | admin   |
| 2a74116c0dd94b5db1b75be5f3e9eab6 | deyB    |
| 47c79b3db9554e5db36dceb26dc4f7cb | demo    |
| 78a8b881e79c46d4a19104671ddd7534 | service |
| 957a2695eb7c4af59307c33048d03322 | deyA    |
+----------------------------------+---------+

[root@controller ~]# openstack user list                  
+----------------------------------+-----------+
| ID                               | Name      |
+----------------------------------+-----------+
| 06b6cbe057264218b324b0bd29b99f8e | swift     |
| 23bd115fbef94cf7871d63db3b4d754b | giantfox  |
| 4a4e0697cae24eea83c8c9de2ff92a49 | neutron   |
| 51ed1e29c9584fa88171787d405cfdef | useraaj1  |
| 6ea87548e62c44608603a57932900fca | useraa1   |
| 718523b8ba3441cca7b7ee43ef264d1d | demo      |
| 8afea25eea1a480c9cd919f7575dd82e | cinder    |
| 932bf7389126430a820de77f90a79158 | placement |
| 9e20393dca944d29a0598806ac4b6665 | nova      |
| b24ba1364b0f462bba95550993294302 | glance    |
| cc6486aaacc44b7caebb3e0a5b2180da | userB     |
| d699ff9a733f4cf3a16c9f8b119eb489 | admin     |
| de9b6b0e061d40fb8bdf2b4616a25dec | user1     |
| e6a7f018d5984d53930207b1708eac64 | userA     |

+----------------------------------+-----------+

可见 用户已经创建

但用户userA是看不到 我们刚才创建的centos0 镜像的

首先将镜像共享给A租户,命令格式为glance member-create ,命令如下所示

glance member-create 1d50e278-c14c-47f0-8307-a79b77418ed9 957a2695eb7c4af59307c33048d03322

在共享之后,镜像的状态是pending状态,此时还需要激活镜像,命令如下:

glance member-update 1d50e278-c14c-47f0-8307-a79b77418ed9 957a2695eb7c4af59307c33048d03322 accepted

此时镜像的状态就变为了accepted,切换至userA账户中查看镜像列表信息,命令如下所示:

export OS_PROJECT_NAME=deyA

export OS_USERNAME=userA

export OS_PASSWORD=123456

glance image-list

可以查看到镜像了

四 、创建网络

#创建vlan类型的网络

openstack network create --provider-network-type vlan --provider-physical-network provider network-vlan --provider-segment 2000

#添加子网

openstack subnet create --network network-vlan --allocation-pool start=192.168.200.100,end=192.168.200.200 --gateway 192.168.200.1 --subnet-range 192.168.200.0/24 subnet-vlan

#创建flat类型的网络

openstack network create --provider-network-type flat --provider-physical-network provider network-flat --share 

#添加子网

openstack subnet create --network network-flat --allocation-pool start=192.168.200.100,end=192.168.200.200 --gateway 192.168.200.1 --subnet-range 192.168.200.0/24 subnet-flat

--internal 创建的是内网

--external 创建外网

五、VPN的添加与使用

Openstack Havana 版本中, Neutron 增加的一个功能就是 VPNaas ,将 VPN 功能引
入到了 Neutron 中,虽然在 Havana 版中只支持 IPSec 协议的 VPN ,功能还比较弱,但这
个关键特性已经有了,后续会不断加强该特性。
VPN 可以通过在 L2 L3 层建立一条逻辑链路,让广域网上多个内网能够相互访问。 VPN
的实现方式很多,有基于租用专用物理线路实现的,也有基于以太网的虚连接的实现方
# 这里不做详细的操作了 若有需要可以私信我

六、创建容器

container相关命令

  container create
  container delete
  container list
  container save
  container set
  container show
  container unset

与上面的命令类似 这里多了一条container save的命令

openstack container create giantfox #创建一个名字叫做giantfox的容器

swift 命令

delete  删除容器中的一个或多个对象。

download下载从容器下载对象。

list列出帐户或对象的容器

post更新帐户、容器、容器的元信息,或对象;如果不存在,则创建容器。

copy复制对象,可选添加元

stat显示帐户、容器或对象。

upload将文件或目录上载到给定容器。列出群集功能。

tempurl创建临时URL。

auth显示与auth相关的环境变量。

swift upload giantfox -S 10000000 cirros-disk.qocw2 # 将镜像上传到容器并切片保存

swift post giantfox 也可以用这个命令 创建容器

你可能感兴趣的:(openstack,openstack,linux,swift)