Satellite 클러스터에 대한 내부 이미지 레지스트리 설정
Satellite
기본적으로 이 내부 레지스트리는 이에 대한 배킹 스토리지가 설정되지 않아 Satellite 클러스터에서 실행되지 않습니다. IBM Cloud Object Storage 을 백업 스토리지로 사용하여 Satellite 클러스터에서 내부 이미지 레지스트리를 구성하려면 다음 학습서를 완료하십시오.
이 학습서는 IBM Cloud Object Storage을 사용하여 이미지 레지스트리를 설정하는 방법을 다룹니다. 그러나 작업자 노드에서 비지속적 스토리지를 사용할 수도 있습니다. 자세한 정보는 작업자 노드 빈 디렉토리에 이미지 저장 을 참조하십시오.
요구사항을 충족하는 IBM Cloud Object Storage 인스턴스 작성
- IBM Cloud 콘솔에서 리소스 메뉴로 이동하여 스토리지 인스턴스를 나열하십시오.
- Object Storage 인스턴스를 식별하고 위치 열을 찾으십시오. 인스턴스가 IBM Cloud에서 작성된 경우 해당 위치는 글로벌로 나열됩니다.
- 요구사항을 충족하는 글로벌 인스턴스가 없는 경우에는 다음 단계를 수행하여 인스턴스를 작성하십시오.
- IBM Cloud Object Storage에서 인스턴스 작성을 클릭하십시오.
- 인프라 선택에서 IBM Cloud 옵션을 선택하십시오.
- 가격 플랜 및 서비스 이름을 선택하십시오.
- Satellite 구성요소가 저장되는 리소스 그룹을 선택하십시오.
- 작성을 클릭하십시오. 프로비저닝하는 데 몇 분 정도 걸릴 수 있다는 점에 유의하시기 바랍니다.
이미지 레지스트리에 사용할 버킷 작성
이미지 레지스트리를 설정할 때 사용할 버킷을 작성하십시오. 버킷은 지역 복원성으로 구성되어야 합니다. 버킷 작성에 대한 자세한 정보는 IBM Cloud Object Storage설정 을 참조하십시오.
- Object Storage 를 클릭하세요.
- 버킷 작성을 클릭하십시오.
- 버킷 사용자 정의옵션을 선택하십시오.
- 복원성에서 지역을 선택하십시오.
- 위치 드롭 다운 메뉴에서 위치가 관리되는 가장 가까운 지역을 선택하십시오. 예를 들어, 위치가
wdc(Washington, DC) 에서 관리되는 경우us-east지역을 선택하십시오. Satellite 위치가 관리되는 위치를 확인하려면 CLI에서ibmcloud sat location ls를 실행하십시오. - 스토리지 클래스에서 표준을 선택하십시오.
- 나머지 카테고리를 환경 설정에 맞게 구성하십시오.
- 버킷 작성을 클릭하십시오.
- 클러스터가 Object Storage 인스턴스와 통신할 수 있도록 하는 서비스 인증 정보를 작성하십시오.
- 탐색 분할창에서 서비스 신임 정보를 클릭한 후 새 신임 정보를 클릭하십시오.
- 새 자격증의 이름을 입력하세요.
- 드롭 다운 메뉴에서 작성자 역할을 선택하십시오.
- 고급 옵션을 클릭한 후 HMAC 신임 정보 포함옵션을 선택하십시오.
- 추가 를 클릭하십시오.
- 서비스 신임 정보 테이블에서 새 신임 정보를 펼치십시오.
access_key_id및secret_access_key_id에 유의하십시오. 이 신임 정보를 다른 사용자와 공유하지 마십시오. 저장할 예제 신임 정보입니다."cos_hmac_keys": { "access_key_id": "1111111a1111111a11aa1a111111111a11aa1a111a11a1a1", "secret_access_key": "222222b222222b22bb2b22222222b22bb2b222b22b2b2" }
COS 서비스 인증 정보를 포함하는 시크릿 작성
CLI에서 작성하고 저장한 서비스 인증 정보를 사용하여 시크릿을 작성하십시오.
- 계정에 로그인하십시오. If applicable, target the appropriate resource group. 클러스터에 대한 컨텍스트를 설정하십시오.
- 시크릿을 작성하십시오.
oc create secret generic image-registry-private-configuration-user --from-literal=REGISTRY_STORAGE_S3_ACCESSKEY=<access_key_id> --from-literal=REGISTRY_STORAGE_S3_SECRETKEY=<secret_access_key> --namespace openshift-image-registry
Red Hat OpenShift 레지스트리 연산자 CRD 업데이트
- Red Hat OpenShift 등록 연산자의 관리 상태를 변경하십시오.
oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"managementState":"Managed"}}' - Object Storage 버킷에 이미지를 저장하도록 구성 스토리지 속성을 편집하십시오.
- Satellite 위치의 지역 링크 엔드포인트를 찾아 저장하십시오. 출력에서 엔드포인트는 주소 컬럼 아래에 나열됩니다.
출력 예ibmcloud sat endpoint ls --location <location_name> | grep satellite-cosRegionalID Name Destination Type Address cavvku1p1h1gcfgk1kn1_uwokw satellite-cosRegional-cavvku1p1h1gcfgk1kn1 cloud TLS i11aa11a1a1a11a11-1a11a1aaa1a1a1a1a-c000.us-east.satellite.appdomian.cloud:11111 - CLI에서 파일 편집기를 여십시오.
oc edit configs.imageregistry.operator.openshift.io/cluster - 편집할 다음 섹션을 찾으십시오.
storage: emptyDir: {} managementState: Managed storageManaged: true emptyDir: {}를 버킷 정보 및 위치 엔드포인트로 대체하십시오.버킷 및 위치 정보를 추가한 후의 예제 섹션입니다.s3: bucket: <bucket_name> region: <bucket_region> regionEndpoint: <location_link_endpoint> virtualHostedStyle: falsestorage: managementState: Managed s3: bucket: my_bucket region: us-east regionEndpoint: https://i11aa11a1a1a11a11-1a11a1aaa1a1a1a1a-c000.us-east.satellite.appdomian.cloud:11111 virtualHostedStyle: false storageManaged: true- 변경을 저장하고 적용하십시오.
- Satellite 위치의 지역 링크 엔드포인트를 찾아 저장하십시오. 출력에서 엔드포인트는 주소 컬럼 아래에 나열됩니다.
변경사항 확인
openshift-image-registry 네임스페이스에서 image-registry- 로 시작하는 팟 (Pod) 을 확인하여 이미지 레지스트리가 구성되었는지 확인하십시오.
-
다음 명령을 실행하십시오.
oc get pod -n openshift-image-registry -
출력을 검토하고 레지스트리 팟 (Pod) 이
Running인지 확인하십시오.출력 예
NAME READY STATUS RESTARTS AGE image-registry-63p54b8add-vkjju 1/1 Running 0 16m