代码改变世界

删除openstack的 compute node

2014-05-11 01:42  陈尚华  阅读(1478)  评论(0编辑  收藏  举报

一件很坑爹事情,openstack没有直接删除计算节点的命令,只能通过下面的方式禁用计算节点的服务:

nova-manage service disable --host=<node name> --service=nova-compute

nova-manage service disable --host=<node name> --service=nova-network

nova-manage service disable --host=<node name> --service=nova-scheduler

由于对工作有些洁癖,看不惯那些多余没用的东西,最后修改数据库将其删除,参考命令如下:

mysql -uroot -ppasswd

mysql> use nova ;

mysql> show tables;

mysql> select hypervisor_hostname  from compute_nodes;

+---------------------+

| hypervisor_hostname |

+---------------------+

| node01              |

| node02              |

| node03              |

| node04              |

| node65              |

| node07              |

| node08              |

| node09              |

| node05              |

+---------------------+

9 rows in set (0.00 sec)

mysql> delete from compute_nodes where hypervisor_hostname='node65';

Query OK, 1 row affected (0.02 sec)

//上面命令删除了compute_nodes表中关于node65的信息,在dashboard的“虚拟机管理器”已经看不到node65的信息了,但是系统中nova service-list还是能看到。

mysql>delete from services where host='node65';

//删除services表中关于node65的信息,这样nova service-list就看不到node65的信息了。

mysql>flush privileges;

mysql>quit;