问题标签 [weave]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
dns - Kubernetes master 无法加入集群
我们kops
在 AWS 中使用通过 1.9.3 管理的 k8s 1.9.3 和基于 Gossip 的 DNS,使用 weave cni 网络插件。
我正在对主 IG 进行滚动更新,以启用一些额外的准入控制器。(PodNodeSelector 和 PodTolerationRestriction)我在另外两个集群中做到了这一点,没有任何问题。当集群开始滚动第三个主实例(我们在 3 个主设置中运行我们的集群)时,它关闭了实例并尝试启动新的主实例,但新的主实例未能加入集群。在进一步研究和随后尝试滚动第三个主服务器以将其带入集群后,我发现第三个未能加入主服务器,继续尝试作为旧主服务器 IP 地址加入集群。即使它的IP地址是不同的。看着一个kubectl get nodes | grep master
表明集群认为它是旧的 ip 地址并且它失败了,因为它不再是那个 ip。似乎由于某种原因,基于集群八卦的 DNS 没有收到有关新主服务器 IP 地址的通知。
这会导致问题,因为 kubernetes svc 中仍然有旧主服务器的 IP 地址,这导致任何指向该不存在的后端主服务器的 api 请求失败。它也给 etcd 带来了问题,它一直试图在旧的 IP 地址上联系它。很多这样的日志:
一件奇怪的事情是,如果我etcdctl cluster-health
在可用的主 etcd 实例上运行,它们都会显示不健康的成员 ID,f90faf39a4c5d077
但是当我查看 etcd-events 日志时,我发现它看到不健康的成员 ID 为3b7c45b923efd852
. 所以似乎与etcd有些不一致。
由于我们在一个主节点关闭的三节点主节点设置中运行,我们不想重新启动任何其他主节点来尝试解决问题,因为我们害怕失去 etcd 集群上的仲裁。
我们使用weave
2.3.0 作为我们的网络 CNI 提供程序。
注意到失败的主服务器没有创建weave
cni 配置,并且工作主服务器上的文件没有正确更新新的主服务器 IP 地址。似乎由于某种原因没有得到更新。/etc/cni/net.d/10-weave.conf
/etc/hosts
kube-proxy
kops
运行1.9提供的默认 debian 8 (jessie) 映像。
我们如何才能让主服务器使用它的新 IP 地址正确更新 DNS?
docker - 无法连接到位于 unix:///var/run/weave/weave.sock 的 Docker 守护程序。docker 守护进程是否正在运行?
systemctl status docker
显示活动和运行
docker ps
将给出此错误
无法连接到 unix:///var/run/weave/weave.sock 上的 Docker 守护进程。docker 守护进程是否正在运行?
connection - Weave 无法解密 TCP 消息
为这个苦苦挣扎了几天。无法将桌面连接到 weave 网络。错误:
其他实例可以使用相同的命令进行连接:
桌面已移动到另一个子网 10.1.6.0,并且曾经在 10.1.3.26 保留。我们将保留更改为 10.1.6.23 并重新启动桌面。我有一种感觉,这更像是一个网络问题,而不是 weave 的问题,并且可以使用一些网络专家的帮助。
操作系统 - Mint 19,docker 版本 - 18.09.0,和 weave - 2.5.0
docker - 即使在 pod 被删除后,kubelet 日志也会泛滥
我最近注意到我的整个 3 个节点集群出现故障。进行我最初级别的故障排除后,发现/var
在所有节点上都是100%
.
进一步研究日志显示日志被淹没kubelet
并声明
由于<TROUBLING_POD>-1545236220-ds0v1
cronjob 和一些错误配置,正在启动,在这些 pod 的运行过程中发生了错误,并且正在启动更多的 pod。
所以我删除了所有作业及其相关的 pod。所以我有一个集群没有运行与我的 cronjob 相关的作业/pod,并且仍然看到相同的错误消息淹没日志。
我做了:
1) 在所有节点上重启 docker 和 kubelet。
2)重启整个控制平面
以及 3) 重新启动所有节点。
但是即使没有这样的 pod 被启动,日志仍然被相同的错误消息淹没。
所以我不知道如何阻止 kubelet 抛出错误。
有没有办法重置我正在使用的网络插件?还是做点别的?
kubernetes - 无法创建 pod 沙箱 kubernetes 错误
我有一个Ubuntu 16.04
充当 Kubernetes 大师的角色。我已经安装了 kuber v1.13.1 并使用 weave 进行联网。我有 2Raspberry pi
台设备运行相同版本的 kubernetes。我创建了一个集群并将树莓派加入Ubuntu
kube master。我已经开始部署,一切看起来都运行良好。
当我检查容器的日志时,我发现它无法连接到互联网。我尝试ping但没有结果。当我运行命令来描述 pod 时,我得到以下信息:
Warning FailedCreatePodSandBox 42m (x3 over 42m) kubelet, node02 (combined from similar events): Failed create pod sandbox: rpc error: code = Unknown desc = failed to set up sandbox container "dea99f80488031b84b7b1f934343e54d877adf931071401651628505d52f55f9" network for pod "deployment-cnfc5": NetworkPlugin cni failed to set up pod "deployment-cnfc5_matrix-device" network: unable to allocate IP address: Post http://127.0.0.1:6784/ip/dea99f80488031b84b7b1f934343e54d877adf931071401651628505d52f55f9: dial tcp 127.0.0.1:6784: connect: connection refused
我检查了目录/etc/cni/net.d
,它包含10-weave.conflist
在主节点和工作节点上。我还检查了目录并在节点/opt/cni/bin
上找到以下内容:master
bridge flannel ipvlan macvlan ptp tuning weave-ipam weave-plugin-2.5.1
dhcp host-local loopback portmap sample vlan weave-net
在工人身上,我得到了以下信息:
bridge flannel ipvlan macvlan ptp tuning weave-ipam weave-plugin-2.5.0
dhcp host-local loopback portmap sample vlan weave-net weave-plugin-2.5.1
请任何人都可以请让我知道我能做些什么来解决这个问题。?谢谢。
我使用以下命令启动了 kube master:
并使用以下方法安装编织:
kubernetes - 编织 kubernetes 中的就绪探测失败错误
我有集群,其中有 10 个工作节点,Raspberry pi
并且主节点正在运行Ubuntu 16.04
。一切似乎都运行良好,但有时在节点上运行的 pod 会显示以下错误:
Warning FailedCreatePodSandBox 18m (x3 over 18m) kubelet, w188 (combined from similar events): Failed create pod sandbox: rpc error: code = Unknown desc = failed to set up sandbox container "6fa511fb1d292702aa99318b785f5011307601868ff2520c542515a239924c16" network for pod "deployment-6w24f": NetworkPlugin cni failed to set up pod "deployment-6w24f_aps-namespace" network: unable to allocate IP address: Post http://127.0.0.1:6784/ip/6fa511fb1d292702aa99318b785f5011307601868ff2520c542515a239924c16: dial tcp 127.0.0.1:6784: connect: connection refused
我正在使用 weave 进行网络连接,它在 kube 仪表板上显示以下错误:
Readiness probe failed: Get http://127.0.0.1:6784/status: dial tcp 127.0.0.1:6784: connect: connection refused
Back-off restarting failed container
MountVolume.SetUp failed for volume "weave-net-token-txqhk" : couldn't propagate object cache: timed out waiting for the condition
该节点显示此错误,并在一段时间后自动开始正常工作。这种情况时不时地发生在多个节点上。我使用以下命令来初始化集群并编织:
谁能指导我如何解决这个问题。
kubernetes - Kubernetes.default nslookup 无法从不同的命名空间解析
我面临kubernetes.default.svc.cluster.local
从外部default
命名空间解决的问题
我在每个命名空间上运行两个busybox:1.30 pod,并且名称仅从default
命名空间成功解析
我在气隙环境中运行 CentOS 7 kubernetes 集群并使用 weave net CNI 插件,这是我的 CoreDNS 配置
python - weawve ImportError:DLL 加载失败:%1 不是有效的 Win32 应用程序 Anaconda64 MINGW64
我想使用 weave 编译 C 代码以与 python Anaconda 64 一起使用,但它失败了。遇到了各种问题。下面的代码
1) 似乎 anaconda 不提供带有符号的 msvcr90.dll。尝试编织时,请参阅 python27.def“找不到符号表”
2)hypot出现一些不匹配
在 pyconfig.h 文件中将 hypot 重新定义为 _hypot。此错误的修复是在 cmath 的第 1121 行注释掉 hypot
最后可以编译编织代码,但出现错误 ImportError: DLL load failed: %1 is not an valid Win32 application。请参阅下面的日志文件,它适用于来自 MINGW64 和 TDM CODEBLOCKS 的 gcc 编译器
知道这可能是什么原因
docker - ssh:连接到主机 e121a0ef81ef(容器 id)端口 22:docker 中的连接被拒绝
我有三台主机,每台主机上都安装了 docker。我想在三个容器中拥有一个分布式文件系统 HDFS。所以,我必须做一个hadoop集群。我使用这个 docker 文件来制作一个 hadoop 图像。
构建 docker 文件后。我在你的主机上坐了 docker swarm。我安装了weave net并制作了一个这样的容器网络:
我连接了三台主机,在每台主机上运行此命令:
然后,我在每个主机上使用容器网络运行 hadoop 映像,如下所示:
我检查了每个容器是否可以通过在每个容器上运行此命令来识别其他容器:
但是,当我想运行这个命令时:
我收到此错误:
ssh:连接到主机 e121a0ef81ef 端口 22:连接被拒绝
“e121a0ef81ef”是我的容器 ID。
我很困惑,不知道如何解决这个问题。你能帮帮我吗?
任何帮助,将不胜感激。
kubernetes - 如何禁用运行容器的 weavescope shell/bash 提示
如何禁用 exec shell(shell/bash 提示符),使用户无法以 root 用户身份进入正在运行的容器?