事象内容
openstack server resize コマンドを使って、インスタンスのリサイズをしようとすると、下記エラーとなる。
[root@controller ~]# openstack server resize --flavor 102 999 有効なホストが見つかりませんでした。サイズ変更の対象として有効なホストが見つかりません (HTTP 400) (Request-ID: req-3582be47-3f98-47dd-b4c1-efd2df123889) [root@controller ~]#
コントローラーノードの nova-conductor のログ( /var/log/nova/nova-conductor.log )を確認すると、以下エラーメッセージが出力されている。
Failed to compute_task_migrate_server: 有効なホストが見つかりませんでした。使用可能なホストが不足しています。
[root@controller ~]# tail -F /var/log/nova/nova-conductor.log 2018-11-11 21:45:08.044 2143 WARNING nova.scheduler.utils [req-3582be47-3f98-47dd-b4c1-efd2df123889 64b377d70bc4457faa169912b02a24d1 b9644b0689c4469baa45f9acb009d860 - default default] Failed to compute_task_migrate_server: 有効なホストが見つかりませんでした。使用可能なホストが不足しています。 Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/server.py", line 226, in inner return func(*args, **kwargs) File "/usr/lib/python2.7/site-packages/nova/scheduler/manager.py", line 169, in select_destinations allocation_request_version, return_alternates) File "/usr/lib/python2.7/site-packages/nova/scheduler/filter_scheduler.py", line 91, in select_destinations allocation_request_version, return_alternates) File "/usr/lib/python2.7/site-packages/nova/scheduler/filter_scheduler.py", line 256, in _schedule claimed_instance_uuids) File "/usr/lib/python2.7/site-packages/nova/scheduler/filter_scheduler.py", line 293, in _ensure_sufficient_hosts raise exception.NoValidHost(reason=reason) NoValidHost: \u6709\u52b9\u306a\u30db\u30b9\u30c8\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f7f\u7528\u53ef\u80fd\u306a\u30db\u30b9\u30c8\u304c\u4e0d\u8db3\u3057\u3066\u3044\u307e\u3059\u3002 : NoValidHost_Remote: \u6709\u52b9\u306a\u30db\u30b9\u30c8\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f7f\u7528\u53ef\u80fd\u306a\u30db\u30b9\u30c8\u304c\u4e0d\u8db3\u3057\u3066\u3044\u307e\u3059\u3002 2018-11-11 21:45:08.045 2143 WARNING nova.scheduler.utils [req-3582be47-3f98-47dd-b4c1-efd2df123889 64b377d70bc4457faa169912b02a24d1 b9644b0689c4469baa45f9acb009d860 - default default] [instance: 32a44bc3-b1e5-4a07-b9ea-ee1cc8664dba] Setting instance to ACTIVE state.: NoValidHost_Remote: \u6709\u52b9\u306a\u30db\u30b9\u30c8\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f7f\u7528\u53ef\u80fd\u306a\u30db\u30b9\u30c8\u304c\u4e0d\u8db3\u3057\u3066\u3044\u307e\u3059\u3002
解決方法
リサイズの処理を許可する設定がされていないことが原因であるため、リサイズの処理を許可する設定をします。
コントローラーノードの nova 設定ファイル( /etc/nova/nova.conf )を編集し、以下設定します。
[root@controller ~]# vi /etc/nova/nova.conf
[ DEFAULT ] セクションにある allow_resize_to_same_host を true(有効)にします。
[DEFAULT] # ... allow_resize_to_same_host=true
設定を反映するために、コントローラーノードの nova 関連のサービスを再起動します。
■ nova 関連のサービス再起動 [root@controller ~]# systemctl restart openstack-nova* [root@controller ~]# ■ nova 関連のサービス起動状態を確認 [root@controller ~]# systemctl status openstack-nova* ● openstack-nova-consoleauth.service - OpenStack Nova VNC console auth Server Loaded: loaded (/usr/lib/systemd/system/openstack-nova-consoleauth.service; enabled; vendor preset: disabled) Active: active (running) since 日 2018-11-11 21:59:30 JST; 13s ago Main PID: 9698 (nova-consoleaut) CGroup: /system.slice/openstack-nova-consoleauth.service └─9698 /usr/bin/python2 /usr/bin/nova-consoleauth 11月 11 21:59:27 controller systemd[1]: Starting OpenStack Nova VNC console.... 11月 11 21:59:30 controller systemd[1]: Started OpenStack Nova VNC console .... ● openstack-nova-conductor.service - OpenStack Nova Conductor Server Loaded: loaded (/usr/lib/systemd/system/openstack-nova-conductor.service; enabled; vendor preset: disabled) Active: active (running) since 日 2018-11-11 21:59:27 JST; 16s ago Main PID: 9659 (nova-conductor) CGroup: /system.slice/openstack-nova-conductor.service ├─9659 /usr/bin/python2 /usr/bin/nova-conductor ├─9688 /usr/bin/python2 /usr/bin/nova-conductor └─9689 /usr/bin/python2 /usr/bin/nova-conductor 11月 11 21:59:24 controller systemd[1]: Starting OpenStack Nova Conductor S.... 11月 11 21:59:27 controller systemd[1]: Started OpenStack Nova Conductor Se.... ● openstack-nova-api.service - OpenStack Nova API Server Loaded: loaded (/usr/lib/systemd/system/openstack-nova-api.service; enabled; vendor preset: disabled) Active: active (running) since 日 2018-11-11 21:59:30 JST; 12s ago Main PID: 9670 (nova-api) CGroup: /system.slice/openstack-nova-api.service ├─9670 /usr/bin/python2 /usr/bin/nova-api ├─9722 /usr/bin/python2 /usr/bin/nova-api ├─9723 /usr/bin/python2 /usr/bin/nova-api ├─9726 /usr/bin/python2 /usr/bin/nova-api └─9727 /usr/bin/python2 /usr/bin/nova-api 11月 11 21:59:25 controller systemd[1]: Starting OpenStack Nova API Server... 11月 11 21:59:30 controller systemd[1]: Started OpenStack Nova API Server. ● openstack-nova-novncproxy.service - OpenStack Nova NoVNC Proxy Server Loaded: loaded (/usr/lib/systemd/system/openstack-nova-novncproxy.service; enabled; vendor preset: disabled) Active: active (running) since 日 2018-11-11 21:59:23 JST; 19s ago Main PID: 9644 (nova-novncproxy) CGroup: /system.slice/openstack-nova-novncproxy.service └─9644 /usr/bin/python2 /usr/bin/nova-novncproxy --web /usr/share/... 11月 11 21:59:23 controller systemd[1]: Started OpenStack Nova NoVNC Proxy .... 11月 11 21:59:23 controller systemd[1]: Starting OpenStack Nova NoVNC Proxy.... ● openstack-nova-scheduler.service - OpenStack Nova Scheduler Server Loaded: loaded (/usr/lib/systemd/system/openstack-nova-scheduler.service; enabled; vendor preset: disabled) Active: active (running) since 日 2018-11-11 21:59:27 JST; 15s ago Main PID: 9639 (nova-scheduler) CGroup: /system.slice/openstack-nova-scheduler.service ├─9639 /usr/bin/python2 /usr/bin/nova-scheduler ├─9692 /usr/bin/python2 /usr/bin/nova-scheduler └─9693 /usr/bin/python2 /usr/bin/nova-scheduler 11月 11 21:59:23 controller systemd[1]: Starting OpenStack Nova Scheduler S.... 11月 11 21:59:27 controller systemd[1]: Started OpenStack Nova Scheduler Se.... ● openstack-nova-console.service - OpenStack Nova Console Proxy Server Loaded: loaded (/usr/lib/systemd/system/openstack-nova-console.service; enabled; vendor preset: disabled) Active: active (running) since 日 2018-11-11 21:59:30 JST; 13s ago Main PID: 9699 (nova-console) CGroup: /system.slice/openstack-nova-console.service └─9699 /usr/bin/python2 /usr/bin/nova-console 11月 11 21:59:27 controller systemd[1]: Starting OpenStack Nova Console Pro.... 11月 11 21:59:30 controller systemd[1]: Started OpenStack Nova Console Prox.... Hint: Some lines were ellipsized, use -l to show in full. [root@controller ~]#
次に、コンピュートノードの nova 設定ファイル( /etc/nova/nova.conf )を同様に編集し、以下設定します。
[root@compute1 ~]# vi /etc/nova/nova.conf
[ DEFAULT ] セクションにある allow_resize_to_same_host を true(有効)にします。
[DEFAULT] # ... allow_resize_to_same_host=true
設定を反映するために、コンピュートノードの nova 関連のサービスを再起動します。
■ nova 関連のサービス再起動 [root@compute1 ~]# systemctl restart openstack-nova* [root@compute1 ~]# ■ nova 関連のサービス起動状態を確認 [root@compute1 ~]# systemctl status openstack-nova* ● openstack-nova-compute.service - OpenStack Nova Compute Server Loaded: loaded (/usr/lib/systemd/system/openstack-nova-compute.service; enabled; vendor preset: disabled) Active: active (running) since 日 2018-11-11 21:57:18 JST; 4min 8s ago Main PID: 7243 (nova-compute) Tasks: 24 CGroup: /system.slice/openstack-nova-compute.service ├─7243 /usr/bin/python2 /usr/bin/nova-compute ├─7298 /usr/bin/python2 /bin/privsep-helper --config-file /usr/sha... └─7387 /usr/bin/python2 /bin/privsep-helper --config-file /usr/sha... 11月 11 21:57:16 compute1 systemd[1]: Starting OpenStack Nova Compute Server... 11月 11 21:57:18 compute1 systemd[1]: Started OpenStack Nova Compute Server. 11月 11 21:57:18 compute1 sudo[7283]: nova : TTY=unknown ; PWD=/ ; USE...ck 11月 11 22:00:00 compute1 sudo[7366]: nova : TTY=unknown ; PWD=/ ; USE...ck Hint: Some lines were ellipsized, use -l to show in full. [root@compute1 ~]#