5.4.5. Kubernetes Collection for Ansible
要使用 Ansible 管理 Kubernetes 上的应用程序生命周期,您可以使用 Kubernetes Collection for Ansible。此 Ansible 模块集合允许开发人员利用通过 YAML 编写的现有 Kubernetes 资源文件,或用原生 Ansible 表达生命周期管理。
将 Ansible 与现有 Kubernetes 资源文件相结合的一个最大好处在于可使用 Jinja 模板,这样您只需借助 Ansible 中的几个变量即可轻松自定义资源。
本节详细介绍了 Kubernetes 集合的使用方法。开始之前,在本地工作站上安装集合,并使用 playbook 进行测试,然后再移至 Operator 内使用它。
5.4.5.1. 为 Ansible 安装 Kubernetes 集合
您可以在本地工作站上安装 Kubernetes Collection for Ansible。
流程
安装 Ansible 2.9+:
$ sudo dnf install ansible
安装 OpenShift python 客户端 软件包:
$ pip3 install openshift
使用以下方法之一安装 Kubernetes Collection:
您可以直接从 Ansible Galaxy 安装集合:
$ ansible-galaxy collection install community.kubernetes
如果您已初始化了 Operator,则可能在项目顶层都有一个
requirements.yml
文件。此文件指定必须安装的 Ansible 依赖项,才能让 Operator 正常工作。在默认情况下,这个文件会安装community.kubernetes
集合以及operator_sdk.util
集合,它为特定 Operator 的单元提供模块和插件。安装来自
requirements.yml
文件的依赖模块:$ ansible-galaxy collection install -r requirements.yml