kubernetes-pod - Kubernetes 集群中的 pod 无法通过 egress networkpolicy 连接到 Internet
问题描述
我已经在本地 Kubernetes 集群中部署了供应商容器,并且 pod 中的容器需要连接到 Internet 以验证许可证和其他一些细节。我检查了环境,但在集群和/或 pod 级别中没有看到任何现有的网络策略。然后,我在 pod 命名空间的 networkpolicy 条目下方添加了,但在 pod 和服务日志中仍然看到以下错误。
level=fatal msg="无法连接到许可服务器"
.
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-ingress-egress
namespace: myappns
spec:
podSelector:
matchLabels: {}
egress:
- {}
policyTypes:
- Ingress
- Egress
ingress:
- {}
egress:
- {}
解决方案
意识到默认情况下,Kubernetes 集群中的所有 pod 都允许 pod 到 pod 和 egress 通信。也许这是我测试时的临时网络问题,外部/出口连接在没有任何网络策略规则的情况下工作正常。我知道这对于生产环境并不理想,因此将在这部分工作。
推荐阅读
- javascript - Cordova TTS 无法读取未定义的属性“then”
- python-3.x - CentOS 7 未定义符号:ompi_mpi_logical8
- perl - 为什么 dbicdump 在 ResultSource 中缩短表列名称时达到 30 个字符?
- c - 将 printf 用于 char 时仅输出点
- html - css中的图像和文本重叠,仅在图像上链接
- javascript - 向下滚动页面时从本地存储加载更多内容
- docker - 在 jwilder/nginx-proxy Docker 容器中重写 URL
- android - 通过 android studio 录制机器人脚本时,Android 应用程序在启动画面上冻结
- sql - 具有一对多关系的 SQL(三个表)
- vhdl - VHDL 不关心自定义类型