SQL Server 2022 : Failover Cluster Instance2023/12/07 |
SQL सर्वर फ़ेलओवर क्लस्टर इंस्टेंस कॉन्फ़िगर करें।
यह उदाहरण निम्न प्रकार से पर्यावरण पर आधारित है।
+-------------------+ | [dlp.srv.world] | | ISCSI Target | +---------+---------+ 10.0.0.30| | +----------------------+ | +----------------------+ | [ node01.srv.world ] |10.0.0.51 | 10.0.0.52| [ node02.srv.world ] | | CLVM +----------+----------+ CLVM | | SQL Server | | | SQL Server | +----------------------+ | +----------------------+ VIP:10.0.0.50 |
[1] |
फेलओवर क्लस्टर इंस्टेंस के सभी नोड्स पर बुनियादी क्लस्टर सेटिंग कॉन्फ़िगर करें, यहां देखें। |
[2] |
फ़ेलओवर क्लस्टर इंस्टेंस के सभी नोड्स पर फ़ेंस डिवाइस कॉन्फ़िगर करें, यहां देखें। |
[3] |
फ़ेलओवर क्लस्टर इंस्टेंस के सभी नोड्स पर LVM साझा संग्रहण कॉन्फ़िगर करें, यहां देखें। |
[4] | फ़ेलओवर क्लस्टर इंस्टेंस के सभी नोड्स पर SQL सर्वर को अक्षम करें और HA पैकेज के लिए SQL सर्वर भी स्थापित करें। |
root@node01:~#
vi /etc/hosts # क्लस्टर नोड्स जोड़ें # [MSSQL_HA] ⇒ कोई भी नाम जो SQL सर्वर संसाधन नाम के रूप में उपयोग किया जाता है 10.0.0.50 MSSQL_HA 10.0.0.51 node01 node01.srv.world 10.0.0.52 node02 node02.srv.world |
[5] | फ़ाइल सिस्टम संसाधन जोड़ें और उस नोड पर SQL सर्वर डेटा की प्रतिलिपि बनाएँ जो साझा संग्रहण सक्रिय है। |
root@node01:~# pcs status Cluster name: ha_cluster Cluster Summary: * Stack: corosync * Current DC: node01.srv.world (version 2.1.2-ada5c3b36e2) - partition with quorum * Last updated: Tue Dec 5 10:27:14 2023 * Last change: Tue Dec 5 10:25:44 2023 by root via cibadmin on node01.srv.world * 2 nodes configured * 2 resource instances configured Node List: * Online: [ node01.srv.world node02.srv.world ] Full List of Resources: * scsi-shooter (stonith:fence_scsi): Started node01.srv.world * Resource Group: ha_group: * lvm_ha (ocf:heartbeat:LVM-activate): Started node01.srv.world Daemon Status: corosync: active/enabled pacemaker: active/enabled pcsd: active/enabled
root@node01:~#
cp -pR /var/opt/mssql/data /var/opt/mssql/data.bk
# फ़ाइल सिस्टम संसाधन बनाएँ root@node01:~# pcs resource create mssql_fs ocf:heartbeat:Filesystem device=/dev/vg_ha/lv_ha directory=/var/opt/mssql/data fstype=ext4 --group ha_group
pcs resource status * Resource Group: ha_group: * lvm_ha (ocf:heartbeat:LVM-activate): Started node01.srv.world * mssql_fs (ocf:heartbeat:Filesystem): Started node01.srv.world
root@node01:~#
root@node01:~# pcs constraint order start lvm_ha then mssql_fs Adding lvm_ha mssql_fs (kind: Mandatory) (Options: first-action=start then-action=start) root@node01:~# pcs constraint colocation add mssql_fs with lvm_ha
df -hT /var/opt/mssql/data Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/vg_ha-lv_ha ext4 9.8G 24K 9.3G 1% /var/opt/mssql/dataroot@node01:~# cp -pR /var/opt/mssql/data.bk/* /var/opt/mssql/data/ root@node01:~# chown mssql:mssql /var/opt/mssql/data root@node01:~# ll /var/opt/mssql/data total 136732 drwxr-xr-x 3 mssql mssql 4096 Dec 5 10:28 ./ drwxrwx--- 7 mssql mssql 4096 Dec 5 10:28 ../ -rw-rw---- 1 mssql mssql 256 Dec 4 13:39 Entropy.bin drwx------ 2 root root 16384 Dec 5 10:24 lost+found/ -rw-rw---- 1 mssql mssql 4915200 Dec 4 15:14 master.mdf -rw-rw---- 1 mssql mssql 1835008 Dec 4 15:14 mastlog.ldf -rw-rw---- 1 mssql mssql 8388608 Dec 4 15:14 modellog.ldf -rw-rw---- 1 mssql mssql 8388608 Dec 4 15:14 model.mdf -rw-rw---- 1 mssql mssql 16056320 Dec 4 15:14 model_msdbdata.mdf -rw-rw---- 1 mssql mssql 1048576 Dec 4 15:14 model_msdblog.ldf -rw-rw---- 1 mssql mssql 1835008 Dec 4 15:14 model_replicatedmaster.ldf -rw-rw---- 1 mssql mssql 4915200 Dec 4 15:14 model_replicatedmaster.mdf -rw-rw---- 1 mssql mssql 16056320 Dec 4 15:14 msdbdata.mdf -rw-rw---- 1 mssql mssql 1048576 Dec 4 15:14 msdblog.ldf -rw-rw---- 1 mssql mssql 8388608 Dec 4 15:14 tempdb2.ndf -rw-rw---- 1 mssql mssql 8388608 Dec 4 15:14 tempdb3.ndf -rw-rw---- 1 mssql mssql 8388608 Dec 4 15:14 tempdb4.ndf -rw-rw---- 1 mssql mssql 8388608 Dec 4 15:14 tempdb5.ndf -rw-rw---- 1 mssql mssql 8388608 Dec 4 15:14 tempdb6.ndf -rw-rw---- 1 mssql mssql 8388608 Dec 4 15:14 tempdb7.ndf -rw-rw---- 1 mssql mssql 8388608 Dec 4 15:14 tempdb8.ndf -rw-rw---- 1 mssql mssql 8388608 Dec 4 15:14 tempdb.mdf -rw-rw---- 1 mssql mssql 8388608 Dec 4 15:14 templog.ldf |
[6] | SQL सर्वर प्रारंभ करें और उस नोड पर पेसमेकर के लिए एक खाता जोड़ें जो साझा संग्रहण सक्रिय है। |
root@node01:~# systemctl start mssql-server root@node01:~# sqlcmd -S localhost -U SA Password: # सर्वर नाम की पुष्टि करें और इसे क्लस्टर संसाधन नाम में बदलें 1> select @@servername 2> go -------------------------------------------------------------------------------------------------------------------------------- localhost (1 rows affected) 1> exec sp_dropserver 'localhost' 2> exec sp_addserver 'MSSQL_HA', 'local' 3> go 1> use master; 2> go # [hacluster] उपयोगकर्ता जोड़ें 1> create login hacluster with PASSWORD= N'password'; 2> go # [sysadmin] भूमिका जोड़ें 1> alter server role [sysadmin] add member hacluster; 2> go 1> exitroot@node01:~# systemctl stop mssql-server
|
[7] | सभी नोड्स पर, ऊपर बनाई गई SQL सर्वर खाता जानकारी जोड़ें। |
root@node01:~# echo 'hacluster' > /var/opt/mssql/secrets/passwd root@node01:~# echo 'password' >> /var/opt/mssql/secrets/passwd root@node01:~# chown root:root /var/opt/mssql/secrets/passwd root@node01:~# chmod 600 /var/opt/mssql/secrets/passwd |
[8] | क्लस्टर संसाधन में SQL सर्वर और वर्चुअल IP पता जोड़ें। |
root@node01:~# pcs resource create MSSQL_HA ocf:mssql:fci op start interval=60s --group ha_group root@node01:~# pcs resource create VIP ocf:heartbeat:IPaddr2 ip=10.0.0.50 cidr_netmask=24 op monitor interval=30s --group ha_group root@node01:~# pcs resource status * Resource Group: ha_group: * lvm_ha (ocf:heartbeat:LVM-activate): Started node01.srv.world * mssql_fs (ocf:heartbeat:Filesystem): Started node01.srv.world * MSSQL_HA (ocf:mssql:fci): Started node01.srv.world * VIP (ocf:heartbeat:IPaddr2): Started node01.srv.worldroot@node01:~# pcs constraint order start mssql_fs then MSSQL_HA Adding mssql_fs MSSQL_HA (kind: Mandatory) (Options: first-action=start then-action=start) root@node01:~# pcs constraint colocation add MSSQL_HA with mssql_fs root@node01:~# pcs constraint config Location Constraints: Ordering Constraints: start lvm_ha then start mssql_fs (kind:Mandatory) start mssql_fs then start MSSQL_HA (kind:Mandatory) Colocation Constraints: lvm_ha with scsi-shooter (score:INFINITY) mssql_fs with lvm_ha (score:INFINITY) MSSQL_HA with mssql_fs (score:INFINITY) Ticket Constraints:root@node01:~# pcs resource status * Resource Group: ha_group: * lvm_ha (ocf:heartbeat:LVM-activate): Started node01.srv.world * mssql_fs (ocf:heartbeat:Filesystem): Started node01.srv.world * MSSQL_HA (ocf:mssql:fci): Started node01.srv.world * VIP (ocf:heartbeat:IPaddr2): Started node01.srv.world |
[9] | कोई बात नहीं। सक्रिय नोड को मैन्युअल रूप से रोकें और फ़ेलओवर को सामान्य रूप से सत्यापित करें। |
root@node01:~# pcs resource status * Resource Group: ha_group: * lvm_ha (ocf:heartbeat:LVM-activate): Started node01.srv.world * mssql_fs (ocf:heartbeat:Filesystem): Started node01.srv.world * MSSQL_HA (ocf:mssql:fci): Started node01.srv.world * VIP (ocf:heartbeat:IPaddr2): Started node01.srv.worldroot@node01:~# sqlcmd -S 10.0.0.50 -U SA -Q 'select @@servername' Password: ---------------------------------------------- MSSQL_HA (1 rows affected) # सक्रिय नोड बंद करो root@node01:~# pcs cluster stop node01.srv.world
# दूसरे नोड पर root@node02:~# pcs resource status * Resource Group: ha_group: * lvm_ha (ocf:heartbeat:LVM-activate): Started node02.srv.world * mssql_fs (ocf:heartbeat:Filesystem): Started node02.srv.world * MSSQL_HA (ocf:mssql:fci): Started node02.srv.world * VIP (ocf:heartbeat:IPaddr2): Started node02.srv.worldroot@node02:~# sqlcmd -S 10.0.0.50 -U SA -Q 'select @@servername' Password: ---------------------------------------- MSSQL_HA (1 rows affected) |
Sponsored Link |
|