Кулинарные хитрости, часть первая (Chef)

    После недавней вводной публикации о Chef я решил немного больше рассказать о полезных рецептах:


    Используем внешние конфигураторы


    Иногда нам приходится конфигурировать наши машины не на основании внутренних атрибутов Chef, а на основании конфигурации, предоставляемой сторонней службой (которую опять-же ставит Chef).

    В таком случае нам поможет такой трюк: описываем ресурс и запускаем его на этапе описания рецепта.

    Это полезно, например, если мы храним часть данных в LDAP. Тогда мы должны сперва посредством Chef поставить и настроить клиент openldap, поставить нужный гем для получения нужных данных из LDAP, и затем эти данные можно использовать прямо в рецепте.

    Переходим на Chef 0.8


    После обновления до Chef 0.8.6 мы обнаружили, что сильно изменился способ аутентификации клиентов.

    Теперь для выполнения стандартного bootstrap нам нужно перед первым выполнением chef-client положить в /etc/chef файл /etc/chef/validation.pem (брать на сервере оттуда-же).

    После этого клиент сможет автоматически провалидировать себя и получить свой личный сертификат /etc/chef/client.pem.

    Не забудьте обновить в своём репозитории Chef рецепт chef, каталоги config и основной Rakefile.

    Множество поваренных книг


    Поскольку многие поваренные книги лежат на GitHub, можно найти немало полезного, пробегаясь по форкам тех же github.com/opscode/cookbooks.

    Если это возможно, старайтесь и свои рецепты отпускать в свободное плавание.

    Правильно рестартим chef-server


    Если Вы настроили Chef с использованием стиля инициализации runit, который предлагается по умолчанию, то chef-server неправильно реагирует на команду sv restart chef-server.

    Решается это добавлением файла
    /etc/sv/chef-server/control/t (0755) со следующим содержанием:
    #/bin/sh
    exec 2>&1
    /usr/bin/sv interrupt chef-server
    


    Следим за сервисами


    Приложения без ошибок не существуют. Поэтому их нужно мониторить, для чего полезны такие инструменты, как runit, monit, god, munin, cacti, nagios, zabbix etc. Но я бы хотел обратить ваше внимание также на Bluepill, как замену сервисам monit и god.

    Комментарии 3

      0
      Акжан, спасибо за статью! Подметил для себя несколько интересных моментов.
        0
        Умеют же некоторые сделать «говорящий» скриншот)
          0
          Сперва его не было, но потом попросили хотя бы показать внешний вид этого приложения :)

        Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

        Самое читаемое