在SaltStack中启用gitfs

新版本的SaltStack有一个非常好的特性,可以使用git作为文件服务的源,这样一来,在开发环境中可以很方便的把修改同步到测试环境,同时在生产环境中也可以对sls这些比较重要的配置文件进行方便天然的版本管理

参照官方教程,在master配置文件中配置了

fileserver_backend:

  - git

还有

gitfs_remotes:

  - https://github.com/saltstack-formulas/salt-formula.git

如果想使用git源中的某个子目录作为file_backend目录的话还需要配置这个:

gitfs_root: backend_subdir

当然,git仓库的地址改成了公司内部搭的内部gitlab

重启salt-masster后发现没生效

检查/var/log/salt/master日志提示如下:

[salt.loaded.int.fileserver.gitfs         ][ERROR   ] Git fileserver backend is enabled in configuration but could not be loaded, is GitPython installed?

既然找不到GitPython,因为服务器能连公网所以果断用yum安装

yum install GitPython

我这会儿用的是 2014.1.4 版本的 salt-stack, 官方文档中提到最好用 0.3.2.RC1,我用yum安装提示的版本是 GitPython-0.3.2-0.6.RC1.el6.noarch.rpm 嗯...EPEL万岁..

高兴的重启salt-master....还是不行.....

再看日志,提示信息变了

[salt.loaded.int.fileserver.gitfs            ][WARNING ] GitPython exception caught while fetching: len([]) != len(['Host key verification failed.', ''])

突然想起之前刚用git的时候,貌似有过类似的问题.因为ssh要先建立信任关系,于是尝试下面的命令

ssh -T [email protected]

这里的git仓库地址当然也要用你自己的仓库地址

然后根据提示输入个yes

再重启salt-master

问题解决!

可以在 /var/cache/salt/master 下面看到名为 gitfs 的目录啦

你可能感兴趣的:(saltstack,gitfs)