Используя Open Nebula, я создал несколько виртуальных машин (qemu-kvm) с образом Centos 6.5, предоставленным Open Nebula Marketplace< /а>. Теперь я хотел бы установить больше приложений на виртуальные машины и запустить некоторые постскриптумы. Хотя я мог бы сделать это, выполнив ssh поверх каждой виртуальной машины, но я хотел бы автоматизировать процесс.
Как автоматизировать установку приложений на виртуальную машину?
Ответы (1)
Именно для этого мы используем Salt (http://www.saltstack.com).
С помощью некоторых более или менее сложных файлов конфигурации вы можете автоматически устанавливать на машины программное обеспечение, файлы конфигурации, пользователей, ssh-ключи, ...
Например, вы можете установить правило, согласно которому любая виртуальная машина, полное доменное имя которой начинается с «web», должна установить httpd.
Альтернативы: Puppet (https://puppetlabs.com), Chef (https://www.chef)..io/chef/), Ansible (http://www.ansible.com/home) и, возможно, некоторые другие.
Для установки Salt мы используем дополнительный контекстный скрипт в виртуальной машине (обратите внимание, вам нужно будет добавить «init.sh» и другой контекстный скрипт), который позаботится об установке миньона. Сценарий выглядит примерно так (замените ##salt-master-FQDN## IP-адресом мастера соли или полным доменным именем):
#!/bin/sh
if [ ! -f /etc/salt/minion ]; then
yum clean all
yum -y update
yum -y install salt-minion
sed -i '/master:/c\master: ##salt-master-FQDN##' /etc/salt/minion
systemctl enable salt-minion.service
systemctl start salt-minion.service
fi