14.4. cert-manager Operator 설치


  1. cert-manager Operator를 설치할 프로젝트를 생성합니다.

    $ oc new-project cert-manager-operator
    중요

    클러스터에서 두 개 이상의 cert-manager Operator를 사용하지 마십시오. 커뮤니티 cert-manager Operator가 클러스터에 설치되어 있는 경우 cert-manager Operator for Red Hat OpenShift를 설치하기 전에 이를 제거해야 합니다.

  2. cert-manager Operator for Red Hat OpenShift를 설치합니다.

    $ cat << EOF | oc apply -f -
    apiVersion: operators.coreos.com/v1
    kind: OperatorGroup
    metadata:
      name: openshift-cert-manager-operator-group
      namespace: cert-manager-operator
    spec:
      targetNamespaces:
      - cert-manager-operator
    ---
    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: openshift-cert-manager-operator
      namespace: cert-manager-operator
    spec:
      channel: stable-v1
      installPlanApproval: Automatic
      name: openshift-cert-manager-operator
      source: redhat-operators
      sourceNamespace: openshift-marketplace
    EOF
    참고

    이 Operator를 설치하고 설정을 완료하는 데 몇 분이 걸립니다.

  3. cert-manager Operator가 실행 중인지 확인합니다.

    $ oc -n cert-manager-operator get pods

    출력 예

    NAME                                                        READY   STATUS    RESTARTS   AGE
    cert-manager-operator-controller-manager-84b8799db5-gv8mx   2/2     Running   0          12s

  4. 이전에 생성한 AWS IAM 역할을 사용하여 cert-manager Pod에서 사용하는 서비스 계정에 주석을 답니다.

    $ oc -n cert-manager annotate serviceaccount cert-manager eks.amazonaws.com/role-arn=${ROLE_ARN}
  5. 다음 명령을 실행하여 기존 cert-manager 컨트롤러 Pod를 다시 시작합니다.

    $ oc -n cert-manager delete pods -l app.kubernetes.io/name=cert-manager
  6. Operator의 구성을 패치하여 외부 이름 서버를 사용하여 DNS-01 챌린지 확인 문제를 방지합니다.

    $ oc patch certmanager.operator.openshift.io/cluster --type merge \
      -p '{"spec":{"controllerConfig":{"overrideArgs":["--dns01-recursive-nameservers-only","--dns01-recursive-nameservers=1.1.1.1:53"]}}}'
  7. 다음 명령을 실행하여 Let's Encrypt를 사용하도록 ClusterIssuer 리소스를 만듭니다.

    $ cat << EOF | oc apply -f -
    apiVersion: cert-manager.io/v1
    kind: ClusterIssuer
    metadata:
      name: letsencrypt-production
    spec:
      acme:
        server: https://acme-v02.api.letsencrypt.org/directory
        email: ${EMAIL}
        # This key doesn't exist, cert-manager creates it
        privateKeySecretRef:
          name: prod-letsencrypt-issuer-account-key
        solvers:
        - dns01:
            route53:
             hostedZoneID: ${ZONE_ID}
             region: ${REGION}
             secretAccessKeySecretRef:
               name: ''
    EOF
  8. ClusterIssuer 리소스가 준비되었는지 확인합니다.

    $ oc get clusterissuer.cert-manager.io/letsencrypt-production

    출력 예

    NAME                     READY   AGE
    letsencrypt-production   True    47s

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.