середа, 10 серпня 2011 р.

Инсталляция системы

Для начала, стоит помнить самое главное -- все на самом деле просто. Даже если все сложно -- это, скорее, ложное впечатление или следствие некоторых нежелательных действий. Любую проблему, возникающую при установке любого продукта, можно решить, а процесс установки в деталях расписан на сайте каждой системы.

Более важными являются небольшие хитрости, которые позволяют сохранить не только массу времени, но и предотвратить массу нежелательных проблем.

Во-первых, стоит помнить о необходимости поддерживать выбранную систему в будущем. Счастливый владелец автомобиля, вынужден ухаживать за своим приобретением, поскольку, от этого зависит его нормальное функционирование. Аналогичным образом, обстоят дела практически с любым, более или менее сложным, инструментом, который был произведен человеком.

Система непрерывной интеграции будет служить верой и правдой, но ее, как и установленные расширения, придется обновлять, следить за исправностью, потреблением ресурсов и т.д. После установки обновления, возможны дополнительные проблемы (они появляются повсеместно при эксплуатации любого сложного программного продукта), которые также придется решать. Такого рода временные затраты, являются не очень желательными, соответственно стоит попытаться их оптимизировать и желательно сделать это с самого начала.

Решение (которым автор пользуется в течении очень долгого времени) является очень простым: система непрерывной интеграции устанавливается дважды. Основная версия используется по прямому назначению, а второстепенная служит исключительно для проверки новых решений, обновлений и расширений.

Начальная инсталляция: тестова и реальная системы

Такой подход позволяет существенно уменьшить время простоя основной системы, сохраняя массу времени и нервов человеку, который подписался выполнять столь ответственную работу. Второстепенная (или экспериментальная) система позволяет проверить все новое и неизведанное. Таким образом, способность системы эволюционировать не приносится в жертву стабильности.

Например, некоторые компании запрещают вносить какие-либо изменения в инфраструктуру проекта до его завершения, лишая разработчиков многих преимуществ и неявно подстегивая их к отказу от использования полезных инструментов вообще.

Для основной системы может быть использован кластер

Инсталляция является делом нехитрым и реализуется средствами выбранного контейнера. Автор, в данном конкретном случае, использует Tomcat (http://tomcat.apache.org/), соответственно, после инсталляции двух экземпляров, список активных приложений выглядит следующим образом:

Менеджер приложений

Каждый Jenkins/Hudson, в свою очередь, выглядит следующим образом:

Система непрерывной интеграции

На данном этапе, имеет смысл потратить несколько минут на правку стилей обоих экземпляров, поскольку, это позволит:
  1. различать основной и вспомогательный серверы непрерывной интеграции
  2. четко понимать к какому именно проекту относится тот или иной Jenkins/Hudson (если их несколько)
  3. визуально "интегрировать" инструмент в инфраструктуру проекта
Минимальный набор необходимых действий сводится к замене двух элементов внешнего оформления:
  • логотипа  (webapps\<app-name>\images\title.png)
  • образа Jenkinsa/Хадсона (webapps\ci-secondary\images\hudson.png)
После выполнения необходимых действий, оба приложения приобретут следующий вид:

Основная система


Вспомогательная система

Стоит помнить о возможности потерять данные изменения при переходе на новую версию путем простой замены файла приложение (war архива).

Немає коментарів:

Дописати коментар