实验说明:
本文介绍把OpenStack中一个实例扩容内存和硬盘的步骤,实际整个过程是对实例做冷迁移来达到配置扩容。
实例扩容前配置:c2m4d101
实例扩容后配置:c4m8d150
OpenStack 实例扩容配置操作
步骤:
获取admin用户权限
命令:source admin-openrc
获取实例ID
命令:nova list --all
1 2 3 4 5 6 # nova list --all +--------------------------------------+------+----------------------------------+---------+------------+-------------+-----------------------+ | ID | Name | Tenant ID | Status | Task State | Power State | Networks | +--------------------------------------+------+----------------------------------+---------+------------+-------------+-----------------------+ | 5d5f3e84-606f-4763-b659-cf5da1f45862 | 1 | 76e5e27da0ea44b39339f219f9a3ea4b | SHUTOFF | - | Shutdown | vlan192=10.10.192.142 | +--------------------------------------+------+----------------------------------+---------+------------+-------------+-----------------------+
获取到实例ID为 5d5f3e84-606f-4763-b659-cf5da1f45862
查看实例现在配置
命令:nova show 5d5f3e84-606f-4763-b659-cf5da1f45862
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 # nova show 5d5f3e84-606f-4763-b659-cf5da1f45862 +--------------------------------------+---------------------------------------------------------------------+ | Property | Value | +--------------------------------------+---------------------------------------------------------------------+ | OS-DCF:diskConfig | AUTO | | OS-EXT-AZ:availability_zone | nova | | OS-EXT-SRV-ATTR:host | compute1 | | OS-EXT-SRV-ATTR:hostname | 1 | | OS-EXT-SRV-ATTR:hypervisor_hostname | compute1 | | OS-EXT-SRV-ATTR:instance_name | instance-00000042 | | 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-cfsk20p6 | | OS-EXT-SRV-ATTR:root_device_name | /dev/vda | | OS-EXT-SRV-ATTR:user_data | - | | OS-EXT-STS:power_state | 4 | | OS-EXT-STS:task_state | - | | OS-EXT-STS:vm_state | stopped | | OS-SRV-USG:launched_at | 2021-12-07T10:17:18.000000 | | OS-SRV-USG:terminated_at | - | | accessIPv4 | | | accessIPv6 | | | config_drive | True | | created | 2021-11-26T13:45:29Z | | description | - | | flavor:disk | 101 | | flavor:ephemeral | 0 | | flavor:extra_specs | {} | | flavor:original_name | c2m4d101 | | flavor:ram | 4096 | | flavor:swap | 0 | | flavor:vcpus | 2 | | hostId | 3578ea6c69855c946effdbeefa65af0082717e20f9f5d681e03e474e | | host_status | UP | | id | 5d5f3e84-606f-4763-b659-cf5da1f45862 | | image | CentOS-7.4-x86_64-2021-08-21 (8810b721-65ee-429d-b40e-0de4de737af1) | | key_name | - | | locked | False | | metadata | {} | | name | 1 | | os-extended-volumes:volumes_attached | [] | | security_groups | default | | status | SHUTOFF | | tags | [] | | tenant_id | 76e5e27da0ea44b39339f219f9a3ea4b | | updated | 2021-12-07T10:22:18Z | | user_id | e8449e95fcfe42369f9e75e77309c369 | | vlan192 network | 10.10.192.142 | +--------------------------------------+---------------------------------------------------------------------+
从上面可以看到该实例现在配置是c2m4d101,状态为SHUTOFF
获取实例类型ID
命令:openstack flavor list
1 2 3 4 5 6 7 8 9 10 11 12 13 # openstack flavor list +--------------------------------------+-----------+-------+------+-----------+-------+-----------+ | ID | Name | RAM | Disk | Ephemeral | VCPUs | Is Public | +--------------------------------------+-----------+-------+------+-----------+-------+-----------+ | 1520e952-4ed9-4a4c-ba03-237693e0e879 | c6m10d100 | 10240 | 100 | 0 | 6 | True | | 41e69056-48d8-48ab-902d-94863cbacfec | c4m8d80 | 8192 | 80 | 0 | 4 | True | | 5420bbbb-33de-4764-bc78-d45cb93d4849 | c2m4d101 | 4096 | 101 | 0 | 2 | True | | 5cc1ee41-b3c6-499a-8941-b2dd28f5136e | c4m10d50 | 10200 | 50 | 0 | 4 | True | | 919e5c1e-7703-497f-9576-eaee29959a08 | c2m2d20 | 2048 | 20 | 0 | 2 | True | | c56fe138-af89-4b48-b1e8-0be6366d4fe6 | c2m4d20 | 4096 | 20 | 0 | 2 | True | | dcc7c785-833d-47b9-8582-46d96ea75b24 | c4m8d150 | 8192 | 150 | 0 | 4 | True | | ffe7444a-b3d4-4e08-b206-59e778486e09 | c4m8d50 | 8096 | 50 | 0 | 4 | True | +--------------------------------------+-----------+-------+------+-----------+-------+-----------+
我们需要扩容到c4m8d150的实例类型,id为dcc7c785-833d-47b9-8582-46d96ea75b24
执行扩容
命令:nova resize --poll 5d5f3e84-606f-4763-b659-cf5da1f45862 dcc7c785-833d-47b9-8582-46d96ea75b24
1 2 3 4 # nova resize --poll 5d5f3e84-606f-4763-b659-cf5da1f45862 dcc7c785-833d-47b9-8582-46d96ea75b24 Server resizing... 100% complete Finished
查看实例配置和状态
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 # nova show 5d5f3e84-606f-4763-b659-cf5da1f45862 +--------------------------------------+---------------------------------------------------------------------+ | Property | Value | +--------------------------------------+---------------------------------------------------------------------+ | OS-DCF:diskConfig | AUTO | | OS-EXT-AZ:availability_zone | nova | | OS-EXT-SRV-ATTR:host | compute1 | | OS-EXT-SRV-ATTR:hostname | 1 | | OS-EXT-SRV-ATTR:hypervisor_hostname | compute1 | | OS-EXT-SRV-ATTR:instance_name | instance-00000042 | | 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-cfsk20p6 | | OS-EXT-SRV-ATTR:root_device_name | /dev/vda | | OS-EXT-SRV-ATTR:user_data | - | | OS-EXT-STS:power_state | 4 | | OS-EXT-STS:task_state | - | | OS-EXT-STS:vm_state | resized | | OS-SRV-USG:launched_at | 2021-12-07T14:48:19.000000 | | OS-SRV-USG:terminated_at | - | | accessIPv4 | | | accessIPv6 | | | config_drive | True | | created | 2021-11-26T13:45:29Z | | description | - | | flavor:disk | 150 | | flavor:ephemeral | 0 | | flavor:extra_specs | {} | | flavor:original_name | c4m8d150 | | flavor:ram | 8192 | | flavor:swap | 0 | | flavor:vcpus | 4 | | hostId | 3578ea6c69855c946effdbeefa65af0082717e20f9f5d681e03e474e | | host_status | UP | | id | 5d5f3e84-606f-4763-b659-cf5da1f45862 | | image | CentOS-7.4-x86_64-2021-08-21 (8810b721-65ee-429d-b40e-0de4de737af1) | | key_name | - | | locked | False | | metadata | {} | | name | 1 | | os-extended-volumes:volumes_attached | [] | | progress | 0 | | security_groups | default | | status | VERIFY_RESIZE | | tags | [] | | tenant_id | 76e5e27da0ea44b39339f219f9a3ea4b | | updated | 2021-12-07T14:48:19Z | | user_id | e8449e95fcfe42369f9e75e77309c369 | | vlan192 network | 10.10.192.142 | +--------------------------------------+---------------------------------------------------------------------+
从上可以看到实际已经扩容到c4m8d150,状态为VERIFY_RESIZE
最后确认迁移
命令:nova resize-confirm <实例ID>
1 # nova resize-confirm 5d5f3e84-606f-4763-b659-cf5da1f45862
执行这一步之后再查看实际状态nova show <实例id> 就可以看到状态已经变为SHUTOFF,表示扩容已经成功