inqfen
С соответсвующими зонами ответственности
Vitaliy
Хороший админ - ленивый админ😜
Vitaliy
Vitaliy
@inqfen в общем спасибо за конструктивный диалог. Будем пробовать. ... Развели тут оффтоп...
inqfen
Ага, в общем-то да, ушло в оффтоп, но может кому-то еще будет интересно
Vadim "Oxyd"
Vitaliy
Да, все печально. Паппет... Не. Он не подходит.
Vadim "Oxyd"
И на чьей стороне перевес? 😊
Vadim "Oxyd"
Не. В борьбе между ансиблом и паппетом?
Vadim "Oxyd"
Нифига он не проще. Мне поначалу страшно было спать ложиться. Снилось что я плейбук. Объяснить не смогу, но страшно. 😉
Vadim "Oxyd"
George
George
Потому «знать ямл» это аналогично «уметь редактировать текстовый файл в блокноте»
George
++
George
Если в знание ямла входит знание о различных способах написать Мультилайн - я гарантирую, что 80% т.н. Синьор ямл инженеров это не вспомнят без документации
Tadeusz
нахрена это помнить вообще? есть документация.
George
Ну, и завсегда есть salt ) коллеги (несколько разных команд) переехали с паппета и счастливы, так что не «единым ансиблом»
Отделение Bereke Bank
Alex
Alex
Правильный ответ - никак. И ансибл обманывает своей обманчивой простотой. Но в благодаря кривизне архитектуры - приходится страдать
George
Alex
Сочувствую, бро :D
Sebor▂▅▇█▓▒░
Nikita
Всем привет) ребят, подскажите как правильно сделать. У меня есть несколько плейбуков, внутри они одинаковые, у них различаются только hosts, как правильно это сделать? сейчас у меня просто 4 одинаковых файлика и в них просто в начале различается -hosts. Можно ли как то упростить/улучшить?
UglyKoyote
инвентори файл?
Alexey
Alexey
передавать туда хосты так. или использовать 1 имя группы хостов в 1 плейбуке, только при запуске разные инвентори пихать
Nikita
а можно какой-нибудь линк? А то я только учусь
Alexey
например это.
inqfen
Nikita
хмм..я спрашиваю в целях универсализации, то есть я вот сейчас что-нибудь в одном исправлю и мне придется 4 раза копипастить в другие файлики
inqfen
Да уж давно никакого ада
inqfen
Или где-то 2.6 стоит? Из какого вы там года?
inqfen
Это ад с тем что кто-то что-то ставит
inqfen
В 7.7 например 2.7 емнип искаропки. Если у вас там какой-то 7.1 - то чему удивляться на 5 летней системе?
inqfen
Обновлять надо же
Отделение Bereke Bank
в RH7 всегда был 2.7
Lamobot
Установите ансиблом docker через pip?
Lamobot
Почему docker-py?
Lamobot
Там написано что если python 2.6, то docker-py, а если питон выше версии, то docker
Lamobot
И нужно один выбрать
Lamobot
:)
Отделение Bereke Bank
сделай так и все будет збс
- name: Install docker and docker-compose pip packages
pip:
name:
- docker==4.0.2
- docker-compose==1.25.0
state: present
Отделение Bereke Bank
ну вот делаешь это на всех хостах где хочешь менеджить ебучие контейнеры ансиблом - все работает)
Alex
хмм, глянул у себя
- name: Install python packages
become: yes
pip:
name: ["yamllint", "docker-py", "psycopg2-binary"]
executable: pip3
а главное все работает ))
Отделение Bereke Bank
Ты это на хост поставил? Или на ансибл контроллер?
Alex
у меня кстати с docker модулем не работает, тоже CentOS7
Alex
TASK [common/jfmc : Login into docker registry] ***
fatal: [app_master]: FAILED! => changed=false
msg: 'Failed to import the required Python library (Docker SDK for Python: docker (Python >= 2.7) or docker-py (Python 2.6)) on itests-bf87bf5c-master''s Python /usr/bin/python3. Please read module documentation and install in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter, for example via `pip install docker` or `pip install docker-py` (Python 2.6). The error was: cannot import name ''__version__'''
Alex
Хотя из консоли все работает
# python3
Python 3.6.8 (default, Apr 2 2020, 13:34:55)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import docker
>>> client = docker.from_env()
>>> client.containers.list()
[<Container: ed780c1360>]
# pip3 list | grep docker
docker (4.3.1)
docker-pycreds (0.4.0)
Alex
по ходу дело в версии docker, на 4.0.2 все работает
Отделение Bereke Bank
Alex
Alex
там дело в версии docker и питоновского docker модуля
Alex
в таком сочетании работает без проблем
# rpm -qa | grep docker
docker-ce-cli-19.03.12-3.el7.x86_64
docker-ce-19.03.12-3.el7.x86_64
# pip3 list | grep docker
docker (4.3.1)
а вот с 18.06 уже не будет работать
Alex
у меня compose просто файл скачанный
Alex
1.24.1
Iwan
У меня для модуля docker_container стоит на серверах:
pip list | grep docker
docker (4.2.0) or docker (4.2.2)
Полёт нормальный )
George
George
Почему тупо не поставить Python-docker через пакетный менеджер ?
Отделение Bereke Bank
George
Опакетить как надо
Отделение Bereke Bank
Проще не использовать докер модуль
Elenhil
George
Всем
Elenhil
Elenhil
я не подъебываю, мне интересно
George
Установка в pyenv через pip == хорошо
George
Установка через pip в глобальное питоноокружение == плохо
George
У тебя обновляется ось. И выносит все пакеты, которые были установлены через pip
George
Поэтому если правильно - ставить пакеты в глобальное окружение питона только через пакетный менеджер оси, если пакета нет - подготовить самому
George
Внутри докер контейнера (он все равно одноразовый) - можешь делать так, как считаешь нужным
George
Да, тоже прикол )))
Iwan
А ой простите, я запутил, Георг сказал правильно, у меня стоит: apt - python-pip
Igor
А джинджу можно использовать внутри поля body у uri прям в таске?
Iwan
ubuntu 18.04
Iwan
2