Одним из самых больших преимуществ Ubuntu является простота системы пакетов APT. Вы находите нужную настольную программу, вводите команду, и она готова к запуску. Однако для серверных приложений эта установка APT иногда устанавливает только те файлы, которые вам нужны для запуска программы — вам придется настроить и запустить программу (часто службу или демон) самостоятельно. Но система jujuпризвана сделать доступ к серверным программам таким же простым, как и к программам для настольных компьютеров. Вот как его использовать.
Установка и первоначальная настройка
Настройка juju немного сложнее, чем, например, установка стека LAMP использование задачселя , поскольку он предназначен для облачных сред. Сначала нам нужно установить juju и его зависимости:
sudo apt-get install juju libvirt-bin lxc apt-cacher-ng libzookeeper-java zookeeper
Примечание : хотя в репозиториях Universe для Precision есть версия juju, у команды «Juju hackers» есть несколько PPAс обновленными версиями. Я буду использовать версию из репозиториев.
После этого вам нужно будет сгенерировать SSH-ключ для вашего сервера, если у вас его еще нет:
ssh-keygen -t rsa
Наконец, ваш пользователь должен принадлежать к группе, связанной с демоном виртуализации libvirtd:
sudo usermod -a -G libvirtd [your username]
Это потому, что ваша среда juju на самом деле является виртуальной средой Ubuntu на вашем текущем компьютере. Далее вам нужно будет инициировать процесс «загрузки», в ходе которого эта виртуальная среда загружается и устанавливается:
juju bootstrap
Упс! Нам не хватает файла конфигурации… к счастью, juju по крайней мере создал для нас образец. Используя любой текстовый редактор, отредактируйте файл ~/.juju/environments.yaml, чтобы он соответствовал следующему:
default: wordpress environments: wordpress: type: local admin-secret: [create a unique phrase here] default-series: precise data-dir: /home/[your username]/[a directory you choose]
Теперь, если вам удастся отключить сервер, перезагрузка обеспечит правильный запуск всех служб. Давайте возьмем подвески.
Установка и запуск чудо-кнопок
Как уже упоминалось, Charms похожи на пакеты APT, но также ориентированы на все, что необходимо для запуска службы. В качестве примера мы развернем экземпляр WordPress с помощью следующей команды:
juju deploy wordpress
Теперь мы сможем перейти по IP-адресу нашего сервера и перейти к ведению блога… мы можем подтвердить, что WordPress работает, с помощью следующей команды:
juju status
<
Но подождите, здесь ошибка! Это связано с тем, что juju не обрабатывает зависимости автоматически. WordPress требует должна работать база данных MySQL, и она не была установлена автоматически. Давайте настроим:
juju deploy mysql
Теперь нам нужно соединить их вместе:
juju add-relation wordpress mysql
Наконец, давайте сделаем это видимым для всего мира:
juju expose wordpress
На этом этапе самая сложная часть процесса: терпение. Хотя кажется, что эти команды выполнены, на самом деле в фоновом режиме будет происходить довольно много вещей, в частности, загрузка, установка и настройка «виртуальной» среды Ubuntu. В разделе «службы» вы увидите два списка: при вводе команды juju status
один называется «wordpress» (это реальный экземпляр WordPress) и «mysql» (это экземпляр MySQL). Под каждым из них есть строка «состояние агента», в которой, скорее всего, будет указано «ожидание». Вы также можете услышать, как работает ваш жесткий диск… это нормально, просто устанавливается много пакетов (проверьте результаты ps ax
, чтобы понять, что происходит).
Достаточно сказать, что вам придется подождать, пока обе службы не отобразят «состояние агента: запущено». Продолжайте использовать juju status
, чтобы следить за прогрессом. Как только они оба будут запущены, вы сможете увидеть свою установку WordPress, посетив IP-адрес, указанный в строке «public-address» выходных данных juju status
(у меня был http://10.0.3.66).