Как автоматизировать установку приложений на виртуальную машину?

Используя Open Nebula, я создал несколько виртуальных машин (qemu-kvm) с образом Centos 6.5, предоставленным Open Nebula Marketplace< /а>. Теперь я хотел бы установить больше приложений на виртуальные машины и запустить некоторые постскриптумы. Хотя я мог бы сделать это, выполнив ssh поверх каждой виртуальной машины, но я хотел бы автоматизировать процесс.


person Kshitiz Bartariya    schedule 23.06.2015    source источник


Ответы (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
person lucorlis    schedule 27.06.2015
comment
Как вы будете устанавливать Salt на целевую виртуальную машину, по ssh или создавать собственный образ для создания экземпляра? - person Kshitiz Bartariya; 29.06.2015
comment
Используем другой контекст-скрипт для установки соли-миньона - добавил код выше. Как только виртуальная машина запущена и работает, все, что вам нужно сделать, это добавить соль-ключ к мастеру, и она мчится через все, что вы хотите, чтобы эта машина делала [добавление ssh-ключей, вероятно, первое, с чем вы хотели бы разобраться ]. - person lucorlis; 29.06.2015