初始化master后找不到kubeadm令牌

问题描述 投票:14回答:6

当我运行kubeadm init时,它会显示一个令牌,我应该使用其他主机连接到此主机。该令牌存储在哪里?我试图通过在Terraform中添加kubeadm来找出更多自动化方法。

谢谢你的帮助!

kubernetes kubeadm
6个回答
5
投票

--token

默认情况下,kubeadm init会自动生成用于初始化每个新节点的令牌。如果要手动指定此标记,可以使用--token标志。标记的格式必须为“<6个字符串>。<16个字符串>”。

您可以使用命令在主节点上查看令牌值:

cat /etc/kubernetes/pki/tokens.csv

28
投票

可以找到Kubernetes 1.9.x(及以上)的说明here

我使用的命令是:

kubeadm token generate
kubeadm token create <generated-token> --print-join-command --ttl=0

18
投票

在主节点中运行此命令以获取令牌

kubeadm token list

3
投票
kubectl -n kube-system get secret clusterinfo -o yaml | grep token-map | awk '{print $2}' | base64 -d | sed "s|{||g;s|}||g;s|:|.|g;s/\"//g;" | xargs echo

1
投票

避免创建新令牌的最佳方法是 -

  1. kubeadm list
  2. kubeadm token create <copied token from previous command output>** --print-join-command

您将获得JOIN命令在任何物理/虚拟机上运行以加入kubernetes集群....


0
投票

尝试按照以下命令创建新的,因为初始令牌仅在24小时内有效。

kubeadm token create  --ttl=0

这里ttl = 0表示生成的令牌永不过期。

然后根据以下命令加入节点:

kubeadm join <generated_token>

如果您在验证ca hash时遇到任何错误,请按以下方式加入:

kubeadm join <generated_token> --discovery-token-unsafe-skip-ca-verification
© www.soinside.com 2019 - 2024. All rights reserved.