GNU/Linux >> Belajar Linux >  >> Linux

Cara Mengonfigurasi Cluster Linux dengan 2 Node di RedHat dan CentOS

Dalam konfigurasi cluster Linux aktif-siaga, semua layanan penting termasuk IP, sistem file akan failover dari satu node ke node lain dalam cluster.

Tutorial ini menjelaskan secara rinci tentang cara membuat dan mengkonfigurasi dua node redhat cluster menggunakan utilitas baris perintah.

Berikut ini adalah langkah-langkah tingkat tinggi yang terlibat dalam mengonfigurasi kluster Linux di Redhat atau CentOS:

  • Instal dan mulai layanan cluster RICCI
  • Buat cluster pada node aktif
  • Tambahkan simpul ke cluster
  • Tambahkan pagar ke cluster
  • Konfigurasikan domain failover
  • Tambahkan sumber daya ke kluster
  • Sinkronkan konfigurasi cluster di seluruh node
  • Mulai kluster
  • Verifikasi failover dengan mematikan node aktif

1. Paket Cluster yang Diperlukan

Pertama-tama pastikan paket cluster berikut diinstal. Jika Anda tidak memiliki paket-paket ini, instal menggunakan perintah yum.

[root@rh1 ~]# rpm -qa | egrep -i "ricci|luci|cluster|ccs|cman"
modcluster-0.16.2-28.el6.x86_64
luci-0.26.0-48.el6.x86_64
ccs-0.16.2-69.el6.x86_64
ricci-0.16.2-69.el6.x86_64
cman-3.0.12.1-59.el6.x86_64
clusterlib-3.0.12.1-59.el6.x86_64

2. Mulai layanan RICCI dan Tetapkan Kata Sandi

Selanjutnya, mulai layanan ricci di kedua node.

[root@rh1 ~]# service ricci start
Starting oddjobd:                                          [  OK  ]
generating SSL certificates...  done
Generating NSS database...  done
Starting ricci:                                            [  OK  ]

Anda juga perlu menetapkan kata sandi untuk RICCI di kedua node.

[root@rh1 ~]# passwd ricci
Changing password for user ricci.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

Selain itu, Jika Anda menjalankan firewall iptables, ingatlah bahwa Anda harus memiliki aturan firewall yang sesuai di kedua node agar dapat berbicara satu sama lain.

3. Buat Cluster di Node Aktif

Dari node yang aktif, jalankan perintah di bawah ini untuk membuat cluster baru.

Perintah berikut akan membuat file konfigurasi cluster /etc/cluster/cluster.conf. Jika file sudah ada, itu akan menggantikan cluster.conf yang ada dengan cluster.conf yang baru dibuat.

[root@rh1 ~]# ccs -h rh1.mydomain.net --createcluster mycluster
rh1.mydomain.net password:

[root@rh1 ~]# ls -l /etc/cluster/cluster.conf
-rw-r-----. 1 root root 188 Sep 26 17:40 /etc/cluster/cluster.conf

Perlu diingat juga bahwa kami menjalankan perintah ini hanya dari satu node di cluster dan kami belum siap untuk menyebarkan perubahan ke node lain di cluster.

4. File cluster.conf Plain awal

Setelah membuat cluster, file cluster.conf akan terlihat seperti berikut:

[root@rh1 ~]# cat /etc/cluster/cluster.conf
<?xml version="1.0"?>
<cluster config_version="1" name="mycluster">
  <fence_daemon/>
  <clusternodes/>
  <cman/>
  <fencedevices/>
  <rm>
    <failoverdomains/>
    <resources/>
  </rm>
</cluster>

5. Tambahkan Node ke Cluster

Setelah cluster dibuat, kita perlu menambahkan node yang berpartisipasi ke cluster menggunakan perintah ccs seperti yang ditunjukkan di bawah ini.

Pertama, tambahkan node pertama rh1 ke cluster seperti yang ditunjukkan di bawah ini.

[root@rh1 ~]# ccs -h rh1.mydomain.net --addnode rh1.mydomain.net
Node rh1.mydomain.net added.

Selanjutnya, tambahkan node kedua rh2 ke cluster seperti yang ditunjukkan di bawah ini.

[root@rh1 ~]# ccs -h rh1.mydomain.net --addnode rh2.mydomain.net
Node rh2.mydomain.net added.

Setelah node dibuat, Anda dapat menggunakan perintah berikut untuk melihat semua node yang tersedia di cluster. Ini juga akan menampilkan id simpul untuk simpul yang sesuai.

[root@rh1 ~]# ccs -h rh1 --lsnodes
rh1.mydomain.net: nodeid=1
rh2.mydomain.net: nodeid=2

6. cluster.conf File Setelah Menambahkan Node

Ini di atas juga akan menambahkan node ke file cluster.conf seperti yang ditunjukkan di bawah ini.

[root@rh1 ~]# cat /etc/cluster/cluster.conf
<?xml version="1.0"?>
<cluster config_version="3" name="mycluster">
  <fence_daemon/>
  <clusternodes>
    <clusternode name="rh1.mydomain.net" nodeid="1"/>
    <clusternode name="rh2.mydomain.net" nodeid="2"/>
  </clusternodes>
  <cman/>
  <fencedevices/>
  <rm>
    <failoverdomains/>
    <resources/>
  </rm>
</cluster>

7. Tambahkan Pagar ke Cluster

Anggar adalah pemutusan simpul dari penyimpanan bersama. Pagar memotong I/O dari penyimpanan bersama, sehingga memastikan integritas data.

Perangkat pagar adalah perangkat keras yang dapat digunakan untuk memotong node dari penyimpanan bersama.

Ini dapat dilakukan dengan berbagai cara:mematikan node melalui sakelar daya jarak jauh, menonaktifkan port sakelar Fibre Channel, atau mencabut reservasi SCSI 3 host.

Agen pagar adalah program perangkat lunak yang terhubung ke perangkat pagar untuk meminta perangkat pagar untuk memutuskan akses ke penyimpanan bersama node (melalui mematikan node atau menghapus akses ke penyimpanan bersama dengan cara lain).

Jalankan perintah berikut untuk mengaktifkan fencing.

[root@rh1 ~]# ccs -h rh1 --setfencedaemon post_fail_delay=0
[root@rh1 ~]# ccs -h rh1 --setfencedaemon post_join_delay=25

Selanjutnya, tambahkan perangkat pagar. Ada berbagai jenis perangkat pagar yang tersedia. Jika Anda menggunakan mesin virtual untuk membangun sebuah cluster, gunakan perangkat fence_virt seperti yang ditunjukkan di bawah ini.

[root@rh1 ~]# ccs -h rh1 --addfencedev myfence agent=fence_virt

Selanjutnya, tambahkan metode pagar. Setelah membuat perangkat pagar, Anda perlu membuat metode pagar dan menambahkan host ke metode pagar.

[root@rh1 ~]# ccs -h rh1 --addmethod mthd1 rh1.mydomain.net
Method mthd1 added to rh1.mydomain.net.

[root@rh1 ~]# ccs -h rh1 --addmethod mthd1 rh2.mydomain.net
Method mthd1 added to rh2.mydomain.net.

Terakhir, kaitkan perangkat pagar ke metode yang dibuat di atas seperti yang ditunjukkan di bawah ini:

[root@rh1 ~]# ccs -h rh1 --addfenceinst myfence rh1.mydomain.net mthd1
[root@rh1 ~]# ccs -h rh1 --addfenceinst myfence rh2.mydomain.net mthd1

8. cluster.conf File setelah Pagar

Cluster.conf Anda akan terlihat seperti di bawah ini setelah perangkat pagar, metode ditambahkan.

[root@rh1 ~]# cat /etc/cluster/cluster.conf
<?xml version="1.0"?>
<cluster config_version="10" name="mycluster">
  <fence_daemon post_join_delay="25"/>
  <clusternodes>
    <clusternode name="rh1.mydomain.net" nodeid="1">
      <fence>
        <method name="mthd1">
          <device name="myfence"/>
        </method>
      </fence>
    </clusternode>
    <clusternode name="rh2.mydomain.net" nodeid="2">
      <fence>
        <method name="mthd1">
          <device name="myfence"/>
        </method>
      </fence>
    </clusternode>
  </clusternodes>
  <cman/>
  <fencedevices>
    <fencedevice agent="fence_virt" name="myfence"/>
  </fencedevices>
  <rm>
    <failoverdomains/>
    <resources/>
  </rm>
</cluster>

9. Jenis Domain Failover

Domain failover adalah subset terurut dari anggota cluster tempat grup sumber daya atau layanan dapat terikat.

Berikut ini adalah berbagai jenis domain failover:

  • domain failover terbatas:Grup sumber daya atau layanan yang terikat ke domain hanya dapat berjalan pada anggota cluster yang juga merupakan anggota domain failover. Jika tidak ada anggota domain failover yang tersedia, grup sumber daya atau layanan ditempatkan dalam status dihentikan.
  • Domain failover tak terbatas:Grup sumber daya yang terikat ke domain ini dapat berjalan di semua anggota klaster, tetapi akan berjalan di anggota domain kapan pun tersedia. Ini berarti bahwa jika grup sumber daya berjalan di luar domain dan anggota domain bertransisi secara online, grup sumber daya atau
  • layanan akan bermigrasi ke anggota cluster tersebut.
  • Domain terurut:Node dalam domain terurut diberi tingkat prioritas dari 1-100. Prioritas 1 adalah yang tertinggi dan 100 sebagai yang terendah. Sebuah node dengan prioritas tertinggi akan menjalankan grup sumber daya. Sumber daya jika dijalankan pada simpul 2, akan bermigrasi ke simpul 1 saat menjadi online.
  • Domain tidak terurut:Anggota domain tidak memiliki urutan preferensi. Setiap anggota dapat berjalan di grup sumber daya. Grup sumber daya akan selalu bermigrasi ke anggota domain failover mereka bila memungkinkan.

10. Tambahkan Domain Filover

Untuk menambahkan domain failover, jalankan perintah berikut. Dalam contoh ini, saya membuat domain bernama “webserverdomain”,

[root@rh1 ~]# ccs -h rh1 --addfailoverdomain webserverdomain ordered

Setelah domain failover dibuat, tambahkan kedua node ke domain failover seperti yang ditunjukkan di bawah ini:

[root@rh1 ~]# ccs -h rh1 --addfailoverdomainnode webserverdomain rh1.mydomain.net priority=1

[root@rh1 ~]# ccs -h rh1 --addfailoverdomainnode webserverdomain rh2.mydomain.net priority=2

Anda dapat melihat semua node di domain failover menggunakan perintah berikut.

[root@rh1 ~]# ccs -h rh1 --lsfailoverdomain
webserverdomain: restricted=0, ordered=1, nofailback=0
  rh1.mydomain.net: 1
  rh2.mydomain.net: 2

11. Tambahkan Sumber Daya ke Cluster

Sekarang saatnya untuk menambahkan sumber daya. Ini menunjukkan layanan yang juga harus failover bersama dengan ip dan sistem file ketika sebuah node gagal. Misalnya, server web Apache dapat menjadi bagian dari failover di Redhat Linux Cluster.

Saat Anda siap untuk menambahkan sumber daya, ada 2 cara untuk melakukannya.

Anda dapat menambahkan sebagai sumber daya global atau menambahkan sumber daya secara langsung ke grup atau layanan sumber daya.

Keuntungan menambahkannya sebagai sumber daya global adalah jika Anda ingin menambahkan sumber daya ke lebih dari satu grup layanan, Anda cukup mereferensikan sumber daya global pada layanan atau grup sumber daya Anda.

Dalam contoh ini, kami menambahkan sistem file pada penyimpanan bersama sebagai sumber daya global dan mereferensikannya pada layanan.

[root@rh1 ~]# ccs –h rh1 --addresource fs name=web_fs device=/dev/cluster_vg/vol01 mountpoint=/var/www fstype=ext4

Untuk menambahkan layanan ke kluster, buat layanan dan tambahkan sumber daya ke layanan.

[root@rh1 ~]# ccs -h rh1 --addservice webservice1 domain=webserverdomain recovery=relocate autostart=1

Sekarang tambahkan baris berikut di cluster.conf untuk menambahkan referensi sumber daya ke layanan. Dalam contoh ini, kami juga menambahkan IP failover ke layanan kami.

  <fs ref="web_fs"/>
  <ip address="192.168.1.12" monitor_link="yes" sleeptime="10"/>

Di bagian kedua tutorial ini (besok), kami akan menjelaskan cara menyinkronkan konfigurasi di beberapa node dalam sebuah cluster, dan cara memverifikasi skenario failover dalam penyiapan cluster.


Linux
  1. Cara mengkonfigurasi Virtualisasi di Redhat Linux

  2. Cara Instal dan Konfigurasi OpenLDAP di CentOS / RHEL Linux

  3. Cara mengkonfigurasi banner login di Linux (RedHat, Ubuntu, CentOS, Fedora)

  1. Cara Konfigurasi LVM di Linux / CentOS / Redhat

  2. Cara mengkonfigurasi repositori YUM di Linux/Centos/Redhat | YUM di Linux/Centos/Redhat

  3. Cara menginstal dan mengkonfigurasi buruh pelabuhan Di Rocky Linux/Centos 8

  1. Cara menginstal dan mengkonfigurasi R pada Sistem Linux RHEL 8 / CentOS 8

  2. Cara Menginstal dan Mengonfigurasi Ansible di Rocky Linux/CentOS 8

  3. Cara Menginstal dan Mengkonfigurasi Mono di Rocky Linux 8 dan CentOS 8