问题标签 [cilium]

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 投票
1 回答
1230 浏览

kubernetes - 监控或记录 Kubernetes NetworkPolicy 丢弃的网络流量

我对使用 Kubernetes NetworkPolicy 来控制网络策略很感兴趣。我想知道 NetworkPolicy 是否阻止流量,以便我可以修复策略或修复/停止任何违规行为。

我们使用 Calico,他们认为这是一项付费功能。https://github.com/projectcalico/calico/issues/1035

如果我们开始使用 Cilium, Ciliumcilium monitor听起来会起作用。 http://docs.cilium.io/en/latest/troubleshooting/

是否有一种通用的、供应商中立的方法来监控违反 Kuberenetes NetworkPolicy 的网络流量?

0 投票
1 回答
1283 浏览

kubernetes - 失败错误:无法连接到任何 etcd 端点 - etcd:0/1 已连接:kubeadm

我尝试在 kubeadm 中使用 coredns 安装 cilium

库贝:1.12.3 纤毛:1.3.0

我收到此错误:

我不知道为什么以及是否需要在主服务器上安装 etcd。

kubectl 获取 pods -n kube-system

0 投票
1 回答
350 浏览

kubernetes - 由于节点的无效范围 ip,Cilium pod 崩溃

我正在使用kubespray部署一个kubernetes集群。我将网络插件从 calico 更改为cilium

不幸的是,一些纤毛荚卡在 CrashLoopBackOff 中。

检查崩溃 pod 的日志时,我可以看到以下致命错误消息:

似乎节点的 IP(在这种情况下为10.233.71.1)不尊重10.233.70.0/24的有效范围。

我试图修改 kubespray 的 main.yaml 文件来更改子网,但我的多次尝试只使崩溃次数上下波动......

例如,我尝试使用以下运行:

如您所见,它不起作用。如果您有任何想法... :-)
Thx

0 投票
0 回答
613 浏览

kubernetes - IPv6模式下的cilium配置

我在直接路由模式下在 Kubernetes 1.12 中使用 cilium。它在 IPv4 模式下工作正常。我们使用 cilium/cilium:no-routes image 和 cloudnativelabs/kube-router 通过 BGP 通告路由。

现在我想在仅 IPv6 的 Kubernetes 集群中配置相同的配置。但是我发现 kube-router pod 崩溃了,并且没有为 --pod-network-cidr 创建路由条目。

以下是实验室详细信息 -

  • 主节点:IPv6 私有 IP -fd0c:6493:12bf:2942::ac18:1164
  • 工作节点:IPv6私有IP -fd0c:6493:12bf:2942::ac18:1165
  • 两个节点的公共 IP 都是 IPv4,因为我没有 IPv6 公共 IP。

仅 IPv6 的 K8s 集群创建为

掌握:

工人:

主节点尚未准备好,因为 cni 尚未配置并且 codedns pod 尚未启动。

现在在 IPv6 中安装 cilium。

1.在主节点运行 etcd。

这里 [fd0c:6493:12bf:2942::ac18:1164] 是主节点 ipv6 ip。

2. sudo mount bpffs /sys/fs/bpf -t bpf

3.运行 kuberouter。

预期结果:

Kube-router 添加对应于集群中其他每个节点的 POD-CIDR 的路由条目。节点公共 IP 将设置为 GW。对于 IPv4,获得以下结果。对于 IPv4,在节点 1 中为节点 2(公共 IP 10.40.139.196 和 POD CIDR 10.244.1.0/24)创建路由条目。Device是绑定公网IP的接口。

注意:仅适用于 IPv6 Kubernetes,--pod-network-cidr=2001:2::/64

实际结果 -

问题-

kuberouter 可以使用 Kubernetes 集群使用的私有 IPv6 地址,而不是使用在我们的例子中是enter code hereIPv4 的公共 IP。

0 投票
1 回答
952 浏览

kubernetes - NetworkPolicy 不允许 HTTP/HTTPS 端口上的出口

我正在使用下面的 NetworkPolicy 来允许 HTTP 和 HTTPS 端口上的出口,但是wget https://google.com在应用网络策略时运行不起作用。域名已解析(DNS 出口规则有效)但连接到外部主机超时。

我已经尝试过使用 cilium 的 minikube 和使用 azure-npm 的 Azure,以防网络策略控制器出现问题,但两者的行为相同。我很困惑,因为我对 DNS 出口使用相同的方法(有效),但对于其他端口却失败了。

是什么阻止了 HTTP/HTTPS 端口的出口?

Kubernetes 版本 1.11.5

(是的,UDP 规则可能是不必要的,但在这里尝试一切)

(我也在wget私人服务器上尝试过,以防谷歌/等阻止 Azure IP,同样的结果)

(我也尝试过匹配入口规则,因为“为什么不”,结果相同)


kubectl describe关于网络策略:


最小的可重现示例:

然后:

0 投票
1 回答
719 浏览

amazon-web-services - EKS 1.11 + Istio 1.0.6 + Cilium 1.4.1,发布 https://istio-sidecar-injector.istio-system.svc:443/inject?timeout=30s:地址不允许

以下是重现错误的步骤:

1)。安装 AWS EKS 集群 (1.11)

2)。按照本指南安装 Cilium v​​1.4.1

3)。安装 istio 1.0.6

4)。尝试示例 nginx

遇到问题

调查A,更新includeOutboundIPRanges注解如下,无济于事

调查B,移除Cilium,重新安装istio,然后重新安装nginx。Nginx 注入变好了,Nginx pod 运行良好。

调查 C,作为比较,我在 2) 之间切换了安装步骤。3).,Nginx注入就可以了,可以看到nginx欢迎页面。但是在“手动终止”ec2 worker 实例之后,这个“Address is not allowed”错误会再次出现 - ASG 自动创建所有 ec2 worker 实例。

仅供参考,cilium 和 istio 状态

0 投票
1 回答
103 浏览

azure - 带有天蓝色的纤毛簇网

我正在使用 Aks 引擎部署集群网格。我已经在两个不同的集群上安装了 cilium。按照 clustermesh 安装指南,一切看起来都是正确的。列出了节点,状态正确,etcd-operator 日志中没有出现错误。但是,我无法访问外部端点。示例应用程序始终从当前集群应答。

按照故障排除指南,我在代理的调试信息中发现没有声明任何外部端点。集群有一个主节点和两个从节点。我附加了两个集群的节点列表和状态。如果需要,我可以提供额外的日志。

任何帮助,将不胜感激。

集群 1

集群 2

0 投票
2 回答
2301 浏览

kubernetes - Kubespray 失败并显示“找到多个 CRI 套接字,请使用 --cri-socket 选择一个”

遇到的问题

使用KubesprayCRI-OCilium部署集群时,我收到一个错误,提示有多个 CRI 套接字可供选择。

完全错误

有趣的部分


我试过的

  • 1)我试图在--cri-socket里面设置标志/var/lib/kubelet/kubeadm-flags.env

=> 没有区别

  • 2)我已经检查过/etc/kubernetes/kubeadm-config.yaml,但它已经包含以下部分:

=> 它已经以criSocket标志结束,所以无事可做......

  • 3) 尝试编辑 ansible 脚本以将其添加--cri-socket到现有命令中,但失败并显示Unknow command --cri-socket

现存的 :

试过:


理论

似乎问题来自与标志 kubeadm init phase不兼容的命令......(见第3点)--crio-socket

即使使用配置文件设置了正确的套接字(参见第 2 点),kubeadm init phase也没有使用它。

任何想法都会被欣赏;-)
thx

0 投票
1 回答
77 浏览

azure - Azure 的 Cilium 集群网格

我需要您的帮助来创建多集群网络。

我做了什么:

1- kubectl apply -f chaining.yaml

2-

3- kubectl -n kube-system 编辑 cm cilium-config

4- apiVersion: v1 kind: Service metadata: name: cilium-etcd-external namespace: kube-system annotations: service.beta.kubernetes.io/azure-load-balancer-internal: "true" spec: type: LoadBalancer ports: - port: 2379 selector: app: etcd etcd_cluster: cilium-etcd io.cilium/app: etcd-operator

5-

git clone https://github.com/cilium/clustermesh-tools.git cd clustermesh-tools

./extract-etcd-secrets.sh

./generate-secret-yaml.sh > clustermesh.yaml

6-

./generate-name-mapping.sh > ds.patch kubectl -n kube-system 补丁 ds cilium -p "$(cat ds.patch)"

7-

kubectl apply -f clustermesh.yaml

kubectl -n kube-system 删除 pod -l k8s-app=cilium

结果:

在此处输入图像描述

簇彼此看不到。你有什么想法吗?

0 投票
1 回答
485 浏览

networking - 初始化守护进程时出错”error="exit status 2" subsys=daemon in cilium CNI on kubernetes

在 kubernetes 集群中,我们使用 cilium CNI,但它在工作节点上失败了。错误消息如下所示。

.

集群信息:

我已经进行了一些搜索并找到了这个问题。但我无法解决这个问题。解决这个问题的步骤是什么?他是什么意思:

由于我们不再删除旧的 cilium_host/cilium_net veth 对(如果它们已经存在),“ip route add”将抱怨现有路由。请改用“ip route replace”来解决此问题。