검색

30장. postgresql RHEL 시스템 역할을 사용하여 PostgreSQL 설치 및 구성

download PDF

시스템 관리자는 postgresql RHEL 시스템 역할을 사용하여 PostgreSQL 서버의 성능을 설치, 구성, 관리, 시작 및 개선할 수 있습니다.

30.1. postgresql 역할 변수

postgresql RHEL 시스템 역할의 다음 변수를 사용하여 PostgreSQL 서버 동작을 사용자 지정할 수 있습니다.

postgresql_verison

PostgreSQL 서버의 버전을 RHEL 8 및 RHEL 9 관리형 노드에서 릴리스되고 지원되는 PostgreSQL 버전으로 설정할 수 있습니다. 예를 들면 다음과 같습니다.

postgresql_version: "13"
postgresql_password

선택적으로 postgres 데이터베이스 슈퍼유저의 암호를 설정할 수 있습니다. 기본적으로 암호가 설정되지 않으며 UNIX 소켓을 통해 postgres 시스템 계정에서 데이터베이스에 액세스할 수 있습니다. Ansible Vault를 사용하여 암호를 암호화하는 것이 좋습니다. 예를 들면 다음과 같습니다.

postgresql_password: !vault |
      	$ANSIBLE_VAULT;1.2;AES256;dev
      	....
postgresql_pg_hba_conf

postgresql_pg_hba_conf 변수의 내용은 /var/lib/pgsql/data/pg_hba.conf 파일의 기본 업스트림 구성을 대체합니다. 예를 들면 다음과 같습니다.

postgresql_pg_hba_conf:
  - type: local
    database: all
    user: all
    auth_method: peer
  - type: host
    database: all
    user: all
    address: '127.0.0.1/32'
    auth_method: ident
  - type: host
    database: all
    user: all
    address: '::1/128'
    auth_method: ident
postgresql_server_conf

postgresql_server_conf 변수의 콘텐츠는 /var/lib/pgsql/data/postgresql.conf 파일의 끝에 추가됩니다. 결과적으로 기본 설정을 덮어씁니다. 예를 들면 다음과 같습니다.

postgresql_server_conf:
  ssl: on
  shared_buffers: 128MB
  huge_pages: try
postgresql_ssl_enable

SSL/TLS 연결을 설정하려면 postgresql_ssl_enable 변수를 true 로 설정합니다.

postgresql_ssl_enable: true

또한 다음 방법 중 하나를 사용하여 서버 인증서와 개인 키를 제공합니다.

  • 기존 인증서 및 개인 키를 사용하려면 postgresql_cert_name 변수를 사용합니다.
  • postgresql_certificates 변수를 사용하여 새 인증서를 생성합니다.
postgresql_cert_name

자체 인증서 및 개인 키를 사용하려면 postgresql_cert_name 변수를 사용하여 인증서 이름을 지정합니다. 인증서와 키 파일을 동일한 디렉터리에 보관하고 .crt.key 접미사와 동일한 이름 아래에 보관해야 합니다.

예를 들어 인증서 파일이 /etc/certs/server.crt 에 있고 /etc/certs/server.key 의 개인 키에 있는 경우 postgresql_cert_name 값을 다음과 같이 설정합니다.

postgresql_cert_name: /etc/certs/server
postgresql_certificates

postgresql_certificates 변수에는 redhat.rhel_system_roles.certificate 역할에서 사용하는 것과 동일한 형식의 dict 목록이 필요합니다. 인증서 역할이 PostgreSQL 역할로 구성된 PostgreSQL 서버의 인증서를 생성하도록 하려면 postgresql_certificates 변수를 지정합니다. 다음 예에서는 /etc/pki/tls/certs/ 디렉터리에 자체 서명된 인증서 postgresql_cert.crt 가 생성됩니다. 기본적으로 인증서가 자동으로 생성되지 않습니다([]).

postgresql_certificates:
  - name: postgresql_cert
    dns: ['localhost', 'www.example.com']
    ca: self-sign
postgresql_input_file

SQL 스크립트를 실행하려면 postgresql_input_file 변수를 사용하여 SQL 파일의 경로를 정의합니다.

postgresql_input_file: "/tmp/mypath/file.sql"
postgresql_server_tuning

기본적으로 PostgreSQL 시스템 역할은 시스템 리소스를 기반으로 서버 설정 최적화를 활성화합니다. 튜닝을 비활성화하려면 postgresql_server_tuning 변수를 false 로 설정합니다.

postgresql_server_tuning: false

추가 리소스

  • /usr/share/ansible/roles/rhel-system-roles.postgresql/README.md 파일
  • /usr/share/doc/rhel-system-roles/postgresql/ 디렉터리
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.