ZStack安装后,主要会使用两个路径,分别对这两个路径进行说明
/usr/local/zstack
此路径是ZStack的主要安装路径(All-In-One安装路径),为ManagementNode安装保存路径,即此路径会安装在ManagementNode上。此路径包含ZStack的Tomcat服务、Ansible服务、安装源码包、垃圾收集等等。
ManagementNode会不断轮询Agent,来收集Agent信息。当发现有服务down后,会自动重新部署安装Agent节点,替换代码。
目录文件分析
Name | Description |
---|---|
ansible | 包含所有ZStack部署所需要的源代码、ansible部署文件。应该是ansible的source code目录 |
apache-tomcat-7.0.35/webapps/zstack | ZStack core的Web Server,接受处理请求,提供可靠保障机制所需的备份原始文件 |
Notice: 在ZStack中,自动维护部署任务应该是由Ansible负责。虽然在代码中有自动运维工具SaltStack和Puppet的影子,但是在验证安装中并没有发现安装了salt和puppet。因此认为在ZStack商业版中可能会用到这两个工具,社区版则只使用Ansible
/var/lib/zstack
此路径是zstack的Agent运行时环境,即此路径会安装在host节点。在virtualenv中包含console代理、virtualenv、KVM Agent等等。
KVM Agent使用cherrypy来提供http服务。即在Agent端提供Http server功能,接收来自ManagementNode的请求,如该agent的状态收集请求、控制请求等。
/var/lib/zstack/virtualenv目录文件分析
Name | Description |
---|---|
consoleproxy | 守护进程,负责VNC连接 |
kvm | 客户端python代码。当此处代码发生修改,或在服务关闭,此处代码会被ManagementNode替换成备份代码,重启服务 |
sftpbackupstorage | |
zstackcli | zstackcli运行时代码 |
zstackctl | zstackctl运行时代码 |
zstack-dashboard | dashboard的运行部署 |