问题描述:
在cloudstack 中用ceph作为主存储时,常常是填入ceph-mon的一台机器ip作为接入口。但是一旦这台机器出现问题,cloudstack将无法访问主存储。
解决方案:
一. 登录到cloustack manager 机器
1. 关闭cloustack manager服务
cloudstack-management# service cloudstack-management stop
2. 修改数据库对应的storage_pool项
cloudstack-managemant# mysql -uroot -p
mysql> use cloud;
mysql> select * from storage_pool where pool_type=‘RBD‘;
获取pool_type=‘RBD‘的id, 例如id是9:
mysql> update storage_pool set host_address=‘ceph-mon‘ where id=9;
mysql> quit;
3. 添加对应host dns. 例如ceph-mon对应192.168.42.196, 192.168.42.197. 192.168.42.198
cloudstack-management# vim /etc/hosts
192.168.42.196 ceph-mon
192.168.42.197 ceph-mon
192.168.42.198 ceph-mon
二. 逐一登录所有cloudstack host(cloudstack angent)机器删除旧的ceph相关的secret-list项目
1. 查询相关的的ceph secret项目
cloudstack-agent# virsh secret-list
UUID Usage
f34f4f01-9ee3-3e45-8c12-33990bd133a3 ceph admin@192.168.42.196:6789/pub-rbd
2. 删除对应的项目
cloudstack-agent# secret-undefine f34f4f01-9ee3-3e45-8c12-33990bd133a3
3. 添加对应host dns. 例如ceph-mon对应192.168.42.196, 192.168.42.197. 192.168.42.198
cloudstack-anget# vim /etc/hosts
192.168.42.196 ceph-mon
192.168.42.197 ceph-mon
192.168.42.198 ceph-mon
4. 重启libvirtd和cloudstack-agent服务
cloudstack-agent# service libvirtd restart
cloudstack-agent# service cloudstack-agent restart
三. 回到cloustack manager 机器
1. 重新启动cloustack management 服务
cloudstack-management# service cloustack-management restart
本文出自 “月童” 博客,谢绝转载!
原文:http://littlefive.blog.51cto.com/6440205/1894204