【问题标题】:Openstack can not delete instance from dashboardOpenstack 无法从仪表板中删除实例
【发布时间】:2019-01-09 01:53:15
【问题描述】:

Openstack Havana 中有 66 个实例。我认为这些实例是僵尸实例。当我单击Terminate Instance 时,仪表板显示Terminate Success info。但是该实例仍然存在于仪表板上,其状态为Running。我已经杀死了服务器上的所有qemu-kvm 程序。

在 Mysql 中,数据库nova 仍然存在大量数据。我不知道从哪里开始删除这些数据。有人可以给我一些建议吗?非常感谢。

【问题讨论】:

    标签: openstack


    【解决方案1】:

    我在 OpenStack 的 Icehouse 版本中完成了此操作,也许您可​​以将其映射到 Havana 版本:

    1. 登录数据库(您应该在控制台中看到> mysql

    2. 选择新星数据库:

      use nova;

    3. 将表 instances 中的行标记为已删除(即“软删除”):

      update instances set deleted_at = updated_at, deleted = id, power_state = 0, vm_state = "deleted", terminated_at = updated_at, root_device_name = NULL, task_state = NULL where deleted = 0;

      所有您的实例!如果您想为 where-clause 选择另一列,请使用 show columns from instances;

    4. 适当地更新表 instance_info_caches 中的缓存:

      update instance_info_caches set deleted_at = updated_at, deleted = id where deleted = 0;

    5. 更新fixed_ips表:

      update fixed_ips set instance_id = NULL, allocated = 0, virtual_interface_id = NULL where deleted = 0;

    注意:如果列deleted包含一个值不等于0,那么这似乎是说的方式该行应该被删除。当我通过 API 删除实例时,OpenStack 似乎选择 id 作为 deleted 的值。

    来源http://www.databaseskill.com/4605135/

    【讨论】:

      【解决方案2】:

      您可以使用以下命令手动重置VM状态并删除

      $ nova reset-state c6bbbf26-b40a-47e7-8d5c-eb17bf65c485
      $ nova delete c6bbbf26-b40a-47e7-8d5c-eb17bf65c485
      

      http://docs.openstack.org/admin-guide-cloud/content//reset-state.html

      【讨论】:

        【解决方案3】:

        如何恢复软删除? 我使用了以下命令:

        update instances set deleted_at = updated_at, deleted = id, power_state = 0, vm_state = "deleted", terminated_at = updated_at, root_device_name = NULL, task_state = NULL where deleted = 0;
        

        【讨论】:

          猜你喜欢
          • 2018-03-14
          • 2017-05-18
          • 2015-07-20
          • 2016-10-16
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多