有没有一种方法可以在令牌中使用kubeconfig配置coredns kubernetes插件?

时间:2019-11-21 06:32:47

标签: kubernetes coredns

我在k8s集群中的coredns是v1.3.1。并且我想用静态令牌配置它访问kube-apiserver。 例如,我的令牌是“ token4K8sSecure”。我尝试使用以下配置尝试配置coredns kubenernetes插件。但这不起作用。

apiVersion: v1
data:
  Corefile: |
    .:53 {
        errors
        health
        kubernetes cluster.local in-addr.arpa ip6.arpa {
           **endpoint https://100.6.0.20:6443
           kubeconfig token token4K8sSecure**
           pods insecure
           upstream
           fallthrough in-addr.arpa ip6.arpa
           ttl 30
        }
        prometheus :9153
        forward . /etc/resolv.conf
        cache 30
        loop
        reload
        loadbalance
    }
kind: ConfigMap
metadata:
  creationTimestamp: "2019-11-19T08:55:08Z"
  name: coredns
  namespace: kube-system
  resourceVersion: "452688"
  selfLink: /api/v1/namespaces/kube-system/configmaps/coredns
  uid: 449a38b9-1678-4c66-b1e8-96b5c273ad3d

输出: [root @ a2 Matrix-V500R002B01D001]#kubectl记录coredns-7c4665f97b-nh2wj -n kube-system 插件/ kubernetes:统计令牌:无此类文件或目录

1 个答案:

答案 0 :(得分:1)

欢迎使用StackOverflow。

您可以-无需使用Kubernetes令牌-可以使用客户端证书,如下所示:

tls <PATH_TO_CERT> <PATH_TO_KEY> <PATH_TO_CACERT>

如果您不想使用TLS证书,则可以将文件指定为kubeconfig,版本为 1.2.2 的CoreDNS引入了使用文件的可能性。 CoreDNS加载上下文:

kubeconfig /path/to/token token

将令牌安装到容器中,然后将路径添加到配置中,它应该可以工作。