리눅스에서 도커를 이용하여 postgresql 서버 2대를 구성하여 고가용서 ha 를 구성한다.
도커 허브에 접속하여 centos-8 stream을 다운받아서 서버2대를 구성하고 테스트
https://hub.docker.com/r/twistedbytes/centos8-stream/tags
/* 도커 허브에서 이미지를 다운 받는다 */
poman pull twistedbytes/centos8-stream:latest
맨밑에 docker.id 선택하여 이미지 다운 받는다.
/* 도커 이미지 확인 */
podman images
/* 네트워크 생성 */
podman network create --subnet 192.168.0.0/24 --gateway 192.168.0.1 net-postgresql
/* 생성된 네트워크 확인 */
디폴트 네트워크 podman이 있고 방금 생성한 net-postgresql 그룹이 생겼다.
동일한 네트워크 그룹끼리 통신 가능한 컨테이너 그룹 255개를 만들수 있다
호스트 컴퓨터에서는 포트 포워딩 NAT 통신 개념이라 생각하고 포트와 내부 DOCKER 컨테이너와 통신한다.
/* podman(docker) alias 매핑 되어 있어서 docker이라고 해도 정상작동 도커컨테이너 생성 */
podman run --privileged --restart="always" -d --net net-postgresql --hostname master --ip 192.168.0.2 -p 5432:5432 --name master docker.io/twistedbytes/centos8-stream:latest /sbin/init
/* 생성된 컨테이너 확인 */
podman ps -a
/* 생성된 컨테이너 접속 */
podman exec -it master bash
/* postgresql 패키지 설치 */
https://www.postgresql.org/download/linux/redhat/
dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
dnf -qy module disable postgresql
dnf install -y postgresql15-server
/usr/pgsql-15/bin/postgresql-15-setup initdb
systemctl enable postgresql-15
systemctl start postgresql-15
/* postgresql 접속 확인 */
su - postgres
psql
/* 사용자 계정 확인 */
\du
/* 패스워드 변경 */
postgres=# alter user postgres with password 'postgres';
ALTER ROLE
postgres=#
/* 확장팩 확인 */
select * from pg_catalog.pg_available_extensions;
/* 확장팩이 기본 한개만 설치 되어 있다. 필요한 암호화 기능이나 배치스케출 같을 기능이 필요하면 확장팩을 설치 해야 한다. */
/* 확장팩 설치 */
sudo dnf install postgresql15-contrib.x86_64
/* 확장팰 설치 확인 */
/* pgpool-II 4.4.2 설치 */
/* root 계정에서 설치 */
https://www.pgpool.net/docs/44/en/html/install-rpm.html
dnf install https://www.pgpool.net/yum/rpms/4.4/redhat/rhel-8-x86_64/pgpool-II-release-4.4-1.noarch.rpm
dnf install pgpool-II-pg15
dnf install pgpool-II-pg15-debuginfo
dnf install pgpool-II-pg15-devel
dnf install pgpool-II-pg15-extensions
에러가 발생 환경설정이 안되어 있어서 발생한것 무시하고 환경설정 셋팅
'데이터베이스 > Postgresql' 카테고리의 다른 글
postgis 확장모듈 소스 컴파일 설치 (0) | 2023.02.05 |
---|---|
[PostgreSql] 오라클 INSTR = POSITION (0) | 2022.06.30 |
[PostgreSql] 오라클 WM_CONCAT와 같은 기능 (0) | 2022.06.30 |
[PostgreSql] 특정문자를 짤라서 컬럼으로 변경 (0) | 2022.06.30 |
[PostgreSql] pg_cron job schedule 등록방법 (0) | 2022.06.29 |
댓글