【问题标题】:kubeadm init --apiserver-advertise-address flag equivalent in config file配置文件中等效的 kubeadm init --apiserver-advertise-address 标志
【发布时间】:2020-06-08 23:32:36
【问题描述】:

我需要使用 kubeadm 配置文件初始化我的 kubernetes 集群,因为我需要传递一些额外的参数,这些参数不能直接用于 kubeadm init

我确实创建了一个配置文件,它工作正常。我查看了 kubeadm 配置文件的 documentation,但仍然无法获得与命令行标志 --apiserver-advertise-address 等效的选项

我的 kubeadm 版本是1.15.7

这是我当前的配置: 注释掉的行是我已经尝试过但似乎不起作用的选项。

#apiVersion: kubeadm.k8s.io/v1beta2
#kind: InitConfiguration
#APIEndpoint:
#  advertiseAddress: "192.168.224.22"
#  bindPort: 6443
#controlPlaneEndpoint: "192.168.224.22:6443"
apiServer:
  advertiseAddress: "192.168.224.22"
  extraArgs:
    authorization-mode: Node,RBAC
#    advertise-address: 192.168.224.22
    authentication-token-webhook-config-file: /webhook/webhook-config.yaml
  extraVolumes:
  - name: "webhook-conf"
    hostPath: "/webhook/"
    mountPath: "/webhook/"
    readOnly: true
    pathType: DirectoryOrCreate
  timeoutForControlPlane: 4m0s
apiVersion: kubeadm.k8s.io/v1beta2
certificatesDir: /etc/kubernetes/pki
clusterName: kubernetes
controllerManager: {}
dns:
  type: CoreDNS
etcd:
  local:
    dataDir: /var/lib/etcd
#APIEndpoint:
#  advertiseAddress: "192.168.224.22"
#  bindPort: 6443
imageRepository: k8s.gcr.io
kind: ClusterConfiguration
kubernetesVersion: v1.15.10
networking:
#  advertiseAddress: "192.168.224.22"
  dnsDomain: cluster.local
  podSubnet: 10.244.0.0/16
  serviceSubnet: 10.96.0.0/12
scheduler: {}

This 是我要配置的。

【问题讨论】:

    标签: kubernetes kubeadm


    【解决方案1】:

    要在 kubeadm 配置文件中指定 --apiserver-advertise-address 标志,请在 init 配置中使用:

    localAPIEndpoint:
      advertiseAddress: 192.168.224.22
      bindPort: 6443
    

    最初,当我使用此地址时,地址发生了变化,但由于 CRI 套接字配置错误,工作节点无法加入集群。

    原来使用kubeadm config view 不会打印出在集群创建期间使用的整个配置。 The kind: InitConfiguration 被跳过,导致配置错误。

    使用kubeadm config print init-defaults 获取配置文件的初始化块。那么它应该可以工作了。

    最终的工作配置文件:

    apiVersion: kubeadm.k8s.io/v1beta2
    bootstrapTokens:
    - groups:
      - system:bootstrappers:kubeadm:default-node-token
      token: abcdef.0123456789abcdef
      ttl: 24h0m0s
      usages:
      - signing
      - authentication
    kind: InitConfiguration
    localAPIEndpoint:
      advertiseAddress: 192.168.224.22
      bindPort: 6443
    nodeRegistration:
      criSocket: /var/run/dockershim.sock
      name: hostname1
      taints:
      - effect: NoSchedule
        key: node-role.kubernetes.io/master
    ---
    apiServer:
      extraArgs:
        authorization-mode: Node,RBAC
        authentication-token-webhook-config-file: /webhook/webhook-config.yaml
      extraVolumes:
      - name: "webhook-conf"
        hostPath: "/webhook/"
        mountPath: "/webhook/"
        readOnly: true
        pathType: DirectoryOrCreate
      timeoutForControlPlane: 4m0s
    apiVersion: kubeadm.k8s.io/v1beta2
    certificatesDir: /etc/kubernetes/pki
    clusterName: kubernetes
    controllerManager: {}
    dns:
      type: CoreDNS
    etcd:
      local:
        dataDir: /var/lib/etcd
    imageRepository: k8s.gcr.io
    kind: ClusterConfiguration
    kubernetesVersion: v1.15.10
    networking:
      dnsDomain: cluster.local
      podSubnet: 10.244.0.0/16
      serviceSubnet: 10.96.0.0/12
    scheduler: {}
    

    【讨论】:

      猜你喜欢
      • 2021-08-10
      • 1970-01-01
      • 2021-05-05
      • 2019-04-28
      • 2020-03-18
      • 2019-11-08
      • 1970-01-01
      • 2019-05-23
      • 2020-01-09
      相关资源
      最近更新 更多