エラスティック クラスターを備えた 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 ファイルをデプロイする
Bicep ファイルをデプロイするには、Azure CLI または Azure PowerShell を使用します。
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_admin、admin、administrator、root、guest、またはpublicにすることはできません。pg_で始めることはできません。 - administratorLoginPassword: サーバー管理者アカウントの新しいパスワードを入力します。 8 ~ 128 文字にする必要があります。 パスワードには、英大文字、英小文字、数字 (0 から 9)、英数字以外の文字 (!、$、#、% など) のうち、3 種類の文字が含まれている必要があります。
デプロイされているリソースを確認する
Azure Database for PostgreSQL フレキシブル サーバーエラスティック クラスターが作成されたかどうかを確認するには、次の手順に従います。
- Azure portal で、Azure Database for PostgreSQL フレキシブル サーバーを検索して選択します。
- データベースの一覧で新しいサーバーを選択し、[ 概要 ] ページを表示してエラスティック クラスターを管理します。
注
このリソース グループとエラスティック クラスターを使用して、[ 関連コンテンツ ] セクションに記載されている次の推奨手順を続行する場合は、このリソース グループとエラスティック クラスターを保持します。 次の手順では、さまざまなアプリケーション シャーディング モデルと設計でエラスティック クラスターを使用する方法を示します。
リソースをクリーンアップする
エラスティック クラスター環境が完了したら、エラスティック クラスター リソースを削除します。
エラスティック クラスターを削除するには、次の手順に従います。
ポータルで、削除するエラスティック クラスターを選択します。
- [概要] ページで [削除] を選択します。
- リソースの詳細を確認し、削除要求を確認し、チェック ボックスをオンにして削除操作を確認します。
- を選択して、を削除します。