Ansible 系列之 Galaxy 工具

袁良弼
2023-12-01

Ansible Galaxy 简介

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
 类似资料: