githubixx.kubectl
ansible-role-kubectl
安装用于与Kubernetes API服务器交互的kubectl命令行工具。
版本
我为每个发布版本打标签,并尽量遵循语义版本控制。如果您想使用此角色,建议您查看最新标签。主分支基本上是开发版本,而标签标记为稳定发布版本。但一般来说,我也会保持主分支的良好状态。标签23.0.2+1.28.5
意味着这个角色的发布版本是23.0.2
,而kubectl
客户端二进制文件的版本是1.28.5
。如果角色本身发生变化,X.Y.Z
中的数字会在+
之前增加;如果Kubernetes版本变化,X.Y.Z
中的数字会在+
之后增加。这允许在为特定Kubernetes版本开发时标记修复和新的主要版本。
变更日志
请查看变更日志
角色变量
# 要安装的"kubectl"版本
kubectl_version: "1.29.3"
# 默认的"二进制"将下载"kubectl"作为二进制文件。这个文件
# 大约比".tar.gz"文件大2.5倍。tar文件下载后需要先由角色解压
# 并且更小。
#
# 如果您指定"binary",那么将下载"kubectl"二进制文件。与
# tar文件相比,二进制文件大约大2.5倍,但这个角色不需要解压。
#
# 如果下载文件大小对您很重要(例如,下载速度慢或通过移动网络下载),
# 请保持使用"archive"。否则,"binary"可能是一个选择。
kubectl_download_filetype: "binary"
#
# "kubernetes-client-linux-amd64.tar.gz"文件的SHA512校验和
# (请参见 https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.29.md#client-binaries)
kubectl_checksum_archive: "sha512:c9cc7ab9e3aa776f2daab3a9e10ee78d57d0c081ef43f8032de36a61c6425ba527d5df92611b058672be0975a6b97ad3f3a169e282c26275d2c0e59e1f9b1173"
#
# 二进制文件的SHA512校验和。通常不需要更改它。
# 进一步信息:
# - https://kubernetes.io/releases/download/#binaries
# - https://www.downloadkubernetes.com/
kubectl_checksum_binary: "sha512:https://cdn.dl.k8s.io/release/v{{ kubectl_version }}/bin/{{ kubectl_os }}/{{ kubectl_arch }}/kubectl.sha512"
# 安装"kubectl"二进制文件的位置
kubectl_bin_directory: "/usr/local/bin"
# 存储kubectl归档文件的目录
kubectl_tmp_directory: "{{ lookup('env', 'TMPDIR') | default('/tmp', true) }}"
# "kubectl"二进制文件的所有者
kubectl_owner: "root"
# "kubectl"二进制文件的组
kubectl_group: "root"
# 指定"kubectl"二进制文件的权限
kubectl_binary_mode: "0755"
# "kubectl"应运行的操作系统
kubectl_os: "linux" # 对于MacOS X使用"darwin",对于Windows使用"windows"
# "kubectl"应运行的处理器架构
kubectl_arch: "amd64" # 其他可能的值: "386","arm64","arm","ppc64le","s390x"
测试
此角色有一个小的测试设置,使用molecule创建。要运行测试,请按照molecule安装指南操作。确保您的机器上运行着Docker守护进程。
假设Docker已安装,您需要至少安装两个Python包:
pip3 install --user molecule
pip3 install --user molecule-docker
之后,可以执行molecule:
molecule converge
这将设置几个Docker容器,运行Ubuntu 20.04/22.04和Debian 11/12,并安装kubectl
。要验证一切是否正常:
molecule verify
要清理,请运行
molecule destroy
示例剧本
- hosts: your-host
roles:
- githubixx.kubectl
许可证
GNU 通用公共许可证 第3版
作者信息
关于项目
Installs kubectl command line utility used to interact with the Kubernetes API Server.
安装
ansible-galaxy install githubixx.kubectl
许可证
gpl-3.0
下载
12k
拥有者
Senior System Engineer - Python, Go, Cloud, Kubernetes, Commodore, Retro, 80's ;-)