我正在开发一个 Kubernetes 应用程序。我的集群在 EKS 集群中运行,并且我有两个服务在两个单独的命名空间中运行。
我想要一个应用程序负载均衡器来使用这两个服务,使用 ALB 入口控制器。我无法够到我的豆荚;而如果我在同一个命名空间中创建 ALB 和 Service,一切正常。
这是我的设置:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: jen-test-ingress
namespace: jenkins-master-ingress
annotations:
ingress.kubernetes.io/rewrite-target: /
kubernetes.io/ingress.class: alb
alb.ingress.kubernetes.io/scheme: internal
alb.ingress.kubernetes.io/tags: Environment=test
alb.ingress.kubernetes.io/certificate-arn: arn:aws:acm:eu-west-1:768XXXX402:certificate/24912XXXX
alb.ingress.kubernetes.io/actions.jen-test-master-unit1: '{"Type": "redirect", "RedirectConfig": { "Protocol": "HTTPS", "Port": "443", "StatusCode": "HTTP_301"}}'
alb.ingress.kubernetes.io/actions.jen-test-master-unit2: '{"Type": "redirect", "RedirectConfig": { "Protocol": "HTTPS", "Port": "443", "StatusCode": "HTTP_301"}}'
alb.ingress.kubernetes.io/healthcheck-path: /login
alb.ingress.kubernetes.io/listen-ports: '[{"HTTPS": 443}]'
alb.ingress.kubernetes.io/backend-protocol: HTTP
alb.ingress.kubernetes.io/healthcheck-protocol: HTTP
alb.ingress.kubernetes.io/subnets: subnet-0a4f9e3a9e0e9bd81,subnet-0cb53174cf379a494
alb.ingress.kubernetes.io/security-groups: sg-05517017fc8b3a105
alb.ingress.kubernetes.io/target-type: ip
alb.ingress.kubernetes.io/group.name: jenkins-master-group
spec:
rules:
- host: "jenkins-unit1.mysite"
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: jen-test-master-unit1
port:
number: 8080
- host: "jenkins-unit2.mysite"
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: jen-test-master-unit2
port:
number: 8080
而服务“jen-test-master-uni1”和“jen-test-master-unit2”被部署到它们的专用命名空间中。
这是一个简化的图表: 在此处输入图像描述
我究竟做错了什么?