Size: a a a

2021 March 25

L

Lamobot in Ansible
Alexey Nakhimov
meta: reset_connection заработало! проблема была там, про что забыл….. я чертову прорву времени таскаю за собой файл ansible.cfg, который дополнялся годами )))
вот его содержимое:
[defaults]
forks = 20
host_key_checking = False
nocows = True
gathering = smart
fact_caching_timeout = 600
callback_whitelist = profile_tasks
# work around privilege escalation timeouts in ansible:
timeout = 30
remote_tmp = /home/ubuntu/.ansible/tmp

[ssh_connection]
pipelining = True
ssh_args = -o ControlMaster=auto -o ControlPersist=600s
timeout = 10
# shorten the ControlPath which is often too long; when it is,
# ssh connection reuse silently fails, making everything slower.
control_path = %(directory)s/%%h-%%r


Закомментировал почти все в этом файле - и meta: reset_connection сработало!
Теперь надо понять, что аффектит в этом файле. Подозреваю вот этот блок:
pipelining = True
ssh_args = -o ControlMaster=auto -o ControlPersist=600s
Вряд ли проблема только в ansible.cfg
У меня работает несмотря на
ssh_args = -C -o ControlMaster=auto -o ControlPersist=15m
pipelining = True
transfer_method = piped
источник

L

Lamobot in Ansible
Возможно стоит глянуть настройки ssh сервера на таргете
источник

VL

Victor Litvin in Ansible
Lex Dolgov
а может есть нормальный фильтр...который без /1024 переведет байты в мегабайты...
А вам с какой целью?
Есть filesizeformat например.
источник

LD

Lex Dolgov in Ansible
Victor Litvin
А вам с какой целью?
Есть filesizeformat например.
ansible -m debug -a "var=mem|filesizeformat" -e 'mem=1048576' localhost
localhost | SUCCESS => {
   "mem|filesizeformat": "1.0 MB"

начало интересное...как из этого в один проход получить "1" ... пойду еще поэксперементирую =)
источник

VL

Victor Litvin in Ansible
Lex Dolgov
ansible -m debug -a "var=mem|filesizeformat" -e 'mem=1048576' localhost
localhost | SUCCESS => {
   "mem|filesizeformat": "1.0 MB"

начало интересное...как из этого в один проход получить "1" ... пойду еще поэксперементирую =)
Так а зачем?
источник

LD

Lex Dolgov in Ansible
приходит переменная в байтах. ее надо отправить в другое место в мегабайтах
источник

K

Kazantsev Sergei in Ansible
Lex Dolgov
приходит переменная в байтах. ее надо отправить в другое место в мегабайтах
Приходит беременная в байтах
источник

D

Dmitrii in Ansible
Доброго дня. Посоветуйте, пожалуйста, как лучше сделать: мне нужно запустить удаленный скрипт на сервере, передав ему три параметра. Где лучше всего хранить эти параметры локально? Т.е. у меня есть 4 различных набора этих трех параметров. Хочется как-то их сгруппировать, чтобы запускать разные сценарии одной командой, не передавая эти параметры в командной строке
источник

LD

Lex Dolgov in Ansible
group_vars, host_vars
источник

VZ

Vladimir Zhurkin in Ansible
Dmitrii
Доброго дня. Посоветуйте, пожалуйста, как лучше сделать: мне нужно запустить удаленный скрипт на сервере, передав ему три параметра. Где лучше всего хранить эти параметры локально? Т.е. у меня есть 4 различных набора этих трех параметров. Хочется как-то их сгруппировать, чтобы запускать разные сценарии одной командой, не передавая эти параметры в командной строке
полностью задачу
источник

VZ

Vladimir Zhurkin in Ansible
4 набора для одного сервера ?
источник

VZ

Vladimir Zhurkin in Ansible
те делаете тесты на одном сервере
источник

D

Dmitrii in Ansible
да, все на одном сервере
источник

VZ

Vladimir Zhurkin in Ansible
Думаю оптимально будет через теги , что бы каждый тег вызывал нужное значение переменной
источник

VZ

Vladimir Zhurkin in Ansible
или делать 4 разных инвенторя
источник

D

Dmitrii in Ansible
у меня есть удаленный скрипт, который деплоит приложения. Есть четыре приложения, которые отличаются незначительно (тремя параметрами). Эти параметры - входящие параметры для скрипта. Мне нужно запускать этот скрипт, передавая ему нужные параметры
источник

VZ

Vladimir Zhurkin in Ansible
и в них как выше написали положить переменные
источник

D

Dmitrii in Ansible
Vladimir Zhurkin
Думаю оптимально будет через теги , что бы каждый тег вызывал нужное значение переменной
я в ансибл новичок. Нужно  описывать роли?
источник

L

Lamobot in Ansible
Lex Dolgov
ansible -m debug -a "var=mem|int/1024/1024|int|round" -e 'mem=1048576' localhost
localhost | SUCCESS => {
   "mem|int/1024/1024|int|round": "1.0"
}
ansible -m debug -a "var=new_mem|int" -e 'mem=1048576 new_mem={{mem|int/1024/1024}}' localhost
localhost | SUCCESS => {
   "new_mem|int": "1"
}

почему round не работает в первом случае, а работает во втором...что за дичь ((
Читайте доку по round
https://jinja.palletsprojects.com/en/2.11.x/templates/#round
Note that even if rounded to 0 precision, a float is returned. If you need a real integer, pipe it through int:
источник

VZ

Vladimir Zhurkin in Ansible
Dmitrii
я в ансибл новичок. Нужно  описывать роли?
ну я не знаю Плейбука хватит вам или роль нужна
источник