访问在盐状态下生成的盐矿价值

时间:2018-10-02 12:46:56

标签: devops salt-stack salt

我需要在3个节点群集中的每个服务器之间配置ssh连接。我有盐公式,它会为3个小兵生成ssh密钥。生成的ssh密钥应该可以通过盐矿功能(在支柱中定义)访问其他小兵:

mine_functions:
  file.read: ['/root/.ssh/id_rsa.pub']

问题在于,在第一个盐状态运行期间无法访问矿井数据。当我运行状态时,第二次访问我的数据,一切正常。有什么建议如何在首次运行状态下访问地雷数据? 盐配方:

ssh-keygen -q -N '' -f /root/.ssh/id_rsa:
  cmd.run:
    - unless: test -f /root/.ssh/id_rsa
    - parallel: True

mine.update:
  module.run:
    - tgt: '*'
    - parallel: True
    - require:
      - cmd: ssh-keygen -q -N '' -f /root/.ssh/id_rsa

{% for host,ssh_key in salt['mine.get']('some-test-minions*', 'file.read', expr_form='glob',  exclude_minion=True).items()  %}
"{{ssh_key.rstrip('\n')}}":
  ssh_auth.present:
    - user: root
    - enc: ssh-rsa
    - require:
      - module: mine.update
{% endfor %}

0 个答案:

没有答案