i4l
хороший вопрос, однажды я обнаружил, что слес после ребута загрузился не с последней версией установленного ядра, при повторном ребуте - загрузился
i4l
в конфиге новая строка появилась, когда я одну из тачек руками пошёл ещё раз ребутать, как и почему - не знаю и не хочу знать
Fire
Или что у тебя там за загрузчик.
i4l
для понимания, инстансам не один год и такое было единожды
Lex
Всем здрасьте! А никто не поднимал свой galaxy сервер? Есть какой опыт, отзывы?
Div
а зачем если есть git?
Lex
гит есть...но вопрос не в этом )
Div
git решает любые проблемы ибо зело могучь
Alexander
Господа, подскажите пожалуйста, возможно ли использование переменных в качестве параметра внутри такой конструкции: ... loop: "{{ lookup('fileglob', variable ~ '.conf', wantlist=true)" ... }}" ... Т.е. я хочу внутри параметра лукап плагина использовать переменную. В идеале - вместе с if-else.
Alexander
Окей ) я взял и проверил - могу. =)
Andrey Pavlov
Добрый день, чего он матюкается?
Andrey Pavlov
Grek 🇺🇦
Vladislav 👻
+100500
Andrey Pavlov
rsa закинул на него, да и по паролю не хочет
Grek 🇺🇦
не, ты не понял, наверное, в твоем сообщении ВООБЩЕ НИЧЕГО НЕ РАЗОБРАТЬ. а ты нам про какие-то ключи...
Отделение Bereke Bank
Надо фотать экран
Grek 🇺🇦
прикладывать экран к сканеру
Andrey Pavlov
сделал скрин))
Andrey Pavlov
вот текст: The full traceback is: File "/tmp/ansible_routeros_command_payload_gk4jpq11/ansible_routeros_command_payload.zip/ansible_collections/community/network/plugins/module_utils/network/routeros/routeros.py", line 74, in get_capabilities capabilities = Connection(module._socket_path).get_capabilities() File "/tmp/ansible_routeros_command_payload_gk4jpq11/ansible_routeros_command_payload.zip/ansible/module_utils/connection.py", line 195, in rpc raise ConnectionError(to_text(msg, errors='surrogate_then_replace'), code=code) fatal: [192.168.33.150]: FAILED! => { "ansible_facts": { "discovered_interpreter_python": "/usr/libexec/platform-python" }, "changed": false, "invocation": { "module_args": { "commands": [ "/system package update check-for-updates" ], "interval": 1, "match": "all", "retries": 10, "wait_for": null } }, "msg": "paramiko: The authenticity of host '[192.168.33.150]:64522' can't be established.\nThe ssh-rsa key fingerprint is b'0be98bbd099208282700208bb45f59e2'." }
Dmitriy
rsa закинул на него, да и по паролю не хочет
а под юзером, который стартует плей, получается по ssh законнектится на хост ?
Dmitriy
прикладывать экран к сканеру
вот вы смеетесь, а у меня есть фото ошибки, которое сфоткали с экрана на телефон, а телефон в сканер фигнули.
Anton
Ребят, нужно настроить синхронизацию времени на линукс серерах с домен контроллером винды? Нет ни у кого случайно плейбука как это можно сделать?
Div
линукс сервера у вас зоопарком из ос радуют или все единоприлично?
i4l
в vars, среди прочего, есть переменная - лист словарей, как правильно сделать по нему lookup?
i4l
не могу одуплить примеры, но мне нужна динамическая переменная на его основании
Sergey
i4l
Использовать порядковый номер элемента в списке, либо map.
я хотел лукап сделать через хостовые переменные по этому листу и если это получается без уровня вложенности по содержимому vars, то по содержимому vars.examplevar не могу понять как это сделать )
i4l
мфкы ыгидшые
i4l
есть какой-то другой способ в тасках это делать
i4l
https://docs.ansible.com/ansible/latest/collections/ansible/builtin/subelements_lookup.html
i4l
очень похоже
i4l
типа так чтоли lookup('vars','examplevar')[черезчто]
i4l
да, инфа сотка, всё пашет, спасибо всё равно
Aleksey
А что за удивительные существа делали inventory source k8s ? он кажется делает не совсем то что я бы от него ожидал. НА КОЙ ЧОРТ ОН ПОШЕЛ СОБИРАТЬ ДАННЫЕ СО ВСЕГО КЛАСТЕРА. йопт
GithubReleases
ansible/ansible tagged: v2.10.3rc1 Link: https://github.com/ansible/ansible/releases/tag/v2.10.3rc1 Release notes: New release v2.10.3rc1
Aleksey
https://docs.ansible.com/ansible/latest/user_guide/playbooks_filters.html#combining-hashes-dictionaries list_merge!!! me ушёл на 2.10
Vyacheslav
Коллеги, всем доброго дня. Подскажите как вытащить volume_size из такого вывода? ok: [localhost] => { "msg": { "changed": false, "failed": false, "images": [ { "architecture": "x86_64", "block_device_mappings": [ { "device_name": "/dev/sda1", "ebs": { "delete_on_termination": true, "encrypted": false, "snapshot_id": "xxxxx", "volume_size": 780, "volume_type": "gp2" } } ], "creation_date": "2020-10-27T01:56:43.000Z", "description": "", "ena_support": true, "hypervisor": "xen", "image_id": "xxxx", "image_location": "xxxxx", "image_type": "machine", "name": "xxxxx", "owner_id": "xxxxx", "platform_details": "Linux/UNIX", "public": false, "root_device_name": "/dev/sda1", "root_device_type": "ebs", "sriov_net_support": "simple", "state": "available", "tags": {}, "usage_operation": "RunInstances", "virtualization_type": "hvm" } ] } }
Vyacheslav
Модуль ec2_ami_info
Lamobot
ec2_ami_info_result["images"][0]["block_device_mappings"][0]["ebs"]["volume_size"]
Jungo
доброе утро! направьте на путь истинный пож-та есть задача устанавливать софт на baremetal сервера около 30 контейнеры app db около 500 думаю о создании или использовании единой роли для установки ПО - список софта, хранить с переменный group vars host vars рядом с инвентори - это рабочий вариант? то есть создание единой роли по установке это норм подход? просто надоело что у меня куча плейбуков в которые все почти одинаково
Lamobot
Но если много образов и дисков, тогда вместо [0] нужно будет использовать фильтр selectattr чтобы найти нужную запись из списка.
Lamobot
Если можно написать одну хорошую роль - пишите. Слишком мало информации. Возможно лучше будет написать свой модуль на питоне.
Отделение Bereke Bank
доброе утро! направьте на путь истинный пож-та есть задача устанавливать софт на baremetal сервера около 30 контейнеры app db около 500 думаю о создании или использовании единой роли для установки ПО - список софта, хранить с переменный group vars host vars рядом с инвентори - это рабочий вариант? то есть создание единой роли по установке это норм подход? просто надоело что у меня куча плейбуков в которые все почти одинаково
Если задача просто установить N пакетов, положить N конфигов - то почему бы и нет. Но учти, что в ситуациях "если луна в созвездии Водолея - устанавливаем N-1 пакетов на хост А, а на остальных ничего не трогаем" - с такой ролью начнется ебля) Тогда лучше отдельную роль под каждый софт
Алексей
Кто-то пробовал писать оператор для кубера на ансибле? Через operator SDK
Jungo
а можно как-то заставить ansible спросить пароль для su root если коннект идет под обычным пользователем и не установлен sudo на хосте цели? чтобы не передавать --extra-vars='ansible_become_pass=password'
Fire
Вроде так.
Jungo
become_method
ага become_method: su но пароль он не запросит в интерактиве видимо
Fire
ага become_method: su но пароль он не запросит в интерактиве видимо
Если ты в плейбуке укажешь запрос инфы от пользователя интерактивно - запросит.
Fire
Типа так: vars_prompt: - name: 'openvpn_revoke_target' prompt: 'What instance name should be revoked?' private: no
Andrey Pavlov
вы принципиально ошибку не гуглите?
доброе утро, нагуглил только то, что нужно явно указывать ansible_python_interpreter=/usr/bin/python3 , но это тоже не помогло
Anonymous
если я установлю переменную окружения с помощью environment:это будет только до перезагрузки ?
Sebor▂▅▇█▓▒░
доброе утро, нагуглил только то, что нужно явно указывать ansible_python_interpreter=/usr/bin/python3 , но это тоже не помогло
Причем здесь интерпретатор? Там ошибка у тебя а конце сообщения указана
Andrey Pavlov
Причем здесь интерпретатор? Там ошибка у тебя а конце сообщения указана
я уже писал, что rsa ключ закинул и прописал, вообще не понимаю почему он обращается к ключу когда у меня прописано: ansible_ssh_port : 64522 ansible_ssh_user : *** ansible_ssh_pass : *** ansible_become_method: sudo
Иван
Потому что ssh так работает
Иван
Andrey Pavlov
ansible_network_os: routeros ansible_connection: network_cli
Anonymous
Это будет до окончания таска
а если надо навсегда
Alexandr
ansible_network_os: routeros ansible_connection: network_cli
у меня с такими значениями норм работает
Alexandr
у меня с такими значениями норм работает
ansible_become: yes ansible_become_method: enable ansible_become_password: !vault... имхо для этого модуля вообще нет необходимости указывать, главное -u -k
Michael
Чойта не пойму, поэтому пните в нужном направлении: пытаюсь завести этот плагин: https://github.com/ansible/ansible/blob/stable-2.9/lib/ansible/plugins/callback/grafana_annotations.py конфиг для него в писал все норм с этой стороны, а вот подозрения на корректность url у меня есть ибо прописав туда grafana.example.com запросы POST летят на / ну и ошибка тут [ERROR]: Could not submit message to Grafana: HTTP Error 404: Not Found
Sergey
вот это чем не зашло - hostvars[host]['ansible_fqdn']?
Дмитрий
Всем снова привет. А подскажите, как шаблонизировать установку переменных памяти для sysctl.conf К пример, сервера могут выделятся с памятью 4/8/16/32 ГБ и т.д. Как прописывать для них автоматом параметры ядра, лимиты юзеров, shm и т.д.? Насколько я понимаю, для этого можно использовать шаблоны Jinja2, или нет? С какой стороны подойти к вопросу?
Дмитрий
А можно какой-нибудь простой пример или ссылку? Не могу найти сам нужного
Дмитрий
Это я уже пытался читать. Но пока не вкуриваю. Нужен какой-то простой пример, где бы бралось значение из /etc/sysctl.conf (ну, или другого аналогичного файла), и на его основе в шаблоне вычислялось другое... Но никак ничего подобного не могу найти...
Дмитрий
А nginx_conf.user заполняется в какой момент и кем?
Дмитрий
Погодь, это же не из ОС берётся, а ты вручную заполняешь... Надо именно из ОС фактические цифры взять, и на их основе вычислить значение... 🤔