• OpenStack虚拟机删除后停在deleting无法正常删除


    公司环境中批量删除虚拟机的过程中出现某些虚拟机无法正常删除,任务状态显示删除中但是虚拟无法删除。

    通过查询相关文章(下文转载)发现应该是instances row中键值未更新错误导致,但是按照操作云主机数量中内容移除信息但是概况中还是出现该资源被占用的情况。(批量方式待解决)

    1.命令行处理方式:(完美解决)

    通过rest-state和force-delete后某些报错VM可以清除(测试可行,但是有时候nova delete命令无效,控制台测试可以正常删除)

    # nova reset-state --active UUID

    # nova force-delete --active UUID

    [root@controller1 ~]# nova list

    [root@controller1 ~]# nova reset-state 1274d42e-4934-4c8b-96ea-c62adeb0210d
    Reset state for server 1274d42e-4934-4c8b-96ea-c62adeb0210d succeeded; new state is error
    [root@controller1 ~]# nova list

    [root@controller1 ~]# nova reset-state 1274d42e-4934-4c8b-96ea-c62adeb0210d --active
    Reset state for server 1274d42e-4934-4c8b-96ea-c62adeb0210d succeeded; new state is active
    [root@controller1 ~]# nova list

    [root@controller1 ~]# nova delete 1274d42e-4934-4c8b-96ea-c62adeb0210d
    Request to delete server 1274d42e-4934-4c8b-96ea-c62adeb0210d has been accepted.
    [root@controller1 ~]# nova list

    具体的BUG信息请参考:https://review.openstack.org/#/c/294491/  (通常需要删除后重启nova-compute服务才能生效该方法不需要重启服务)

    https://community.rackspace.com/products/f/45/t/1478

    2.数据库处理方式:(未完全解决,概况中存在资源被占用情况)

    MariaDB [nova]> select * from instancesG

    *************************** 73. row ***************************
    created_at: 2017-08-24 09:49:35
    updated_at: 2017-08-25 03:40:45
    deleted_at: NULL
    id: 174
    internal_id: NULL
    user_id: 1487af17b9b34850972f451f34394c34
    project_id: af087ac33ae2455091db74836d07e1b0
    image_ref: e5cf5847-50d0-4584-b77e-0db5479ee7c0
    kernel_id:
    ramdisk_id:
    launch_index: 0
    key_name: NULL
    key_data: NULL
    power_state: 1
    vm_state: active
    memory_mb: 16384
    vcpus: 4
    hostname: concar-es01
    host: compute1
    user_data: NULL
    reservation_id: r-b4ya1x14
    scheduled_at: NULL
    launched_at: 2017-08-24 09:50:46
    terminated_at: NULL
    display_name: concar-es1
    display_description: concar-es01
    availability_zone: nova
    locked: 0
    os_type: NULL
    launched_on: compute1
    instance_type_id: 57
    vm_mode: NULL
    uuid: d1027782-6dbe-4bd2-ae02-f69c5632e905
    architecture: NULL
    root_device_name: /dev/vda
    access_ip_v4: NULL
    access_ip_v6: NULL
    config_drive:
    task_state: deleting
    default_ephemeral_device: NULL
    default_swap_device: NULL
    progress: 0
    auto_disk_config: 1
    shutdown_terminate: 0
    disable_terminate: 0
    root_gb: 30
    ephemeral_gb: 0
    cell_name: NULL
    node: compute1
    deleted: 0
    locked_by: NULL
    cleaned: 0
    ephemeral_key_uuid: NULL

    *************************** 74. row ***************************

    使用命令进行修改

    MariaDB [nova]> update instances set deleted=1 where uuid='d1027782-6dbe-4bd2-ae02-f69c5632e905';

    修改后:

    *************************** 73. row ***************************
    created_at: 2017-08-24 09:49:35
    updated_at: 2017-08-25 03:40:45
    deleted_at: NULL
    id: 174
    internal_id: NULL
    user_id: 1487af17b9b34850972f451f34394c34
    project_id: af087ac33ae2455091db74836d07e1b0
    image_ref: e5cf5847-50d0-4584-b77e-0db5479ee7c0
    kernel_id:
    ramdisk_id:
    launch_index: 0
    key_name: NULL
    key_data: NULL
    power_state: 1
    vm_state: active
    memory_mb: 16384
    vcpus: 4
    hostname: concar-es01
    host: compute1
    user_data: NULL
    reservation_id: r-b4ya1x14
    scheduled_at: NULL
    launched_at: 2017-08-24 09:50:46
    terminated_at: NULL
    display_name: concar-es1
    display_description: concar-es01
    availability_zone: nova
    locked: 0
    os_type: NULL
    launched_on: compute1
    instance_type_id: 57
    vm_mode: NULL
    uuid: d1027782-6dbe-4bd2-ae02-f69c5632e905
    architecture: NULL
    root_device_name: /dev/vda
    access_ip_v4: NULL
    access_ip_v6: NULL
    config_drive:
    task_state: deleting
    default_ephemeral_device: NULL
    default_swap_device: NULL
    progress: 0
    auto_disk_config: 1
    shutdown_terminate: 0
    disable_terminate: 0
    root_gb: 30
    ephemeral_gb: 0
    cell_name: NULL
    node: compute1
    deleted: 1
    locked_by: NULL
    cleaned: 0
    ephemeral_key_uuid: NULL

    修改前和修改后对比:

    修改后和其他正常删除的虚拟信息对比:

     删除后更新为:

    转载链接:http://www.cnblogs.com/horizonli/p/5172213.html

    部署OpenStack问题汇总(五)--openstack中删除虚拟主机,状态一直未deleting

    【原创文章,转载请注明出处】

    一、我重启了该机器,之后想删除没有创建成功的虚拟机(没有打开cpu的vt),结果发现状态一直为deleting状态。在这个状态下创建虚拟机也失败。

     

    二、分析:在/var/log/nova/nova-compute.log的log找到如下的信息:

    ---------------------------------------------------------------------------------------------------------

    2012-08-13 14:30:45 CRITICAL nova [-] Instance instance-00000002 could not be found.

    ---------------------------------------------------------------------------------------------------------

    接着又发现nova-compute(service nova-compute status)的状态为stop,重启不能成功。

     

    三、处理:

    最后我修改了nova数据库中的instance-00000002的deleted,把它变成1。

    mysql> select * from instancesG
    mysql> update instances set deleted=1 where id=2;   (注意:根据不同的版本deleted的值不定,有些版本会改成对应的ID号。)

    之后,dashboard的页面中发现已经删除了。

    重启nova-compute,再次创建虚拟机,状态都为active。

     

    问题的思考方向:虚拟机的操作(创建、删除等)一定跟nova-compute有关。


    ----------------------------------------------------------------------------------------------------
    2014年3月25日更新
    在按照以上操作后,发现虽然实例已经删除,如下图:
    如果要手动删除一个instance:
     
     
                               
    但是在概况中依然出现了该实例占用内存、cpu的信息:如下图的windows7-vm,这个instance已经做了上面的操作进行删除,但是这里还在显示。
     
     
    然后,为了避免干扰测试,正确删除了testwin后,ssh连接上主机。打开mysql数据库,进入nova数据库。
    使用show tables命令找到下面三个表:
    quota_classes      #打开发现为空表
    quota_usages      #这里面的内容表示为上图中的图饼。
    quotas                  #这里面表示的是一些配额的限制值。
    这时候,查看quota_usages表
    select  *  from quota_usages;
     
    将表中的in_use 的值改为0,再刷新dashboard,就看到正常的图饼了。
     
     
     
     删除完毕。
  • 相关阅读:
    一秒解决element容器布局显示内部调节框的问题
    操作管理员
    Linux_网络基础管理
    如何解决在WordPress安装Redis插件时需要输入FTP问题?
    如何在我的EC2实例状态更改时获取自定义电子邮件通知
    利用S3fs在Amazon EC2 Linux实例上挂载S3存储桶
    源码安装Apache(httpd)
    Linux_源码安装包管理理论概述
    Linux_yum命令详解
    Linux_yum仓库管理
  • 原文地址:https://www.cnblogs.com/nakky/p/7427560.html
Copyright © 2020-2023  润新知