연결 엔드포인트 가져오기 및 Azure Arc 지원 PostgreSQL 서버에 대한 연결 문자열 만들기
이 문서에서는 서버 그룹에 대한 연결 엔드포인트를 검색하는 방법과 애플리케이션 및/또는 도구에서 사용할 수 있는 연결 문자열을 구성하는 방법을 설명합니다.
[!INCLUDE [azure-arc-data-preview](./includes/azure-arc-data-preview.md]
연결 엔드포인트를 가져옵니다.
다음 명령을 실행합니다.
az postgres server-arc endpoint list -n <server name> --k8s-namespace <namespace> --use-k8s
예시:
az postgres server-arc endpoint list -n postgres01 --k8s-namespace arc --use-k8s
PostgreSQL 엔드포인트, 로그 검색 대시보드(Kibana) 및 메트릭 대시보드(Grafana)의 엔드포인트 목록을 반환합니다. 예시:
{
"instances": [
{
"endpoints": [
{
"description": "PostgreSQL Instance",
"endpoint": "postgresql://postgres:<replace with password>@12.345.567.89:5432"
},
{
"description": "Log Search Dashboard",
"endpoint": "https://23.456.78.99:5601/app/kibana#/discover?_a=(query:(language:kuery,query:'custom_resource_name:postgres01'))"
},
{
"description": "Metrics Dashboard",
"endpoint": "https://34.567.890.12:3000/d/postgres-metrics?var-Namespace=arc&var-Name=postgres01"
}
],
"engine": "PostgreSql",
"name": "postgres01"
}
],
"namespace": "arc"
}
엔드포인트를 사용하여 다음을 수행합니다.
- 연결 문자열을 구성하고 클라이언트 도구 또는 애플리케이션에 연결합니다.
- 브라우저에서 Grafana 및 Kibana 대시보드 액세스합니다.
예를 들어, PostgreSQL 인스턴스라는 엔드포인트를 사용하여 psql로 서버 그룹에 연결할 수 있습니다.
psql postgresql://postgres:MyPassworkd@12.345.567.89:5432
psql (10.14 (Ubuntu 10.14-0ubuntu0.18.04.1), server 12.4 (Ubuntu 12.4-1.pgdg16.04+1))
WARNING: psql major version 10, server major version 12.
Some psql features might not work.
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
Type "help" for help.
postgres=#
참고 항목
- ‘PostgreSQL 인스턴스’라는 엔드포인트에 표시된 postgres 사용자의 암호는 서버 그룹을 배포할 때 선택한 암호입니다.
kubectl을 사용하는 CLI에서
kubectl get postgresqls/<server name> -n <namespace name>
예시:
kubectl get postgresqls/postgres01 -n arc
이러한 명령은 아래와 같은 출력을 생성합니다. 해당 정보를 사용하여 연결 문자열을 구성할 수 있습니다.
NAME STATE READY-PODS PRIMARY-ENDPOINT AGE
postgres01 Ready 3/3 12.345.567.89:5432 9d
연결 문자열 구성
서버 그룹에 대해 아래의 연결 문자열 예제를 사용합니다. 필요에 따라 복사하고, 붙여넣고, 사용자 지정합니다.
Important
SSL은 클라이언트 연결에 필요합니다. 연결 문자열에서 SSL 모드 매개 변수를 사용하지 않도록 설정하면 안 됩니다. 자세한 내용은 https://www.postgresql.org/docs/14/runtime-config-connection.html을 검토하세요.
ADO.NET
Server=192.168.1.121;Database=postgres;Port=24276;User Id=postgres;Password={your_password_here};Ssl Mode=Require;`
C++(libpq)
host=192.168.1.121 port=24276 dbname=postgres user=postgres password={your_password_here} sslmode=require
JDBC
jdbc:postgresql://192.168.1.121:24276/postgres?user=postgres&password={your_password_here}&sslmode=require
Node.js
host=192.168.1.121 port=24276 dbname=postgres user=postgres password={your_password_here} sslmode=require
PHP
host=192.168.1.121 port=24276 dbname=postgres user=postgres password={your_password_here} sslmode=require
psql
psql "host=192.168.1.121 port=24276 dbname=postgres user=postgres password={your_password_here} sslmode=require"
Python
dbname='postgres' user='postgres' host='192.168.1.121' password='{your_password_here}' port='24276' sslmode='true'
Ruby
host=192.168.1.121; dbname=postgres user=postgres password={your_password_here} port=24276 sslmode=require
관련 콘텐츠
- 서버 그룹 스케일링 아웃 또는 스케일링 다운(메모리/vCore 늘리기/줄이기)에 관해 읽어보기