SaltStack gitfs问题

时间:2016-01-14 13:54:59

标签: salt-stack

我正在使用docker容器(bbinet / salt-master和bbinet / salt-minion)学习saltstack,但无法运行gitfs。我需要稍后在生产中运行一些容器,所以我试图简单地启动一个rabbitmq安装,但是,Salt似乎没有在我的主配置中看到git遥控器:

# /etc/salt/master (full, there's nothing more)
auto_accept: True
gitfs_provider: gitpython
fileserver_backend:
  - git
  - roots
gitfs_remotes:
  - git://github.com/saltstack-formulas/docker-formula.git

# state being applied (full, the AMQP container is written in pillar)
include:
  - docker.containers

# result of state.apply call:
amqp-minion-1:
    - Specified SLS docker.containers in saltenv base is not available on the salt master or through a configured fileserver

salt-run fileserver.file_list backend=git的输出完全是空的,所以,据我所知,我做错了指定gitfs遥控器。我可以做错什么以及我应该使用哪些实用程序来调试这种情况?

更新:使用新安装的pygit2观察到相同的行为,我认为这只是我想念的东西

更新#2:似乎完全忽略了配置,salt-call --local config.get gitfs_remotes什么都不返回,其他选项如auto_accept不会改变config中指定的内容。 Log告诉我,配置被读取,但是,这不会改变一件事(即使只包含auto_accept: False行)。
salt-master版本2015.5.3

1 个答案:

答案 0 :(得分:2)

我知道这很晚,但希望它有所帮助。

在进行调试时,我认为你实际使用配置的快速指示是查看auto_accept是否真的有效。在网络上添加一些盐爪子,并将它们指向这个盐主人。看看他们是否实际连接。如果它没有立即起作用,请给它一分钟。假设网络设置正确且小兵知道在哪里找到他们的主人,请执行以下操作。如果不满足此假设,请尝试手动方法。

然后从主呼叫salt '*' salt-key -L。您还可以tail /var/log/salt/master查看加载配置的任何明显失败。如果是这种情况,它可能会警告你。在启动进程/服务之前,请确保配置位于/ etc / salt / master中,具体取决于您启动salt的方式。

如果您的salt master位于容器中,您也可以运行该命令 泊坞日志

还要考虑在主配置中包含rabbitmq salt公式,如下所示。

gitfs_remotes: - git://github.com/saltstack-formulas/docker-formula.git - https://github.com/saltstack-formulas/rabbitmq-formula

我尝试了你的salt命令并收到了以下输出:

[]# salt-run fileserver.file_list backend=git - FORMULA - LICENSE - README.rst - pillar.example - rabbitmq/config.sls - rabbitmq/config_bindings.sls - rabbitmq/config_exchange.sls - rabbitmq/config_queue.sls - rabbitmq/init.sls - rabbitmq/install.sls - rabbitmq/latest.sls - rabbitmq/package-map.jinja - rabbitmq/rabbit-management.sls

使用类似的设置。我没有必要指定gitfs_provider才能使它工作。在某些背景下,我执行了yum install -y python-pip git,然后执行了pip install GitPython

值得一提的是,根据系统安装的python版本,gitpython很挑剔,所以也要仔细检查一下。