Как документировать конфигурацию сервера Linux?

12

У меня есть около 20 серверов Linux, которые мне нужны для документирования конфигурации. Я имею в виду не детальную конфигурацию служб, а скорее учетные записи пользователей, базы данных, учетные записи баз данных, IP-адреса, физическое местоположение, порт SSH и т. Д. И т. Д. Я знаю, что все эти данные хранятся в конфигурационных файлах, но я хочу централизовать их все , Я подумываю просто создать электронную таблицу для записи этих данных, но мне было интересно, есть ли что-то лучшее (возможно, небольшое приложение php / mysql), которое было бы более структурированным и полным, чем взломанная вместе электронная таблица.

Что ты используешь?

Мишель
источник
Я не особо задумывался об этом раньше, но это было бы полезно. Подход с использованием электронных таблиц, вероятно, не идеален. Это легко устареть. Автоматизированный должен быть путь.
Мэтт

Ответы:

9

Я предполагаю, что это долгосрочное документирование, а не просто попытка сделать снимок текущей конфигурации.

Вики работает сейчас и может держать вас в здравом уме некоторое время, но если ваша среда быстро изменится, у вас будут серьезные проблемы. Вам всегда нужно будет убедиться, что задания cron написаны правильно, выполнены своевременно, написаны для новых сервисов, совместимы с новыми версиями программного обеспечения и т. Д.

Подумайте об использовании инструмента управления конфигурацией, такого как Puppet или Cfengine . По крайней мере, поместите все данные, которые вы собираете, под контроль версий (например, Mercurial, git или Subversion).

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

Аллен
источник
+1 Я также использую cfengine2 (и mediawiki для дальнейшей документации)
ThorstenS
хорошо, но как сделать отчет о данных в марионетке?
Том Х
4

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

wzzrd
источник
Спасибо, но cfg2html излишне подходит для моих требований. Отличный сценарий!
Мишель
4

В следующий раз, когда вы настроите машину, вы должны сначала установить на нее etckeeper . Таким образом, вы будете вести журнал изменений конфигурации.

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

Tobu
источник
2

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

Если вы используете moin, вы должны проверить http://moinmo.in/ScriptMarket/PutPageScript .

Таким образом, вы получите:

  1. Централизованная документация.

  2. Современная конфигурация системы.

  3. История изменений конфигурации.

jneves
источник
Мне нравится это решение, очень гибкое. Было бы хорошо, если бы уже было несколько скриптов для обновления вики.
Мишель
1

Электронная таблица - это в основном двумерная сетка. Я считаю, что это не лучшая структура данных для таких вещей. Я предпочитаю деревья, поэтому я использую планировщики для управления деревьями.

Мой любимый Лев . Если вы хотите что-то, что будет работать на сервере без X, посмотрите на htb (кажется, заброшенный) или на VOoM vim plugin.

Все эти инструменты используют простые текстовые файлы или XML в качестве бэкэнда. Совместно с системой контроля версий они создают мощную комбинацию.

Другой альтернативой будет ископаемое . Это распределенный инструмент контроля версий со встроенной вики и системой отслеживания билетов. Это один двоичный файл, который также может работать как CGI и обслуживать веб-интерфейс, что делает его доступным по сети. Ископаемое как мини-CMS для сайта очень мощное.

halp
источник
0

У нас есть 4 дата-центра в 3 странах. У нас более 500 производственных серверов. Как говорилось выше в некоторых документах, мы используем вики и прикрепляем к ним файлы электронных таблиц. Хорошо, что когда вы обновляете свою электронную таблицу и прикрепляете ее обратно в свою вики, она сохраняет историю этого. Вроде кто обновил файл и когда.

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

-N

Николас Сакич
источник