Mengkonfigurasi Cluster Failover SQL Server Di Microsoft Azure - V

 

Berikut adalah cara melakukan konfigurasi Cluster Failover SQL Server  : 

8. Instal SQL Ke Cluster

Setelah mengatur cluster dan Volume DataKeeper di Available Storage, lalu Instalasi Cluster SQL Server.

8.1. Klik SQL Server 2014 Standard Edition, lalu klik New SQL Server Failover cluster installation


Menggunakan SQL Server 2014 Standard Edition untuk membangun Cluster Failover 2-node. Dalam skenario ini, DataKeeper juga dapat mereplikasi Data ke node ke-3, namun simpul tersebut tidak dapat menjadi bagian dari cluster. Jika ingin membuat cluster 3+ node maka perlu menggunakan SQL Server 2014 Enterprise Edition. Versi SQL lebih tinggi lebih baik. 

8.2.  Klik Next


8.3. Klik Next 


8.4.  Klik Next 


8.5.  Isikan data sesuai kebutuhan lalu klik Next


8.6. Klik Next


8.7. Cetang DataKeeper, lalu klik Next


8.8. Centang IP yang digunakan, lalu klik Next


8.9. Isikan password pada kolom status manual, lalu klik Next


8.10. Pada tab Server Configuration, Klik Add Current User


8.11. Pada tab Data Directories, lalu isikan Folder yang mau disimpan database tersebut, lalu klik Next


8.12. Kemudian klik Install


8.13. Tunggu sampai installasi selesai, lalu klik Close



8.14. Setelah SQL diinstal pada node pertama, kemudian perlu menjalankan instalasi pada node kedua. Klik Add nodeto a SQL Server failover cluster


8.15. Klik Next


8.16. Pilih Instance, lalu klik Next

8.17. Centang IP yang mau diakses, lalu klik Next


8.18.  Isikan password pada Kolom Status manual, lalu klik Next



8.19. Kemudian klik Install



8.20. Tunggu sampai selesai, lalu klik Close



9. Internal Load Balancer

Setelah cluster dikonfigurasi, maka sekarang buat Internal Load Balancer  (ILB) yang akan digunakan untuk semua akses klien. Klien yang terhubung ke SQL Server perlu terhubung ke ILB ke alamat IP cluster. Jika ingin mencoba terhubung ke cluster secara langsung pada titik ini, maka akan terlihat bahwa tidak dapat terhubung ke cluster dari sistem jarak jauh. Bahkan SQL Server Management Studio tidak akan bisa terhubung ke cluster secara langsung pada saat ini. Oleh karena itu perlu melakukan setting :

Buka Powershell Command untuk membuat Internal Load Balancer (ILB).

# Tentukan variabel

$ IP = "10.0.0.201" # IP yang diinginkan agar Load Loader Internal dapat digunakan, harus menjadi alamat yang sama seperti Alamat IP Cluster SQL Server

$ svc = "SQLFailover" # Nama layanan awan 

$ vmname1 = "sql1" #Nama VM yang merupakan simpul cluster pertama 

$ epname1 = "sql1" # Ini adalah nama yang ingin ditetapkan ke titik akhir yang terkait dengan node cluster pertama.

$ vmname2 = "sql2" #Nama VM yang merupakan cluster cluster kedua

$ epname2 = "sql2" # Ini adalah nama yang ingin ditetapkan ke titik akhir yang terkait dengan node cluster kedua.

$ lbsetname = "ilbsetsqlha" # gunakan nama apapun yang disukai, nama ini tidak penting

$ prot = "tcp"

$ locport = 1433

$ pubport = 1433

$ probeport = 59999

$ ilbname = "sqlcluster" # ini adalah nama yang terhubung dengan clien, harus sesuai dengan SQL cluster Name Resource

$ subnetname = "Publik" # nama subnet Azure 

# Tambahkan Internal Load Balancer ke layanan

Add-AzureInternalLoadBalancer -InternalLoadBalancerName $ ilbname -SubnetName $ subnetname -ServiceName $ svc -StaticVNetIPAddress $ IP

# Tambahkan load balanced endpoint ke primary cluster node

Get-AzureVM -ServiceName $ svc -Name $ vmname1 | Add-AzureEndpoint -Name $ epname1 -LBSetName $ lbsetname -Protocol $ prot -LocalPort $ locport -PublicPort $ pubport -ProbePort $ probeport -ProbeProtocol tcp -ProbeIntervalInSeconds 10 -DirectServerReturn $ true -InternalLoadBalancerName $ ilbname | Update-AzureVM

# Tambahkan load balanced endpoint ke node cluster sekunder

Get-AzureVM -ServiceName $ svc -Name $ vmname2 | Tambahkan-AzureEndpoint -Name $ epname2 -LBSetName $ lbsetname -Protocol $ prot -LocalPort $ locport -PublicPort $ pubport -ProbePort $ probeport -ProbeProtocol tcp -ProbeIntervalInSeconds 10 -DirectServerReturn $ true -InternalLoadBalancerName $ ilbname | Update-AzureVM

Hasil dapat dilihat output berikut.


 

10. Update Penghubung (  IP ) klien

Setelah Internal Load Balancer dibuat, maka sekarang adalah merubah  IP Cluster SQL Server

Buka PowerShell lalu jalankan script dibawah pada SQL1 untuk memperbarui atau merubah IP,  yang pada nama Cluster Network dan IP Resource Name. 

10.1. Pilih Networks, lalu cluster network 1, kemudian pada IP klik properties 


10.2. Dibawah adalah tampilan IP Default, yang harus  diubah



10.3. Buka Powershell ISE menggunakan Run as Administrator. Kemudian jalankan Script di bawah pada salah satu node cluster. 

Script :

# Script ini harus dijalankan pada node cluster utama setelahInternal Load Balancer dibuat

# Tentukan variabel

$ ClusterNetworkName = "Cluster Network 1" # nama jaringan cluster

$ IPResourceName = "SQL IP Address 1 (sqlcluster)" # nama sumber alamat IP

$ CloudServiceIP = "10.0.0.201" # Alamat IP dari Load Balancer Internal


10.4. Modul Impor FailoverClusters

# Jika menggunakan Windows 2012 atau lebih tinggi, gunakan perintah Get-Cluster Resource. Jika menggunakan Windows 2008 R2, gunakan perintah cluster res yang dikomentari.

Dapatkan-ClusterResource :

$ IPResourceName | Set-ClusterParameter -Multiple @ {“Address” = ”$ CloudServiceIP”; ”ProbePort” = ”59999 ″;

SubnetMask = ”255.255.255.255 ″;” Jaringan ”=” $ ClusterNetworkName ”;

"OverrideAddressMatch" = 1; "EnableDhcp" = 0}

# cluster res 

$ IPResourceName / priv enabledhcp = 0 overrideaddressmatch = 1 alamat = $ CloudServiceIP probeport = 59999 subnetmask = 255.255.255.255

Hasil akan ditampilkan seperti di bawah .



11.  Firewall

Buka port TCP 59999, 1433 dan 1434  pada firewall masing-masing server.


Catatan :

Setelah cluster dibuat, maka bisa langsung terhubung ke SQL Failover Cluster Instance melalui Internal Load Balancer, menggunakan nama sqlcluster atau langsung ke 10.0.0.201.