автоматизируем установку identityiq с помощью ansible
Best practices рекомендует использовать автоматическое развертывание системы. В случае, если ваша система упадет и вам ее надо будет срочно восстановить, или если вам надо создавать много инсталляций однотипных систем, или если вы ведете активную разработку в распределенной команде... то данный подход позволяет снять множество проблем. Вы всегда можете точно сказать, сколько времени вам понадобится на полное развертывание системы, со всеми доработками и патчами. Так же этот подход гарантирует отсутствие ошибок по вине человека, такие как опечатки в конфиге или забыл накатить патч.
Для реализации такого подхода можно использовать самописные скрипты или воспользоваться системой управления конфигурацией, такой как chief или ansible. О последней и пойдет речь. Я продемонстрирую, как можно создать у себя виртуальную машину с голой средой-разработки identityiq на базе mysql и tomcat.
Что понадобится:
ноутбук со свободными 4Гб ОП, наличие хотя бы 2-х ядер процессора и около 5 Гб свободного места.
среда виртуализации - VirtualBox, но может использоваться как реальный сервер, так и другая система виртуализации, например VMWare или Hyper-V
система управления виртуальными машинами - Vagrant, работает как с VB, так и с VMWare, и с Hyper-V
УЗ в GitHub
клиент git, я пользуюсь официальным клиентом GitHub
интернет
дистрибутив sailpoint 7.0, скорее всего будет работать и с другими версиями
puttygen и putty для работы с виртуальными машинами из windows или любой другой ssh клиент.
свободные порты: 80 и 3306
Процесс подготовки не должен вызывать сложностей. Однако при установке я столкнулся с особенностью vagrant: чтобы можно было монтировать директории из хост машины в виртуальную, необходимо установить дополнение vagrant-vbguest. Для этого достаточно выполнить команду:
vagrant plugin install vagrant-vbguest
Создание виртуальной среды
Порядок действий для создания виртуальной машины для собственных экспериментов у себя на ноутбуке следующий:
ставите необходимые утилиты из списка выше
готовите директорию, куда скачаете необходимые скрипты (далее ROOT). Рекомендую не создавать корневую директорию в домашнем каталоге пользователя (C:\Users\<USER_NAME>\), т.к. могут возникнуть проблемы монтирования этой директории к вашей виртуальной машине. Так на win7 у меня все прошло на ура, но на win10 директория со скриптами ansible отказалась монтироваться на отрез
с помощью git клиента забираете себе из ветки мастер все исходники
в директорию ROOT/ansible/identityIQ/files копируете identityiq.war из дистрибутива sailpoint
скачайте образ виртуальной машины: vagrant box add centos/7
отредактируйте конфиг базового образа с описанием синхронизации папок и укажите тип virtualbox. Подробнее здесь.
запустите развертывание: vagrant up
Примечания
При запуске убедитесь что порт 80 не занят никаким приложением. У меня часто этим грешит skype. Если порт освободить не получается, то отредактируйте файл ROOT\Vagrantfile в любом текстовом редакторе. Отредактируйте 27 строку:
Перейдите в браузере по адресу http://localhost/identityiq/ перед вами откроется приглашение для входа в identityiq.
Вся процедура занимает около 10-15 минут (зависит от того на сколько мощный у вас ноутбук и какое подключение по сети).
Подключение к машине
Чтобы подключиться к машине по ssh, необходимо воспользоваться приватным ключом расположенным ROOT/.vagrant/machines/identityIQ/virtualbox/private_key
Если вы используете windows в качестве хост-машины, то лучше воспользоваться putty. Однако для использования ключей необходимо их конвертировать в нужный формат, воспользовавшись puttygen.
Это еще сырая версия и она будет дорабатываться. Обо всех замечания, предложения, вопросах и проблемах пишите.