Problemas de conectividade geralmente são causados pela biblioteca do ZMQ (menor que 4.X.X) e / ou pela versão em salt. Por favor, execute salt --versions-report
no mestre e salt-call --versions-report
para ver quais versões você está usando. Você deveria estar correndo:
Salt: 2015.5.3
...
ZMQ: 4.0.5
Você também deve tentar reproduzir o problema com uma demonstração simples do salt-vagrant . Observe que você precisará alterar as versões de sal no arquivo vagrant para "2015.5.3"
Você não especificou qual versão do sistema operacional ou do Salt você está usando, mas há um problema contínuo com o pacote zmq usado pelo salt que causa conexões e quedas lentas. É altamente recomendado para atualizar o pacote zmq : (este é um arquivo sls baseado em redhat)
{% if grains['os'] in ('RedHat', 'CentOS', 'Fedora') %}
{% if grains['os'] == 'Fedora' %}
{% set repotype = 'fedora' %}
{% else %}
{% set repotype = 'epel' %}
{% endif %}
saltstack-zeromq4:
pkgrepo.managed:
- humanname: Copr repo for zeromq4 owned by saltstack
- baseurl: http://copr-be.cloud.fedoraproject.org/results/saltstack/zeromq4/{{ repotype }}-$releasever-$basearch/
- gpgcheck: 0
- skip_if_unavailable: True
- enabled: 1
{% endif %}
{% if grains['os'] in ('RedHat', 'CentOS', 'Fedora') %}
update_zmq:
pkg:
- latest
- pkgs:
- zeromq
- python-zmq
- order: last
cmd:
- wait
- name: echo service salt-minion restart | at now + 1 minute
- watch:
- pkg: update_zmq
{% endif %}
Outro "hack" é fazer o ping das máquinas a cada minuto ou mais, basta adicionar isso à configuração do servo de mestre de sal:
"salt '*' test.ping > /dev/null":
cron.present:
- user: root
- minute: '*/1'
Você também pode executar ping no mestre a partir do minion definindo o master_alive_interval
opção no arquivo de configuração do minion.