我在Azure中有一个Kubernetes集群(AKS),带有Application Gateway Ingress Controller。
我部署在它,WordPress的掌舵释放。我想启用入口流量只从应用网关入口控制器荚这是在kube-system
我的values.yml
看起来像:
# I paste only NetworkPolicy part
networkPolicy:
enabled: true
ingress:
enabled: true
ingressRules:
customRules:
- from:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: kube-system
podSelector:
matchLabels:
app: ingress-appgw
字符串
然而,当我部署一个版本时,WordPress本身工作正常,但我无法通过<Application_Gateway_Ingress_Controller_PublicIP>
访问它。
在我的Azure Portal上,当我访问应用程序网关资源时,我收到以下消息:
**图片1:**x1c 0d1x
图片2:
但是当我从values.yml
中删除网络策略部分时,AGIC变得健康!
请帮忙吗?
感谢您发送编修。
2条答案
按热度按时间5us2dqdw1#
此错误提示,由于您没有任何健康的后端池,请尝试添加健康的探针,如下所示。* 这将持续监控您的后端池的健康状态,并更新应用网关。应用网关将仅向健康的后端池发送流量 * 并刷新
x1c 0d1x的数据
的
添加健康的探测器和刷新后,需要几分钟的时间来更新这些,并尝试访问应用程序网关,然后 * 如果您收到无效的主机名错误,请尝试提前更改以下设置 *
的
查看Vladam的So thread以获取一些指针。
或者,尝试开发一个阻止所有流量的网络策略。创建一个名为
backend-policy.yaml
的文件,并使用以下清单阻止所有传入Pod的流量:字符串
参考文件:
Troubleshoot backend health issues in Azure Application Gateway | Microsoft Docs的
使用网络策略保护Pod流量- Azure Kubernetes Service| Microsoft Windows
ux6nzvsh2#
面对同样的问题,在NetworkPolicy的入口规则的
from
子句中使用看似正确的namespace(如上所述)和/或pod,与健康探测器的通信仍然被阻止,除非我使用允许来自任何来源的流量的空from
子句打开它:字符串
这导致了一个工作,虽然修改NetworkPolicy,与来自argocd公共源的netpol相比:
型