puppet

1 234 5
A
На сайте с 14.11.2011
Offline
34
alw
#21

KISS. Это костыль - замена
sed -i 's/badone/goodone/' /etc/somefile

это не так. augeas несколько более функционален. а вот такой вот sed - действительно багогенерилка.


В условиях того, что файлики конфигурации можно сколь угодно мелко дробить (всякие /etc/daemon.d/*.conf) - лучше эту багогенерилку забыть.

не все сервисы умеют такой синтаксис.


Разжевали ниже. Мне стало понятно что он хочет, но непонятно зачем.

Непонятно зачем хочется описание конфигурации сервиса держать в паппете в одном файле, а не в двух? Или вообще не в файле, а в sql/ldap/etc ? Паттерн в паппете останется прежним.

Администрирование linux, windows (/ru/forum/671883) icq 4831950
M
На сайте с 16.09.2009
Offline
278
#22
alw:
это не так. augeas несколько более функционален. а вот такой вот sed - действительно багогенерилка.

Ну, я утрировал, конечно - sed умеет вещи и более сложные делать.

Но нет, augeas делает именно это. Единственный его бонус - он считает, что "понимает" формат конфига. Со всеми вытекающими...

Смысл был в том, что лучше подобного редактирования избегать. Использовать шаблоны, дробить конфигурацию.

alw:
не все сервисы умеют такой синтаксис.

Это тоже повод для выбора сервисов, верно? Не умеет - не берем.

alw:
Непонятно зачем хочется описание конфигурации сервиса держать в паппете в одном файле, а не в двух?

У Вас в любом случае получаются две привязки: vhost к физическому серверу (ам) + vhost к его конфигу. Помимо разных конфигов, в принципе, можно еще и разные шаблоны использовать.

Абонементное сопровождение серверов (Debian) Отправить личное сообщение (), написать письмо ().
A
На сайте с 14.11.2011
Offline
34
alw
#23
myhand:
Ну, я утрировал, конечно - sed умеет вещи и более сложные делать.

Но нет, augeas делает именно это. Единственный его бонус - он считает, что "понимает" формат конфига. Со всеми вытекающими...

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

Явно удобнее, нежели вручную изобретать с нуля велосипед для sed.


Смысл был в том, что лучше подобного редактирования избегать. Использовать шаблоны, дробить конфигурацию.

Как обычно, зависит от ситуации.

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


Это тоже повод для выбора сервисов, верно? Не умеет - не берем.

Ну когда выбор есть - то это может быть одним из поводов. Но далеко не всегда выбор есть.


У Вас в любом случае получаются две привязки: vhost к физическому серверу (ам) + vhost к его конфигу. Помимо разных конфигов, в принципе, можно еще и разные шаблоны использовать.

эээ... считаем что конфиг для vhost конфигурится единым шаблоном, на основании данных из файлика, описания vhost'а. Ну и vhost'ы однотипные, мы же про mod-proxy в данном случае говорим.

M
На сайте с 16.09.2009
Offline
278
#24
alw:
ну это не он считает. есть какой то поставляемый набор линз, можно дописывать самостоятельно.

Это далеко не так-то просто.

alw:
Явно удобнее, нежели вручную изобретать с нуля велосипед для sed.

Удобнее чем s/one/two/ - Вы шутите? :)

alw:
В ситуации, когда у меня в сети разные версии центоса, редхатов, убунт, дебианов

Да, в ней - явно "удобнее". Но данная ситуация называется бардак и тут уже речь не об удобстве, а о том как от нее избавиться ;)

alw:
Но далеко не всегда выбор есть.

Например? Системный администратор выбирает софт, не наоборот.

alw:
считаем что конфиг для vhost конфигурится единым шаблоном, на основании данных из файлика, описания vhost'а.

Ну да. Хотя шаблоны могут быть и разными.

Тем не менее, у нас есть "файлик описания" (yaml, json, etc) и привязка vhost к серверам.

A
На сайте с 14.11.2011
Offline
34
alw
#25
myhand:
Это далеко не так-то просто.

Ну мы же говорим только о профпригодных системных администраторах, которые не боятся читать документацию и писать скрипты-конфиги? ))


Удобнее чем s/one/two/ - Вы шутите? :)

Разумеется. ибо в общем случае такой простой regexp не пойдет. Под one может попасть масса ненужного. Разумеется, в каждом конкретном случае можно придумать хитрый регексп.. Но врятли это удобнее augeas )


Да, в ней - явно "удобнее". Но данная ситуация называется бардак и тут уже речь не об удобстве, а о том как от нее избавиться ;)

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


Например? Системный администратор выбирает софт, не наоборот.

Когда есть из чего выбирать. Предложите, например, аналог isc'шного dhcpd, умеющего fault tolerance?


Тем не менее, у нас есть "файлик описания" (yaml, json, etc) и привязка vhost к серверам.

Это один и тот же файл. Сервер, на котором должен будет располагаться vhost, является одним из атрибутов vhost'a и должен быть указан в файлике описания.

M
На сайте с 16.09.2009
Offline
278
#26
alw:
Ну мы же говорим только о профпригодных системных администраторах, которые не боятся читать документацию и писать скрипты-конфиги? ))

Понимаете, вот я - слабо знакомый с этим чудом человек - моментально обнаружил, что абсолютно никакого "понимания" синтаксиса sshd_config или апача у этой штуки нет. Короче: Вы вполне можете получить нерабочий sshd на выходе.

Ну например. Для sshd_config - не учитывается порядок следования директив. Для httpd.conf - контекст, в котором директива может/не может быть. И т.п. и т.д.

alw:
Разумеется, в каждом конкретном случае можно придумать хитрый регексп.. Но врятли это удобнее augeas )

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

Augeas expects the tree to have a certain structure, implicitly defined by the lens for each file. If the tree does not have that structure, for example, because there is no canonical entry for a host in /files/etc/hosts, Augeas will refuse to transform such a tree back into the corresponding file.

Увы, работает вся эта сказка разве для /etc/hosts (не факт, кстати - не смотрел ;)). Оно Вам сильно надо - /etc/hosts править?

alw:
Очевидно Вам не приходилось встречаться с девелоперскими конторами, в которых разные группы разработчиков в силу ТЗ проектов должны работать с разными версиями ОС. Гораздо проще, основываясь на собственном опыте, назвать эту ситуацию бардаком, да.

Здесь есть некоторое оправдание... Но бардак, да.

alw:
Когда есть из чего выбирать. Предложите, например, аналог isc'шного dhcpd, умеющего fault tolerance?

dhcpd разучился include делать? 0_0

alw:
Это один и тот же файл. Сервер, на котором должен будет располагаться vhost, является одним из атрибутов vhost'a и должен быть указан в файлике описания.

Это один из вариантов. Не самый логичный - т.к. для меня вполне очевидна ситуация, когда vhost имеет смысл разместить на нескольких физических серверах.

A
На сайте с 14.11.2011
Offline
34
alw
#27
myhand:
Здесь есть некоторое оправдание... Но бардак, да.

И в чем же тут бардак?


dhcpd разучился include делать? 0_0

Тут я привел пример dhcpd как софта, которому при некотором наборе требований замены нет.

А include он умеет, да.


Это один из вариантов. Не самый логичный - т.к. для меня вполне очевидна ситуация, когда vhost имеет смысл разместить на нескольких физических серверах.

В конкретно моем случае этого не нужно, но

ради бога, пусть в поле конфига, отвечающего за сервер, будет не единичное значение, а список.

M
На сайте с 16.09.2009
Offline
278
#28
alw:
И в чем же тут бардак?

Очевидно в том, что плодится гетерогенная система просто потому, что кто-то не подумал над другими вариантами. Для тестирования, к примеру - такой бардак вряд-ли стоило устраивать.

Могу, конечно, и ошибаться - точнее сказать получится только если Вы посвятите чуть подробнее в детали ТЗ.

alw:
Тут я привел пример dhcpd как софта, которому при некотором наборе требований замены нет. А include он умеет, да.

При "некотором наборе требований" - вполне однозначно выделяется ровно один "пример софта". Вы без фанатизма, идея ведь была проста: вменяемая конфигурация - очень даже весомый критерий для выбора сервиса. Кстати, возможность "include" обычно более чем легко прикрутить. Имхо, это куда лучше костылей-монстров типа augeas.

Boris A Dolgov
На сайте с 04.07.2007
Offline
215
#29

rhn/spacewalk используют puppet для распространения конфигурации.

С уважением, Борис Долгов. Администрирование, дешевые лицензии ISPsystem, Parallels, cPanel, DirectAdmin, скины, SSL - ISPlicense.ru (http://www.isplicense.ru/?from=4926)
A
На сайте с 14.11.2011
Offline
34
alw
#30
myhand:
Очевидно в том, что плодится гетерогенная система просто потому, что кто-то не подумал над другими вариантами. Для тестирования, к примеру - такой бардак вряд-ли стоило устраивать.

Могу, конечно, и ошибаться - точнее сказать получится только если Вы посвятите чуть подробнее в детали ТЗ.

посвящу. Есть n заказчиков, у некоторых из них четкое требование - решение должно работать под такой то версией такой то ОС. И соответственно для построения лабы используется именно та ОС именно той версии, указанной в требовании заказчика. Но вместе с тем все лабы должны удовлетворять неким корпоративным стандартам в настройке. И с этой задачей puppet+augeas справляются отлично.


При "некотором наборе требований" - вполне однозначно выделяется ровно один "пример софта". Вы без фанатизма, идея ведь была проста: вменяемая конфигурация - очень даже весомый критерий для выбора сервиса. Кстати, возможность "include" обычно более чем легко прикрутить. Имхо, это куда лучше костылей-монстров типа augeas.

Я не о том совсем. Не нравится augeas - не пользуйте. Меня он более чем устраивает.

Речь была о другом. Есть набор требований - dhcp сервер, с поддержкой ldap и fault tolerance.

Решение - ровно одно, isc dhcpd. Соответственно независимо от его остальных качеств, альтернатив нет - приходится использовать его. Это я пытаюсь показать на примере, что далеко не всегда есть возможность выбирать.

1 234 5

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий