탄력적 클러스터가 있는 Azure Database for PostgreSQL은 수평 스케일 아웃 기능을 사용하여 클라우드에서 고가용성 PostgreSQL 데이터베이스를 실행, 관리 및 확장하는 데 사용하는 관리형 서비스입니다. Bicep 템플릿을 사용하여 Azure Database for PostgreSQL 유연한 서버 탄력적 클러스터 인스턴스를 프로비전할 수 있습니다.
Bicep은 선언적 구문을 사용하여 Azure 리소스를 배포하는 DSL(도메인 특정 언어)입니다. 간결한 구문, 신뢰할 수 있는 형식 안전성 및 코드 재사용 지원을 제공합니다. Bicep은 Azure에서 코드형 인프라 솔루션에 대한 최고의 제작 환경을 제공합니다.
필수 조건
활성 구독이 있는 Azure 계정. 체험 계정 만들기
Bicep 템플릿 검토
Azure Database for PostgreSQL 유연한 서버 탄력적 클러스터 인스턴스는 지역 내의 분산 데이터베이스에 대한 부모 리소스입니다. 클러스터에 적용되는 관리 정책(방화벽, 사용자, 역할 및 구성)에 대한 범위를 제공합니다.
elastic-cluster-template.bicep 파일을 만들고 다음 스크립트를 복사합니다.
param administratorLogin string
@secure()
param administratorLoginPassword string
param clusterName string
param location string = 'canadacentral'
param clusterSize int = 2
param skuName string = 'Standard_D4ds_v5'
param serverEdition string = 'GeneralPurpose'
param storageSizeGB int = 64
param availabilityZone string = '1'
param backupRetentionDays int = 7
resource server 'Microsoft.DBforPostgreSQL/flexibleServers@2025-08-01' = {
location: location
name: clusterName
properties: {
createMode: 'Default'
version: '17'
administratorLogin: administratorLogin
administratorLoginPassword: administratorLoginPassword
availabilityZone: availabilityZone
Storage: {
StorageSizeGB: storageSizeGB
Autogrow: 'Disabled'
}
Network: {
publicNetworkAccess: 'Enabled'
}
Backup: {
backupRetentionDays: backupRetentionDays
geoRedundantBackup: 'Disabled'
}
highAvailability: {
mode: 'Disabled'
}
cluster: {
clusterSize: clusterSize
}
}
sku: {
name: skuName
tier: serverEdition
}
}
param firewallRules object = {
rules: [
{
name: 'AllowAll'
startIPAddress: '0.0.0.0'
endIPAddress: '255.255.255.255'
}
]
}
// Create one child firewall rule per entry in firewallRules.rules
resource serverFirewallRules 'Microsoft.DBforPostgreSQL/flexibleServers/firewallRules@2025-08-01' = [
for rule in firewallRules.rules: {
name: rule.name
parent: server
properties: {
startIpAddress: rule.startIPAddress
endIpAddress: rule.endIPAddress
}
}
]
이러한 리소스는 Bicep 파일에 정의되어 있습니다.
Bicep 파일을 배포하십시오.
Azure CLI 또는 Azure PowerShell을 사용하여 Bicep 파일을 배포합니다.
az login
$resourceGroupName = Read-Host -Prompt "Enter a name for the resource group where the server will exist"
az deployment group create `
--resource-group $resourceGroupName `
--template-file ./elastic-cluster-template.bicep
다음 값을 입력하라는 메시지가 표시됩니다.
-
clusterName: Azure Database for PostgreSQL 유연한 서버 탄력적 클러스터 인스턴스를 식별하는 고유한 이름을 입력합니다. 도메인 이름은
postgres.database.azure.com사용자가 제공하는 클러스터 이름에 추가됩니다. 클러스터 이름은 소문자, 숫자 및 하이픈(-) 문자만 포함할 수 있습니다. 3-63자 이상이어야 합니다. -
administratorLogin: 서버에 연결할 때 사용할 인증 계정을 입력합니다. 예:
clusterAdmin. 관리자 인증 이름은 ,,azure_superuser,azure_pg_adminadmin,administratorroot또는guest.일 수 없습니다public.pg_로 시작할 수 없습니다. - administratorLoginPassword: 서버 관리자 계정의 새 암호를 입력합니다. 8~128자 사이여야 합니다. 암호에는 영어 대문자, 영어 소문자, 숫자(0-9) 및 영숫자가 아닌 문자(!, $, #, % 등) 범주 중 세 개에 해당하는 문자가 포함되어 있어야 합니다.
배포된 리소스 검토
다음 단계에 따라 Azure Database for PostgreSQL 유연한 서버 탄력적 클러스터가 만들어졌는지 확인합니다.
- Azure Portal에서 Azure Database for PostgreSQL 유연한 서버를 검색하고 선택합니다.
- 데이터베이스 목록에서 새 서버를 선택하여 탄력적 클러스터를 관리하는 개요 페이지를 봅니다.
비고
관련 콘텐츠 섹션에 나열된 다음 제안된 단계를 계속 진행하려면 이 리소스 그룹 및 탄력적 클러스터를 유지합니다. 다음 단계에서는 다양한 애플리케이션 분할 모델 및 디자인에서 탄력적 클러스터를 사용하는 방법을 보여 줍니다.
자원을 정리하세요
탄력적 클러스터 환경을 완료하면 탄력적 클러스터 리소스를 삭제합니다.
탄력적 클러스터를 삭제하려면 다음 단계를 수행합니다.
포털에서 삭제할 탄력적 클러스터를 선택합니다.
- 개요 페이지에서 삭제를 선택합니다.
- 리소스 세부 정보를 검토하고 삭제 요청을 승인하여 확인란을 선택하여 삭제 작업을 확인합니다.
- 을 선택하고을 삭제합니다.