问题标签 [calico]

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.

0 投票
0 回答
1675 浏览

kubernetes - Calico 节点未在主节点和工作节点之间运行

我使用 kubeadm 创建集群并成功地将工作节点加入到主控平面。

但是master的kube-system命名空间中有两个calico-node pod无法运行,我检查了这两个pod,它们都有相同的错误消息输出。


解析度:

根据这个答案,在我的情况下,我将此行添加到 calico.yaml 文件中。

0 投票
1 回答
623 浏览

kubernetes - kubernetes - 从印花布迁移到法兰绒

我有一个版本为 1.11 的 K8S 集群。

我已将 calico 安装为 cni 插件。我需要用法兰绒代替它。

我在网上找到了如何从法兰绒迁移到印花布的指南,但反之则不然。

下来任何人有一个提示/想法如何得到这个?

甚至有可能从印花布迁移到法兰绒?

谢谢

0 投票
1 回答
11448 浏览

kubernetes - 如何让 kubeadm 部署的 kubernetes 集群中的 pod CIDR 范围更大?

我部署了添加了 --pod-network-cidr 的集群,并使用 calicoctl 创建了新的 ip 池以将 pod 更改为此范围。我遇到的问题正是我需要在 kubernetes 方面进行更改以使 pod cidr 范围更改?我是在 API 服务器、控制器管理器和调度程序中进行更改,还是只需要更改特定部分。我只尝试更改控制器管理器,并且在更改 yaml 中的 --cluster-cidr 后,这些控制平面 pod 进入崩溃循环。

控制器管理器日志中的输出如下?

controllermanager.go:235] 错误启动控制器:未能将 idx [0] 处的 cidr [192.168.0.0/24] 标记为节点占用:: cidr 192.168.0.0/24 超出集群 cidr 10.0.0.0/16 的范围

0 投票
0 回答
53 浏览

nginx - Kubernetes 内部网络监控,没有任何 Sidecar

我有 1000 个服务和高内部网络通信的 k8s 集群。我想监视它们之间的所有 HTTP 请求(状态码、响应时间……)。我已经尝试过 istio 和 Linkerd,但两者都需要 sidecar 容器并导致性能问题。Linkerd 没有全时监控,并且 istio 有时会发送 502。

我可以获取像 nginx syslogs 这样的内部网络日志吗?

0 投票
2 回答
1853 浏览

kubernetes - Kubelet Master 因 cni 缺失而留在 KubeletNotReady

Kubelet 已使用 Calico 的 pod 网络初始化:

然后我得到 calico.yaml v3.11 并应用它:

在我检查 pod 状态之后:

在描述我有 cni 配置单元化,但我认为印花布应该这样做吗?

实际上我在 /etc/cni/net.d/ 下什么都没有,所以它似乎忘记了什么?

正如所解释的,我正在通过本地仓库运行,journalctl 说:

感觉不仅仅是CNI的问题

0 投票
1 回答
254 浏览

kubernetes - 我无法访问调度到另一个节点的 pod。但是我可以访问调度到当前节点的 pod

我无法访问调度到另一个节点的 pod。但是我可以访问调度到当前节点的pod,反之亦然,当我在另一个节点上时,我只能访问当前节点上调度的pod,而无法访问调度到另一个节点的pod。并且当前节点上的路由规则与其他节点不同(实际上,我集群中的三个节点都有不同的路由规则)。下面列出了一些信息:

在主节点 172.16.5.150 上:

在另一个节点 172.16.5.150 上:

0 投票
2 回答
687 浏览

kubernetes - Kubernetes Ingress 网络策略按预期工作,egress 阻塞了所有流量

我已经从这里在 EKS 上安装了 Calico 。

我有两个命名空间,foo 和 bar,都标有“目的”标签,并且每个都包含一个应用程序 pod。

当我将以下 Ingress-only 策略导入 foo 命名空间时,它完全按预期工作;其他测试 pod 无法连接到 foo-app,但 bar-app 可以。

但是,当我导入包含入口和出口规则的策略时,它会完全关闭到 pod 的网络。我什至无法从 bar-app ping foo-app pod IP。

在删除并系统地重新添加部分策略之后,肯定是namespaceSelector在出口中添加条目会破坏它。

集群上没有其他网络策略。

如果没有直接明显的原因说明为什么会发生这种情况;除了在工作节点上搜索 netfilter 规则之外:有没有有效的方法来调试这个?

0 投票
1 回答
1642 浏览

kubernetes - Kubernetes + calico + 副本集

所以我发现自己处于一个非常棘手的境地。我正在尝试创建一个简单的副本集,但不幸的是我遇到了印花布的一些问题。

我有 2 个 VM 在 OracleVM 上运行。我将它们配置为使用 enp0s8 接口。master节点的ip是192.168.56.2,worker节点的ip是192.168.56.3

这是我在 Kubernetes 中所做的。首先,我正在创建 kubernetes 主节点:

成功初始化后,我正在运行:

现在我通过运行创建 POD 网络:

之后我成功地从工作节点加入。每当我启动副本时:

*** 编辑:我不必创建副本集来获得与 calico-node 创建卡住的相同结果

其中 yml 如下所示:

我正在创建一个新的 calico-node 最终会卡住

如果我 kubectl logs -n kube-system calico-node-mcb5g -f 在上面运行,我会得到以下日志:

我尝试配置 calico.yml 并在 env 中添加以下行:

但结果还是一样。

非常感谢您阅读本文,如果您有任何建议,我将不胜感激!!!

0 投票
0 回答
368 浏览

kubernetes - Kubernetes 服务无法连接到外部服务或互联网

我的 ASP.NET Core Api Web 应用程序无法连接到集群外的任何服务器。甚至访问互联网似乎被阻止。仅当我的应用程序托管在我的本地 Ubuntu 集群中时,才会出现此问题。在 docker 桌面集群中运行时,一切正常。

我在 Window 开发人员机器上作为 Hyper-V 节点运行的 2 个 Unbuntu 18.04 服务器上设置了一个基本的 Kubernetes 集群。我使用印花布作为我的网络覆盖。我已经按照 Quick Start 方法安装了 Calico。我的应用程序部署为 nodeport 并且运行良好。我可以访问我所有的控制器。但是,当我尝试连接到例如在集群外运行的 SQL Server 时,我会收到超时。

即使使用 HttpClient 访问 google.com 的控制器方法超时。

kubectl 日志 -n kube-system coredns

所以似乎有些东西阻止了所有这些请求。我已经在我的 Ubuntu 机器上禁用了 Ubuntu 防火墙。所以有别的东西在阻塞。但我不知道出了什么问题。

任何帮助,将不胜感激。

0 投票
1 回答
7429 浏览

kubernetes - Ufw 防火墙阻止 kubernetes(使用 calico)

我正在尝试在我的服务器(Debian 10)上安装一个 kubernetes 集群。在我的服务器上,我使用 ufw 作为防火墙。在创建集群之前,我在 ufw 上允许了这些端口:

179/tcp, 4789/udp, 5473/tcp, 443/tcp, 6443/tcp, 2379/tcp, 4149/tcp, 10250/tcp, 10255/tcp, 10256/tcp, 9099/tcp, 6443/tcp

正如 calico doc 建议的那样(https://docs.projectcalico.org/getting-started/kubernetes/requirements)和这个关于 kubernetes 安全性的 git repo(https://github.com/freach/kubernetes-security-best-practice) .

但是当我想创建集群时,calico/node pod 无法启动,因为 Felix 不在线(我在 ufw 上允许 9099/tcp):

Liveness probe failed: calico/node is not ready: Felix is not live: Get http://localhost:9099/liveness : dial tcp [::1]:9099: connect: connection denied

如果我禁用 ufw,则会创建集群并且没有错误。

所以我想知道我应该如何配置 ufw 以使 kubernetes 工作。如果有人可以帮助我,那就太好了,谢谢!

编辑:我的 ufw 状态

抱歉,我的 ufw 规则有点乱,我尝试了太多东西来让 kubernetes 正常工作。