8.5. AWS S3 CloudFront
백엔드 레지스트리 스토리지에 AWS S3 CloudFront를 사용하는 경우 다음 예와 같이 개인 키를 지정합니다.
$ oc create secret generic --from-file config.yaml=./config_awss3cloudfront.yaml --from-file default-cloudfront-signing-key.pem=./default-cloudfront-signing-key.pem test-config-bundle
8.5.1. 고급 Clair 구성 링크 복사링크가 클립보드에 복사되었습니다!
8.5.1.1. 관리되지 않는 Clair 구성 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Quay 3.7을 사용하면 Red Hat Quay OpenShift Container Platform Operator에서 관리되지 않는 Clair 구성을 실행할 수 있습니다. 이 기능을 사용하면 관리되지 않는 Clair 데이터베이스를 생성하거나 관리되지 않는 데이터베이스 없이 사용자 지정 Clair 구성을 실행할 수 있습니다.
8.5.1.1.1. Clair 데이터베이스 관리 해제 링크 복사링크가 클립보드에 복사되었습니다!
관리되지 않는 Clair 데이터베이스를 사용하면 Red Hat Quay Operator가 지역 복제 환경에서 작업할 수 있습니다. 여기서 Operator의 여러 인스턴스가 동일한 데이터베이스와 통신해야 합니다. 관리되지 않는 Clair 데이터베이스는 사용자에게 클러스터 외부에 존재하는 HA(고가용성) Clair 데이터베이스가 필요한 경우에도 사용할 수 있습니다.
절차
Quay Operator에서 QuayRegistry 사용자 정의 리소스의
clairpostgres구성 요소를 Unmanaged로 설정합니다.apiVersion: quay.redhat.com/v1 kind: QuayRegistry metadata: name: quay370 spec: configBundleSecret: config-bundle-secret components: - kind: objectstorage managed: false - kind: route managed: true - kind: tls managed: false - kind: clairpostgres managed: false
8.5.1.1.2. 사용자 정의 Clair 데이터베이스 구성 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform용 Red Hat Quay Operator를 사용하면 configBundleSecret 매개변수를 편집하여 자체 Clair 구성을 제공할 수 있습니다.
절차
clair-config.yaml을 포함하는 Quay 구성 번들 시크릿을 생성합니다.$ oc create secret generic --from-file config.yaml=./config.yaml --from-file extra_ca_cert_rds-ca-2019-root.pem=./rds-ca-2019-root.pem --from-file clair-config.yaml=./clair-config.yaml --from-file ssl.cert=./ssl.cert --from-file ssl.key=./ssl.key config-bundle-secretclair-config.yaml설정 예:indexer: connstring: host=quay-server.example.com port=5432 dbname=quay user=quayrdsdb password=quayrdsdb sslrootcert=/run/certs/rds-ca-2019-root.pem sslmode=verify-ca layer_scan_concurrency: 6 migrations: true scanlock_retry: 11 log_level: debug matcher: connstring: host=quay-server.example.com port=5432 dbname=quay user=quayrdsdb password=quayrdsdb sslrootcert=/run/certs/rds-ca-2019-root.pem sslmode=verify-ca migrations: true metrics: name: prometheus notifier: connstring: host=quay-server.example.com port=5432 dbname=quay user=quayrdsdb password=quayrdsdb sslrootcert=/run/certs/rds-ca-2019-root.pem sslmode=verify-ca migrations: true참고-
데이터베이스 인증서는
clair-config.yaml의 Clair 애플리케이션 Pod의/run/certs/rds-ca-2019-root.pem에 마운트됩니다.clair-config.yaml을 구성할 때 지정해야 합니다. -
clair-config.yaml의 예는 OpenShift 구성의 Clair에서 확인할 수 있습니다.
-
데이터베이스 인증서는
configBundleSecret이라는 번들 보안에clair-config.yaml을 추가합니다.apiVersion: v1 kind: Secret metadata: name: config-bundle-secret namespace: quay-enterprise data: config.yaml: <base64 encoded Quay config> clair-config.yaml: <base64 encoded Clair config> extra_ca_cert_<name>: <base64 encoded ca cert> clair-ssl.crt: >- clair-ssl.key: >-참고업데이트되면 제공된
clair-config.yaml이 Clair 포드에 마운트됩니다. 제공되지 않는 모든 필드는 Clair 구성 모듈을 사용하여 기본값으로 자동으로 채워집니다.
올바르게 구성된 후 Clair 애플리케이션 Pod는 Ready 상태로 돌아갑니다.
8.5.1.2. 관리 데이터베이스를 사용하여 사용자 정의 Clair 구성 실행 링크 복사링크가 클립보드에 복사되었습니다!
경우에 따라 사용자가 관리 데이터베이스를 사용하여 사용자 지정 Clair 구성을 실행하려고 할 수 있습니다. 이는 다음 시나리오에서 유용합니다.
- 사용자가 업데이트를 비활성화하려는 경우
사용자가 Air-gapped 환경에서 실행되는 경우
참고-
Air-gapped 환경에서 Quay를 실행하는 경우
clair-config.yaml의airgap매개변수를true로 설정해야 합니다. - Air-gapped 환경에서 Quay를 실행하는 경우 모든 업데이트자를 비활성화해야 합니다.
-
Air-gapped 환경에서 Quay를 실행하는 경우
clairpostgres 가 관리로 설정된 경우 "사용자 지정 Clair 데이터베이스 구성"의 단계를 사용하여 데이터베이스를 구성합니다.
Air-gapped 환경에서 Clair를 실행하는 방법에 대한 자세한 내용은 Air-gapped OpenShift 클러스터의 Clair 데이터베이스에 대한 액세스 구성을 참조하십시오.