gantsign.kubernetes

Ansible 角色:Kubernetes

测试 Ansible Galaxy 许可

该角色用于安装 Kubernetes 容器集群管理器。

要求

  • Ansible Core >= 2.12

  • Linux 发行版

    • Debian 系列

      • Ubuntu

        • Bionic (18.04)
        • Focal (20.04)

角色变量

以下变量会改变该角色的行为(默认值如下):

# 节点类型:决定安装哪些特性。
# - controller:
#     - kubectl
# - worker:
#     - kubelet
#     - kubernetes-cni
# - master:
#     - kubelet
#     - kubectl
#     - kubernetes-cni
# - admin:
#     - kubelet
#     - kubectl
#     - kubeadm
#     - kubernetes-cni
kubernetes_node_type: worker

# Kubernetes 仓库的 APT 密钥 ID(可选)
kubernetes_apt_key_id:

示例剧本

- hosts: servers
  roles:
    - role: gantsign.kubernetes
      kubernetes_node_type: worker

Zsh 的 Tab 补全与别名

使用 Ansible

我们推荐使用 gantsign.antigen 角色来启用 Kubernetes 的 Zsh 支持(这必须为每个用户配置)。

- hosts: servers
  roles:
    - role: gantsign.kubernetes
      kubernetes_node_type: worker

    - role: gantsign.antigen
      users:
        - username: example
          antigen_libraries:
            - name: oh-my-zsh
          antigen_bundles:
            # 使用 Oh My Zsh 的 kubectl 插件
            - name: kubectl
            # 使用 GantSign 的 kubeadm 插件
            - name: kubeadm
              url: gantsign/zsh-plugins
              location: kubeadm

使用 Antigen

如果您更倾向于直接使用 Antigen,请将以下内容添加到您的 Antigen 配置中:

antigen use oh-my-zsh
antigen bundle kubectl
antigen bundle gantsign/zsh-plugins kubeadm

重要: 当前版本的 Antigen 存在一个 bug,导致它无法与 kubectl 插件一起工作。我们建议在问题解决之前使用版本 2.0.2 的 Antigen。

手动配置

要手动配置 Zsh 的 Tab 补全,请在 .zshrc 中添加以下内容:

eval "$(kubectl completion zsh)"
eval "$(kubeadm completion zsh)"

GantSign 的更多角色

您可以在 Ansible Galaxy 上找到 GantSign 的更多角色。

开发与测试

该项目使用以下工具:

  • Molecule 用于编排测试场景
  • Testinfra 用于远程更改的测试
  • pytest 测试框架
  • Tox 管理 Python 虚拟环境以进行代码检查和测试
  • pip-tools 用于管理依赖

提供了一个 Visual Studio Code 的 开发容器 用于开发和测试此角色。

许可

MIT

作者信息

约翰·弗里曼

GantSign Ltd. 公司编号:06109112(在英格兰注册)

安装
ansible-galaxy install gantsign.kubernetes
许可证
mit
下载
4.6k
拥有者