inqfen
--- all: children: kubernetes: children: notification: hosts: "notification" vars: ansible_connection: "local" api: hosts: "api" vars: ansible_connection: "local" ingestion: hosts: "ingestion" vars: ansible_connection: "local" ingestion_management: hosts: "ingestion_management" vars: ansible_connection: "local"
inqfen
вот кусок, это все локалхост, но группы разные
Ilya
Видимо проще вынести на общий уровень и впихнуть a_port b_port c_port
Ага спасибо, но мне проще будет сделать вот так)
inqfen
спизжу себе....
Бассейн чисти
simplemice.eth
inqfen
Коннекшн к хосту одинаковый, но хостнейм разный
inqfen
В итоге эти группы на хосте не перемекаются
Pavel
Коллеги доброй ночи заметил у себя странность в плэйбуке по инсталляции и настройке influxdb прочитал документацию по модулю, и на распутье https://docs.ansible.com/ansible/latest/modules/influxdb_database_module.html если я правильно понимаю, то написано что версии influxdb выше 1.2.4 не поддерживаются странность в том что при первом проходе плейбука на чистой машине он валится в ошибку, а при повторном запуске все отрабатывает отлично валится на шаге создания базы данных https://gist.github.com/orciniusorsa/a46a8733a6f16d9504289bf5ef6b4039 не очень понимаю куда копать с диагностикой
Ждун
ну как бы всегда смотрится -vvvv =)
Ждун
ну и конечно ''' influxdb_icinga2_database_name ''' же не забываете объявить?
Pavel
Все объявлено, в доп файлах Первый проход ошибка, чуть позже ее приведу, второй запуск - все работает
Pavel
про ошибки если использовать - python3-requests - python3-influxdb первый запуск The full traceback is: File "/tmp/ansible_influxdb_database_payload_a3rjjnq_/ansible_influxdb_database_payload.zip/ansible/modules/database/influxdb/influxdb_database.py", line 81, in find_database File "/usr/lib/python3/dist-packages/influxdb/client.py", line 525, in get_list_database return list(self.query("SHOW DATABASES").get_points()) File "/usr/lib/python3/dist-packages/influxdb/client.py", line 381, in query expected_response_code=expected_response_code File "/usr/lib/python3/dist-packages/influxdb/client.py", line 256, in request raise requests.exceptions.ConnectionError второй запуск "msg": "Failed to import the required Python library (requests)
Pavel
если использовать - python-requests - python-influxdb то первый запуск ругается на отсутствие модуля influxdb а второй раз все работает прекрасно
ᴅⁱᵐⁱᴅʳ0ˡ
Коллеги доброе утро, подскажите пожалуйста какая переменная отвечает за количество одновременных соединений?
ᴅⁱᵐⁱᴅʳ0ˡ
--forks
точно) спасибо
Alex
https://github.com/inqfen/runner-ansible/blob/master/Dockerfile можешь у меня спереть да поменять что надо
This is image for runner, with ansible, k8s instruments and psycopg2 не увидел в докерфайле ничего относящегося к k8s. Или речь не про кубик?
Ivan
| FAILED => SSH encountered an unknown error during the connection. кто нибудь сталкивался с такой ошибкой?
Oleg
запустить с -vvvv и повторить ссш-команду c -v-ключами, проанализировать чтобы решить проблему доступа к хосту по ссш.
Ivan
а если я даже ключ импортировал и когда делаю ssh root@123.123.123.123 подключаюсь, то все ок?
Sergey
а если я даже ключ импортировал и когда делаю ssh root@123.123.123.123 подключаюсь, то все ок?
Это ты что именно спросил? И какое отношение имеет этот вопрос к Ansible?
Ivan
Это ты что именно спросил? И какое отношение имеет этот вопрос к Ansible?
Это ошибка возникает при запуске playbook. Я уже сам разобрался ssh_args= надо пустым оставить
Anton
Коллеги, кто подскажет по ansible-runner? Правильно понимаю что он заменяет в какой-то мере ansible-playbook? и как его скрестить по хорошему с AWX?
Hello
Всем привет, а можно файл j2, который уже на удаленной машине затэмлэить?
Hello
ситуация такая, я забираю с гита файл j2, в который я хочу положить свои переменные
Anton
Как задача первоначальная выглядит?
Да я как всегда со своими ~8к хостами. Изменить стратегию с ansible push на какую-то альтернативу с отбивкой такой же как у ansible push. Просто вчера собрал под линукс который там используется ansible-runner. Задача запустить задачу на всех хостах так чтобы не пришлось ожидать в потоке завершения задач по хосту. но получить отбивку в AWX для тех кто занимается только добавлением/изменением переменных и запуском этих задач в минимальные сроки. Просто если задача выполняется около 15 минут на хосте, то даже 100 или больше потоков мало. А как всегда хочется максимально быстро.
Anton
Ансибл не умеет сжимать время. Тебе нужны callback-плагины.
Не совсем то что хотелось. Я имел в виду возможность со стороны сервера отправить на хост все параметры для этого хоста и плэйбук, сделать это сразу по всем хостам в минимальные сроки без ожидания пока выполнится на этом хосте весь плэйбук который может выполняться от 15 до 240 минут в зависимости от ширины канала. Но получить от хостов в сервер результат выполнения. Или мне проще сделать плэйбук как двойной — т.е. запускаю длинную задачу в режиме async & poll=0, и следующей задачей опять по тем же хостам просто уже для чтения статусов этих задач?
Anton
пулл модель должна куда-то стучаться. стучаться она должна из чего? В какое время? Т.е. тут вроде как хочется использовать плюсы обоих технологий. Инициировать на хостах пулл и дождаться его выполнения. Вот только пока не могу сообразить как бы это лучше сделать
Ilgiz
Добрый день! Коллеги подскажите пожалуйста по модули -m ping, происходят странные вещи, "пингуются" даже мертвые хосты
Ilgiz
Добрый день! Коллеги подскажите пожалуйста по модули -m ping, происходят странные вещи, "пингуются" даже мертвые хосты
раньше добавлял хост в инвентори и проверял -m ping, эти самым смотрел все ли я правильно настроил но аутентификации, т.к. в случае каких-либо недочетов пинг не проходил и выводилось сообщение почему и что не так
Ilgiz
а сегодня прям пингуются все
Alex
а по ссш на мертвый хост пускает?
Ilgiz
у меня все по именам, я специально не добавлял имя в днс и все равно все "ок"
Anton
а сегодня прям пингуются все
расширяй логирование, смотри куда стучишься, может быть стучишься на локальный зост
Ilgiz
а по ссш на мертвый хост пускает?
ansible -i /etc/ansible/inventory/tmp_main_inv -m ping mmm mmm | SUCCESS => { "ansible_facts": { "discovered_interpreter_python": "/usr/bin/python" }, "changed": false, "ping": "pong" } ping mmm ping: mmm: Name or service not known
Ilgiz
ща он тут блеванул мне на экран кучу всего
Ilgiz
<mmm> attempting to start connection <mmm> using connection plugin network_cli <mmm> local domain socket does not exist, starting it <mmm> control socket path is /root/.ansible/pc/d876860a37 <mmm> local domain socket listeners started successfully <mmm> loaded cliconf plugin ios from path /usr/local/lib/python3.6/site-packages/ansible/plugins/cliconf/ios.py for network_os ios
Ilgiz
вот тут как бы он правильно отсылает
Ilgiz
а вот тут
Ilgiz
<mmm> Attempting python interpreter discovery <mmm> ESTABLISH LOCAL CONNECTION FOR USER: root <mmm> EXEC /bin/sh -c 'echo PLATFORM; uname; echo FOUND; command -v '"'"'/usr/bin/python'"'"'; command -v '"'"'python3.7'"'"'; command -v '"'"'python3.6'"'"'; command -v '"'"'python3.5'"'"'; command -v '"'"'python2.7'"'"'; command -v '"'"'python2.6'"'"'; command -v '"'"'/usr/libexec/platform-python'"'"'; command -v '"'"'/usr/bin/python3'"'"'; command -v '"'"'python'"'"'; echo ENDFOUND && sleep 0' <mmm> EXEC /bin/sh -c '/usr/bin/python && sleep 0' Using module file /usr/local/lib/python3.6/site-packages/ansible/modules/system/ping.py
Ilgiz
долбится уже походу на локал хост
Ilgiz
<mmm> ESTABLISH LOCAL CONNECTION FOR USER: root
Sergey
Добрый день! Коллеги подскажите пожалуйста по модули -m ping, происходят странные вещи, "пингуются" даже мертвые хосты
Странное. У тебя не хосты, а сетевые железки без питона. Объектная модель Ансибла предполагает, что ты должен страдать: всё испольняется на твоём локальном хосте, а уже с него команды летят на сетевую железку.
Ilgiz
вот сам плейбук нормально ругается при запуске, орет что хост не доступен и все такое
Sergey
вот сам плейбук нормально ругается при запуске, орет что хост не доступен и все такое
А как тогда проблема выглядит? У тебя ещё и Ансибл куда-то в странное место установлен, кстати.
Ilgiz
А как тогда проблема выглядит? У тебя ещё и Ансибл куда-то в странное место установлен, кстати.
беру добавляю хост в инвентори, после начинаю пингать(-m ping ) и все ок, хотя имя хоста не резолвится даже мертвая запись по сути, но рабочая, плейбуки алармят нормально мол хост не могу резолвить и все
Sergey
У тебя connection же какой-то не-ssh.
Ilgiz
по поводу места, это pip туда поставил, я как бы начал грешить что это из-за второго питона, снес ансибл переставл на третий но проблема осталась
Ilgiz
центос
Ilgiz
У тебя connection же какой-то не-ssh.
ansible_connection: network_cli ansible_network_os: ios
Sergey
ansible_connection: network_cli ansible_network_os: ios
Уберёшь это - заработает нормально. Я же тебе написал - модули выполняются локально в этом connection.
Ilgiz
ща попробую
Sergey
Или для добавленного хоста выставь подключение по ssh
Ilgiz
а добавленный хост это тоже сетевая железяка
Ilgiz
у меня только сетевуха
Ilgiz
всего 4 линуха но для них отдельный инвентори мутил
Ilgiz
это я так понимаю последние ансиблы так ведут себя? я начал ниже 2.7 и там норм работало
Sergey
это я так понимаю последние ансиблы так ведут себя? я начал ниже 2.7 и там норм работало
Хз, не работал с сетевыми железками. Общие механизмы под капотом - знаю, что сетевики должны страдать - знаю, мелкие подробности - не знаю.
Ilgiz
ну ладно я в целом понял с чем столкнулся, большое спасибо за советы!
inqfen
Там модуль для питона, чтобы ансибловый k8s работал
inqfen
Надо написать более явно, все равно скоро буду на ansible 2.9 переходить
inqfen
Вот и поправлю
Alex
Криво описание сделал
ну и я бы лично не пихал все команды в один слой. А то сейчас получается - хочешь обновить тераформ, пересобирай весь образ
inqfen
Он в ci собирается раз в месяц, так что пофиг
inqfen
Так сказать не стоит плодить слои, если нет необходимости