21.6. TLS 종료 추가

AWS 로드 밸런서에 TLS 종료를 추가할 수 있습니다.

21.6.1. AWS 로드 밸런서에 TLS 종료 추가

도메인의 트래픽을 서비스 Pod로 라우팅하고 AWS Load Balancer에서 TLS 종료를 추가할 수 있습니다.

사전 요구 사항

  • OpenShift CLI(oc)에 액세스할 수 있습니다.

절차

  1. Operator를 설치하고 aws-load-balancer-controller 리소스의 인스턴스를 생성합니다.

    apiVersion: networking.k8s.io/v1
    kind: AWSLoadBalancerController
    group: networking.olm.openshift.io/v1alpha1 1
    metadata:
      name: cluster 2
    spec:
      subnetTagging: auto
      ingressClass: tls-termination 3
    1
    aws-load-balancer-controller 리소스의 API 그룹을 정의합니다.
    2
    aws-load-balancer-controller 인스턴스를 정의합니다.
    3
    AWS 로드 밸런서 컨트롤러에서 조정한 ingressClass 리소스의 이름을 정의합니다. 이 ingressClass 리소스가 없으면 생성됩니다. ingressClass 값을 더 추가할 수 있습니다. spec.controlleringress.k8s.aws/alb 로 설정된 경우 컨트롤러가 ingressClass 값을 조정합니다.
  2. 인그레스 리소스를 생성합니다.

    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: <example> 1
      annotations:
        alb.ingress.kubernetes.io/scheme: internet-facing 2
        alb.ingress.kubernetes.io/certificate-arn: arn:aws:acm:us-west-2:xxxxx 3
    spec:
      ingressClassName: tls-termination 4
      rules:
      - host: <example.com> 5
        http:
            paths:
              - path: /
                pathType: Exact
                backend:
                  service:
                    name: <example-service> 6
                    port:
                      number: 80
    1
    Ingress의 이름을 지정합니다.
    2
    컨트롤러는 인터넷을 통해 로드 밸런서에 연결할 수 있도록 이 Ingress 리소스의 로드 밸런서를 공용 서브넷에 프로비저닝합니다.
    3
    로드 밸런서에 연결하는 인증서의 Amazon 리소스 이름입니다.
    4
    Ingress 클래스 이름을 정의합니다.
    5
    트래픽 라우팅에 대한 도메인을 정의합니다.
    6
    트래픽 라우팅에 대한 서비스를 정의합니다.