微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 kubeadm init 后如何以编程方式获取 Kubernetes 在 --discovery-token-ca-cert-hash 中打印的值

如何解决使用 kubeadm init 后如何以编程方式获取 Kubernetes 在 --discovery-token-ca-cert-hash 中打印的值

我有一个特定的用例,其中我们在大量机器上远程创建 Kubernetes 集群。当我们在最后运行 kubeadm init 时,join 命令被打印为:

kubeadm join [IPv6-Address]:6443 --token TOKEN_VALUE --discovery-token-ca-cert-hash CERT_HASH

为了以编程方式加入工作节点,我们有一个需要 TOKEN_VALUECERT_HASH 的脚本。

现在我正在使用以下命令获取 TOKEN_VALUEsudo kubeadm token list | awk 'NR == 2 {print $1}'。但是,我还没有找到获得 CERT_HASH 的简单方法(或根本没有任何方法)。

任何帮助或指针将不胜感激。

解决方法

对于那些有同样问题的人来说,似乎没有一种超级干净或简单的方法来解决它。但看了一些地方后,对我有用的是openssl x509 -in /etc/kubernetes/pki/ca.crt -noout -pubkey | openssl rsa -pubin -outform DER 2>/dev/null | sha256sum | cut -d' ' -f1

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。