Ansible 的 Galaxy 工具,类似程序员使用的 GitHub。运维人员可以将自己编写的 Role 通过 Galaxy 这个平台进行分享。同样,我们也可以通过 Galaxy 这个平台去获取一些我们想要的 Role。
官网:https://galaxy.ansible.com
ansible-galaxy 则是一个使用 Galaxy 命令行的工具。
·
[root@wpf ~]# ansible-galaxy --help
usage: ansible-galaxy [-h] [--version] [-v] TYPE ...
...
positional arguments:
TYPE
collection Manage an Ansible Galaxy collection.
role Manage an Ansible Galaxy role.
...
·
[root@wpf ~]# ansible-galaxy role --help
usage: ansible-galaxy role [-h] ROLE_ACTION ...
positional arguments:
ROLE_ACTION
init 初始化新角色的基本结构
remove 从角色路径中删除角色。
delete 从Galaxy中删除角色。它不会删除或更改实际的GitHub存储库
list 查看角色列表
search 搜索角色
import 导入角色
setup 管理Galaxy和给定源之间的集成
info 查看有关特定角色的详细信息
install 从文件、URL或Ansible Galaxy安装角色
·
[root@wpf ~]# ansible-galaxy collection --help
usage: ansible-galaxy collection [-h] COLLECTION_ACTION ...
positional arguments:
COLLECTION_ACTION
init 使用集合的基本结构初始化新集合
build 构建一个可发布到Ansible Galaxy的Ansible集合工件
publish 向Ansible Galaxy发布一个集合工件
install 从文件、URL或Ansible Galaxy安装集合
·
在 galaxy 上搜索共享的 role
ansible-galaxy search
安装 galaxy 上共享的 role
ansible-galaxy install
列举已经通过 ansible-galaxy 工具安装的 role
ansible-galaxy list
创建一个 role 的空目录架构
ansible-galaxy role init role_name
例如:
[root@wpf ~]# ansible-galaxy role init mysql
[root@wpf ~]# tree mysql/
mysql/
├── defaults
│ └── main.yml
├── files
├── handlers
│ └── main.yml
├── meta
│ └── main.yml
├── README.md
├── tasks
│ └── main.yml
├── templates
├── tests
│ ├── inventory
│ └── test.yml
└── vars
└── main.yml