부록 D. Red Hat Virtualization Manager에서 사용할 원격 PostgreSQL 데이터 베이스 준비

옵션으로 PostgreSQL 데이터베이스를 원격 Red Hat Enterprise Linux 7 시스템에 설정해서 Manager 데이터베이스로 사용합니다. 기본값으로 Red Hat Virtualization Manager의 engine-setup 설정 스크립트를 사용해서 Manager 데이터베이스를 Manager 시스템에 로컬로 생성하고 설정합니다. 자동 데이터베이스 설정 방법은 3.3절. “Red Hat Virtualization Manager 설정”을 참조하십시오. Manager 시스템에 사용자 지정 값을 가진 Manager 데이터베이스를 설정하는 방법은 부록 E. Red Hat Virtualization Manager에서 사용할 수동 설정 PostgreSQL 데이터 베이스 준비를 참조하십시오.
다음의 절차를 통해 Manager가 설치된 시스템이 아닌 다른 시스템에 데이터베이스를 설정합니다. engine-setup 시 데이터베이스 인증 정보를 입력해야 하므로 Manager 설정 전에 우선 해당 데이터베이스를 설정합니다.

참고

engine-setupengine-backup --mode=restore 명령은 시스템 로캘(locale)이 다른 경우에도 en_US.UTF8 로캘에서만 시스템 오류 메시지를 지원합니다.
postgresql.conf 파일의 로캘 설정이 en_US.UTF8로 설정되어야 합니다.

중요

데이터베이스 이름은 숫자, 밑줄, 그리고 소문자만 포함할 수 있습니다.

절차 D.1. Red Hat Virtualization Manager에서 사용할 원격 PostgreSQL 데이터 베이스 준비

  1. PostgreSQL 서버 패키지를 설치합니다:
    # yum install postgresql-server
  2. PostgreSQL 데이터베이스를 초기화하고 postgresql 서비스를 시작합니다. 해당 서비스가 부팅 시 시작되는지 확인합니다:
    # su -l postgres -c "/usr/bin/initdb --locale=en_US.UTF8 --auth='ident' --pgdata=/var/lib/pgsql/data/"
    # service postgresql start
    # chkconfig postgresql on
  3. postgres 사용자로 psql 명령행 인터페이스에 연결합니다:
    # su - postgres
    $ psql
  4. Manager가 데이터베이스에서 읽기/쓰기 시 사용할 사용자를 생성합니다. Manager의 기본 사용자 이름은 engine입니다:
    postgres=# create role user_name with login encrypted password 'password';
  5. Red Hat Virtualization 환경에 대한 데이터를 저장할 데이터베이스를 생성합니다. Manager의 기본 데이터베이스 이름은 engine입니다:
    postgres=# create database database_name owner user_name template template0 encoding 'UTF8' lc_collate 'en_US.UTF-8' lc_ctype 'en_US.UTF-8';
  6. 새로운 데이터베이스에 연결하고 plpgsql 언어를 추가합니다:
    postgres=# \c database_name
    database_name=# CREATE LANGUAGE plpgsql;
  7. md5 클라이언트 인증을 활성화하여 원격으로 데이터베이스에 액세스할 수 있습니다. /var/lib/pgsql/data/pg_hba.conf 파일을 편집하고 다음 행을 파일 아래에 있는 local로 시작하는 행 바로 아래에 추가합니다. 여기서 X.X.X.X는 Manager의 IP 주소로 변경합니다:
    host    database_name    user_name    X.X.X.X/32   md5
  8. 데이터베이스에 TCP/IP 연결을 허용합니다. /var/lib/pgsql/data/postgresql.conf 파일을 편집하고 다음 행을 추가합니다:
    listen_addresses='*'
    위의 예시에서는 모든 인터페이스에서의 연결을 수신하도록 postgresql 서비스를 설정하고 있습니다. IP 주소로 인터페이스를 지정할 수 있습니다.
  9. PostgreSQL 데이터베이스 연결에 사용할 기본 포트를 열고 업데이트된 방화벽 규칙을 저장합니다:
    # iptables -I INPUT 5 -p tcp --dport 5432 -j ACCEPT
    # service iptables save
  10. postgresql 서비스를 다시 시작합니다:
    # service postgresql restart
옵션으로 http://www.postgresql.org/docs/8.4/static/ssl-tcp.html#SSL-FILE-USAGE에 있는 지시 사항에 따라 데이터 베이스 보안 연결을 위해 SSL을 설정합니다.