kubeadm 抛出 "command not found" 错误。该怎么办?

kubeadm throws "command not found" error. What to do?

我是 kubernetes 新手。我的 linux (RHEL7) 系统上安装了 kubenetes 和 kubelet。我想在我的系统上安装 kubeadm,但由于组织的政策,我无法通过 yum 或 ap-get 等方式安装它。 现在,我试图找到 kubeadm rpm 文件,它与我的 Redhat linux 系统兼容。这个我可以安装在系统上。我找到了 rpm 文件 here 但在 运行 之后显示以下错误:

"error: kubernetes-kubeadm-1.10.3-1.fc29.ppc64le.rpm: not an rpm package" for every rpm file.

我该如何解决这个问题?还是这些文件与 Fedora 兼容?

您可以在文档页面上找到 RHEL 7 包含的所有操作系统的官方软件包链接:https://kubernetes.io/docs/setup/independent/install-kubeadm/

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kube*
EOF

# Set SELinux in permissive mode (effectively disabling it)
setenforce 0
sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config

yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes

systemctl enable kubelet && systemctl start kubelet

正如@code-ranger 指出的那样,您可以从 kubernetes repo 下载软件包,方法是:

下面的link是列出所有kubernetes包的xml文件:

https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64/repodata/primary.xml

这里列出了 kubernetes 中存在的所有软件包,搜索 kubeadm,您会发现类似以下内容:

这为您提供了 rpm 包 -kubeadm- 的 link,您可以按如下方式使用该 link:

https://packages.cloud.google.com/yum/pool/5af5ecd0bc46fca6c51cc23280f0c0b1522719c282e23a2b1c39b8e720195763-kubeadm-1.13.1-0.x86_64.rpm

注意:这个 link 将在几周或几天后过期并生成新的字符串,因此如果您在本地下载 rpm 而不是直接使用 link 会更好。

以类似的方式,您可以下载其他软件包,如 kubelet、kubectl 等。

希望对您有所帮助。