SaltStack – Git 作为文件服务器
SaltStack – Git 作为文件服务器
Git是一个开源的分布式版本控制系统。它可用于跟踪任何文件中的更改。Salt 使用 Git 文件服务器从 Git 存储库发送文件。您可以将 Git 配置为fileserver_backend列表选项,如果您需要配置一个或多个存储库,您可以使用gitfs_remotes选项来实现。
本章介绍如何安装和配置 Git 文件服务器。在进行安装之前,您必须具备以下先决条件。
使用 Git 的 Salt Server 先决条件
Salt 服务器使用 Git 作为文件服务器的最低要求如下 –
- pygit2
- 德威
Pygit2 和 Dulwich 使用主配置文件中的gitfs_provider参数进行配置。如果gitfs_provider没有在主文件中配置,那么 Salt 将更喜欢 pygit2,如果合适的版本可用,然后是GitPython和Dulwich。
安装pygit2
以下命令用于在基于 Fedora 和 Ubuntu 的系统中安装 pygit2 –
-
基于 Fedora 的系统
yum install python-pygit2
-
基于Ubuntu的系统
apt-get install python-pygit2
这里,pygit2 支持的最低版本是 0.20.3。
安装 GitPYTHON
GitPython 可以使用yum / apt 命令轻松安装在 master 上,如下所示。
-
基于 Fedora 的系统
yum install GitPython
-
基于Ubuntu的系统
apt-get install python-git
安装德威
使用 yum 命令可以轻松地将 Dulwich 安装到主服务器上。
-
基于 Fedora 的系统
yum install python-dulwich
-
基于Ubuntu的系统
apt-get install python-dulwich
现在,我们已经安装了 Git 文件服务器的所有依赖项。现在让我们使用主配置文件中的fileserver_backend部分配置此 Git 文件服务器。
后端配置
为了使用 Git 文件服务器,您需要在主配置文件的 fileserver_backend 列表中添加 Git。描述如下 –
fileserver_backend: - git
让我们进一步了解如何在远程配置中配置 Git 文件服务器。
gitfs_remotes 配置
您可以为主文件中的 gitfs_remotes 配置指定任何一个或所有 URL,例如 git://、https://、file:// 或 ssh://。这用于搜索请求的文件。
下面定义了简单的 https URL 规范。
gitfs_remotes: - https://github.com
所述SSH配置可以如下所示进行。
gitfs_remotes: - [email protected]:user1/sample.git - ssh://[email protected]/path/to/sample.git
现在,我们已经使用fileserver_backend和gitfs_remotes两个选项配置了 Git 文件服务器。
重启大师
在 master 文件中进行所有更改后,现在重新启动 master 以加载 Git 文件服务器中的所有配置。
多个遥控器配置
以下命令用于master文件中gitfs_remotes的多重配置。
gitfs_remotes: - git://github.com/sample/sample1.git - https://github.com/sample/sample2.git - file:///root/user/sample
在这里,存储库sample1.git、sample2.git和sample.doc可能包含以下文件。
sample1.git: top.sls sample2.git edit/vimrc sample.doc edit/vimrc