порекомендуйте систему хранения конфигураций

Добрый день.

Надоело хранить конфиги в гуглодоках, блокнотиках и даже wiki
Наслышан о хранении конфигурации в svn или git

Подскажите, как правильно организоваться и можно ли )

Идеально было бы так.

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

Будет ли возможность у svn клиента быстро переключатся между "репозиториями-конфигами"?

Немного почитал про svn - если все правильно понял, нужно будет для каждого сервиса создавать отдельный репозиторий, а вышеописанную структуру организовывать на уровне хранения папок. Я себе как представлю это, управление множестовм репозиториев на уровне папок - плохо становится )

Или можете порекомендовать какие то другие способы хранить-писать мини-проекты (конфигурации)?
а гитхаб чем не угодил?) создаете репозиторий общий. В нем папочки типа "для печенек", "для конфеток", в которых лежат конфиги для печенек или конфеток (возможно, с сохранением полного пути). На локальной машине клонируете репозиторий и копируете нужные конфиги. Можно и на поток скриптом поставить. в принципе можно pkgbuild запилить, но не стоит (только если не планируется часто обновлять)
PGP 0x31361F01
arcanisrepo
Я сильно далек от понимания svn и гитхаб, по этому и интересуюсь )

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

Но гит тоже интересно.

Можно ли силами git организовать push конфигов на целевые хосты?

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

Потом сервис падает, ибо какая то ошибка в конфиге, но это уже детали ))
Я обновляю нужный конфиг на общем репозитории и даю команду обновить конфиг на целевом сервере.
с гитом получится наоборот. на целевом сервере самописный скрипт будет опрашивать основной репозиторий и если файл изменился делать что нужно.
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
nafanja
Я обновляю нужный конфиг на общем репозитории и даю команду обновить конфиг на целевом сервере.
с гитом получится наоборот. на целевом сервере самописный скрипт будет опрашивать основной репозиторий и если файл изменился делать что нужно.
а если SVN ?
ну я просто с svn сам ни разу не работал, потому не знаю)
вроде средствами гитхаба такую плюшку сделать нельзя (отя не уверен, т.к. не интересовался). Но можно черкануть демона, который бы обновлял локальный репозиторий, смотрел коммиты, а затем, если что то изменилось, обновлял нужные конфиги. Что то вроде такого:
# Обновить реп
git pull
# посмотреть последний коммит и измененные файлы
git log -p -1 --name-only
Потом сравнить с уже установленным коммитом (было ли обновление), выдернуть из конца списка список измененных файлов, скопировать их в систему.
PGP 0x31361F01
arcanisrepo
http://git-scm.com/book/ru
PS^
а локально крутить гит не вариант? просто подобные проблемы я что дома, что на работах решаю локально гитницой. Хотя наверно я не доконца понял зарашиваемый функционал.
Лозунг у них был такой: "Познание бесконечности требует бесконечного времени". С этим я не спорил, но они делали из этого неожиданный вывод: "А потому работай не работай — все едино". И в интересах неувеличения энтропии Вселенной они не работали. (с)
*а локально крутить гит не вариант? просто подобные проблемы я что дома, что на работах решаю локально гитницой. * - локально, в смысле на каждом сервере поднимать git репозиторий?
а что это проблема? дело в том, если у вас инет отвалится, вы ничего сделать не сможете, ну если я правильно мысль ловлю. У меня было как то два сервера, свой (рабочий) и временно вдовесок второй (филиал). Конфигурация и система там были одинаковые бОльшей частью, я сначала сделал хитрый финт. Я создал локальный репозитарий /etc для конфигов, потом после настройки (доводки после обновления) второго сервака, я прям скопировал удаленный каталог в свою систему и закрепил это дело у себя как отдельную ветку. Идея была в том, чтобы иметь рабочие "мои" конфиги под рукой на одной системе,изменялись и отправлялись по сети на сервер(полуавтомтически или руками). (проще конечно же разместить общее зеркало в сети, но тогда без инета схема перестает фурычить).
Потом мне просто это стало не удобно и я просто завел такой же репозитарий на удаленном сервере и работал с нею по ssh. Очень удобно, и допуск даю новым соискателям к sudo, с одним условием, не удалять гитрепозитарий из системы, и инет как таковой не нужен(можно решить вопрос по телефону, банально продиктовать команду). (не могу сказать, что это не работает через внешнее зеркало, но вот когда вы работаете с разными версиями демонов на разных серверах, то скрестить их конфиги в одном месте бывает не простым занятием, так как бывает , что одно не работает в др., я к тому, что все зависит от задач и условий).
Мне пока хватает локальных репозитариев, я не настаиваю, просто поделился мнением. [если не ошибаюсь, в случае с гитом, формально, копия репы храниться локально на целевых клиентах, я к тому, что по ресурасам и пр. все равно это будет формально локальное зеркало, т.е. при первом гит клон как раз локальная репа и заводиться с доп. привязками])
ЗЫ: если нет, то напишите скрипт, как верно указано выше, который проверял бы зеркало, и если есть чтото делал пулл. Но в случае возникновения проблем, наверно будет нужда к ручному чекауту, что формально имхо по КПД ставит ситуацию в ровень с локальный репозитарием. Ну или же писать уж очень сложный скрипт, который еще и чекаут сделает, проверив весь софт на адекватный старт..брррр адско-адский скриптяра.
Лозунг у них был такой: "Познание бесконечности требует бесконечного времени". С этим я не спорил, но они делали из этого неожиданный вывод: "А потому работай не работай — все едино". И в интересах неувеличения энтропии Вселенной они не работали. (с)
ага. спасибо за рассказ, интересно.
я по всякому попробую. мне нужно именно хранилище конфигов многих серверов, доступное вовезде.

у меня в основном проектные задачи - сделал, передал в использование и доступ к серверам прекращен. а "полет мысли" во время работы с проектом хотелось бы сохранять централизованно и структурированно, желательно в облаках.
проектов было немного, но половину конфигов с них уже потерял и это очень неприятно.

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