kubernetes - Kubernetes 中的网络策略以允许来自命名空间的端口
问题描述
在现有命名空间 snafu 中创建一个名为 allow-port-from-namespace 的新 NetworkPolicy。确保新的 NetworkPolicy 允许 namespace internal 中的 Pod 连接到 namespace snafu 中 Pod 的 8080 端口。进一步确保新的 NetworkPolicy: 不允许访问 Pod,即不监听端口 8080 的 Pod 不允许访问 Pod,不在命名空间内部。
请帮我解决这个问题。
另外请验证以下 yaml(在评论部分)是否正确并帮助我理解问题的第二部分(进一步确保新的 NetworkPolicy: 不允许访问 Pods,它不允许在端口 8080 上侦听不允许从不在命名空间内部的 Pod 访问)
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-port-from-namespace
namespace: snafu
spec:
podSelector:
matchLabels:
role: db
policyTypes:
- Ingress
ingress:
- from:
- namespaceSelector:
matchLabels:
name: internal
ports:
- protocol: TCP
port: 8080
解决方案
第二部分意味着您必须默认隔离命名空间 snafu 中的所有 pod,这意味着您需要将podSelector
字段更改为:
...
spec:
podSelector: {}
...
推荐阅读
- indexing - 删除 FileMaker Pro 表上的所有索引
- r - 如何使用 PAM 数据在 fviz_cluster 中定义维度?
- c - 将 char 转换为 int 作为 isspace 的参数的惯用方法?
- vba - 在 Web 表单中选择可靠的下拉列表
- svn - How to deal with long-lived feature branch?
- javascript - 循环 3 个不同的 SQL 结果
- python - Variables in custom python module
- ruby-on-rails - Is it possible to get the user object from the reset password page when using Devise?
- python-3.x - 检查模型输入时如何解决错误:预期的 convolution2d_input_9 有 4 个维度,但得到了具有形状的数组
- javascript - 表格中的进度条