2.9.2. 인증된 이미지 레지스트리의 인증 정보가 잘못되었거나 누락됨

문제

Pod가 시작되지 않습니다. 이미지 스트림에 다음 오류가 표시됩니다.

! error: Import failed (InternalError): ...unauthorized: Please login to the Red Hat Registry

원인

OpenShift 4.x에 3scale을 설치하는 동안 OpenShift는 이미지 스트림이 참조하는 이미지를 가져올 수 없기 때문에 포드를 시작하지 못합니다. 이는 Pod가 가리키는 레지스트리에 대해 인증할 수 없기 때문에 발생합니다.

해결책

절차

  1. 다음 명령을 입력하여 컨테이너 레지스트리 인증 구성을 확인합니다.

    $ oc get secret
    • 시크릿이 있는 경우 터미널에 다음 출력이 표시됩니다.

      threescale-registry-auth          kubernetes.io/dockerconfigjson        1         4m9s
    • 그러나 출력이 표시되지 않는 경우 다음을 수행해야 합니다.
  2. 이전에 레지스트리 서비스 계정을 생성하는 동안 설정한 인증 정보를 사용하여 보안을 생성합니다.
  3. 제공된 oc create secret 명령에서 < your- registry-service-account-username> 및 < your- registry-service-account-password >를 교체하여 OpenShift에서 레지스트리 인증 구성 단계를 사용합니다.
  4. APIManager 리소스와 동일한 네임스페이스에 threescale-registry-auth 시크릿을 생성합니다. < project-name> 내에서 다음을 실행해야 합니다.

    oc project <project-name>
    oc create secret docker-registry threescale-registry-auth \
      --docker-server=registry.redhat.io \
      --docker-username="<your-registry-service-account-username>" \
      --docker-password="<your-registry-service-account-password>"
      --docker-email="<email-address>"
  5. APIManager 리소스를 삭제하고 다시 생성합니다.

    $ oc delete -f apimanager.yaml
    apimanager.apps.3scale.net "example-apimanager" deleted
    
    $ oc create -f apimanager.yaml
    apimanager.apps.3scale.net/example-apimanager created

검증

  1. 다음 명령을 입력하여 배포 상태가 Starting 또는 Ready 상태인지 확인합니다. 그런 다음 Pod가 생성되기 시작합니다.

    $ oc describe apimanager
    (...)
    Status:
      Deployments:
        Ready:
          apicast-staging
          system-memcache
          system-mysql
          system-redis
          zync
          zync-database
          zync-que
        Starting:
          apicast-production
          backend-cron
          backend-worker
          system-sidekiq
          system-sphinx
        Stopped:
          backend-listener
          backend-redis
          system-app
  2. 다음 명령을 입력하여 각 Pod의 상태를 확인합니다.

    $ oc get pods
    NAME                               READY   STATUS             RESTARTS   AGE
    3scale-operator-66cc6d857b-sxhgm   1/1     Running            0          17h
    apicast-production-1-deploy        1/1     Running            0          17m
    apicast-production-1-pxkqm         0/1     Pending            0          17m
    apicast-staging-1-dbwcw            1/1     Running            0          17m
    apicast-staging-1-deploy           0/1     Completed          0          17m
    backend-cron-1-deploy              1/1     Running            0          17m