目录
一、创建用户
二、创建删除模板和模板其他操作
三、创建更新删除镜像
四、创建网络
五、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 创建外网
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 也可以用这个命令 创建容器