特定于平台的 Kubernetes 二进制文件 #
本文档详细介绍了如何构建 Kubernetes 二进制文件并在本地运行 kwokctl
。
概述 #
使用 binary
运行时运行 kwokctl
(kwokctl create cluster --runtime=binary
)时,kwokctl
将从 dl.k8s.io/ www.downloadkubernetes.com 下载 Kubernetes 二进制文件,并使用它们创建集群。但这仅适用于 Linux。
对于非 Linux #
自构建 #
构建 Kubernetes 二进制文件并将 kwokctl
默认值设置为使用它们
KUBE_VERSION="v1.28.0"
SRC_DIR="${HOME}/.kwok/cache/kubernetes/${KUBE_VERSION}"
mkdir -p "${SRC_DIR}" && cd "${SRC_DIR}" &&
wget "https://dl.k8s.io/${KUBE_VERSION}/kubernetes-src.tar.gz" -O - | tar xz &&
make WHAT="cmd/kube-apiserver cmd/kube-controller-manager cmd/kube-scheduler" &&
cat <<EOF >> ~/.kwok/kwok.yaml
---
kind: KwokctlConfiguration
apiVersion: config.kwok.x-k8s.io/v1alpha1
options:
kubeBinaryPrefix: $(pwd)/_output/local/bin/$(go env GOOS)/$(go env GOARCH)
---
EOF
二进制文件将位于 ~/.kwok/cache/kubernetes/${KUBE_VERSION}/_output/local/bin/$(go env GOOS)/$(go env GOARCH)
。
使用非官方二进制文件 #
我们还为 kwok-ci/k8s 上的非 Linux 平台提供非官方二进制文件。
将 kwokctl
默认值设置为使用它们。
KUBE_VERSION="v1.28.0"
cat <<EOF >> ~/.kwok/kwok.yaml
---
kind: KwokctlConfiguration
apiVersion: config.kwok.x-k8s.io/v1alpha1
options:
kubeBinaryPrefix: https://github.com/kwok-ci/k8s/releases/download/${KUBE_VERSION}-kwok.0-$(go env GOOS)-$(go env GOARCH)
---
EOF
将 kwokctl
与 binary
运行时一起使用 #
现在,我们可以使用 binary
运行时通过 kwokctl
创建集群。
kwokctl create cluster \
--runtime=binary