6장. 데이터베이스 구성


6.1. 기존 PostgreSQL 데이터베이스 사용

외부 관리형 PostgreSQL 데이터베이스를 사용하는 경우 성공적인 배포를 위해 pg_trgm 확장을 수동으로 활성화해야 합니다.

중요

Red Hat Quay 및 Clair 배포 모두에 대해 외부적으로 관리되는 PostgreSQL 데이터베이스를 사용해서는 안 됩니다. Red Hat Quay 또는 Clair와 같은 연결 집약적 워크로드(예: Red Hat Quay 또는 Clair)와 같은 PostgreSQL 측에서 자연 연결 제한이 소모될 수 있으므로 PostgreSQL 데이터베이스를 다른 워크로드와 공유해서는 안 됩니다. 또한 pgBouncer는 Red Hat Quay 또는 Clair에서 지원되지 않으므로 이 문제를 해결하는 옵션이 아닙니다.

기존 PostgreSQL 데이터베이스를 배포하려면 다음 절차를 사용하십시오.

프로세스

  1. 필요한 데이터베이스 필드를 사용하여 config.yaml 파일을 생성합니다. 예를 들면 다음과 같습니다.

    config.yaml 파일의 예:

    DB_URI: postgresql://test-quay-database:postgres@test-quay-database:5432/test-quay-database
    Copy to Clipboard Toggle word wrap

  2. 구성 파일을 사용하여 보안을 생성합니다.

    $ kubectl create secret generic --from-file config.yaml=./config.yaml config-bundle-secret
    Copy to Clipboard Toggle word wrap
  3. postgres 구성 요소를 관리되지 않음 으로 표시하고 생성된 Secret 을 참조하는 QuayRegistry.yaml 파일을 만듭니다. 예를 들면 다음과 같습니다.

    quayregistry.yaml 파일 예

    apiVersion: quay.redhat.com/v1
    kind: QuayRegistry
    metadata:
      name: example-registry
      namespace: quay-enterprise
    spec:
      configBundleSecret: config-bundle-secret
      components:
        - kind: postgres
          managed: false
    Copy to Clipboard Toggle word wrap

다음 단계

  • 다음 섹션을 계속 진행하여 레지스트리를 배포합니다.

6.1.1. 데이터베이스 구성 필드

이 섹션에서는 Red Hat Quay 배포에 사용할 수 있는 데이터베이스 구성 필드에 대해 설명합니다.

6.1.1.1. 데이터베이스 URI

Red Hat Quay에서 데이터베이스에 대한 연결은 필수 DB_URI 필드를 사용하여 구성됩니다.

다음 표에서는 DB_URI 구성 필드를 설명합니다.

Expand
표 6.1. 데이터베이스 URI
필드유형설명

DB_URI
(필수)

문자열

자격 증명을 포함하여 데이터베이스에 액세스하기 위한 URI입니다.

DB_URI 필드의 예:

postgresql://quayuser:quaypass@quay-server.example.com:5432/quay

데이터베이스 URI 예

# ...
DB_URI: postgresql://quayuser:quaypass@quay-server.example.com:5432/quay
# ...
Copy to Clipboard Toggle word wrap

6.1.1.2. 데이터베이스 연결 인수

선택적 연결 인수는 DB_CONNECTION_ARGS 매개변수를 통해 구성됩니다. DB_CONNECTION_ARGS 에서 정의된 일부 키-값 쌍은 일반적인 반면 다른 쌍은 데이터베이스별입니다.

Expand
표 6.2. 데이터베이스 연결 인수
필드유형설명

DB_CONNECTION_ARGS

개체

데이터베이스의 선택적 연결 인수(예: 시간 초과 및 SSL/TLS)입니다.

.autorollback

부울

스레드 로컬 연결을 사용할지 여부입니다.
항상 True 여야 합니다.

.threadlocals

부울

자동 롤백 연결을 사용할지 여부입니다.
항상 True 여야 합니다.

데이터베이스 연결 인수 예

# ...
DB_URI: postgresql://quayuser:quaypass@quay-server.example.com:5432/quay
DB_CONNECTION_ARGS:
  autorollback: true
  threadlocals: true
# ...
Copy to Clipboard Toggle word wrap

6.1.1.2.1. SSL/TLS 연결 인수

SSL/TLS를 사용하면 배포 중인 데이터베이스에 따라 구성이 달라집니다.

sslmode 옵션은 보안 SSL/TLS TCP/IP 연결이 서버와 협상될 우선순위를 결정합니다. 여섯 가지 모드가 있습니다.

Expand
표 6.3. sslmode 옵션
모드설명

sslmode

보안 SSL/TLS 또는 TCP/IP 연결이 서버와 협상되는지의 우선 순위를 결정합니다.

   *: disable

구성은 SSL/TLS 연결만 시도합니다.

   *: 허용

구성은 먼저 비 SSL/TLS 연결을 시도합니다. 실패하면 SSL/TLS 연결을 시도합니다.

*:
선호
(기본값)

구성은 먼저 SSL/TLS 연결을 시도합니다. 실패하면 SSL/TLS 연결을 시도합니다.

   *: require

구성은 SSL/TLS 연결만 시도합니다. 루트 CA 파일이 있는 경우 verify-ca가 지정된 것과 동일한 방식으로 인증서를 확인합니다.

   *: verify-ca

구성은 SSL/TLS 연결만 시도하며 신뢰할 수 있는 CA(인증 기관)에서 서버 인증서를 발급하는지 확인합니다.

   *: verify-full

SSL/TLS 연결만 시도한 후 서버 인증서가 신뢰할 수 있는 CA에서 발행되고 요청된 서버 호스트 이름이 인증서에서 해당 이름과 일치하는지 확인합니다.

PostgreSQL에 대한 유효한 인수에 대한 자세한 내용은 데이터베이스 연결 제어 함수 를 참조하십시오.

PostgreSQL SSL/TLS 구성

# ...
DB_CONNECTION_ARGS:
  sslmode: <value>
  sslrootcert: path/to/.postgresql/root.crt
# ...
Copy to Clipboard Toggle word wrap

6.1.2. 관리형 PostgreSQL 데이터베이스 사용

Red Hat Quay 3.9를 사용하면 Red Hat Quay Operator에서 데이터베이스를 관리하는 경우 Red Hat Quay 3.8 3.9에서 업데이트하면 PostgreSQL 10에서 PostgreSQL 13으로의 업그레이드를 자동으로 처리합니다.

중요
  • 관리형 데이터베이스가 있는 사용자는 PostgreSQL 데이터베이스를 10 13에서 업그레이드해야 합니다.
  • Operator에서 Red Hat Quay 및 Clair 데이터베이스를 관리하는 경우 3.9.0 업그레이드가 성공하려면 각 구성 요소의 데이터베이스 업그레이드가 성공해야 합니다. 데이터베이스 업그레이드 중 하나가 실패하면 전체 Red Hat Quay 버전 업그레이드가 실패합니다. 이 동작이 예상됩니다.

Red Hat Quay Operator가 PostgreSQL 배포를 PostgreSQL 10 13에서 업그레이드하지 않으려면 quayregistry.yaml 파일에서 PostgreSQL 매개변수를 managed: false 로 설정해야 합니다. 데이터베이스를 Unmanaged로 설정하는 방법에 대한 자세한 내용은 기존 Postgres 데이터베이스 사용을 참조하십시오.

중요
  • PostgreSQL 13으로 업그레이드하는 것이 좋습니다. PostgreSQL 10은 2022년 11월 10일에 최종 릴리스되었으며 더 이상 지원되지 않습니다. 자세한 내용은 PostgreSQL 버전 관리 정책을 참조하십시오.

PostgreSQL 데이터베이스가 RHEL(Red Hat Enterprise Linux) 시스템과 동일한 버전을 일치시키려면 RHEL 8용 RHEL 8 버전으로 마이그레이션 하거나 RHEL 9용 RHEL 9 버전의 PostgreSQL으로 마이그레이션 을 참조하십시오.

Red Hat Quay 3.8 3.9 절차에 대한 자세한 내용은 Red Hat Quay Operator 업그레이드 개요를 참조하십시오.

6.1.2.1. PostgreSQL 데이터베이스 권장 사항

Red Hat Quay 팀은 PostgreSQL 데이터베이스를 관리하기 위해 다음을 권장합니다.

  • 데이터베이스 백업은 PostgreSQL 이미지 또는 자체 백업 인프라에서 제공된 툴을 사용하여 정기적으로 수행해야 합니다. Red Hat Quay Operator는 현재 PostgreSQL 데이터베이스가 백업되었는지 확인하지 않습니다.
  • 백업에서 PostgreSQL 데이터베이스 복원은 PostgreSQL 툴 및 절차를 사용하여 수행해야 합니다. 데이터베이스 복원이 진행 중인 동안 Quay pod가 실행되지 않아야 합니다.
  • 데이터베이스 디스크 공간은 50GiB의 Red Hat Quay Operator에 의해 자동으로 할당됩니다. 이 수는 대부분의 소규모에서 중간 규모의 Red Hat Quay 설치에 사용 가능한 스토리지 양을 나타내지만 사용 사례에는 충분하지 않을 수 있습니다. 데이터베이스 볼륨 크기 조정은 현재 Red Hat Quay Operator에 의해 처리되지 않습니다.
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2026 Red Hat
맨 위로 이동