Bagikan melalui


Panduan Cepat: Membuat Azure Database for PostgreSQL Server Fleksibel

Azure Database for PostgreSQL adalah layanan terkelola yang dapat Anda gunakan untuk menjalankan, mengelola, dan menskalakan database PostgreSQL yang sangat tersedia di cloud.

Panduan cepat ini menunjukkan kepada Anda cara membuat instans server fleksibel Azure Database for PostgreSQL dengan menggunakan Azure portal, Azure CLI, atau template Azure Resource Manager (ARM).

Prasyarat

Sebelum mulai, pastikan bahwa Anda memiliki:

  • Sebuah langganan Azure. Jika Anda tidak memilikinya, buat akun Azure gratis.
  • Izin yang sesuai untuk membuat sumber daya di langganan Anda.

Memahami apa yang Anda buat

Instans server fleksibel Azure Database for PostgreSQL meliputi:

Nota

Koneksi biasanya menggunakan port 5432, atau port 6432 jika menyambungkan melalui pengumpul koneksi PgBouncer bawaan.

Membuat server menggunakan portal Microsoft Azure

  1. Masuk ke portal Azure.
  2. Pilih Buat sumber daya di sudut kiri atas.
  3. Di bawah Kategori, pilih Database.
  4. Temukan dan pilih Server fleksibel Azure Database for PostgreSQL.
  5. Pilih Buat.

Mengonfigurasi pengaturan dasar

Detail proyek

Setting Nilai yang disarankan Catatan
Subscription Langganan Anda Pilih tempat untuk menagih sumber daya
grup Sumber Daya myresourcegroup Buat baru atau pilih yang sudah ada

Detail Server

Setting Nilai yang disarankan Description
Nama Server mydemoserver-pgsql Harus unik secara global. Domain .postgres.database.azure.com ditambahkan secara otomatis
Wilayah Wilayah yang paling dekat dengan Anda Pertimbangkan kepatuhan, residensi data, harga, dan kedekatan dengan pengguna
Versi PostgreSQL Versi terbaru tersedia Saat ini didukung: 18, 17, 16, 15, 14, 13, 12, 11
Jenis beban kerja Pengembangan Pengembangan menggunakan SKU Burstable. Produksi menggunakan Tujuan Umum atau Memori yang Dioptimalkan.
Zona ketersediaan Tidak ada preferensi Berguna untuk ditempatkan bersamaan dengan aplikasi Anda

Ketersediaan tinggi

Option SLA Description
Disabled 99,9% Server tunggal tanpa siaga
Zona yang sama 99,95% Siaga di zona ketersediaan yang sama
Zona berlebihan 99,99% Siaga di zona ketersediaan yang berbeda

Authentication

Setting Description Recommended
Metode autentikasi Cara pengguna mengautentikasi - Autentikasi PostgreSQL saja (untuk mulai cepat)
- Autentikasi Microsoft Entra (untuk produksi)
- Keduanya (untuk fleksibilitas)
Nama pengguna admin adminuser - Harus 1-63 karakter
- Hanya angka dan huruf
- Tidak dapat memulai dengan pg_
- Tidak dapat menjadi nama yang dicadangkan sistem
Password Kata sandi kompleks 8-128 karakter dengan huruf besar, huruf kecil, angka, dan karakter khusus

Mengonfigurasi komputasi dan penyimpanan

Pilih Konfigurasikan server untuk dikustomisasi:

Tingkat komputasi

Tier Skenario penggunaan Description
Mudah meledak Pengembangan Untuk beban kerja yang tidak memerlukan CPU penuh berkelanjutan
Tujuan Umum Produksi Beban kerja produksi yang paling umum
Memori dioptimalkan Beban kerja memori tinggi Beban kerja yang membutuhkan rasio memori-ke-CPU yang tinggi

Pengaturan penyimpanan

Setting Dapat berubah nanti Description
Jenis penyimpanan ❌ Tidak Premium SSD atau Premium SSD v2
Ukuran penyimpanan ✅ Ya (hanya bertambah) Tidak dapat menyusut setelah pembuatan
Lapisan kinerja ✅ Ya Mengontrol IOPS dan throughput
Penyimpanan otomatis bertambah ✅ Ya Memperluas secara otomatis saat mendekati batas

Pengaturan cadangan

Setting Dapat berubah nanti Description
Retensi cadangan ✅ Ya 7-35 hari
Redundansi cadangan ❌ Tidak Redundan secara lokal, redundan secara zona, atau Geo-redundan
Redundansi geografis ❌ Tidak Hanya tersedia di wilayah berpasangan Azure

Mengonfigurasi jaringan

Pilih metode konektivitas Anda (tidak dapat diubah setelah pembuatan):

Akses publik (alamat IP yang diizinkan)

Gunakan aturan firewall untuk menyambung melalui titik akhir publik.

Pengaturan:

Setting Description
Perbolehkan akses publik Mengaktifkan akses publik untuk mengonfigurasi aturan firewall
Perbolehkan layanan Azure Mengizinkan koneksi dari semua layanan Azure
Menambahkan IP klien saat ini Tambahkan alamat IP Anda untuk mengizinkan daftar

Akses privat (Integrasi jaringan virtual)

Sambungkan melalui titik akhir privat dalam jaringan virtual. Untuk informasi selengkapnya, lihat Jaringan dengan akses privat untuk Azure Database for PostgreSQL.

Mengonfigurasi keamanan

Setting Dapat berubah nanti Opsi
Kunci enkripsi data ❌ Tidak Dikelola layanan atau Dikelola pelanggan

Tambahkan tag sumber daya (opsional)

Atur sumber daya dengan pasangan nama-nilai:

Nama Nilai Tujuan
Lingkungan Pengembangan Mengidentifikasi jenis lingkungan
Pusat Biaya IT-Dept Melacak biaya menurut departemen
Pemilik admin@contoso.com Mengidentifikasi pihak yang bertanggung jawab

Tinjau dan buat

  1. Pilih Tinjau + kreasikan.
  2. Tinjau semua konfigurasi.
  3. Pilih Buat untuk menyebarkan.

Penyebaran biasanya memakan waktu 5-10 menit. Setelah selesai, pilih Buka sumber daya untuk mengakses server Anda.

Membuat server menggunakan Azure CLI

Prasyarat untuk CLI

Untuk skrip ini, gunakan Azure CLI secara lokal karena memerlukan waktu terlalu lama untuk berjalan di Cloud Shell.

Masuk ke Azure

Gunakan skrip berikut untuk masuk menggunakan langganan tertentu.

subscription="<subscriptionId>" # add subscription here

az account set -s $subscription # ...or use 'az login'

Untuk informasi selengkapnya, lihat mengatur langganan aktif atau masuk secara interaktif

Jika Anda menggunakan Azure Cloud Shell, Anda sudah masuk.

Membuat server dengan CLI

Buat server dengan satu perintah:

az postgres flexible-server create \
  --resource-group myresourcegroup \
  --name mydemoserver-pgsql \
  --location eastus \
  --admin-user myadmin \
  --admin-password <password> \
  --sku-name Standard_D4ds_v5 \
  --tier GeneralPurpose \
  --public-access 0.0.0.0 \
  --storage-size 128 \
  --tags "Environment=Development"

Referensi parameter CLI

Pengaturan Description Example
--resource-group Nama grup sumber daya myresourcegroup
--name Nama server yang unik secara global mydemoserver-pgsql
--location Azure region eastus
--admin-user Nama pengguna administrator myadmin
--admin-password Kata sandi administrator YourPassword123!
--sku-name SKU Komputasi Standard_D4ds_v5
--tier Tingkat komputasi Berdasarkan Kebutuhan, Serba Guna, Dioptimalkan untuk Memori
--storage-size Penyimpanan dalam GB 128
--public-access Alamat IP diperbolehkan 0.0.0.0 (semua layanan Azure), alamat IP, atau rentang IP
--version Versi PostgreSQL 16
--high-availability Mode HA Dinonaktifkan, SameZone, ZoneRedundant
--backup-retention Hari retensi cadangan 7-35

Contoh CLI tingkat lanjut

Buat server dengan redundansi zona dan ketersediaan tinggi:

az postgres flexible-server create \
  --resource-group myresourcegroup \
  --name mydemoserver-pgsql-ha \
  --location eastus \
  --admin-user myadmin \
  --admin-password <password> \
  --sku-name Standard_D4ds_v5 \
  --tier GeneralPurpose \
  --storage-size 256 \
  --storage-type PremiumV2_LRS \
  --high-availability ZoneRedundant \
  --zone 1 \
  --standby-zone 2 \
  --backup-retention 14 \
  --public-access 0.0.0.0

Membuat server menggunakan templat ARM

Gambaran umum templat ARM

Templat Azure Resource Manager (ARM) memungkinkan Anda menentukan infrastruktur sebagai kode. Gunakan templat untuk penyebaran yang dapat diulang.

Templat ARM minimal

Simpan file ini sebagai postgres-server-template.json:

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "serverName": {
      "type": "string",
      "metadata": {
        "description": "Server name must be globally unique"
      }
    },
    "administratorLogin": {
      "type": "string",
      "minLength": 1,
      "maxLength": 63,
      "metadata": {
        "description": "Administrator username"
      }
    },
    "administratorLoginPassword": {
      "type": "securestring",
      "minLength": 8,
      "metadata": {
        "description": "Administrator password"
      }
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]",
      "metadata": {
        "description": "Server location"
      }
    }
  },
  "resources": [
    {
      "type": "Microsoft.DBforPostgreSQL/flexibleServers",
      "apiVersion": "2024-08-01",
      "name": "[parameters('serverName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "Standard_D4ds_v5",
        "tier": "GeneralPurpose"
      },
      "properties": {
        "administratorLogin": "[parameters('administratorLogin')]",
        "administratorLoginPassword": "[parameters('administratorLoginPassword')]",
        "version": "16",
        "storage": {
          "storageSizeGB": 128,
          "type": "Premium_LRS",
          "autoGrow": "Enabled"
        },
        "backup": {
          "backupRetentionDays": 7,
          "geoRedundantBackup": "Disabled"
        },
        "network": {
          "publicNetworkAccess": "Enabled"
        },
        "highAvailability": {
          "mode": "Disabled"
        }
      }
    }
  ],
  "outputs": {
    "serverFQDN": {
      "type": "string",
      "value": "[reference(parameters('serverName')).fullyQualifiedDomainName]"
    }
  }
}

Menyebarkan templat ARM

az group create --name myresourcegroup --location eastus

az deployment group create \
  --resource-group myresourcegroup \
  --template-file postgres-server-template.json \
  --parameters \
    serverName=mydemoserver-pgsql \
    administratorLogin=myadmin \
    administratorLoginPassword=<password>

Mendapatkan informasi koneksi

Setelah membuat server Anda, ambil detail koneksi:

Menggunakan portal Microsoft Azure

  1. Buka server Anda di portal Microsoft Azure.
  2. Buka halaman Gambaran Umum .
  3. Salin nilai-nilai ini:
    • Nama server (Titik Akhir): mydemoserver-pgsql.postgres.database.azure.com
    • Login Administrator: myadmin

Menggunakan Azure CLI

az postgres flexible-server show \
  --resource-group myresourcegroup \
  --name mydemoserver-pgsql \
  --query "{serverName:fullyQualifiedDomainName, adminUser:administratorLogin}" \
  --output table

Sambungkan menggunakan psql

Menginstal psql

Jika Anda tidak memiliki alat klien PostgreSQL, unduh PostgreSQL untuk platform Anda.

Menyambungkan ke server Anda

psql "host=mydemoserver-pgsql.postgres.database.azure.com port=5432 dbname=postgres user=myadmin sslmode=require"

Saat diminta, masukkan kata sandi administrator yang Anda tetapkan selama pembuatan server.

Format string untuk koneksi

host=<server-name>.postgres.database.azure.com port=5432 dbname=<database-name> user=<admin-user> password=<password> sslmode=require

Memverifikasi koneksi

Setelah menyambungkan, Anda akan melihat:

psql (14.13, server 16.4)
WARNING: psql major version 14, server major version 16.
         Some psql features might not work.
SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off)
Type "help" for help.

postgres=>

Buat database

CREATE DATABASE user_database;
\c user_database
\q

Pemecahan masalah koneksi

Pemblokiran koneksi oleh firewall

Jika Anda melihat:

connection to server at "mydemoserver-pgsql.postgres.database.azure.com" (###.###.###.###), port 5432 failed: Connection timed out

Solusi: Tambahkan alamat IP Anda ke aturan firewall:

az postgres flexible-server firewall-rule create \
  --resource-group myresourcegroup \
  --name mydemoserver-pgsql \
  --rule-name AllowMyIP \
  --start-ip-address <your-ip> \
  --end-ip-address <your-ip>

SSL diperlukan tetapi tidak dikonfigurasi

Pastikan string koneksi Anda menyertakan sslmode=require.

Membersihkan sumber daya

Saat Anda menyelesaikan Panduan Mulai Cepat, hapus sumber daya untuk menghindari biaya tambahan.

Menghapus seluruh grup sumber daya

az group delete --name myresourcegroup --yes

Hapus server saja

az postgres flexible-server delete \
  --resource-group myresourcegroup \
  --name mydemoserver-pgsql \
  --yes