빠른 시작: Azure CLI를 사용하여 Azure Database for PostgreSQL - 유연한 서버 인스턴스 만들기

적용 대상: Azure Database for PostgreSQL - 유연한 서버

이 빠른 시작에서는 Azure Cloud Shell에서 Azure CLI 명령을 사용하여 5분 안에 Azure Database for PostgreSQL 유연한 서버 인스턴스를 만드는 방법을 보여 줍니다. Azure 구독이 없는 경우 시작하기 전에 체험 계정을 만듭니다.

Azure Cloud Shell 시작

Azure Cloud Shell은 이 문서의 단계를 실행하는 데 무료로 사용할 수 있는 대화형 셸입니다. 공용 Azure 도구가 사전 설치되어 계정에서 사용하도록 구성되어 있습니다.

Cloud Shell을 열려면 코드 블록의 오른쪽 위 모서리에 있는 사용해 보세요를 선택하기만 하면 됩니다. 또한 https://shell.azure.com/bash로 이동하여 별도의 브라우저 탭에서 Cloud Shell을 열 수도 있습니다. 복사를 선택하여 코드 블록을 복사하여 Cloud Shell에 붙여넣고, Enter를 선택하여 실행합니다.

CLI를 로컬로 설치하고 사용하려면 이 빠른 시작에서 Azure CLI 버전 2.0 이상이 필요합니다. az --version을 실행하여 버전을 찾습니다. 설치 또는 업그레이드해야 하는 경우 Azure CLI 설치를 참조하세요.

필수 조건

az login 명령을 사용하여 계정에 로그인해야 합니다. Azure 계정에 대한 구독 ID를 참조하는 id 속성을 기록해 둡니다.

az login

az account set 명령을 사용하여 계정에 속한 특정 구독을 선택합니다. 명령에서 subscription 인수 값으로 사용할 az login 출력의 id 값을 사용합니다. 구독이 여러 개인 경우 리소스가 과금되어야 할 적절한 구독을 선택합니다. 모든 구독을 가져오려면 az account list를 사용합니다.

az account set --subscription <subscription id>

유연한 서버 만들기

az group create 명령을 사용하여 Azure 리소스 그룹을 만든 다음, 이 리소스 그룹 내에 Azure Database for PostgreSQL 유연한 서버 인스턴스를 만듭니다. 고유한 이름을 제공해야 합니다. 다음 예제에서는 eastus 위치에 myresourcegroup이라는 리소스 그룹을 만듭니다.

az group create --name myresourcegroup --location eastus

az postgres flexible-server create 명령을 사용하여 Azure Database for PostgreSQL 유연한 서버 인스턴스를 만듭니다. 서버는 여러 데이터베이스를 포함할 수 있습니다. 다음 명령은 방금 만든 리소스 그룹에 서버를 만듭니다.

az postgres flexible-server create --name mydemoserver --resource-group myresourcegroup

기본 연결 방법은 퍼블릭 액세스(허용된 IP 주소)이므로 명령은 IP 주소 및/또는 모든 IP(0.0.0.0부터 255.255.255.255까지의 범위)를 허용된 주소 목록에 추가할지 확인하라는 메시지를 표시합니다.

생성된 서버에는 다음과 같은 특성이 있습니다.

  • 리소스 그룹과 동일한 위치
  • 자동 생성된 관리자 사용자 이름 및 관리자 암호(안전한 장소에 저장해야 함)
  • "flexibleserverdb"라는 기본 데이터베이스
  • 나머지 서버 구성에 대한 서비스 기본값: 컴퓨팅 계층(범용), 컴퓨팅 크기/SKU(Standard_D2s_v3 - 2 vCore, 8GB RAM), 백업 보존 기간(7일) 및 PostgreSQL 버전(13)

참고 항목

서버를 만든 후에는 연결 방법을 변경할 수 없습니다. 예를 들어, 만드는 동안 프라이빗 액세스(VNet 통합)를 선택한 경우 만든 후에 퍼블릭 액세스(허용된 IP 주소)로 변경할 수 없습니다. VNet 통합을 사용하여 서버에 안전하게 액세스하려면 프라이빗 액세스 권한이 있는 서버를 만드는 것이 좋습니다. 개념 문서에서 프라이빗 액세스에 대해 자세히 알아보세요.

기본값을 변경하려면 Azure CLI 참조 문서에서 az postgres flexible-server create를 참조하세요.

참고 항목

Azure Database for PostgreSQL 유연한 서버에 대한 연결은 포트 5432를 통해 통신합니다. 회사 네트워크 내에서 연결하려고 하면 5432 포트를 통한 아웃바운드 트래픽이 허용되지 않을 수 있습니다. 이 경우 IT 부서에서 5432포트를 열지 않으면 서버에 연결할 수 없습니다. Azure Database for PostgreSQL 유연한 서버의 인스턴스에서 PgBouncer를 사용하도록 설정하고 이를 통해 연결하려는 경우 이는 포트 6432에서 실행되기 때문에 IT 부서가 아웃바운드 트래픽을 위해 열어야 하는 포트가 이 포트입니다.

연결 정보 가져오기

서버에 연결하려면 호스트 정보와 액세스 자격 증명을 제공해야 합니다.

az postgres flexible-server show --name mydemoserver --resource-group myresourcegroup

결과는 JSON 형식입니다. fullyQualifiedDomainNameadministratorLogin을 기록해 둡니다. 이전 단계에서 암호를 저장했어야 합니다.

{
  "administratorLogin": "myadmin",
  "availabilityZone": "3",
  "backup": {
    "backupRetentionDays": 7,
    "earliestRestoreDate": "2022-10-20T18:03:50.989428+00:00",
    "geoRedundantBackup": "Disabled"
  },
  "earliestRestoreDate": null,
  "fullyQualifiedDomainName": "mydemoserver.postgres.database.azure.com",
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/mydemoserver",
  "location": "eastus",
  "name": "mydemoserver",
  "network": {
    "delegatedSubnetResourceId": null,
    "privateDnsZoneArmResourceId": null,
    "publicNetworkAccess": "Enabled"
  },
  "resourceGroup": "myresourcegroup",
  "sku": {
    "name": "Standard_D2s_v3",
    "tier": "GeneralPurpose"
  },
  "state": "Ready",
  "storage": {
    "storageSizeGb": 128
  },
  "tags": null,
  "type": "Microsoft.DBforPostgreSQL/flexibleServers",
  "version": "13"
}

PostgreSQL 명령줄 클라이언트를 사용하여 연결

먼저 psql 명령줄 도구를 설치합니다.

psql을 사용하면 다음 명령을 사용하여 "flexibleserverdb" 데이터베이스에 연결합니다. 값을 자동 생성된 도메인 이름과 사용자 이름으로 바꿉니다.

psql -h mydemoserver.postgres.database.azure.com -U myadmin flexibleserverdb

참고 항목

The parameter PrivateDnsZoneArguments is required, and must be provided by customer 오류가 발생하면 이전 버전의 Azure CLI를 실행 중일 수 있습니다. Azure CLI를 업그레이드하고 작업을 다시 시도하세요.

리소스 정리

다른 빠른 시작/자습서에서 이러한 리소스가 필요하지 않으면 다음 명령을 수행하여 삭제할 수 있습니다.

az group delete --name myresourcegroup

새로 만든 서버만 삭제하려면 az postgres flexible-server delete 명령을 실행할 수 있습니다.

az postgres flexible-server delete --resource-group myresourcegroup --name mydemoserver

다음 단계