📜  Ansible Galaxy

📅  最后修改于: 2020-12-26 12:24:16             🧑  作者: Mango

Ansible星系

Ansible Galaxy是一个银河网站,用户可以在其中共享角色,并可以使用命令行工具来安装,创建管理角色。

Ansible Galaxy为Ansible最令人兴奋的功能之一提供了更大的可见性,例如应用程序安装或服务器配置的可重用角色。许多人在Ansible Galaxy中扮演角色。

Ansible角色由许多剧本组成,这是将多个任务组合到一个容器中的一种方式,以非常有效的方式使用干净的目录结构来进行自动化。

Ansible Galaxy命令

以下是一些有用的Ansible Galaxy命令,例如:

  • 显示已安装角色的列表以及版本号。
ansible-galaxy list
  • 删除已安装的角色。
ansible-galaxy remove [role]
  • 创建适合提交给Ansible Galaxy的角色模板。
ansible-galaxy init

使用Ansible Galaxy创建角色

Ansible Galaxy本质上是Ansible角色的大型公共存储库。角色附带自述文件,详细说明了角色使用和变量。 Ansible Galaxy包含大量不断演变和增加的角色。

Galaxy可以使用Git添加其他角色源,例如GitHub。您可以使用ansible-galaxy init初始化新的银河角色,或者通过执行ansible-galaxy install <角色名称>命令直接从Ansible galaxy角色存储中安装角色。

要使用Ansible Galaxy创建Ansible角色,您需要使用ansible-galaxy命令及其模板。必须先下载角色,然后才能在剧本中使用角色。它们被放置在默认目录/ etc / ansible / roles中

创建收藏

Ansible Galaxy是使用Ansible的新迭代构建和管理角色的工具,您一定会看到更改或添加的内容。在Ansible 2.8版上,您可以获得集合的独特功能。

集合是Ansible内容的分发格式。它们可用于打包和分发角色,模块,剧本和插件。

集合遵循以下简单结构:

collection/ 
├── docs/ 
├── galaxy.yml 
├── plugins/ 
│ ├── modules/ 
│ │ └── module1.py 
│ ├── inventory/ 
│ └── .../ 
├── README.md 
├── roles/ 
│ ├── role1/ 
│ ├── role2/ 
│ └── .../ 
├── playbooks/ 
│ ├── files/ 
│ ├── vars/ 
│ ├── templates/ 
│ └── tasks/ 
└── tests/

ansible-galaxy-collection命令实现以下命令。一些命令与用于ansible-galaxy的命令相同,例如:

  • init:它基于Ansible随附的默认模板或您自己的模板创建基本集合Skeleton。
  • build:它将创建一个集合工件,可以将其上传到银河或您自己的存储库。
  • 发布:将已建立的连接工件发布到银河。
  • 安装:安装一个或多个连接。