如何为Kubeadm配置传递通配符

时间:2019-03-18 15:55:21

标签: kubernetes high-availability kubeadm

我们正在AWS上设置HA k8s环境。我们创建了一个安装了docker,k8s的AMI。

使用启用了TLS的网络负载平衡器创建具有3个主节点和5个工作节点的

HA群集。该证书已添加到TLS,域名为* .amazonaws.com。

在我的群集ClusterConfiguration文件中,controlPlaneEndpoint和certSAN指向负载平衡器的DNS。

kubeadm安装失败,当检查docker日志中的k8s_kube-scheduler时,我看到通配符证书未被接受。

配置文件。

---
apiVersion: kubeadm.k8s.io/v1beta1
kind: ClusterConfiguration
apiServer:
  extraArgs:
    cloud-provider: aws
clusterName: test
controlPlaneEndpoint: tf-k8s-t1-nlb-34390285259d3aac.elb.us-west-1.amazonaws.com
controllerManager:
  extraArgs:
    cloud-provider: aws
    configure-cloud-routes: "false"
    address: 0.0.0.0
kubernetesVersion: v1.13.2
networking:
  dnsDomain: cluster.local
  podSubnet: 10.168.0.0/16
  serviceSubnet: 10.96.0.0/12
scheduler:
  extraArgs:
    address: 0.0.0.0
---
apiVersion: kubeadm.k8s.io/v1beta1
kind: InitConfiguration
nodeRegistration:
  kubeletExtraArgs:
    cloud-provider: aws`

E0318 15:36:20.604025 1 reflector.go:134] k8s.io/client-go/informers/factory.go:132: Failed to list *v1.PersistentVolumeClaim: Get https://tf-k8s-t1-nlb-34390285259d3aac.elb.us-west-1.amazonaws.com:6443/api/v1/persistentvolumeclaims?limit=500&resourceVersion=0: x509: certificate is valid for *.amazonaws.com, not tf-k8s-t1-nlb-34390285259d3aac.elb.us-west-1.amazonaws.com

您能帮我如何在我的kubeadm配置中传递通配符吗?

1 个答案:

答案 0 :(得分:0)

通配符证书仅适用于1个子级别。

假设您拥有* .example.com证书,

foo.example.com和foo2.example.com都接受,但是foo.boo.example.com则不接受,为此您需要一个* .boo.example.com证书。