Alibaba Cloud: ALB 재사용을 통한 효과적인 ACK 클러스터 구성

2026. 3. 24. 12:49·☁️Cloud/Alibaba

구성 : 하나의 SLB(ALB)에서 포워딩 룰(도메인 기준 등)에 따라 ACK 서비스와 별도의 ECS로 라우팅

조건

  • ACK 클러스터에 ALB ingress Controller 설치되어 있어야 합니다.
  • ACK 클러스터에 바인딩(재사용) 할 ALB는 Standard 또는 WAF-enabled 모드 여야 합니다.
  • ACK 클러스터에 라우팅 대상 Pod/Service가 이미 배포되어 있고 정상 동작해야 하는 상태여야 합니태여야 합니다.
  • ACK가 관리하는 리스너/룰은 kubernetes 리소스로만 변경 (ALB 콘솔에서 직접 변경하는 것은 권장드리지 않음)
  • (콘솔) SLB 서비스에서 ALB 리소스 먼저 생성되어 있어야 합니다.
  • (콘솔) ALB - Server Group 항목안에 ALB에 연결할 ECS Server를 ServerGroup으로 생성해두셔야 합니다.

1. 생성되어 있는 ALB 인스턴스 재사용

관련 공식 문서 링크 : https://www.alibabacloud.com/help/en/ack/ack-managed-and-ack-dedicated/user-guide/use-albconfigs-to-configure-alb-instances?spm=a2c63.p38356.help-menu-85222.d_2_3_4_2_1.296834cdD8Blkl

기존 ALB 인스턴스를 재사용하려면 AlbConfig를 생성할 때 인스턴스 ID를 지정해야 합니다. 기존 ALB 인스턴스는 Application Load Balancer(ALB) 콘솔 에서 생성된 Standard 또는 WAF 지원 인스턴스여야 합니다 . Basic ALB 인스턴스는 재사용할 수 없습니다. 인스턴스는 하나의 클러스터에서만 재사용할 수 있으며, 동일한 ALB 인스턴스를 여러 클러스터에서 재사용할 수 없습니다.

ACK 클러스터에 적용할 albconfig.yaml 파일

apiVersion: alibabacloud.com/v1
kind: AlbConfig
metadata:
  name: alb # <ALBCONFIG_NAME>
spec:
  config:
    id: **** # ALB 인스턴스 ID
    forceOverride: false # 해당 옵션 - 공식 문서 가이드 참고
    listenerForceOverride: false # 해당 옵션 - 공식 문서 가이드 참고

적용 및 적용확인

kubectl apply -f albconfig.yaml
kubectl get AlbConfig

2. ingressClass 생성: ingress ↔ AlbConfig 연결

ACK 클러스터에 적용할 ingressclass.yaml

apiVersion: networking.k8s.io/v1
kind: IngressClass
metadata:
  name: alb   # <INGRESSCLASS_NAME>
spec:
  controller: ingress.k8s.alibabacloud/alb
  parameters:
    apiGroup: alibabacloud.com
    kind: AlbConfig
    name: alb  # <ALBCONFIG_NAME>

적용 및 적용확인

kubectl apply -f ingressclass.yaml
kubectl get ingressclass

예상 출력:

3. Ingress 파일 생성 (ALB 룰)

ACK 클러스터에 적용할 ingress.yaml

인그레스에 대한 전달 규칙 사용자 지정 가이드 링크 : https://www.alibabacloud.com/help/en/ack/ack-managed-and-ack-dedicated/user-guide/customize-the-routing-rules-of-an-alb-ingress-1?spm=a2c63.p38356.help-menu-85222.d_2_3_4_2_3.f725a0712Go7P1

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: host-http        
  namespace: default
  annotations:
    alb.ingress.kubernetes.io/actions.ecs-forward: |
      [{
        "type": "ForwardGroup",
        "ForwardConfig": {
          "ServerGroups": [{
            "ServerGroupID": "sgp-********", # 미리 만들어 두었던 서버그룹 ID
            "Weight": 100
          }]
        }
      }]
spec:
  ingressClassName: alb
  rules:
  - host: ackk.example.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: my-svc # 서비스 명
            port:
              number: 80
  - host: ecss.example.com 
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: ecs-forward # 미리 만들어 두었던 서버 그룹으로 forward
            port:
              name: use-annotation

적용 및 적용확인

kubectl apply -f ingress.yaml
kubectl get ingress

예상 출력:

저작자표시 비영리 변경금지 (새창열림)

'☁️Cloud > Alibaba' 카테고리의 다른 글

Alibaba Cloud: PolarDB 기본개념 및 사용법  (0) 2026.03.28
Alibaba Cloud: CDN과 WAF의 최적 조합 이해하기  (0) 2026.03.24
Alibaba Cloud: AWS VPN 연결 가이드(Feat. Site-to-Site VPN Connection)  (0) 2026.03.24
Alibaba Cloud: NAT Gateway - DNAT, SNAT 가이드  (0) 2026.03.24
Alibaba Cloud: 서로 다른 리전 VPN Gateway(IPsec-VPN)로 연결 가이드  (0) 2026.03.24
'☁️Cloud/Alibaba' 카테고리의 다른 글
  • Alibaba Cloud: PolarDB 기본개념 및 사용법
  • Alibaba Cloud: CDN과 WAF의 최적 조합 이해하기
  • Alibaba Cloud: AWS VPN 연결 가이드(Feat. Site-to-Site VPN Connection)
  • Alibaba Cloud: NAT Gateway - DNAT, SNAT 가이드
Diven
Diven
  • Diven
    Diven
    Diven
  • 전체
    오늘
    어제
    • 분류 전체보기 (110) N
      • ☁️Cloud (21) N
        • AWS (2)
        • Alibaba (14) N
        • OCI (1)
        • AWS: Certified Solution Arc.. (0)
        • AWS: Certificate Advanced N.. (2) N
      • 📊DB (13)
        • MongoDB (8)
        • MariaDB (2)
        • PostgreSQL (2)
        • MySQL (1)
      • 🧑🏽‍💻Dev:Lang (9)
        • C++ (0)
        • GO (1)
        • Python (8)
      • ⚙️DevOps (4)
        • CICD (0)
        • Jenkins (4)
      • 🐳Docker (15)
      • 🪢laC (0)
      • ⚓K8s (7)
      • 🐧Linux (25)
      • 🖥️Monitoring (10)
        • Grafana (1)
        • Prometheus (6)
        • Loki (1)
        • ELK (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    centOS7
    알리바바 클라우드
    jenkins
    db
    k8s
    mongoDB
    SSL
    Cloud
    PolarDB
    docker
    MySQL
    alb
    Python
    AWS
    linux
    mariadb
    Alibaba
    NGINX
    alertmanager
    prometheus
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
Diven
Alibaba Cloud: ALB 재사용을 통한 효과적인 ACK 클러스터 구성
상단으로

티스토리툴바