kubernetes节点无法连接到api服务器:拨打tcp:在127.0.0.53:53上查找kubernetes.default.svc:没有这样的主机

时间:2020-03-29 18:55:59

标签: kubernetes

我在linux Academy上建立了3个节点。在控制平面上,我可以看到3个节点正在运行。在两个工作节点中的任何一个上,我都尝试运行<form style="text-align:left;width:90%;margin-left:10px;" ng-controller="dropdownCtrl"> <div class="tab" ng-repeat="e in disp"> <p>{{e.question}}</p> <input type="hidden" ng-model="id1" ng-init="id1=e.id" name="id1" ng-value="{{e.id}}" /> <label class="container2">Option A : {{e.option_a}} <input type="radio" checked="checked" ng-model="radio" name="radio1" ng-value='"option_a"'> <span class="checkmark"></span></label> <label class="container2">Option B : {{e.option_b}} <input type="radio" ng-model="radio" name="radio1" ng-value='"option_b"'> <span class="checkmark"></span></label> <label class="container2">Option C : {{e.option_c}} <input type="radio" ng-model="radio" name="radio1" ng-value='"option_c"'> <span class="checkmark"></span></label> <label class="container2">Option D : {{e.option_d}} <input type="radio" ng-model="radio" name="radio1" ng-value='"option_d"'> <span class="checkmark"></span></label> </div> <div style="overflow:auto;"> <div style="float:right;"> <button type="button" ng-click="Next()" style="background:#acddde;color:black;border-radius:3px;border:none;width:80px;height:30px;">Next</button> </div> </div> </form> 。最初,系统提示我未设置kubectl get nodes

在工作程序节点内部,我尝试将其设置为在主服务器的KUBERNETES_MASTER中找到的服务器值。因此,在工作节点中:/kube/config。当我尝试此操作然后再次尝试export KUBERNETES_MASTER=https://1.2.3.4:6443时,我得到kubectl get nodes

我还尝试在工作节点中将其设置为Unable to connect to the server: x509: certificate signed by unknown authority。当我尝试此操作然后尝试export KUBERNETES_MASTER=https://kubernetes.default.svc时,我会得到kubectl get nodes

知道我在做什么错吗?

4 个答案:

答案 0 :(得分:1)

您只能在Pod内部使用群集DNS名称,而不能直接从节点使用群集DNS名称。至于证书问题,您的kube配置文件通常会包含用于API TLS的CA。

答案 1 :(得分:1)

我们通常将kubectl的配置保存到~/.kube/config的文件中,该文件同时包含主端点和证书。您可以轻松地从母版复制它。

并且,假设您的群集域为kubernetes.default.svc,则kubernetes.default.svc.cluster.local的FQDN为cluster.local。该域名是为部署在其中的工作负载设置的 群集,并且需要访问API服务器。这样,域名只能由kube-dns在群集中解析。

对于集群外的进程,主机名或IP地址/ VIP通常用作API服务器的端点。

答案 2 :(得分:0)

我在公司代理后面工作。就我而言,原因是 /etc/resolv.conf 中的配置错误(错误的名称服务器)。

更新域名服务器解决了我的问题。

答案 3 :(得分:-1)

我认为,如果我们的一种资源位于不同的位置或不同的区域,则会收到此错误