Membuat instance VM SQL Server


Microsoft SQL Server adalah sistem database yang berjalan di Windows Server dan beberapa distribusi Linux. Anda dapat menggunakan SQL Server di Compute Engine sebagai bagian dari backend untuk aplikasi Anda, sebagai lingkungan pengujian dan pengembangan yang fleksibel, atau sebagai tambahan dari sistem lokal untuk pencadangan dan pemulihan dari bencana.

Compute Engine menyediakan image dengan Microsoft SQL Server yang telah diinstal di Windows Server. Untuk image SQL Server ini, Compute Engine mengelola lisensi untuk Windows Server dan SQL Server, serta menyertakan biaya dalam tagihan bulanan Anda. Buat VM dengan SQL Server dan perluas skala ke konfigurasi multinode besar saat Anda membutuhkannya.

Compute Engine menyimpan data Anda di persistent disk yang tahan lama dengan redundansi otomatis dan enkripsi otomatis saat nonaktif. Gunakan persistent disk ini untuk menyimpan data SQL Server Anda tanpa perlu mengkhawatirkan ketahanan atau keamanan data Anda. Untuk meningkatkan performa, buat VM Anda dengan SSD lokal sebagai cache yang memberikan IOPS dan performa tambahan untuk kueri SQL Server.

Anda dapat membuat instance virtual machine (VM) Compute Engine yang menjalankan SQL Server dengan cara berikut:

Untuk mengetahui daftar lengkap image yang tersedia dan menyertakan SQL Server yang telah diinstal sebelumnya, lihat Detail sistem operasi.

Persyaratan jenis mesin untuk image SQL Server

SQL Server Standard

Anda dapat menjalankan SQL Server Standard pada VM dengan jenis mesin apa pun, tetapi jenis mesin dengan inti bersama tidak akan berjalan secara optimal. Google merekomendasikan agar Anda menggunakan VM dengan minimal satu vCPU untuk menjalankan SQL Server Standard.

SQL Server Enterprise

VM yang menjalankan SQL Server Enterprise harus memiliki setidaknya 4 vCPU. Untuk performa yang optimal, Google merekomendasikan agar Anda menjalankan SQL Server Enterprise pada VM dengan kapasitas memori yang lebih besar. Bergantung pada beban kerja, Anda harus menggunakan jenis mesin bermemori tinggi dengan 8 vCPU atau lebih. Jenis mesin ini memaksimalkan rasio memori terhadap setiap vCPU yang tersedia di Compute Engine, yang optimal untuk VM SQL Server Enterprise.

Selain itu, Anda dapat menggunakan SQL Server Enterprise di Compute Engine untuk membuat Grup Ketersediaan SQL Server.

Komponen default

Image SQL Server menyertakan beberapa komponen secara default. Komponen default bergantung pada edisi SQL Server yang Anda pilih.

Untuk informasi tentang komponen default yang disertakan pada versi Server SQL Anda, lihat Edisi dan fitur yang didukung SQL Server 2019.

Untuk informasi tentang cara memodifikasi komponen SQL Server, lihat Menambahkan Fitur ke VM SQL Server.

Sebelum memulai

  • Siapkan autentikasi, jika Anda belum melakukannya. Autentikasi adalah proses verifikasi identitas Anda untuk akses ke layanan dan API Google Cloud. Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke Compute Engine sebagai berikut.

    Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:

    Konsol

    Saat menggunakan Konsol Google Cloud untuk mengakses API dan layanan Google Cloud, Anda tidak perlu menyiapkan autentikasi.

    gcloud

    1. Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:

      gcloud init
    2. Menetapkan region dan zona default.

    Terraform

    Untuk menggunakan contoh Terraform di halaman ini dari lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.

    1. Menginstal Google Cloud CLI.
    2. Untuk initialize gcloud CLI, jalankan perintah berikut:

      gcloud init
    3. Buat kredensial autentikasi lokal untuk Akun Google Anda:

      gcloud auth application-default login

    Untuk informasi selengkapnya, lihat Siapkan autentikasi untuk lingkungan pengembangan lokal.

    REST

    Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.

      Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:

      gcloud init

Membuat instance SQL Server

Untuk membuat instance SQL Server, tentukan kelompok image untuk versi SQL Server tertentu yang Anda butuhkan. Untuk mengetahui daftar jenis image SQL Server, lihat Detail sistem operasi.

Untuk mendapatkan performa optimal, platform server database memerlukan jenis mesin dengan CPU virtual yang lebih banyak dan memori yang lebih besar. Google merekomendasikan agar Anda menggunakan jenis mesin dengan minimal 2 vCPU dan memori minimal 4 GB saat menjalankan instance SQL Server. Anda dapat menggunakan jenis mesin kustom untuk mengonfigurasi instance SQL Server agar sesuai dengan persyaratan performa untuk workload Anda. Selain itu, Anda dapat menggunakan persistent disk yang lebih besar dan persistent disk SSD yang lebih cepat untuk meningkatkan performa aplikasi.

Selain itu, Anda harus menetapkan aturan firewall khusus untuk mengizinkan traffic SQL Server di jaringan VPC atau subnet tempat VM Anda menjadi bagiannya. Untuk mengetahui informasi selengkapnya, lihat Praktik terbaik untuk SQL Server.

Konsol

Untuk membuat instance SQL Server, ikuti langkah-langkah berikut:

  1. Di konsol Google Cloud, buka halaman Create an instance.

    Buka Create an instance

  2. Tentukan detail VM.

  3. Di bagian Boot disk, klik Change, lalu lakukan tindakan berikut ini:

    1. Di tab Public images, klik daftar Operating system, lalu pilih SQL Server on Windows Server.
    2. Dalam daftar Version, pilih versi.
    3. Dalam daftar Boot disk type, pilih jenis boot disk.
    4. Di kolom Size (GB), tetapkan ukuran boot disk.
    5. Opsional: Guna mengubah konfigurasi lanjutan untuk boot disk, klik Show advanced configuration, lalu tentukan setelan Anda.
    6. Untuk menyimpan konfigurasi boot disk, klik Select.
  4. Klik Create.

Setelah membuat VM, buat aturan firewall untuk mengizinkan akses ke SQL Server di VM Anda. Port SQL Server default adalah 1433.

  1. Di konsol Google Cloud, buka halaman Firewall Rules.

    Buka halaman Firewall Rules

  2. Di bagian atas halaman, klik Create firewall rule untuk mulai membuat aturan firewall.

  3. Tentukan detail untuk aturan firewall ini.

    • Di kolom Name, tentukan nama untuk aturan firewall.
    • Di kolom VPC network, pilih jaringan VPC tempat instance SQL Server Anda berada.
    • Untuk Direction of traffic, pilih Ingress.
    • Di kolom Source filter, pilih rentang IP yang ingin Anda izinkan aksesnya pada port ini. Untuk contoh ini, Anda dapat memilih Allow from any source.
    • Di bagian Allowed protocols and ports, masukkan port yang digunakan SQL Server. Untuk contoh ini, masukkan tcp:1433;, yang merupakan port default.
  4. Klik Create untuk membuat aturan firewall ini dan mengizinkan akses ke instance SQL Server Anda melalui port 1433.

Jika perlu menambahkan aturan firewall tambahan ke VM, lihat dokumentasi aturan firewall.

gcloud

Gunakan perintah compute images list untuk melihat daftar image SQL Server yang tersedia:

gcloud compute images list --project windows-sql-cloud --no-standard-images

Gunakan perintah compute instances create untuk membuat VM baru dan menentukan jenis image untuk salah satu image publik Windows Server atau SQL Server.

gcloud compute instances create VM_NAME \
    --image-project windows-sql-cloud \
    --image-family IMAGE_FAMILY \
    --machine-type MACHINE_TYPE \
    --boot-disk-size BOOT_DISK_SIZE \
    --boot-disk-type BOOT_DISK_TYPE

Ganti kode berikut:

  • VM_NAME: nama untuk instance baru.
  • IMAGE_FAMILY: salah satu kelompok gambar publik untuk image Windows Server atau SQL Server.
  • MACHINE_TYPE: salah satu jenis mesin yang tersedia.
  • BOOT_DISK_SIZE: ukuran boot disk dalam GB. Persistent disk yang lebih besar memiliki throughput yang lebih tinggi.
  • BOOT_DISK_TYPE: jenis boot disk untuk instance Anda. Contoh, pd-balanced

Setelah membuat VM, buat aturan firewall untuk mengizinkan akses ke SQL Server di VM Anda. Port SQL Server default adalah 1433.

gcloud compute firewall-rules create sql-server-1433 \
    --description "Allow SQL Server access from all sources on port 1433." \
    --allow tcp:1433 --network NETWORK

di mana NETWORK adalah nama jaringan VPC tempat VM Anda berada.

Jika perlu menambahkan aturan firewall tambahan ke VM, lihat dokumentasi aturan firewall.

Terraform

Untuk membuat instance VM SQL Server, gunakan resource google_compute_instance.

resource "google_compute_instance" "sqlserver_vm" {
  provider = google-beta
  name     = "sqlserver-vm"
  boot_disk {
    auto_delete = true
    device_name = "persistent-disk-0"
    initialize_params {
      image = "windows-sql-cloud/sql-std-2019-win-2022"
      size  = 50
      type  = "pd-balanced"
    }
    mode = "READ_WRITE"
  }
  machine_type = "n1-standard-4"
  zone         = "europe-west1-b"
  network_interface {
    access_config {
      network_tier = "PREMIUM"
    }
    network    = google_compute_network.default.id
    stack_type = "IPV4_ONLY"
    subnetwork = google_compute_subnetwork.default.id
  }
}

Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.

REST

Untuk membuat VM dengan API, sertakan properti initializeParams dalam permintaan pembuatan VM Anda dan tentukan image Windows.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances

instance = {
  "name": "VM_NAME",
  "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
  "disks": [{
      "boot": "true",
      "type": "PERSISTENT",
      "initializeParams": {
         "diskName": "DISK_NAME",
         "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY",
         "diskSizeGb": "BOOT_DISK_SIZE",
         "diskType": "BOOT_DISK_TYPE",
       }
    }],
  "networkInterfaces": [{
    "accessConfigs": [{
      "type": "ONE_TO_ONE_NAT",
      "name": "External NAT"
     }],
    "network": "global/networks/default"
  }],
  "serviceAccounts": [{
       "email": DEFAULT_SERVICE_EMAIL,
       "scopes": DEFAULT_SCOPES
  }]
}

Ganti kode berikut:

  • PROJECT_ID: ID untuk project Anda.
  • ZONE: zona untuk instance ini.
  • VM_NAME: name untuk VM baru.
  • MACHINE_TYPE: jenis mesin yang tersedia.
  • IMAGE_PROJECT: antara windows-cloud untuk image Windows Server atau windows-sql-cloud untuk image Windows Server dengan SQL Server yang telah diinstal sebelumnya.
  • IMAGE_FAMILY: kelompok gambar publik untuk image Windows Server atau SQL Server.
  • BOOT_DISK_SIZE: ukuran boot disk dalam GB. Persistent disk yang lebih besar memiliki throughput yang lebih tinggi.
  • BOOT_DISK_TYPE: jenis boot disk untuk VM Anda. Contoh, pd-ssd

Setelah membuat VM, buat aturan firewall untuk mengizinkan akses ke SQL Server di VM Anda. Port SQL Server default adalah 1433.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls

{
 "name": "sql-server-1433",
 "network": "global/networks/NETWORK",
 "allowed": [
  {
   "IPProtocol": "tcp",
   "ports": [
    "1433"
   ]
  }
 ]
}

Ganti kode berikut:

  • PROJECT_ID: ID untuk project Anda.
  • NETWORK: nama jaringan VPC tempat VM Anda berada.

Setelah membuat instance SQL Server, tetapkan sandi awal untuk VM agar Anda dapat terhubung ke VM melalui RDP. Kemudian, jalankan SQL Server Management Studio sebagai administrator untuk mengelola database pada instance SQL Server.

Selain itu, Anda dapat meningkatkan kualitas penginstalan SQL Server dengan satu atau beberapa item berikut:

Mengelola database SQL Server

Jalankan SQL Server Management Studio sebagai administrator untuk mengonfigurasi database SQL Server. Anda dapat mendownload dan menginstal SQL Server Management Studio di workstation lokal, dan menggunakannya untuk terhubung ke mesin database di VM Anda dari jarak jauh.

Jika Anda tidak dapat menginstal Management Studio di workstation lokal, akses VM melalui RDP dan jalankan Management Studio di VM itu sendiri. SQL Server 2012 dan SQL Server 2014 menyertakan SQL Server Management Studio secara default. Untuk SQL Server 2016, Anda harus mendownload SQL Server Management Studio dari situs Microsoft dan menginstalnya di VM.

Secara default, SQL Server menggunakan mode Autentikasi Windows untuk mengontrol akses jarak jauh ke SQL Server itu sendiri. Jika Anda perlu menggunakan mode Autentikasi SQL Server, ubah mode autentikasi.

Memperbarui nama instance SQL Server secara manual

Jika mengganti nama VM yang menghosting SQL Server, Anda harus memperbarui nama instance SQL Server. Untuk mengetahui informasi selengkapnya, lihat Mengganti Nama Komputer yang Menghosting Instance Server SQL Berdiri.

Langkah selanjutnya