我在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:统计令牌:无此类文件或目录
答案 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
将令牌安装到容器中,然后将路径添加到配置中,它应该可以工作。