이 페이지에서는 프로덕션 워크로드에 AlloyDB Omni를 사용할 때의 일반적인 설정을 보여줍니다.
단일 서버
대용량 페이지 사용 설정
AlloyDB Omni는 PostgreSQL과 마찬가지로 대용량 페이지 사용을 지원합니다. 이렇게 하려면 머신에 대규모 페이지가 사용 설정되어 있어야 하며 데이터베이스 설정 huge_pages
도 사용 설정해야 합니다.
제공된 스크립트를 실행하여 머신에서 대용량 페이지를 사용 설정합니다.
docker run --rm --privileged google/alloydbomni setup-host
postgresql.conf
에 다음 줄을 추가하여 대용량 페이지를 사용 설정합니다.huge_pages=on
전환 사용 설정
운영체제에서 스왑을 사용하면 비활성 메모리 페이지를 랜덤 액세스 메모리 (RAM)와 하드 디스크 간에 이동하여 활성 프로세스를 위한 RAM 공간을 확보함으로써 사용 가능한 실제 메모리를 확장할 수 있습니다. AlloyDB Omni은 부하가 높고 추가 메모리가 필요한 경우 스왑을 사용합니다.
시스템에서 사용 설정된 스왑 공간의 양을 확인하려면 다음을 실행합니다.
cat /proc/meminfo | grep SwapTotal
결과는 다음과 유사합니다.
SwapTotal: 165748732 kB
출력 값이 0
인 경우 운영체제에서 스왑을 사용 설정하려면 다음을 참고하세요.
코어 덤프 사용 설정
AlloyDB Omni에 복구 불가능한 오류가 발생하여 비정상 종료되는 경우 분석을 위해 코어 덤프를 보관하는 것이 좋습니다. 코어 덤프는 비정상 종료 시점의 AlloyDB Omni 프로세스 메모리의 스냅샷입니다.
코어 덤프를 설정하려면 다음과 같이 kernel.core_pattern
를 설정합니다.
sysctl
명령어를 사용하여 런타임 커널 매개변수를 구성합니다.kernel.core_pattern
를 즉시 설정하려면 다음을 사용합니다.posix-terminal sysctl -w kernel.core_pattern="CORE_PATTERN"
CORE_PATTERN
를 '%e-%t.core'와 같은 핵심 파일 이름 패턴으로 바꿉니다. 핵심 파일 이름 패턴에 관한 자세한 내용은 프로세스 핵심 파일 이름을 설정하는 방법을 참고하세요. systemd-coredump 핸들러를 사용하면 coredump 설정을 추가로 구성할 수 있습니다. 이 도구는 기본적으로 RHEL에 설치되어 있습니다. Debian 및 Ubuntu 시스템에서sudo apt install coredumpctl
를 실행하여 도구를 설치합니다. AlloyDB Omni를 시작할 때docker run
명령어에--ulimit=core:-1:-1
인수를 전달해야 합니다.posix-terminal docker run --name CONTAINER_NAME \ -e POSTGRES_PASSWORD=NEW_PASSWORD \ --ulimit=core:-1:-1 \ -p HOST_PORT:5432 -d google/alloydbomni
다음을 바꿉니다.
CONTAINER_NAME
: 새 AlloyDB Omni 컨테이너의 이름입니다(예:my-omni-1
).<code>NEW_PASSWORD
: 새 컨테이너의postgres
사용자 생성 후 할당된 비밀번호입니다.
작업을 자동으로 실행하도록 systemd 단위 설정
전용 서버에서 AlloyDB Omni를 실행하는 경우 서버가 부팅될 때 자동으로 시작되도록 특정 작업을 구성하는 것이 좋습니다. 이를 수행하는 한 가지 방법은 systemd
단위를 사용하는 것입니다.
예를 들어 다음 단계에서는 서버가 부팅될 때마다 대용량 페이지가 자동으로 사용 설정되도록 systemd
를 구성합니다.
/etc/systemd/system/alloydb-setup-env.service
에 파일을 만듭니다.[Unit] Description=Setup huge pages for AlloyDB Omni [Service] Type=oneshot ExecStart=/usr/bin/docker run --rm --privileged google/alloydbomni setup-host [Install] WantedBy=multi-user.target
다음과 같이 서비스를 사용 설정합니다.
sudo systemctl enable alloydb-setup-env.service