19

Ansible без излишеств. NFS

Ansible без излишеств. NFS Программирование, IT, Разработка, Linux

В рамках репозитория "ansible_helpers" ( https://github.com/vladimir-chursin000/ansible_helpers ) добавил новое приложение-помощник (helper), реализующее процесс установки и конфигурирования nfs-сервера на ОС вида "rhel8_based".

Репозиторий содержит краткие справочные материалы и пояснения. Всё, что необходимо, - это:

1) вписать ip-адреса целевых хостов в файл "nfs_server_hosts";

2) убедиться, что на эти хостах в файл "/root/.ssh/authorized_keys" (знаю, что лучшее решение - выдать права посредством SUDOERS определённому пользователю на запуск команд от root-а через sudo, но пока так) добавлены публичные ключи пользователя, из-под которого планируется запуск ansible-сценария;

3) сконфигурировать экспортируемые вовне директории, отредактировав файл "nfs_exports_config";

4) если есть необходимость, то отредактировать файлы конфигурации "nfs_server.conf" и "nfsmount_server.conf";

5) запустить исполнение сценария посредством скрипта "install_nfs_server.sh";

6) разрешить целевые сервисы на фаерволе (когда-нибудь для этих целей создам отдельный helper).

Если впоследствии потребуется либо изменить конфигурацию сервиса, либо поменять свойства экспортируемых директорий (добавить, удалить и проч.), то для этого предусмотрены скрипты - "check_nfs_serv_conf_is_changed.sh" (при изменении файлов конфигурации) и "check_nfs_serv_exports_is_changed.sh" (при изменении файла "/etc/exports").

Также, если возникнет необходимость проверить работоспособность nfs-сервиса (т.е. убедиться, что все необходимые сервисы запущены), в наличии скрипт "check_all_nfs_serv_is_started.sh".

P.S.

1. В планах, когда накопится достаточное кол-во приложений-помощников, написание полноценной статьи для Хабра (и не только) на тему "Минимальная ИТ-инфраструктура для малого бизнеса" (for example).

2. Про Ansible Galaxy в курсе, но хотелось иметь свой набор "велосипедов", который было бы удобно использовать лично мне (и, вероятно, кому-либо ещё).

Лига Сисадминов

2.3K постов18.8K подписчиков

Правила сообщества

Мы здесь рады любым постам связанным с рабочими буднями специалистов нашей сферы деятельности.

Вы смотрите срез комментариев. Показать все
0
Автор поста оценил этот комментарий

Очень хочу уйти в DevOps, помогите )

раскрыть ветку (18)
3
Автор поста оценил этот комментарий
Иди, разрешаю.
раскрыть ветку (2)
2
Автор поста оценил этот комментарий

Узнаю русский форум )))

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Просто русские не любят когда их время тратят всякими "прочитайте всё за меня и напишите краткую инструкцию" запросами. Найти роадмап на девопса или ролик на ютубе в котором объяснят - дело 15 минут. И вот если уже не понял по конкретной технологии, то спрашивай среди тех кто этой технологией занимается.
2
Автор поста оценил этот комментарий

встань и иди!

(с) Иисус

Автор поста оценил этот комментарий

Если это не троллинг, то начинайте с простых вещей (если предположить, что с установкой тех же *nix-ов знакомы): конфигурирование ssh-сервиса, создание пользователей и проч.

раскрыть ветку (13)
1
Автор поста оценил этот комментарий

помогите, пожалуйста, есть какая-то толковая статья как через плэйбук запускать скрипты на хостах?или я типа просто пишу в плэйбуке
name: Scripts
script: /путь/до/скрипта?
я пока не готов (да и не знаю как) переносить инфу из скриптов в само тело плейбуков, а вот скопировать на удаленный комп и запустить - это то чего я сейчас добиваюсь.

раскрыть ветку (4)
Автор поста оценил этот комментарий

Вот тут расписано про исполнение команд на стороне инвентори-хостов
https://docs.ansible.com/ansible/latest/collections/ansible/...
===
https://docs.ansible.com/ansible/latest/collections/ansible/... вот тут про копирование файлов

раскрыть ветку (3)
1
Автор поста оценил этот комментарий

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

раскрыть ветку (2)
Автор поста оценил этот комментарий

Попробуйте добавить в команду, вызывающую скрипт, вывод в файл)

раскрыть ветку (1)
1
Автор поста оценил этот комментарий
Да не, я просто энидеск ставлю, установка проходит, а дальше display not supported , хотя все он поддерживает. Если этот же скрипт запускать локально, то все работает без проблем.
0
Автор поста оценил этот комментарий

Это не троллинг. Пока начал с изучения Python, вроде бы тоже полезен

раскрыть ветку (7)
2
DELETED
Автор поста оценил этот комментарий

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

Краткая родамапа выглядит так:

1. Контейнерезация: Docker -> Docker Compose -> Kubernates. Очень хорошо заглянуть ко всему этому под капот.

2. Системы автоматизации: Ansible\Jenkins и т.д.

3. CI\CD: gitlab ci-cd, github actions

4. Системы мониторинга: EFK и/или Prometeus\Loki\Grafana\Alertmanager.

5. IaC: Google Cloud, AWS, Yandex Cloud и все такое прочее.

----

Естественно очень много зависит от контекста - если у вас разработка х86 приложений, то кубер\композ\мониторинг особо не нужен, зато всякие TeamCity\что_там_у_Microsoft знать надо.


Да и в целом девопс это больше про философию - автоматизировать все и курить бамбук.

раскрыть ветку (6)
0
Автор поста оценил этот комментарий

а можете помочь немного с освоением докера,ансибла?

раскрыть ветку (5)
1
DELETED
Автор поста оценил этот комментарий

Если есть какие-то конкретные вопросы задавайте - постараюсь ответить, в остальном мануалов в интернете пруд-пруди один лучше другого.


Докер на самом деле довольно простая штука, с хорошей докой.

раскрыть ветку (4)
0
Автор поста оценил этот комментарий

а можно какой то ваш контакт?

раскрыть ветку (3)
1
Автор поста оценил этот комментарий

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

К примеру: чтобы скопировать файл, нужно инструмент и команды, руками это тот же sftp и команды put/get. В Ansible это модули copy и fetch.

Почти вся автоматизация строиться на:

1. Я знаю как это делать.

2. Меня задолбало каждый раз это делать.

3. Так какие есть модули на Ansible, чтобы сделать пять различных действий, которые я делаю руками (создать файл из шаблона, установить ПО, изменить разрешения на файл, создать и запустить службу (enable + start).

раскрыть ветку (2)
Автор поста оценил этот комментарий

Отличный совет, но ник Ваш вызывает опасения)))

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Спасибо!!! Мне не жалко если его заспамят. Очень удобно. С второго адреса почты пошёл, той которой для регистрации и спама.)))

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку