Избавился от CoreOS

С огромным облегчением сегодня убрал последний хост с CoreOS.

Я уже писал о своих впечатлениях от CoreoOS, но с тех пор впечатлений прибавилось.

Частые атомарные обновления на бумаге выглядели вкусно (и в пользовательских ОС типа Android работают прекрасно), но вот на практике на серверах в том виде, в котором CoreOS их готовит, оказались совсем несъедобны.

Объясню, в чем проблема: Docker достаточно часто что-то ломает в API, и свежие ядра Linux …

more ...

Заметка о Graphite

На первый взгляд, кажется довольно странным, что сейчас, в 2015 году, все до сих пор используют для хранения time series такой старый и «не модный» инструмент, как Graphite. О ужас, о нем даже почти не пишут в твиттере/G+ и он написан на старом будничном Python, а не на популярном сейчас Go (хотя уже частично написан, но об этом потом).

Но все равно многие используют его, и не сильно жалуются …

more ...

Впечатления от CoreOS

На волне популярности контейнерной виртуализации Docker стали появляться специализированные дистрибутивы Linux, созданные специально для использования в роли базового хоста для Docker-контейнеров.

Пионером среди них стал проект CoreOS, затем появились Project Atomic от RedHat и Ubuntu Snappy от Canonical.

Чем они все отличаются от привычных дистрибутивов? Основным отличием является модель обновления дистрибутива. Все эти проекты предлагают атомарные обновления, подразумевающие сборку нового образа системы с последующей перезагрузкой в него. При этом образ …

more ...

Инфраструктура как код

Есть такой тренд сейчас - работать с IT-инфраструктурой как с кодом. Хорошо цель этого метода описывается этой цитатой:

“Enable the reconstruction of the business from nothing but a source code repository, an application data backup, and bare metal resources”

-- Jesse Robins

Я полностью поддерживаю эту идею, причем именно в этой трактовке.

Если говорить про парадигму, которую нам предлагает этот метод, то вот она:

Поддерживать модульную, легко поддающуюся автоматизации инфраструктуру, и описывать …

more ...

Ansible и serverspec

Когда я готовил playbook для своего VPS, я взял за основу Sovereign. В этом репозитории меня заинтересовал файл tests.py, содержащий тесты для результирующего сервера. У меня сразу же возник вопрос - почему тесты самописные, на голом Python, а не на каком-нибудь готовом решении. Я решил изучить, что же есть сейчас для TDD-администрирования. Оказалось, что толком ничего и нет, а то, что есть - для Ansible не особо нужно.

Для начала, что …

more ...

Прочитал The Phoenix Project: A Novel About DevOps, and Helping Your Business Win

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

Конечно, главная проблема книги в том, что DevOps преподносится как некая чудодейственная методология, и при этом не уделяется внимания главному вопросу - кадровому. В книге все сотрудники оказались достаточно квалифицированными и открытыми для того, чтобы …

more ...

Тестирование Ansible Playbook

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

Вот наконец до этого дошли руки.

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

Теперь …

more ...

Monitoring sucks!

TL;DR - тут я Sensu критиковал, но в 2014 году успешно заменил Zabbix на Sensu версии 0.12+

В 2012 году появился в среде devops такой хештег, #monitoringsucks. В сообщения с этим тегом devopsы писали, что текущее положение дел в сфере мониторинга их не устраивает. Что именно - прекрасно иллюстрирует эта презентация Если вкратце - хочется людям некоего стандарта API для взаимодействия между компонентами утилит мониторинга, ну и появления самих этих компонент …

more ...

Что я думаю о Debian на серверах

С 2010 года, когда я только начал заниматься системным администрированием, я использовал как основной серверный дистрибутив Debian. Это был изначально осознанный выбор, и на момент написания заметки таковым и остается. Конечно, я работал и с другими дистрибутивами, и потому мне есть и было с чем сравнить. По итогам работы с Debian и написана эта заметка.

Негатив

Общесистемные лимиты

В свое время, встала передо мной задача настройки под высокую нагрузку различных …

more ...

Мнение о Chef

Я использовал Chef для управления IT-инфраструктурой около полутора лет, начав с версии 0.10. Сначала, где-то пол-года, использовал только для управления конфигурациями, без развертывания ПО с нуля. Затем, уже на другой работе, автоматизировал управления конфигурациями и развертывание с нуля веб-проекта (30+ серверов, nginx, ruby, riak, redis, sphinx-search, rabbitmq и т.п.). Это позволило мне составить собственное мнение o достоинствах и недостатках Chef, и в этой заметке я свое мнение излагаю …

more ...