Azure Arc 지원 PostgreSQL 서버에서 PostgreSQL 확장 사용

PostgreSQL는 확장과 함께 사용할 때 가장 효율적입니다.

참고 항목

미리 보기 기능으로, 이 문서에 제시된 기술에는 Microsoft Azure 미리 보기에 대한 보충 사용 약관이 적용됩니다.

최신 업데이트는 릴리스 정보에서 확인할 수 있습니다.

지원되는 확장

다음 확장은 기본적으로 Azure Arc 지원 PostgreSQL 서버의 컨테이너에 배포되며, 그 중 일부는 표준 contrib 확장입니다.

  • address_standardizer_data_us 3.3.1
  • adminpack 2.1
  • amcheck 1.3
  • autoinc 1
  • bloom 1
  • btree_gin 1.3
  • btree_gist 1.6
  • citext 1.6
  • cube 1.5
  • dblink 1.2
  • dict_int 1
  • dict_xsyn 1
  • earthdistance 1.1
  • file_fdw 1
  • fuzzystrmatch 1.1
  • hstore 1.8
  • hypopg 1.3.1
  • insert_username 1
  • intagg 1.1
  • intarray 1.5
  • isn 1.2
  • lo 1.1
  • ltree 1.2
  • moddatetime 1
  • old_snapshot 1
  • orafce 4
  • pageinspect 1.9
  • pg_buffercache 1.3
  • pg_cron 1.4-1
  • pg_freespacemap 1.2
  • pg_partman 4.7.1
  • pg_prewarm 1.2
  • pg_repack 1.4.8
  • pg_stat_statements 1.9
  • pg_surgery 1
  • pg_trgm 1.6
  • pg_visibility 1.2
  • pgaudit 1.7
  • pgcrypto 1.3
  • pglogical 2.4.2
  • pglogical_origin 1.0.0
  • pgrouting 3.4.1
  • pgrowlocks 1.2
  • pgstattuple 1.5
  • plpgsql 1
  • postgis 3.3.1
  • postgis_raster 3.3.1
  • postgis_tiger_geocoder 3.3.1
  • postgis_topology 3.3.1
  • postgres_fdw 1.1
  • refint 1
  • seg 1.4
  • sslinfo 1.2
  • tablefunc 1
  • tcn 1
  • timescaledb 2.8.1
  • tsm_system_rows 1
  • tsm_system_time 1
  • unaccent 1.1

이 목록에 대한 업데이트는 시간이 지남에 따라 진화함에 따라 게시됩니다.

Arc 지원 PostgreSQL 서버에서 확장 사용

create 명령의 --extensions 매개 변수에 쉼표로 구분된 확장 목록을 전달하여 지원되는 확장을 사용하도록 설정된 Arc 지원 PostgreSQL 서버를 만들 수 있습니다.

az postgres server-arc create -n <name> --k8s-namespace <namespace> --extensions "pgaudit,pg_partman" --use-k8s

참고: 사용하도록 설정된 확장이 구성 shared_preload_libraries에 추가됩니다. 확장을 사용하려면 먼저 데이터베이스에 설치해야 합니다. 특정 확장을 설치하려면 CREATE EXTENSION 명령을 실행해야 합니다. 이 명령은 패키지 개체를 데이터베이스에 로드합니다.

예를 들어 데이터베이스에 연결하고 다음 PostgreSQL 명령을 실행하여 pgaudit 확장을 설치합니다.

CREATE EXTENSION pgaudit;

확장 업데이트

기존 Arc 지원 PostgreSQL 서버에서 확장을 추가하거나 제거할 수 있습니다.

kubectl describe 명령을 실행하여 사용하도록 설정된 확장의 현재 목록을 가져올 수 있습니다.

kubectl describe postgresqls <server-name> -n <namespace>

사용하도록 설정된 확장이 있는 경우 출력에는 다음과 같은 섹션이 포함됩니다.

  config:
    postgreSqlExtensions: pgaudit,pg_partman

다음 PostgreSQL 명령을 실행하여 데이터베이스에 연결한 후 확장이 설치되어 있는지 확인합니다.

select * from pg_extension;

새 확장을 기존 목록에 추가하여 사용하도록 설정하거나 기존 목록에서 확장을 제거하여 확장을 제거합니다. 원하는 목록을 update 명령에 전달합니다. 예를 들어 위의 예제에서 pgcrypto를 추가하고 서버에서 pg_partman을 제거하려면 다음을 수행합니다.

az postgres server-arc update -n <name> --k8s-namespace <namespace> --extensions "pgaudit,pgrypto" --use-k8s

허용된 확장 목록이 업데이트되면 다음 명령을 사용하여 데이터베이스에 연결하고 새로 추가된 확장을 설치합니다.

CREATE EXTENSION pgcrypto;

마찬가지로 기존 데이터베이스에서 확장을 제거하려면 DROP EXTENSION 명령을 실행합니다.

DROP EXTENSION pg_partman;

설치된 확장 목록 표시

선택한 클라이언트 도구를 사용하여 데이터베이스에 연결하고 표준 PostgreSQL 쿼리를 실행합니다.

select * from pg_extension;
  • 사용해 보세요! AKS(Azure Kubernetes Service), AWS EKS(Elastic Kubernetes Service), GKE(Google Cloud Kubernetes Engine) 또는 Azure VM에서 Azure Arc Jumpstart를 사용하여 빠르게 시작하세요.