安装CloudStack时,会创建3个库cloud、cloud_usage、cloudbridge。但分析后发现只有cloud库是我们需要的。 CloudStack中常用库表:
1、vm_instance 虚拟机实例表
2、nics 网卡表
3、volumes 硬盘表
4、vm_template 模板表
5、configuration 参数配置; 二、可以同样的在数据库中查找这个VM ;存不存在这个模板;
mysql> SELECT * FROM host WHERE name like '%s-1-VM%'\G //主机信息中的系统虚机信息
mysql> SELECT * FROM vm_instance WHERE name like '%s-1-VM%'\G //虚拟机实例中的系统虚机信息,
看来这两个状态;(state 数据库表结构状态)
了解这两个虚拟机的朋友都知道,这是个很强大的虚拟机,删除之后能够重建,一般这两个虚拟机出现了故障,也是通过删除,重建解决的,既然UI界面上面无法删除,那就在数据库中修改相应字段,将其状态置为Destroyed即可。
(根据状态可以更换成其他的 running ;不过不轻易操作、因为系统VM 是表现当前的状态、所以一定要排查的到问题的所在才能解决的)
UPDATE vm_instance SET state='Destroyed' WHERE name='s-1-VM';
UPDATE vm_instance SET state='Destroyed' WHERE name='v-2-VM';
某kvm host主机挂掉后重新上线,云系统找不到cloudstack-agent,
打开数据库vm_instance表检查各虚拟机的运行状态(state字段)是否跟实际有出入(比如明明应是Stopped的,说它Running),
把错误的地方修改保存后重启cloudstack-management。
ssh 连接linux (系统虚拟机)
在kvm的宿主机上连接这个ip地址 ssh-i /root/.ssh/id_rsa.cloud -p 3922 root@169.254.2.132(本地链接地址)
执行/usr/local/cloud/systemvm/ssvm-check.sh
会有提示java 未运行;
然后执行; root@v-2190-VM:/usr/local/cloud/systemvm# sh run.sh
**********
Error occurred during initialization of VM
Could not reserve enough space for objectheap
Could not create the Java virtual machine.
查看什么问题、、这个提示的就是空间不足;
我这个机器的问题是java启动不了,原因为机器的内存不足,手动更改内存;
export _JAVA_OPTIONS="-Xmx256M"
或者 export _JAVA_OPTIONS="-Xms256M -Xmx256M"
然后执行/usr/local/cloud/systemvm/run.sh
出现无法写入路由表:
Resource [DataCenter:1] is unreachable:Unable to apply save password entry on router
多有可能是虚拟路由表的问题;
通过连接地址进入虚拟路由表;查看内存进程; 或者是一些日志占用较大 (文件查看) du-sh * | sort -n (文件大小排序) 或者]# ls -lhs
连接跟踪(CONNTRACK),顾名思义,就是跟踪并且记录连接状态;
Conntrackd提供了一个用户控件守护进程用来追踪iptables连接状态信息。守护进程在几个防火墙间同步网络连接的状态信息。因此conntrackd是实现高可用防火墙不可缺少的组件。
cloudstack-agent日志报错如下:
Connected to 10.10.10.15:8250
Proccess agent startup answer, agent id = 0
Set agent id 0
Startup Response Received: agent id = 0
Connected to the server
Lost connection to the server. Dealing withthe remaining commands...
注意看manage的日志中的host id 和cloudstack-agent日志中的agent id,是不是对应不上,是的话删除这个host重新添加。