云主机无法从回收站删除解决办法

云主机无法从回收站删除解决办法

问题描述

云主机软删除后被放入回收站,在回收站中再次执行删除操作后,回收站页面该云主机仍然存在。

解决方法

1.查看云主机的资源占用信息(控制节点执行)

openstack resource provider allocation show your-vm-id

**注意: **

如果命令执行不成功, 需要查看包osc-placement是否安装

pip show osc-placement # 查看osc-placement信息
pip install osc-placement # 安装osc-placement

2.如果第一步执行有输出, 则说明云主机占用的资源没有被释放, 则需要查看日志, 进一步定位问题.

如果没有任何输出, 则说明该虚机占用的资源已经被释放.

3.如果资源已经被释放, 则修改nova数据库中虚机的deleted记录

查询nova数据库的用户名和密码:

控制节点执行:

grep 'connection = mysql+pymysql://nova:' /etc/kolla/nova-api/nova.conf

例如:

[root@cube-dev nova-api]# grep 'connection = mysql+pymysql://nova:' /etc/kolla/nova-api/nova.conf 
connection = mysql+pymysql://nova:sHm8Co83BB1PJDqtzAyKh43VzYHZfwx0tTkVW77P@10.20.8.253:3306/nova

用户名是nova, 密码是sHm8Co83BB1PJDqtzAyKh43VzYHZfwx0tTkVW77P

进入mariadb容器:

docker exec -u root -it mariadb bash

进入nova数据库: -p后接nova用户的密码

mysql -u nova -psHm8Co83BB1PJDqtzAyKh43VzYHZfwx0tTkVW77P nova

查询虚机的信息: uuid换成实际的云主机id

MariaDB [nova]> select uuid, hostname, deleted, cleaned from instances where uuid="c7d81cbc-99e1-4f5a-8e86-81fc551f3ae2";
+--------------------------------------+----------+---------+---------+
| uuid                                 | hostname | deleted | cleaned |
+--------------------------------------+----------+---------+---------+
| c7d81cbc-99e1-4f5a-8e86-81fc551f3ae2 | vm-img-2 |      0 |       0 |
+--------------------------------------+----------+---------+---------+
1 row in set (0.001 sec)

修改云主机deleted信息: uuid换成实际的云主机id修改deleted=1, cleaned=1

MariaDB [nova]> update instances set deleted=1, cleaned=1 where uuid="c7d81cbc-99e1-4f5a-8e86-81fc551f3ae2";
Query OK, 1 row affected (0.029 sec)
Rows matched: 1  Changed: 1  Warnings: 0

退出数据库: exit

MariaDB [nova]> exit
Bye
(mariadb)[root@cube-dev /]# 

退出mariadb容器:exit

(mariadb)[root@cube-dev /]# exit
exit
[root@cube-dev ~]# 
分享到: 生成海报
avatar

热门文章

  • 一对一资讯网 为您提供可靠的服务

    一对一主机系统飞蝌云计算
    登录一对一资讯平台  

    登录

    忘记密码 ?