Каковы best practices хранения и каталогизации админских наработок?
За долгие годы практики у каждого системного администратора накапливаются тонны наработок - удачные конфиги, прямые процедуры, экономящие массу времени workarounds и так далее. Многие из них уходят в сообщество и пополняют нашу общую базу знаний. Некоторые, в силу их конфиденциальности или иных причин, остаются только в локальных копиях и часто оседают во всяких там вложенных директориях с романтическими названиями типа "заказчик_N/etc" или, скажем, "to_sort_out_asap"
И в результате ты снова проводишь лишние 30 минут (в лучшем случае) в гугле на решение давно решенной задачи и занимаешься спортивным велосипедостроением.
Как лучше всего подходить к хранению, тегированию, поиску по своим наработкам? Кто чем пользуется? Есть ли что-то лучше просто текстовых файлов, find, grep и vim?
Странно, почему никто еще не предложил вики.
Пишешь себе статейки, линкуешь между собой, конфиги можно как кусками в страницу вставить, так и прицепить полный конфиг в аттач. Доступ опять же можно рзграничить кому чего, а кому ничего, плюс история изменений ведётся кто что менял.
Для своих дел пользуюсь dokuwiki, на работе mediawiki. И то и то годится. Плюс конфиги рабочих серверов можно в git/svn засунуть.
локальный трекер, где я сам ставлю себе задачи и локальный svn, где хранятся все скрипты, конфиги и прочее. Репу эту я таскаю за собой уже лет ...надцать :)
Т.е., с поправкой на современность, GitLab. Думаю в эту сторону, в принципе. Наверно да, неплохо. А как вы подходите к вопросу иерархии кейса, клиентов и софта. Например nginx / стриминг / клиент_Z - что из этого будет "проектом", что "задачей"?
mikevmk: Ну, тут два подхода. Либо проектом будет "все задачи клиента Z", в котором задачи, либо проектом будет nginx, а в нем задачи. Если задач много и необходима группировка, заводят подпроекты. Тут уже вопрос личных предпочтений. Я трублю корпоративным админом (ну...почти админом :) ) поэтому у меня всегда иерархия от обьекта, в данном случае от nginx.
Завёл бложик, где описываю сложные ситуации или грабли, с которыми приходилось разбираться. Когда вопрос снова всплывает -- лезу и читаю, как боролся в предыдущий раз :-)
Дерево папок с файлами.
В каждой папке текстовый файл, содержащий в имени нужные теги через прочерк.
Внутри файла - можно сделать любую пометку/описание.
Итого:
1. Папка - имеет нормальное название того, что внутри.
2. Имя файла - ассоциативные теги и описание внутри.
Затем: делаем поиск тега по именам файла через "маску": [*нужный тег*.tags.txt]
Результат: конечная папка с полным путём - тематика+название, файл - это теги.
Пользуюсь давно, сбоев ещё не было.
Общедоступное в блог, приватное в Wiki систему, портфолио в Instagramm, "мудрость" в Facebook, скрипты на Github. У меня под это Confluence заведен слинкованный с Jira. Очень удобно писать в Confluence ТЗ на что либо и сразу оттуда ставить задачи в Jira.