Re: как правильно конфигурировать системы при помощи chef,puppet, etc
17.04.2013 18:34, Владимир Скубриев пишет: Изучаю chef уже целую неделю. В процессе изучения способов конфигурации пакетов пришел к выводу, что это можно делать разными способами. Первый и самый простой вариант - это поддержка нужных конфигурационных файлов пакетов с использованием шаблонов и переменных. Второй способ это конфигурирование пакетов при помощи стандартных средств конфигурации системы. Например debconf: debconf-get-selections, debconf-set-selections. Третий и видимо - это совместное использование обоих способов. В связи с этим возникает вопрос а как правильно сочетать данные методы или не сочетать? Простой пример с которым я столкнулся. Например мы хотим установить на клиенте libnss-ldapd. Но при этом на клиенте: 1. Она может быть не установлена 2. Она может быть установлена - но не правильно сконфигурирована 3. Нам может понадобится изменить какие-то дополнительные параметры этой библиотеки, конфигурирование которых не доступно через debconf. Мы можем описать наш рецепт следующим образом: 1. Чтобы при установке использовался наш конфигурационный файл debconf 2. Чтобы при переустановке использовался наш конфигурационный файл debconf 3. Дописывать скриптами в нужные нам конфигурационные файлы нужные парамтеры. Насколько я понимаю смысл использования chef, puppet - достижения идемпотентности конфигурации настраиваемых машин. Насколько я понимаю мне необходимо учитывать все возможные факторы, описывать решения для них в рецептах и в дальнейшем совершенствовать свои рецепты, с целью чтобы они соответствовали максимально той конфигурации, которую я хочу получить. Еще возникает вопрос про обновление системы. Что будет в случае, если пакет был сконфигурирован через копирование конфигурационного файла . Пользователь выполнил обновление системы. Сработала пере конфигурация обновленного пакета и изменились конфигурационные файлы. В этом отношении у меня полная каша в голове. Проясните пожалуйста как все должно быть. Что-то я совсем запутался. Еще возникает вопрос чисто по системе debconf. Где посмотреть в системе какие именно скрипты изменяют конфигурационные файлы и вообще занимаются обработкой параметров базы данных debconf. Как данные скрипты относятся к ручной правке конфигурационных файлов из практики ? И как вообще принято администрировать систему debian в рамках моего вопроса? Я конечно понимаю, что очень много всего спросил. Увы подсказать не кому. Надеюсь на понимание. Спасибо! Поведение Puppet здесь очень простое, клиент (конечная машина) раз в пол часа опрашивает сервер о своей конфигурации и каждый раз при этом проверяет, что данная машина этой конфигурации соответствует. Т.е.: Предположим, что за эти пол часа конфигурация на сервере не изменилась, но на машине был удалён пакет или изменён конфигурационный файл, за который отвечает Puppet. В этом случае Puppet переустановит нужный пакет и вернёт файл конфигурации в то состояние, в котором он находится на сервере. Т.к. через Puppet у нас управляются не все сервисы, то периодически возникают ситуации, что конфиг на конечной машине поправили, а puppet это изменение отменил, т.к. на сервере puppet этот файл хранится в предыдущей версии. -- С уважением, Кубашин Александр -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/5176717a.5020...@k-sc.ru
Re: как правильно конфигурировать системы при помощи chef,puppet, etc
On 04/17/2013 04:34 PM, Владимир Скубриев wrote: Изучаю chef уже целую неделю. В процессе изучения способов конфигурации пакетов пришел к выводу, что это можно делать разными способами. Первый и самый простой вариант - это поддержка нужных конфигурационных файлов пакетов с использованием шаблонов и переменных. Второй способ это конфигурирование пакетов при помощи стандартных средств конфигурации системы. Например debconf: debconf-get-selections, debconf-set-selections. Третий и видимо - это совместное использование обоих способов. В связи с этим возникает вопрос а как правильно сочетать данные методы или не сочетать? Простой пример с которым я столкнулся. Например мы хотим установить на клиенте libnss-ldapd. Но при этом на клиенте: 1. Она может быть не установлена 2. Она может быть установлена - но не правильно сконфигурирована 3. Нам может понадобится изменить какие-то дополнительные параметры этой библиотеки, конфигурирование которых не доступно через debconf. Мы можем описать наш рецепт следующим образом: 1. Чтобы при установке использовался наш конфигурационный файл debconf 2. Чтобы при переустановке использовался наш конфигурационный файл debconf 3. Дописывать скриптами в нужные нам конфигурационные файлы нужные парамтеры. Насколько я понимаю смысл использования chef, puppet - достижения идемпотентности конфигурации настраиваемых машин. Насколько я понимаю мне необходимо учитывать все возможные факторы, описывать решения для них в рецептах и в дальнейшем совершенствовать свои рецепты, с целью чтобы они соответствовали максимально той конфигурации, которую я хочу получить. Еще возникает вопрос про обновление системы. Что будет в случае, если пакет был сконфигурирован через копирование конфигурационного файла . Пользователь выполнил обновление системы. Сработала пере конфигурация обновленного пакета и изменились конфигурационные файлы. если конфиг был изменен вручную, то по умолчанию dpkg спросит - а менять ли конфиг или оставить как было. у юзера есть root ? или sudo на aptitude update/upgrade ? В этом отношении у меня полная каша в голове. Проясните пожалуйста как все должно быть. Что-то я совсем запутался. Еще возникает вопрос чисто по системе debconf. Где посмотреть в системе какие именно скрипты изменяют конфигурационные файлы и вообще занимаются обработкой параметров базы данных debconf. man debconf It's more typical for debconf to be used via dpkg-preconfigure(8) or dpkg-reconfigure(8). а так preinst/postinst и т.д. скрипты лежат в /var/lib/dpkg/info/ Как данные скрипты относятся к ручной правке конфигурационных файлов из практики ? в зависимости от того как они написаны :) . И как вообще принято администрировать систему debian в рамках моего вопроса? админ - хозяин. какой конфиг он установил такой и должен стоять. в крайнем случае Debian это конструктор в которым можно переставить пакет как надо. главное не забывать бекапы важных, рабочих конфигов. Я конечно понимаю, что очень много всего спросил. Увы подсказать не кому. Надеюсь на понимание. Спасибо! Удачи, Alex -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/517010f2.3000...@biotec.tu-dresden.de
как правильно конфигурировать системы при помощи chef,puppet, etc
Изучаю chef уже целую неделю. В процессе изучения способов конфигурации пакетов пришел к выводу, что это можно делать разными способами. Первый и самый простой вариант - это поддержка нужных конфигурационных файлов пакетов с использованием шаблонов и переменных. Второй способ это конфигурирование пакетов при помощи стандартных средств конфигурации системы. Например debconf: debconf-get-selections, debconf-set-selections. Третий и видимо - это совместное использование обоих способов. В связи с этим возникает вопрос а как правильно сочетать данные методы или не сочетать? Простой пример с которым я столкнулся. Например мы хотим установить на клиенте libnss-ldapd. Но при этом на клиенте: 1. Она может быть не установлена 2. Она может быть установлена - но не правильно сконфигурирована 3. Нам может понадобится изменить какие-то дополнительные параметры этой библиотеки, конфигурирование которых не доступно через debconf. Мы можем описать наш рецепт следующим образом: 1. Чтобы при установке использовался наш конфигурационный файл debconf 2. Чтобы при переустановке использовался наш конфигурационный файл debconf 3. Дописывать скриптами в нужные нам конфигурационные файлы нужные парамтеры. Насколько я понимаю смысл использования chef, puppet - достижения идемпотентности конфигурации настраиваемых машин. Насколько я понимаю мне необходимо учитывать все возможные факторы, описывать решения для них в рецептах и в дальнейшем совершенствовать свои рецепты, с целью чтобы они соответствовали максимально той конфигурации, которую я хочу получить. Еще возникает вопрос про обновление системы. Что будет в случае, если пакет был сконфигурирован через копирование конфигурационного файла . Пользователь выполнил обновление системы. Сработала пере конфигурация обновленного пакета и изменились конфигурационные файлы. В этом отношении у меня полная каша в голове. Проясните пожалуйста как все должно быть. Что-то я совсем запутался. Еще возникает вопрос чисто по системе debconf. Где посмотреть в системе какие именно скрипты изменяют конфигурационные файлы и вообще занимаются обработкой параметров базы данных debconf. Как данные скрипты относятся к ручной правке конфигурационных файлов из практики ? И как вообще принято администрировать систему debian в рамках моего вопроса? Я конечно понимаю, что очень много всего спросил. Увы подсказать не кому. Надеюсь на понимание. Спасибо! -- С Уважением, специалист по техническому и программному обеспечению, системный администратор Скубриев Владимир ~~~ Россия, Ростовская область, г. Таганрог тел. моб: +7 (918) 504 38 20 skype: v.skubriev icq: 214-800-502 www: skubriev.ru -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/516eb2de.8080...@skubriev.ru