openstack中徹底刪除計算節點的操作記錄

散盡浮華發表於2016-11-02

 

在使用openstack的過程中,我們經常會新增好幾臺計算節點來部署虛擬機器,在後續使用中由於某些原因,一些計算節點出現了問題,需要將這些出了問題的計算節點從openstack的控制節點中踢出去!但是很多時候,在刪除計算節點的時候由於刪除不徹底而導致了後面使用openstack出現了諸多問題。

下面記錄了在openstack中徹底刪除計算節點linux-node2.openstack的操作:

在控制節點上操作

檢視計算節點

[root@linux-node1 src]# openstack host list
+-----------------------+-------------+----------+
| Host Name             | Service     | Zone     |
+-----------------------+-------------+----------+
| linux-node1.openstack | conductor   | internal |
| linux-node1.openstack | cert        | internal |
| linux-node1.openstack | consoleauth | internal |
| linux-node1.openstack | scheduler   | internal |
| linux-node1.openstack | compute     | nova     |
| linux-node2.openstack | compute     | nova     |
+-----------------------+-------------+----------+

[root@linux-node1 src]# nova service-list  
+----+------------------+-----------------------+----------+---------+-------+----------------------------+-----------------+
| Id | Binary           | Host                  | Zone     | Status  | State | Updated_at                 | Disabled Reason |
+----+------------------+-----------------------+----------+---------+-------+----------------------------+-----------------+
| 1  | nova-conductor   | linux-node1.openstack | internal | enabled | up    | 2016-11-02T11:25:08.000000 | -               |
| 4  | nova-cert        | linux-node1.openstack | internal | enabled | up    | 2016-11-02T11:25:07.000000 | -               |
| 5  | nova-consoleauth | linux-node1.openstack | internal | enabled | up    | 2016-11-02T11:25:07.000000 | -               |
| 6  | nova-scheduler   | linux-node1.openstack | internal | enabled | up    | 2016-11-02T11:25:07.000000 | -               |
| 7  | nova-compute     | linux-node1.openstack | nova     | enabled | up    | 2016-11-02T11:24:59.000000 | -               |
| 8  | nova-compute     | linux-node2.openstack | nova     | enabled | down  | 2016-10-31T05:55:24.000000 | -               |
+----+------------------+-----------------------+----------+---------+-------+----------------------------+-----------------+

雖然上面顯示的一個計算節點linux-node2.openstack 的State狀態是down,但是Status狀態還是enabled可用。
現在需要使它為不可用。

[root@linux-node1 src]# nova service-disable linux-node2.openstack nova-compute  
+-----------------------+--------------+----------+
| Host                  | Binary       | Status   |
+-----------------------+--------------+----------+
| linux-node2.openstack | nova-compute | disabled |
+-----------------------+--------------+----------+
[root@linux-node1 src]# nova service-list  
+----+------------------+-----------------------+----------+----------+-------+----------------------------+-----------------+
| Id | Binary           | Host                  | Zone     | Status   | State | Updated_at                 | Disabled Reason |
+----+------------------+-----------------------+----------+----------+-------+----------------------------+-----------------+
| 1  | nova-conductor   | linux-node1.openstack | internal | enabled  | up    | 2016-11-02T11:25:48.000000 | -               |
| 4  | nova-cert        | linux-node1.openstack | internal | enabled  | up    | 2016-11-02T11:25:47.000000 | -               |
| 5  | nova-consoleauth | linux-node1.openstack | internal | enabled  | up    | 2016-11-02T11:25:47.000000 | -               |
| 6  | nova-scheduler   | linux-node1.openstack | internal | enabled  | up    | 2016-11-02T11:25:47.000000 | -               |
| 7  | nova-compute     | linux-node1.openstack | nova     | enabled  | up    | 2016-11-02T11:25:49.000000 | -               |
| 8  | nova-compute     | linux-node2.openstack | nova     | disabled | down  | 2016-11-02T11:25:48.000000 | -               |
+----+------------------+-----------------------+----------+----------+-------+----------------------------+-----------------+

在資料庫裡清理(nova庫)

[root@linux-node1 ~]# mysql -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 230863
Server version: 5.5.50-MariaDB MariaDB Server

Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> use nova;
Database changed
MariaDB [nova]> delete from nova.services where host="linux-node2.openstack"; 
Query OK, 1 row affected (0.00 sec)
MariaDB [nova]> delete from compute_nodes where hypervisor_hostname="linux-node2.openstack";
Query OK, 1 row affected (0.00 sec)
MariaDB [nova]> select host from nova.services;
+-----------------------+
| host                  |
+-----------------------+
| linux-node1.openstack |
| linux-node1.openstack |
| linux-node1.openstack |
| linux-node1.openstack |
| linux-node1.openstack |
+-----------------------+
5 rows in set (0.00 sec)

MariaDB [nova]> select hypervisor_hostname from compute_nodes;
+-----------------------+
| hypervisor_hostname   |
+-----------------------+
| linux-node1.openstack |
+-----------------------+
1 row in set (0.00 sec)

再次檢視計算節點,就發現已經刪除了linux-node2.openstack

[root@linux-node1 src]# openstack host list
+-----------------------+-------------+----------+
| Host Name             | Service     | Zone     |
+-----------------------+-------------+----------+
| linux-node1.openstack | conductor   | internal |
| linux-node1.openstack | cert        | internal |
| linux-node1.openstack | consoleauth | internal |
| linux-node1.openstack | scheduler   | internal |
| linux-node1.openstack | compute     | nova     |
+-----------------------+-------------+----------+
[root@linux-node1 src]# nova service-list
+----+------------------+-----------------------+----------+---------+-------+----------------------------+-----------------+
| Id | Binary           | Host                  | Zone     | Status  | State | Updated_at                 | Disabled Reason |
+----+------------------+-----------------------+----------+---------+-------+----------------------------+-----------------+
| 1  | nova-conductor   | linux-node1.openstack | internal | enabled | up    | 2016-11-02T11:44:08.000000 | -               |
| 4  | nova-cert        | linux-node1.openstack | internal | enabled | up    | 2016-11-02T11:44:08.000000 | -               |
| 5  | nova-consoleauth | linux-node1.openstack | internal | enabled | up    | 2016-11-02T11:44:07.000000 | -               |
| 6  | nova-scheduler   | linux-node1.openstack | internal | enabled | up    | 2016-11-02T11:44:07.000000 | -               |
| 7  | nova-compute     | linux-node1.openstack | nova     | enabled | up    | 2016-11-02T11:44:09.000000 | -               |
+----+------------------+-----------------------+----------+---------+-------+----------------------------+-----------------+

相關文章