一、openstack
1.keystone
user的操作
增
常用参数解析
--domain <domain>(必加参数,你选择你的用户所在域)
--password (必加参数,指定你用户的密码,可以在dashboard中登入验证)
--description (可选,相当于这个用户的说明)
--enable (可选,启用用户)
--disable (可选,禁用用户)
[root@controller ~]# openstack user create --domain demo --password 000000 test ##创建一个名叫test用户设置密码为000000
删
[root@controller ~]# openstack user delete test1 ##删除一个名叫test1的用户
改
常用参数解析
--name <name> (修改用户名字)
--password <password> (修改用户的密码)
--description (修改对用户的表述)
--enable | --disable (设置用户的状态)
[root@controller ~]# openstack user set --password 123456 test
查
[root@controller ~]# openstack user list ##查询用户的列表
+----------------------------------+-------------------+
| ID | Name |
+----------------------------------+-------------------+
| 38fa8764ccfb4278bcf52abcfe153bf7 | swift |
| 4ec416399e2b40778948672812a5b706 | kuryr |
| 63409201c989437c9bbe81e3df95f910 | heat |
| 6db8ac2d2b664ab0b0e0755670580bb6 | zun |
| 716f23a9df434b0fa5107aaa9b869cfd | cinder |
| 73c7f9affaa04d04ae50fdb79d9b0a93 | neutron |
| a0b63ae2f888466692c69f0c4ae9f9f2 | test1 |
| d0ce28d1452e4bcca517854bb2b48cbe | nova |
| d618c8ee2d234997889b62ee18562ee0 | admin |
| dd84e2a6a0bf4313be10f00ae65128fd | glance |
| e22b1fb03196462383a991a31fd86fa3 | heat_domain_admin |
| e5187c291ef642769a790331eacf7e20 | placement |
| fb8418574f08439f946fb49ee4cbd7f2 | demo |
+----------------------------------+-------------------+
[root@controller ~]# openstack user show test1 ##查询用户的详细信息
+---------------------+----------------------------------+
| Field | Value |
+---------------------+----------------------------------+
| domain_id | 8cc2a6213bb9421f932c35271e96f3a1 |
| enabled | True |
| id | a0b63ae2f888466692c69f0c4ae9f9f2 |
| name | test1 |
| options | {} |
| password_expires_at | None |
+---------------------+----------------------------------+
service的操作
增
常用参数解析
--description (对这个服务的表述)
--enable | --disable (对这个服务的状态)
<type> (这个服务的标签)
[root@controller ~]# openstack service create --name test test ##创建一个名叫test 标签为test的服务
删
[root@controller ~]# openstack service delete test ##删除服务
改
常用参数解析
--type <type> (改服务的标签)
--name <service-name> (改服务的名称)
--description <description> (修改对服务的描述)
--enable | --disable (修改服务的状态)
[root@controller ~]# openstack service set --name test1 test ##修改服务的名称
查
[root@controller ~]# openstack service list ## 查询服务的列表
+----------------------------------+-----------+----------------+
| ID | Name | Type |
+----------------------------------+-----------+----------------+
| 0b8f6555f0a14296832062eea71f8695 | nova | compute |
| 23d546cb310742dca43cc6b034b2c357 | test1 | test |
| 30315035c8b14f2c91beda0aae7821cc | heat-cfn | cloudformation |
| 30abf73ff3444691ab3960633ceaca59 | placement | placement |
| 6f0b773b3bb441a3b608d372eaa66d86 | zun | container |
| 7a707d83315645cb8d83c10444081fa7 | cinderv2 | volumev2 |
| 90b5d6d6cd1a4283b1e563f0ad3e9d62 | neutron | network |
| 969cccec463b4163ba627e78d657c879 | cinderv3 | volumev3 |
| a88f91118bec448794087aad9d0bb3a4 | cinder | volume |
| ad19c51dae4a401c81e5215f686b3524 | keystone | identity |
| b459991b6eee408aa687d8b21bd49987 | heat | orchestration |
| c56f4b1b043a427f9d79e7c528f1942b | glance | image |
| e63c30faabf14c689199623ae76b4b4d | swift | object-store |
+----------------------------------+-----------+----------------+
[root@controller ~]# openstack service show test1 ##查询服务的详细信息
+---------+----------------------------------+
| Field | Value |
+---------+----------------------------------+
| enabled | True |
| id | 23d546cb310742dca43cc6b034b2c357 |
| name | test1 |
| type | test |
+---------+----------------------------------+
2.glance
上传镜像
[root@controller ~]# glance image-create --name test --disk-format qcow2 --container-format bare --progress < openstack/cirros-0.3.4-x86_64-disk.img
修改镜像
[root@controller ~]# openstack image set --name test1 test
查看镜像
[root@controller ~]# openstack image list ## 查看镜像列表
+--------------------------------------+------------+--------+
| ID | Name | Status |
+--------------------------------------+------------+--------+
| cadefbbf-19a8-4505-8a73-f4ba67d27090 | centos7 | active |
| fe2d4579-a7d6-473d-bd11-537ed586743e | centos:7.5 | active |
| 4fc91b7a-484d-42f2-8485-04021fd7611a | test1 | active |
+--------------------------------------+------------+--------+
[root@controller ~]# openstack image show test1 ##查看镜像纤细信息
+------------------+------------------------------------------------------+
| Field | Value |
+------------------+------------------------------------------------------+
| checksum | ee1eca47dc88f4879d8a229cc70a07c6 |
| container_format | bare |
| created_at | 2021-04-16T20:14:31Z |
| disk_format | qcow2 |
| file | /v2/images/4fc91b7a-484d-42f2-8485-04021fd7611a/file |
| id | 4fc91b7a-484d-42f2-8485-04021fd7611a |
| min_disk | 0 |
| min_ram | 0 |
| name | test1 |
| owner | 5e7709cbbd7c4c0e8733c3f7360d1d38 |
| protected | False |
| schema | /v2/schemas/image |
| size | 13287936 |
| status | active |
| tags | |
| updated_at | 2021-04-16T20:16:29Z |
| virtual_size | None |
| visibility | shared |
+------------------+------------------------------------------------------+
删除镜像
[root@controller ~]# openstack image delete test1
3.nova
nova是一个总的控制服务,基本上所有操作都能做,命令一般用openstack来代替了,低版本还是能用nova,高版本开始慢慢抛弃这个模式了
flavor的操作
增
命令格式是 nova flavor-create <name> <id> <ram> <disk> <vcpus>
[root@controller ~]# nova flavor-create test 1 1024 20 1
+----+------+-----------+------+-----------+------+-------+-------------+-----------+-------------+
| ID | Name | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public | Description |
+----+------+-----------+------+-----------+------+-------+-------------+-----------+-------------+
| 1 | test | 1024 | 20 | 0 | | 1 | 1.0 | True | - |
+----+------+-----------+------+-----------+------+-------+-------------+-----------+-------------+
改
[root@controller ~]# nova flavor-update 1 test ##修改id为1的Description为test
删
[root@controller ~]# nova flavor-delete 1 ##删除id为1的flavor
quota-class的操作
quota-class是一个对我们默认配置的上限的控制,限制了我们只能创建多大的内存、多少的CPU、多少的实例
查
[root@controller ~]# nova quota-class-show default
+----------------------+--------+
| Quota | Limit |
+----------------------+--------+
| instances | 10 | ##只能创建10个实例
| cores | 50 | ##只能使用50个CPU
| ram | 512000 | ##只能使用500G的内存
| metadata_items | 128 |
| key_pairs | 100 |
| server_groups | 10 |
| server_group_members | 10 |
+----------------------+--------+
改
[root@controller ~]# nova quota-class-update --instances 20 default ##修改只能创建20个实例
server的操作
查
[root@controller ~]# nova list ##查询server
+--------------------------------------+--------+--------+------------+-------------+----------------------+
| ID | Name | Status | Task State | Power State | Networks |
+--------------------------------------+--------+--------+------------+-------------+----------------------+
| 0494b994-0172-40ba-b3b9-2108b6bde1d9 | mycat | ACTIVE | - | Running | extnet=192.168.200.7 |
| 73091466-2658-4d11-9128-78085de330d8 | mysql | ACTIVE | - | Running | extnet=192.168.200.8 |
| fb64bfb4-7ff2-4445-a50b-8debf75fd1f0 | mysql1 | ACTIVE | - | Running | extnet=192.168.200.4 |
+--------------------------------------+--------+--------+------------+-------------+----------------------+
[root@controller ~]# nova show mycat ##查询服务的详细信息
+--------------------------------------+----------------------------------------------------------+
| Property | Value |
+--------------------------------------+----------------------------------------------------------+
| OS-DCF:diskConfig | AUTO |
| OS-EXT-AZ:availability_zone | nova |
| OS-EXT-SRV-ATTR:host | controller |
| OS-EXT-SRV-ATTR:hostname | mycat |
| OS-EXT-SRV-ATTR:hypervisor_hostname | controller |
| OS-EXT-SRV-ATTR:instance_name | instance-00000007 |
| OS-EXT-SRV-ATTR:kernel_id | |
| OS-EXT-SRV-ATTR:launch_index | 0 |
| OS-EXT-SRV-ATTR:ramdisk_id | |
| OS-EXT-SRV-ATTR:reservation_id | r-7q907ngq |
| OS-EXT-SRV-ATTR:root_device_name | /dev/vda |
| OS-EXT-SRV-ATTR:user_data | - |
| OS-EXT-STS:power_state | 1 |
| OS-EXT-STS:task_state | - |
| OS-EXT-STS:vm_state | active |
| OS-SRV-USG:launched_at | 2021-04-14T21:07:49.000000 |
| OS-SRV-USG:terminated_at | - |
| accessIPv4 | |
| accessIPv6 | |
| config_drive | |
| created | 2021-04-14T20:46:24Z |
| description | - |
| extnet network | 192.168.200.7 |
| flavor:disk | 100 |
| flavor:ephemeral | 0 |
| flavor:extra_specs | {} |
| flavor:original_name | m2.flavor |
| flavor:ram | 4096 |
| flavor:swap | 0 |
| flavor:vcpus | 4 |
| hostId | f72a8d013796e53ddab96070e5b3a3ef2765385d2aa22cc807ccf390 |
| host_status | UP |
| id | 0494b994-0172-40ba-b3b9-2108b6bde1d9 |
| image | centos:7.5 (fe2d4579-a7d6-473d-bd11-537ed586743e) |
| key_name | - |
| locked | False |
| metadata | {} |
| name | mycat |
| os-extended-volumes:volumes_attached | [] |
| progress | 0 |
| security_groups | default |
| status | ACTIVE |
| tags | [] |
| tenant_id | 5e7709cbbd7c4c0e8733c3f7360d1d38 |
| updated | 2021-04-14T21:07:49Z |
| user_id | d618c8ee2d234997889b62ee18562ee0 |
+--------------------------------------+----------------------------------------------------------+
4.neutron
由于高版本和低版本的有很大的区别了,不要跑网络模式的脚本了,这些都可以在界面创建
外网:
openstack network create --share --external --provider-physical-network provider --provider-network-type flat ext-net
外网子网:
openstack subnet create --network ext-net --allocation-pool start=192.168.200.100,end=192.168.200.200 --dns-nameserver 8.8.8.8 --gateway=192.168.200.1 --subnet-range 192.168.200.0/24 ext-subnet
内网:
openstack network create int-net
内网子网:
openstack subnet create --network int-net --allocation-pool start=10.0.0.100,end=10.0.0.200 --gateway=10.0.0.1 --subnet-range 10.0.0.0/24 int-subnet
第二步创建路由:
openstack router create router
绑定内网子网网段:
openstack router add subnet router int-subnet
绑定外网子网网段:
openstack router set --external-gateway ext-net router