Aleksey
Timur
Lev
Почему не видно-то?
https://github.com/lean-delivery/docker-systemd/blob/centos7/Dockerfile ?
Отделение Bereke Bank
Aleksey
https://gist.github.com/freeseacher/e2e154259471a487e60506df45a6abaa
Отделение Bereke Bank
Ну и учитывая что это центось, год больше год меньше - без разницы 😂
Lev
Aleksey
контроля ради
Aleksey
я сначала prepare делал в докерфайле
Aleksey
потом понял что зря и перешел на prepare
George
Привет народ, изучаю Ansible, пишу плейбук для установки Сassandra.
Вроде всё огонь, на последнем этапе хочу прописать KEYSPACE в cqlsh.
Просто через командную строку это совершается в два простых этапа:
1. Прописываешь cqlsh
2. Вписываешь свой кей (вида CREATE KEYSPACE.........};
3. exit
Как правильно это описать в плейбуке ?
Спасибо за ответы :)
Sebor▂▅▇█▓▒░
написать модуль
Tadeusz
cqlsh на питоне написан, поэтому - да.
George
Именно написать или есть варик, что такой уже создан ?
Я буквально только начал изучать ansible)
Sebor▂▅▇█▓▒░
ты всегда можешь погуглить готовые варианты
Ждун
Ребята, давайте быть честными. Вход в ансибл простой, писать модуль это другой уровень, не всем подходит, так что не стоит быть Мураками
Отделение Bereke Bank
Tadeusz
shell тогда - довольствуйся мАлым, сын мой (ц)
George
Команда cqlsh открывает свою под консоль, в ней я ввоже поочерёдно для кея, после чего exit - всё, больше ничего не требуется
Tadeusz
ты можешь сложить че тебе надо в файл и скормить cqlsh -f file
George
собственно вопрос, как это организовать грамотно.
Если в виде команды , требуется предустановка cqlsh на хост с Ansible (не проблема вообще)
Проблема как это описать грамотно
Отделение Bereke Bank
Tadeusz
Ержан, проснись, это костыли)
Отделение Bereke Bank
Ты предлагаешь человеку писать модуль?)
Tadeusz
предлагаю cqlsh -e "CREATE KEYSPACE HUJPIZDA"
Tadeusz
и по итогу - у тебя там хранилище целое в /root/ )
Отделение Bereke Bank
Tadeusz
задача - создать keyspace, это можно сделать через -e
George
Абсолютно верно, задача такая
George
Как грамотно отобразить её в плейбуке для меня всё ещё вопрос
Tadeusz
что именно?
Tadeusz
module shell, что там украшать )
George
лады, понял, буду разбираться)
Oleg Y.
джентльмены, как принято выкручиваться из ситуации, когда ансибловому пользователю принципиально не выдают sudo nopasswd all, а только права на выполнение конкретных команд? Башсибл на shell / command, больше опций нет?
Serg
Oleg Y.
-K, --ask-become-pass ?
неа. В моей ситуации так не получается, потому что по условию задачи (которое я не сказал, сорри) любой интерактив должен быть исключён (по коммиту выполняется сборка на jenkins, которая затем триггерит ansible playbook, и он должен выполняться в максимально unattended режиме).
И немного уточню вопрос. Права на беспарольное выполнение конкретных команд - есть. Хотелось бы как-то избежать бесконтрольного башсибла на shell или command.
Serg
Oleg Y.
в основном это systemctl start/stop/restart whatever.service для RHEL 7 и service whatever start/stop/restart для RHEL 6 в зависимости от собранных фактов об оси.
Этом подходе мне крайне не нравится моё программирование на ансибле и невозможность использовать штатный модуль service.
Ну и если я захочу сделать какой-то sanity check (проверка, установлен ли сервис, потому что по ролевой модели я его не могу ставить, это пререквизит и его устанавливают до меня), то вместо штатного service_facts придётся городить огород.
Vlad
Oleg Y.
𝔹𝕠𝕣𝕚𝕤
Sergey
Aleksey
Lev
Aleksey
Видел вариант когда чтобы это все работало с airgap притаскивется роль в которой делается локальная репа с нужным софтом
Aleksey
Ну то есть обновление через штатный aptget
Aleksey
А вся магия как обычно в скриптах миграции пакета
Aleksey
А вот пакет уже на отдельном инфра сервере. На нем же _все_ пакеты какие нужны. В ом силе системные
Vlad
Lev
Alex
Oleg
Всем привет)
Нужна оплачиваемая помощь
1. Написание playbook для развёртывания docker-приложения на голом сервере и накатывание обновлений
Из развлечений будет:
- git (установка, подключение к bitbucket)
- nginx (установка, конфигурация)
- docker (установка, развёртывание образов)
2. Написание API для запуска playbook обновления по запросу (python3.7+, sanic)
Методы я сам напишу, нужно дописать несколько функций для корректной работы с ansible playbook).
Ориентировочный ценник в ЛС сразу пишите.
Если есть уточняющие вопросы - задавайте )
Sergey
Oleg
Sergey
Похоже, что да. Во всяком случае таких объявлений тут ещё не было - только залётные предлагали периодически разное по нычкам развёртывать без ансибла.
Tadeusz
Oleg
Мне тут уже написали, что дёрнуть из питоновоского приложения плейбук - целый рокет сайнс на 500 баксов. Оно того не стоит, честно )
Max
Отделение Bereke Bank
import os
os.system("ansible-playbook ...") 😁
Serg
ansible-runner: https://github.com/ansible/ansible-runner
Tadeusz
угу, я на его базе делал
Tadeusz
Lev
Tadeusz
Отделение Bereke Bank
Lev
API?
Use git flow & green build master Luk(c) obi van
Но если серьезно то кмк оверкил это все. Если у вас на проекте есть ci прикрутите туда ansible запускать
Tadeusz
сегодня ты хочешь "дернуть простой плейбук", а завтра инвентарь налету править и скармливать переменные этим плейбукам :)
Lev
Вообще вводных не хватает на задаче
Tadeusz