Задать вопрос
JohnyMastricht
@JohnyMastricht
guitarplayer

DevOps, управление конфигурациями. What is that?

Здравствуйте!
Объясните пожалуйста популярно, что имеется в виду под continuous intеgration, что понимают в странах СНГ под DevOps, стоит ли админу-саппортеру в хостинге рассматривать это как вектор развития, чем чревато?
  • Вопрос задан
  • 1452 просмотра
Подписаться 4 Оценить Комментировать
Решения вопроса 2
@polozad
Как правило DevOps - это пишущий код админ. То есть, администрирование широкого профиля, плюс написание своих продуктов вплоть до модулей ядра. Например, Игор Сысоев, автор nginx - вполне себе DevOps, написавший веб-сервер под свои нужды.
Управление конфигурациями - это Chef, Puppet, Ansible - автоматизация конфигураций. Централизованное хранилище, которое позволяет подробно описать всё хозяйство - конфигурации машин, набор приложений, конфиги самих приложений, вплоть до того, что ты запускаешь клиент и идёшь пить чай. Через какое-то время у тебя полностью настроенный хост, готовый войти в продакшен.
Continuous integration - это слегка из другой оперы. Подразумевает средство тестирования и выкладки кода, багтрекер, контроль версий и автоматизацию всего как единый процесс, это всякие Jenkins, Teamcity, Hudson и так далее .
И да, первые два направления очень желательны. Без chef/puppet вообще сложно представить себе серьёзный проект, так или иначе он будет обмазан автоматизацией - мелкими скриптами и прочей наколеночной хренью. DevOps как промежуточное звено между кодером и админом - тоже очень серьёзная штука. Когда админ понимает как работает код, видит как применить тот или иной вызов системы, что такое COW и как тот же ruby гадит в память - это хороший админ.
Параллельно DevOps есть такая штука как эксплуатация. Это более "обычные" админы, которые не пишут сложные вещи, предпочитая python и bash с perl, решая задачи автоматизации низкого уровня.
Вообще, конечно, всё это дико размазано и в России не очень стандартизировано.
Ответ написан
afiskon
@afiskon
Если на пальцах, то:

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

Управление конфигурацией, вообще-то говоря, не всегда (и скорее - не) связано с DevOps, так как тот же Amazon позволяет успешно обходится без нее, если собирать AMI образы системы и катить их. Это в частности является еще одним доводом за DevOps, дескать благодаря SaaS и облачным хостингам администрирование стало слишком простым, чтобы держать админов на фултайм.

CI - это одна из "хороших практик" которая цена и сама по себе, не как часть DevOps. Когда ваша ветка мержится в development, запускается автоматическая сборка билда и прогона тестов (например, в Jenkins). Если после успешной сборки и прогона тестов билд еще и сам выкатывается в dev или stage окружение, это называется continuous delivery.

На мой взгляд, как вектор развития следует рассматривать бесспорно, так как хороший админ должен всем этим владеть и в любом случае уметь программировать хотя бы небольшие программы на Ruby / Python.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
opium
@opium
Просто люблю качественно работать
девопс по сути человек который занимается автоматизацией процессов внутри команды , по сути как админ был так и остался
большую часть жизни этим занимаюсь раньше был просто линукс админ сейчас стал линукс девопс
раньше просто люди новые компании открывали, а сейчас они стартапы.
Ответ написан
Комментировать
@inkvizitor68sl
Linux-сисадмин с 8 летним стажем.
В СНГ под DevOps подразумевают "ну ты пиши код, но денег у нас на админа нет, поэтому ты ещё и админом будешь". Есть компании-исключения (крупные или работающие на иностранный рынок), но в большинстве своём оно именно так.

CI, если говорить словами, а не заученным маркетинговым буллшитом, это то, что позволяет коду сразу после коммита попасть в review, после review на тестирование, после тестирования по кнопке в продакшн. Там ещё много бывает промежуточных этапов, но смысл в этом - закоммитили, проверили, кнопка - тестинг, кнопка - продакшн. Ах да, самое главное - без остановки работы сервиса в продакшне.

Админу-саппорту лучше смотреть в сторону SRE - это более админская работа.
Ответ написан
Комментировать
JohnyMastricht
@JohnyMastricht Автор вопроса
guitarplayer
Спасибо за ответы!
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы