EKS:无法从吊舱中提取日志

时间:2018-10-28 17:08:52

标签: kubernetes kubectl amazon-eks

kubectl logs命令间歇性失败,并显示“ getsockopt:无主机路由”错误。

Error: A non-recoverable sign in failure occurred
at createErrorFromErrorData (NativeModules.js:146)
at NativeModules.js:95
at MessageQueue.__invokeCallback (MessageQueue.js:397)
at MessageQueue.js:127
at MessageQueue.__guard (MessageQueue.js:297)
at MessageQueue.invokeCallbackAndReturnFlushedQueue (MessageQueue.js:126)
at debuggerWorker.js:72 
  

服务器错误:获取   https://X.X.X.X:10250/containerLogs/default/mypod-5c46d5c75d-2Cbtj/metaservichart?follow=true:   拨打tcp X.X.X.X:10250:getsockopt:主机没有路由

如果我运行同一命令5-6次,它将起作用。我不确定为什么会这样。任何帮助将不胜感激。

4 个答案:

答案 0 :(得分:1)

仅供参考,我刚刚尝试将另一个VPC 172.18.X.X用于EKS,并且所有kubectl命令都可以正常工作。

我还注意到,当我使用172.17.X.X VPC时,kops使用172.18.X.X作为码头工人的内部cidr。因此,我推测kops会更改默认docker的cidr,以免与群集IP发生冲突。我希望我们可以在创建EKS辅助节点时配置docker的cidr,也许可以通过CloudFormation yaml模板或其他方式来配置。

答案 1 :(得分:0)

我的私有IP 172.17.X.X完全一样

Error from server: Get https://172.17.X.X:10250/containerLogs/******: dial tcp 
172.17.X.X:10250: getsockopt: no route to host

我正在使用EKS优化的AMI v24。

在此讨论类似的问题。 https://github.com/aws/amazon-vpc-cni-k8s/issues/137。我想知道私有ip以172.17.X.X开头是问题,因为它与Docker的默认内部cidr冲突,但是当我使用kops时我没有这个问题。

答案 2 :(得分:0)

我有机会亲自与AWS EKS工程师交谈。官方的回答是,由于cidr与Docker的IP重叠,当前的EKS不支持172.17.0.0/16。似乎他们有内部票证可以解决此问题,但没有ETA。

答案 3 :(得分:0)

根据AMI,我收到错误消息“ getsockopt:没有通往主机的路由”。

我使用“ kubectl logs my-pod-id”来访问Pod的日志。

  • 我正在AWS上运行EKS V1.10(是的,我需要尽快升级到V1.11)。
  • 我正在为vpc和子网使用IP范围10.0.0.0。我有两个 公共子网和2个私有子网。

它可以(并且也不起作用),并且具有完全相同的路由,安全组,vpc等。只需更改AMI。

工作:ami-73a6e20b(当我于2018年10月首次设置集群时使用)

不起作用::ami-0e7ee8863c8536cce(并且是今天推荐用于us-west-2俄勒冈州的Amazon EKS优化的AMI-https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html

我的意思是,可能不是您的路由/安全组设置。