na sua configuração principal você removeu o comentário da seguinte linha
default_include: master.d/*.conf
Se você não fizer isso, o arquivo reactor.conf que você adicionou nunca funcionará
Eu tenho um mestre e um minion conectados, e estou tentando configurar algum monitoramento através do sistema do reator no mestre. Eu não cheguei muito longe, porque, até onde eu sei, eventos não estão ocorrendo no mestre. Uma simples execução de:
salt-call event.send "foo/bar" '{key:value}' -l debug
do lacaio parece tentar enviar o evento:
[DEBUG ] Sending event - data = {'_stamp': '2015-11-20T21:40:35.414647'}
[DEBUG ] Sending event - data = {'pretag': None, '_stamp': '2015-11-20T21:40:36.415859', 'tag': 'foo/bar', 'data': {'__pub_fun': 'event.send', '__pub_jid': '20151120154035413430', '__pub_pid': 59391, '__pub_tgt': 'salt-call'}, 'events': None}
No entanto, o mestre não parece querer muito com isso. Eu tenho rodado o master com debuggin e as únicas linhas relacionadas a foo parecem ser:
[DEBUG ] Sending event - data = {'tgt_type': 'glob', 'fun_args': ['foo/bar', '{key:value}'], 'jid': '20151120164246710357', 'return': True, 'retcode': 0, 'tgt': 'myminion', 'cmd': '_return', '_stamp': '2015-11-20T21:42:46.712050', 'arg': ['foo/bar', '{key:value}'], 'fun': 'event.send', 'id': 'myminion'}
[DEBUG ] Gathering reactors for tag salt/job/20151120164246710357/ret/myminion
[DEBUG ] Reading configuration from /etc/salt/master
[DEBUG ] Including configuration from '/etc/salt/minion.d/ca.conf'
[DEBUG ] Reading configuration from /etc/salt/minion.d/ca.conf
[DEBUG ] Using cached minion ID from /etc/salt/minion_id: saltmaster
[DEBUG ] Reading configuration from /etc/salt/master
[DEBUG ] Including configuration from '/etc/salt/master.d/reactor.conf'
[DEBUG ] Reading configuration from /etc/salt/master.d/reactor.conf
Agora corrija-me se estiver errado, mas acho que o evento que está sendo enviado na primeira linha é o evento do evento. Enviar o trabalho e não o evento real enviado pelo referido trabalho. A saída de
salt-run state.event pretty=True
parece concordar, pois não vê nenhum evento etiquetado como foo / bar, mas ele vê o evento acionado pelo trabalho:
salt/auth {
"_stamp": "2015-11-20T21:47:39.128795",
"act": "accept",
"id": "myminion",
"pub": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAu1eiIALNfjxI2JN+SUop\nsZGEDUnWy30J5TJsiSmWezfpDbIklb4zl1RmfoCx529KhK349nvDMtlCP0/F4Yq1\nSlKH4FDt8x4XzkErEGFGkbQ1+2a9LXYpA61hHCnq8mLSPCqX6dS3EVq0hzyaQMP2\nt3bquyXTjtlzcQ1/5+9egaHv21ofArBZzU7PDV2pGP9pI4yg4rjg6RJIOHSRyqYb\nEwhkUtWhZUBc/Yx5PL9Ji543JCyXi8jDc7NSyBZyTMadxSZkKmqXBlhdQsa4OVP2\nFuuoyjjvqF6O3P7qOl0kX45O/mBOudDdrskAv/8m1Emh6kuP4Yy/fKCryzcBhiRg\n4QIDAQAB\n-----END PUBLIC KEY-----\n",
"result": true
}
salt/job/20151120164745515025/ret/myminion {
"_stamp": "2015-11-20T21:47:45.517110",
"arg": [
"foo/bar",
"{key:value}"
],
"cmd": "_return",
"fun": "event.send",
"fun_args": [
"foo/bar",
"{key:value}"
],
"id": "myminion",
"jid": "20151120164745515025",
"retcode": 0,
"return": true,
"tgt": "myminion",
"tgt_type": "glob"
}
Parece-me que estou sentindo falta de algo bastante simples, mas não consigo colocar o dedo nela. Estou assumindo que a razão pela qual meu reator não está reagindo é porque não há nada para responder. Nenhuma tentativa é feita para reunir reatores para foo / bar, mas aqui está a configuração de /etc/salt/master.d/reactor.conf
:
reactor:
- 'foo/bar':
- /srv/salt/reactor/foo.sls
e o conteúdo de /srv/salt/reactor/foo.sls
:
log_foo:
local.file.append:
- tgt: myminion
- arg:
- /tmp/reactor_example.txt
- {{ data }}
/tmp/reactor_example.txt
, claro, está vazio.
Alguém pode ver o que estou fazendo errado? Qualquer ajuda é apreciada. A versão master é salt-master 2015.5.3 (Lithium)
e a versão minion é salt-minion 2015.5.3 (Lithium)
também. Ambos os sistemas Ubuntu.
Tags monitoring saltstack