nova組件對應的容器如下
容器服務啟動,容器啟動的時候都會調用kolla_start命令,在這個目錄下/usr/local/bin/kolla_start。
/usr/local/bin/kolla_start這個調用了容器根目錄下的run_command命令。
run_command就是通過config.json中傳遞過來的comand命令(具體實現參考http://stackeye.com/2016/03/kolla-service-process/)。
1,nova_libvirt(計算節點)
安裝了libvirt,可以通過virsh命令查看kvm虛擬機。
容器中配置文件目錄為/var/lib/kolla/config_files/,對應的node路徑為/etc/kolla/nova-libvirt。
通過容器中的/var/lib/kolla/config_files/config.json配置,將libvirtd.conf和qemu.conf文件拷貝到 /etc/libvirt/目錄,作為libvirt真正的配置文件。
其他容器的對應關系有/var/lib/docker/volumes/nova_libvirt_qemu/_data : /etc/libvirt/qemu, 虛擬機定義文件xml放在這里。2,nova_compute(計算節點)
容器中配置文件目錄為/var/lib/kolla/config_files/,對應的node路徑為/etc/kolla/nova-compute。
容器中實際生效的配置文件為/etc/nova/nova.conf。
其他容器的對應關系有 /var/lib/docker/volumes/libvirtd/_data : /var/lib/libvirt , /var/lib/docker/volumes/nova_compute/_data : /var/lib/nova。3,nova_ssh(計算節點)
容器中配置文件目錄為/var/lib/kolla/config_files/,對應的node路徑為/etc/kolla/nova-ssh。
容器中實際生效的配置文件為/etc/ssh/sshd_config,/var/lib/nova/.ssh/config,/var/lib/nova/.ssh/id_rsa,/var/lib/nova/.ssh/authorized_keys 其中后兩個密鑰相關的文件是kolla-ansible執行的時候傳的password.yml
其他容器的對應關系有/var/lib/docker/volumes/nova_compute/_data : /var/lib/nova。4,nova_novncproxy(控制節點)
容器中配置文件目錄為/var/lib/kolla/config_files/,對應的node路徑為/etc/kolla/nova-novncproxy。
容器中實際生效的配置文件為/etc/nova/nova.conf。5,nova_consoleauth(控制節點)
同上6,nova_conductor(控制節點)
同上7,nova_scheduler(控制節點)
同上8,nova_api(控制節點)
同上9,placement_api(控制節點)
容器中配置文件目錄為/var/lib/kolla/config_files/,對應的node路徑為/etc/kolla/placement_api。
容器中實際生效的配置文件為/etc/nova/nova.conf, etc/nova/placement-api-wsgi.conf。