我已经按照此处的文档https://www.haproxy.com/documentation/kubernetes/latest/installation/community/azure/在AKS中安装了HAProxy控制器。当我尝试按预期导航外部负载平衡器IP时,我得到的是404。然后我已经通过使用hello world映像将新应用程序部署到同一命名空间。
apiVersion: apps/v1
kind: Deployment
metadata:
name: aks-helloworld-one
spec:
replicas: 1
selector:
matchLabels:
app: aks-helloworld-one
template:
metadata:
labels:
app: aks-helloworld-one
spec:
containers:
- name: aks-helloworld-one
image: mcr.microsoft.com/azuredocs/aks-helloworld:v1
ports:
- containerPort: 80
env:
- name: TITLE
value: "Welcome to Azure Kubernetes Service (AKS)"
---
apiVersion: v1
kind: Service
metadata:
name: aks-helloworld-one
annotations:
service.beta.kubernetes.io/azure-load-balancer-internal: "true"
spec:
ports:
- name: http-port
port: 8000
protocol: TCP
targetPort: 80
selector:
app: aks-helloworld-one
那么我已经添加了路径到入口文件
kind: Ingress
apiVersion: networking.k8s.io/v1
metadata:
name: test
spec:
ingressClassName: haproxy
rules:
- http:
paths:
- path: /helloworld
pathType: Prefix
backend:
service:
name: aks-helloworld-one
port:
number: 80
如果我导航到外部负载平衡器,ip /helloworld仍然返回404。我不确定我做错了什么。下面是命名空间中的当前服务列表
PS \HAProxy〉kubectl获取svc --名称空间HAProxy控制器
名称类型群集IP外部IP端口
800010.0.206.176/TCP/IP网络协议
TCP10.0.138.212/IP协议栈的数据传输
1条答案
按热度按时间omhiaaxx1#
Ingress 将 重 定向 到 服务 , 并 将 服务 重 定向 到 Pod 。
因此 , 在 入口 服务 中 , 需要 将 端口 设置 为 8000 ( 即 在 服务 中 设置 的 端口 , pod 的 目标 端口 为 80 ) 。