SIOS SANless clusters

SIOS SANless clusters High-availability Machine Learning monitoring

  • Home
  • Produk
    • SIOS DataKeeper for Windows
    • SIOS Protection Suite for Linux
  • Berita dan acara
  • Cluster server penyederhanaan
  • Kisah sukses
  • Hubungi kami
  • English
  • 中文 (中国)
  • 中文 (台灣)
  • 한국어
  • Bahasa Indonesia
  • ไทย

Archives for Desember 2018

SQL Server untuk Linux – Publik Preview Sekarang Tersedia

Desember 21, 2018 by Jason Aw Leave a Comment

SQL Server untuk Linux – Publik Preview Sekarang Tersedia

Pratinjau publik untuk SQL Server v.Next sekarang tersedia. Microsoft akhirnya menambahkan dukungan untuk Linux.  Lihat tautan di bawah ini untuk informasi lebih lanjut.   Saya akan mengunduh dan melihat fitur ketersediaan tinggi segera.  Tetap disini!

SQL Server v.Next Public Preview: https://www.Microsoft.com/en-us/sql-server/sql-server-vnext-including-Linux Original SQL Server Linux pengumuman: https://blogs.microsoft.com / blog / 2016/03/07 / mengumumkan-sql-server-on-linux / Direproduksi dengan izin dari Linuxclustering

Filed Under: Cluster server penyederhanaan Tagged With: SQL Server untuk Linux

Konfigurasikan Cluster Failover Linux Di Amazon EC2 Tanpa Penyimpanan Bersama

Desember 20, 2018 by Jason Aw Leave a Comment

Langkah-Langkah Bagaimana Mengkonfigurasi Linux Failover Cluster di Microsoft Azure IaaS Tanpa Penyimpanan Bersama

Langkah-demi-Langkah: Cara Mengonfigurasi Cluster Failover Linux Di Amazon EC2 Tanpa Penyimpanan Bersama #amazon #aws #sanless #cluster

Dalam panduan langkah demi langkah ini saya akan membawa Anda melalui semua langkah yang diperlukan untuk mengonfigurasi kluster MySQL 2-simpul yang sangat tersedia (plus server saksi) di Cloud Compute Cloud Amazon (Amazon EC2).  Panduan ini mencakup screenshot, perintah shell dan cuplikan kode sebagaimana mestinya.  Saya berasumsi bahwa Anda agak akrab dengan Amazon EC2 dan sudah memiliki akun.  Jika tidak, Anda dapat mendaftar hari ini.  Saya juga akan berasumsi bahwa Anda memiliki keterampilan administrasi sistem linux dasar serta memahami konsep pengelompokan failover dasar seperti Virtual IP, dll.

Penafian: Cloud adalah target yang bergerak cepat. Dengan demikian, fitur / layar / tombol akan berubah seiring waktu sehingga pengalaman Anda mungkin sedikit berbeda dari apa yang Anda lihat di bawah.  Sementara panduan ini akan menunjukkan kepada Anda bagaimana membuat database MySQL sangat tersedia, Anda pasti dapat menyesuaikan informasi dan proses ini untuk melindungi aplikasi atau database lain, seperti SAP, Oracle, PostgreSQL, server file NFS, dan banyak lagi. Ini adalah langkah-langkah tingkat tinggi untuk membuat basis data MySQL yang sangat tersedia dalam Amazon EC2:

  1. Buat Virtual Private Cloud (VPC)
  2. Buat Gateway Internet
  3. Buat Subnet (Zona Ketersediaan)
  4. Konfigurasi Tabel Rute
  5. Konfigurasikan Grup Keamanan
  6. Contoh Peluncuran
  7. Buat IP Elastis
  8. Buat Entri Rute untuk IP Virtual
  9. Nonaktifkan Sumber / Dest Memeriksa untuk ENI
  10. Dapatkan ID Kunci Akses dan Kunci Akses Rahasia
  11. Konfigurasi OS Linux
  12. Instal Alat API EC2
  13. Instal dan Konfigurasikan MySQL
  14. Instal dan Konfigurasikan Cluster
  15. Uji Konektivitas Cluster

Ikhtisar

Artikel ini akan menjelaskan cara membuat kluster dalam satu wilayah Amazon EC2.  Node kluster (node1, node2 dan server saksi) akan berada di Zona Ketersediaan yang berbeda untuk ketersediaan maksimum.  Ini juga berarti bahwa node akan berada di subnet yang berbeda. Konfigurasi akan terlihat seperti iAWS-Linux-MySQLni: Alamat IP berikut akan digunakan:

  • node1: 10.0.0.4
  • node2: 10.0.1.4
  • saksi: 10.0.2.4
  • virtual / "mengambang" IP: 10.1.0.10

Buat Awan Pribadi Virtual (VPC)

Pertama, buat Virtual Private Cloud (alias VPC). VPC adalah jaringan terisolasi dalam cloud Amazon yang didedikasikan untuk Anda.  Anda memiliki kontrol penuh atas hal-hal seperti blok alamat IP dan subnet, tabel rute, grup keamanan (yaitu firewall), dan banyak lagi.  Anda akan meluncurkan mesin virtual Azure Iaas (VMs) ke dalam Jaringan Virtual Anda. Dari dasbor AWS utama, pilih "VPC" Divpc1 bawah "VPC Anda", pastikan Anda telah memilih wilayah yang tepat di kanan atas layar.  Dalam panduan ini, wilayah "AS Barat (Oregon)" akan digunakan, karena merupakan wilayah yang memiliki 3 Zona Ketersediaan.   Untuk informasi lebih lanjut tentang Kawasan dan Zona Ketersediaan, klikvpc2 di sini Beri nama VPC, dan tentukan blok IP yang ingin Anda gunakan.  10.0.0.0/16 akan digunakan dalam panduan invpc3i: Anda sekarang akan melihat VPC yang baru dibuat pada layar "Your VPCs": vpc4  

Buat Sebuah Gateway Internet

Selanjutnya, buat Gateway Internet.  Ini diperlukan jika Anda ingin Instances (VMs) Anda dapat berkomunikasi dengan internet. Di menu sebelah kiri, pilih Gateway Internet dan klik tombol Buat Gateway Internet.  Beri nama, dan buat: Selanjuinternet-gateway1tnya, lampirkan gateway internet ke VPC Anda: Pinternet-gateway2ilih VPC Anda, dan klik Lampirkan: internet-gateway3

Buat Subnet (Zona Ketersediaan)

Selanjutnya, buat 3 subnet.  Setiap subnet akan berada di Zona Ketersediaannya sendiri.  3 Instance (VMs: node1, node2, witness) akan diluncurkan ke dalam subnet terpisah (dan oleh karena itu Zona Ketersediaan) sehingga kegagalan Zona Ketersediaan tidak akan mengambil beberapa simpul dari gugus. Wilayah AS Barat (Oregon), alias us-west-2, memiliki 3 zona ketersediaan (us-west-2a, us-west-2b, us-west-2c).  Buat 3 subnet, satu di masing-masing dari 3 zona ketersediaan. Di bawah VPC Dashboard, navigasikan ke Subnet, lalu buat Subnet: Bsubnet1eri nama subnet pertama ("Subnet1)", pilih zona ketersediaan us-west-2a, dan tentukan blok jaringan (10.0.0.0/24): Ulangi untuk bsubnet2uat zona ketersediaan subnet kedua us-west-2b: Ulangi untuk membuasubnet3t subnet ketiga di zona ketersediaan us-west-2c: Setelah selesai, versubnet4ifikasi bahwa 3 subnet telah dibuat, masing-masing dengan blok CIDR yang berbeda, dan dalam Ketersediaan terpisah Zona, seperti terlihat di bawah: subnet5

Konfigurasi Tabel Rute

Perbarui tabel rute VPC sehingga lalu lintas ke dunia luar dikirimkan ke Gateway Internet yang dibuat pada langkah sebelumnya.  Dari Dasbor VPC, pilih Tabel Rute.   Buka tab Rute, dan secara default hanya satu rute akan ada yang memungkinkan lalu lintas hanya dalam VPC. Klik Edit:route-table1 Tambahkan rute laroute-table2in: Tujuan rute baru adalah "0.0.0.0/0" (internet) dan untuk Target, pilih Internet Gateway Anda.  Kemudian klik Siroute-table3mpan: Selanjutnya, kaitkan 3 subnet dengan Tabel Rute.   Klik tab “Asosiasi Subnet”, dan Edit: Centang route-table4kotak di sebelah ketiga subnet, dan Simpan: Verifiroute-table5kasikan bahwa 3 subnet dikaitkan dengan tabel rute utama: Nanti, kamroute-table6i akan kembali dan memperbarui Tabel Rute sekali lagi, mendefinisikan rute yang akan memungkinkan lalu lintas untuk berkomunikasi dengan IP Virtual kluster, tetapi ini harus dilakukan SETELAH linux Instances (VMs) telah dibuat.

Konfigurasikan Grup Keamanan

Edit Grup Keamanan (firewall virtual) untuk memungkinkan lalu lintas SSH dan VNC yang masuk.  Keduanya nantinya akan digunakan untuk mengkonfigurasi instance linux serta instalasi / konfigurasi dari perangkat lunak cluster. Di menu sebelah kiri, pilih "Grup Keamanan" lalu klik tab "Inbound Rules".  Klik Edit: Tkelompok keamanan1ambahkan aturan untuk SSH (port 22) dan VNC.  VNC umumnya menggunakan port di 5900, tergantung bagaimana Anda mengkonfigurasinya, jadi untuk keperluan panduan ini, kami akan membuka kisaran port 5900-5910.  Konfigurasikan sesuai berdasarkan pengaturan VNC Anda: grup keamanan2  

Contoh Peluncuran

Kami akan menyediakan 3 Mesin Virtual di dalam panduan ini.  Dua VM pertama (disebut "node1" dan "node2") akan berfungsi sebagai node klaster dengan kemampuan untuk membawa database MySQL dan sumber daya terkait secara online.  VM ketiga akan bertindak sebagai server saksi cluster untuk perlindungan tambahan terhadap split-brain. Untuk memastikan ketersediaan maksimum, ketiga VM akan dikerahkan ke Zona Ketersediaan yang berbeda dalam satu wilayah.  Ini berarti setiap instance akan berada di subnet yang berbeda. Pergi ke dashboard AWS utama, dan pilih EC2: peluncuran-instance1

Buat "node1"

Buat instance pertama Anda ("node1").  Klik Launch Instancemeluncurkan-instance2: Pilih distribusi linux Anda.  Perangkat lunak cluster yang digunakan kemudian mendukung RHEL, SLES, CentOS dan Oracle Linux.  Dalam panduan ini kita akan menggunakan RHEpeluncuran-instance3L 7.X: Ukuran instance Anda sesuai.  Untuk keperluan panduan ini dan untuk meminimalkan biaya, ukuran t2.micro digunakan karena tingkat bebas memenuhi syarat.  Lihat di sini untuk informasi lebih lanjut tentang ukuran dan harga contoh. peluncuran-instance4 Selanjutnya, konfigurasikan detail instance.  PENTING: pastikan untuk meluncurkan instance pertama ini (VM) ke "Subnet1", dan tentukan alamat IP yang valid untuk subnet (10.0.0.0/24) – di bawah 10.0.0.4 dipilih karena ini adalah IP gratis pertama di subnet.  CATATAN: .1 / .2 / .3 di setiap subnet yang diberikan dalam AWS dicadangkan dan tidak dapat digunakan. peluncuran-instance5 Selanjutnya, tambahkan disk ekstra ke node cluster (ini akan dilakukan pada "node1" dan "node2").  Disk ini akan menyimpan database MySQL kami dan kemudian direplikasi antara node. Catatan: Anda TIDAK perlu menambahkan disk ekstra ke node “saksi”.  Hanya "node1" dan "node2". Tambahkan Volume Baru, dan masukkan dalam ukuranpeluncuran-instance6 yang diinginkan: Tentukan Tag untuk instapeluncuran-instance7nce, Node1: Kaitkan instance dengan grup keamanan yang ada, sehingga aturan firewall yang dibuat sebelumnya akan aktipeluncuran-instance8f: Klik Luncurkpeluncuran-instance9an: PENTING: Jika ini adalah instance pertama di lingkungan AWS Anda, Anda harus membuat pasangan kunci baru.  File kunci pribadi perlu disimpan di lokasi yang aman karena akan diperlukan ketika Anda SSH ke instance linux peluncuran-instance10

Buat "node2"

Ulangi langkah-langkah di atas untuk membuat instance linux kedua Anda (node2).  Konfigurasikan persis seperti Node1.  Namun, pastikan Anda menerapkannya ke "Subnet2" (zona ketersediaan kami-barat-2b).  Rentang IP untuk Subnet2 adalah 10.0.1.0/24, jadi IP 10.0.1.4 digunakan di sini: Ppeluncuran-instance11astikan untuk menambahkan disk ke-2 ke Node2 juga.  Ukurannya harus persis sama dengan disk yang Anda tambahkan kpeluncuran-instance12e Node1: Beri tag kedua contoh…. "Node2": peluncuran-instance13

Buat "saksi"

Ulangi langkah-langkah di atas untuk membuat instance linux ketiga Anda (saksi).  Konfigurasikan persis seperti Node1 & Node2, KECUALI Anda TIDAK perlu menambahkan disk kedua, karena hal ini hanya akan bertindak sebagai saksi bagi kluster, dan tidak akan pernah menghadirkan MySQL secara daring. Pastikan Anda menerapkannya ke "Subnet3" (zona ketersediaan kami-barat-2c).  Rentang IP untuk Subnet2 adalah 10.0.2.0/24, jadi IP 10.0.2.4 digunakan di sini:peluncuran-instance14 Catatan: konfigurasi disk default baik-baik saja untuk node saksi.  Disk ke-2 TIDAK diperlukanpeluncuran-instance15: Tandai simpul saksi: peluncuran-instance16

Mungkin diperlukan sedikit waktu untuk 3 kali persiapan Anda.  Setelah selesai, Anda akan melihat daftar tersebut berjalan di konsol EC2 Anda: peluncuran-instance17

Buat IP Elastis

Selanjutnya, buat IP Elastis, yang merupakan alamat IP publik yang akan digunakan untuk menghubungkan Anda dengan instance dari dunia luar.  Pilih IP Elastis di menu sebelah kiri, lalu klik "Alokasikan Alamat Baru":elastis-ip1 Pilih IP Elastis yang baru dibuat, klik kanan, dan pilih "Alamat Asosiasi": Kaitkelastis-ip2an IP Elastis ini dengan Node1: Ulangielastis-ip3 ini untuk dua contoh lain jika Anda ingin mereka memiliki akses internet atau dapat SSH / VNC ke mereka secara langsung.

Buat Entri Rute untuk IP Virtual

Pada titik ini semua 3 instance telah dibuat, dan tabel rute perlu diperbarui sekali lagi agar IP Virtual kluster dapat berfungsi.  Dalam konfigurasi klaster multi-subnet ini, Virtual IP harus tinggal di luar jangkauan CIDR yang dialokasikan ke VPC Anda. Tentukan rute baru yang akan mengarahkan lalu lintas ke IP Virtual kluster (10.1.0.10) ke nodus klaster utama (Node1) Dari Dasbor VPC, pilih Tabel Rute, klik Edit.  Tambahkan rute untuk "10.1.0.10/32" dengan tujuan Node1: route-table-after-instance-creation

Nonaktifkan Sumber / Dest Memeriksa untuk ENI

Selanjutnya, nonaktifkan Source / Dest Memeriksa untuk Elastic Network Interfaces (ENI) dari node cluster Anda. Ini diperlukan agar instance dapat menerima paket jaringan untuk alamat IP virtual kluster. Lakukan ini untuk semua ENI. Pilih "Network Interfaces", klik kanan pada ENI, dan pilih "Change Source / Dest Check". disable-source-dest-check1 Pilih "Nonaktif": disable-source-dest-check2

Dapatkan ID Kunci Akses dan Kunci Akses Rahasia

Kemudian dalam panduan ini, perangkat lunak kluster akan menggunakan Antarmuka Baris Perintah AWS (CLI) untuk memanipulasi entri tabel rute untuk IP Virtual klaster untuk mengalihkan lalu lintas ke node kluster aktif.  Agar ini berfungsi, Anda harus mendapatkan ID Kunci Akses dan Kunci Akses Rahasia agar AWS CLI dapat diautentikasi dengan benar. Di kanan atas EC2 Dashboard, klik pada nama Anda, dan di bawahnya pilih "Kredensial Keamanan" dari drop-down: Mempakses-key1erluas bagian "Kunci Akses (ID Kunci Akses dan Kunci Akses Rahasia)" dari tabel, dan klik "Buat Kunci Akses Baru".  Unduh File Kunci dan simpan file di lokasi yang aman. akses-key2

Konfigurasi OS Linux

Hubungkan ke instance linux (s):

Untuk terhubung ke instance linux yang baru dibuat (melalui SSH), klik kanan pada instance dan pilih "Connect".  Ini akan menampilkan instruksi untuk menghubungkan ke instance.  Anda akan memerlukan File Kunci Pribadi yang Anda buat / unduh pada langkah sebelhubungkan1umnya: Contconnect2oh: Di sinilah kita akan meninggalkan EC2 Dashboard sebentar dan membuat tangan kita kotor di baris perintah, yang sebagai administrator Linux Anda harus digunakan untuk sekarang. Anda tidak diberikan kata sandi root ke VM Linux Anda di AWS (atau akun default "ec2-user"), jadi setelah Anda terhubung, gunakan perintah "sudo" untuk mendapatkan hak akses root:

$ sudo su -

Edit / etc / hosts

Kecuali Anda sudah memiliki pengaturan server DNS, Anda akan ingin membuat entri file host pada semua 3 server sehingga mereka dapat menyelesaikan satu sama lain dengan nama Tambahkan baris berikut ke akhir file / etc / hosts Anda:

10.0.0.4 simpul1
10.0.1.4 node2
10.0.2.4 saksi
10.1.0.10 mysql-vip

Nonaktifkan SELinux

Edit / etc / sysconfig / linux dan atur "SELINUX = dinonaktifkan":

# vi / etc / sysconfig / selinux

# File ini mengontrol status SELinux pada sistem.
# SELINUX = dapat mengambil salah satu dari tiga nilai ini:
# Enforcing - Kebijakan keamanan SELinux diberlakukan.
# Permissive - SELinux mencetak peringatan daripada menegakkan.
# Disabled - Tidak ada kebijakan SELinux yang dimuat.
SELINUX = dinonaktifkan
# SELINUXTYPE = dapat mengambil salah satu dari dua nilai ini:
# Targeted - Proses yang ditargetkan terlindungi,
# Mls - Perlindungan Multi Level Security.
SELINUXTYPE = ditargetkan

Setel Nama Inang

Secara default, instance Linux ini akan memiliki nama host yang didasarkan pada alamat IP server, sesuatu seperti "ip-10-0-0-4.us-west-2.compute.internal" Anda mungkin memperhatikan bahwa jika Anda mencoba untuk memodifikasi nama host dengan cara "normal" (misal mengedit / etc / sysconfig / network, dll), setelah setiap reboot, ia akan kembali ke semula !! Saya menemukan untaian besar di forum diskusi AWS yang menjelaskan cara mendapatkan hostname agar tetap statis setelah reboot. Detail di sini: https://forums.aws.amazon.com/message.jspa?messageID=560446 Komentar modul yang mengatur nama host di file “/etc/cloud/cloud.cfg”. Modul-modul berikut dapat dikomentari menggunakan #.

# - set_hostname
# - update_hostname

Selanjutnya, ubah juga nama host Anda di / etc / hostname.

Reboot Cluster Nodes

Reboot semua 3 instance sehingga SELinux dinonaktifkan, dan perubahan hostname berpengaruh.

Instal dan Konfigurasikan VNC (dan paket terkait)

Untuk mengakses GUI server linux kami, dan kemudian menginstal dan mengkonfigurasi kluster kami, menginstal server VNC, serta beberapa paket lain yang diperlukan (perangkat lunak klaster membutuhkan redhat-lsb dan rpms patch).

# yum groupinstall "X Window System"
# yum groupinstall "Server dengan GUI"
# yum instal tigervnc-server xterm wget unzip patch redhat-lsb
# vncpasswd

Untuk RHEL 7.x / CentOS7.x: URL berikut adalah panduan yang bagus untuk menjalankan Server VNC di RHEL 7 / CentOS 7: https://www.digitalocean.com/community/tutorials/how-to-install-and -configure-vnc-remote-access-for-the-gnome-desktop-on-centos-7 Catatan: Contoh konfigurasi ini menjalankan VNC pada tampilan 2 (: 2, alias port 5902) dan sebagai root (tidak aman).  Atur sesuai!

# cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:2.service
# vi /etc/systemd/system/vncserver@:2.service


[Layanan]
Ketik = forking
# Bersihkan semua file yang ada di /tmp/.X11-unix environment
ExecStartPre = / bin / sh -c '/ usr / bin / vncserver -kill% i> / dev / null 2> & 1 || : '
ExecStart = / sbin / runuser -l root -c "/ usr / bin / vncserver% i -geometry 1024x768"
PIDFile = / root / .vnc /% H% i.pid
ExecStop = / bin / sh -c '/ usr / bin / vncserver -kill% i> / dev / null 2> & 1 || : '


# systemctl daemon-ulang
# systemctl enable vncserver @: 2.service
# vncserver: 2 -geometry 1024x768

Untuk sistem RHEL / CentOS 6.x:

# vi / etc / sysconfig / vncservers

      VNCSERVERS = "2: root"
      VNCSERVERARGS [2] = "- geometri 1024x768"

# service vncserver mulai
# chkconfig vncserver aktif

Buka klien VNC, dan hubungkan ke <ElasticIP: 2>.  Jika Anda tidak bisa mendapatkannya, kemungkinan firewall linux Anda menghalangi.  Buka port VNC yang kami gunakan di sini (port 5902), atau untuk saat ini, nonaktifkan firewall (BUKAN DIREKOMENDASIKAN UNTUK LINGKUNGAN PRODUKSI):

# systemctl hentikan firewalld
# systemctl menonaktifkan firewalld

 

Partisi dan Format disk “data”

Ketika instance linux diluncurkan, dan disk tambahan ditambahkan ke setiap node cluster untuk menyimpan data aplikasi yang akan kami lindungi.  Dalam hal ini kebetulan database MySQL. Disk kedua akan muncul sebagai / dev / xvdb.  Anda dapat menjalankan perintah "fdisk-l" untuk memverifikasi.  Anda akan melihat bahwa / dev / xvda (OS) sudah digunakan.

# fdisk-l

Disk / dev / xvda: 10.7 GB, 10737418240 byte, 20971520 sektor Unit = sektor 1 * 512 = 512 byte Ukuran sektor (logis / fisik): 512 byte / 512 byte I / O ukuran (minimum / optimal): 512 byte / 512 bytes Jenis label disk: gpt # Mulai Akhir Ukuran Tipe Nama 1 2048 4095 1M BIOS boot parti 2 4096 20971486 10G Microsoft dasar Disk / dev / xvdb: 2147 MB, 2147483648 byte, 4194304 sektor Unit = sektor 1 * 512 = 512 byte Ukuran sektor (logis / fisik): 512 byte / 512 byte Ukuran I / O (minimum / optimal): 512 byte / 512 byte Di sini saya akan membuat partisi (/ dev / xvdb1), memformatnya, dan memasangnya di default lokasi untuk MySQL, yang / var / lib / mysql.  Lakukan langkah-langkah berikut pada KEDUA "node1" dan "node2":

# fdisk / dev / xvdb
Selamat datang di fdisk (util-linux 2.23.2).

Perubahan hanya akan tersimpan di memori, sampai Anda memutuskan untuk menulisnya.
Hati-hati sebelum menggunakan perintah tulis.

Perangkat tidak berisi tabel partisi yang dikenali
Membangun disklabel DOS baru dengan pengidentifikasi disk 0x8c16903a.

Perintah (m untuk bantuan): n
Jenis partisi:
   p primer (0 utama, 0 diperpanjang, 4 gratis)
   e diperpanjang
Pilih (standar p): hal
Nomor partisi (1-4, standar 1): 1
Sektor pertama (2048-4194303, standar 2048): <enter>
Menggunakan nilai default 2048
Sektor terakhir, sektor atau ukuran {K, M, G} (2048-4194303, default 4194303): <enter>
Menggunakan nilai default 4194303
Partisi 1 jenis Linux dan ukuran 2 GiB diatur

Perintah (m untuk bantuan): w
Tabel partisi telah diubah!

Memanggil ioctl () untuk membaca kembali tabel partisi.
Sinkronisasi disk.

# Mkfs.ext4 / dev / xvdb1 # mkdir / var / lib / mysql Pada node1, mount filesystem:

# mount / dev / xvdb1 / var / lib / mysql

Instal Alat API EC2

EC2 API Tools (EC2 CLI) harus diinstal pada setiap node cluster, sehingga perangkat lunak klaster nantinya dapat memanipulasi Tabel Rute, memungkinkan konektivitas ke Virtual IP. URL berikut adalah panduan yang sangat baik untuk mengatur ini. unzip, dan pindahkan alat CLI ke lokasi standar (/ opt / aws):

# wget http://s3.amazonaws.com/ec2-downloads/ec2-api-tools.zip
# unzip ec2-api-tools.zip
# mv ec2-api-tools-1.7.5.1 / / opt / aws /
# export EC2_HOME = "/ opt / aws"

Jika java belum diinstal (jalankan "java mana" untuk memeriksanya), instal:

# yum install java-1.8.0-openjdk

example (Berdasarkan konfigurasi default sistem RHEL 7.2.  Sesuaikan sesuai)

# export JAVA_HOME = "/ usr / lib / jvm / java-1.8.0-openjdk-1.8.0.71-2.b15.el7_2.x86_64 / jre /"

Anda perlu Kunci Akses AWS dan Kunci Rahasia AWS.  Pertahankan nilai-nilai ini berguna, karena nilai-nilai ini akan dibutuhkan nanti selama pengaturan kluster juga! Rujuk ke URL berikut untuk informasi lebih lanjut: https://console.aws.amazon.com/iam/home?#security_credential

# export AWS_ACCESS_KEY = Anda-aws-access-key-id
# export AWS_SECRET_KEY = kunci-aws-rahasia Anda

Uji fungsionalitas utilitas CLI:

# / opt / aws / bin / ec2-describ-regions

REGION eu-west-1 ec2.eu-west-1.amazonaws.com
REGION ap-tenggara-1 ec2.ap-southeast-1.amazonaws.com
REGION ap-tenggara-2 ec2.ap-southeast-2.amazonaws.com
REGION eu-central-1 ec2.eu-central-1.amazonaws.com
REGION ap-northeast-2 ec2.ap-northeast-2.amazonaws.com
REGION ap-northeast-1 ec2.ap-northeast-1.amazonaws.com
REGION us-east-1 ec2.us-east-1.amazonaws.com
REGION sa-east-1 ec2.sa-east-1.amazonaws.com
REGION us-west-1 ec2.us-west-1.amazonaws.com
REGION us-west-2 ec2.us-west-2.amazonaws.com

 

Instal dan Konfigurasikan MySQL

Selanjutnya, instal instal paket-paket MySQL, inisialisasi basis data sampel, dan atur kata sandi "root" untuk MySQL.  Di RHEL7.X, paket MySQL telah diganti dengan paket MariaDB.

Pada "node1":

# yum instal mariadb mariadb-server
# mount / dev / xvdb1 / var / lib / mysql
# / usr / bin / mysql_install_db --datadir = "/ var / lib / mysql /" --user = mysql
# mysqld_safe --user = root --socket = / var / lib / mysql / mysql.sock --port = 3306 --datadir = / var / lib / mysql --log &
#
# # CATATAN: Perintah selanjutnya ini memungkinkan koneksi jarak jauh dari host APAPUN.  BUKAN ide bagus untuk produksi!
# echo “perbarui pengguna mengatur Host = '%' di mana Host = 'node1'; hak istimewa flush | mysql mysql
#
# # Atur kata sandi root MySQL ke 'SIOS'
# echo "perbarui set pengguna Kata Sandi = PASSWORD ('SIOS') di mana Pengguna = 'root'; hak istimewa flush" | mysql mysql

Buat file konfigurasi MySQL. Kami akan menempatkan ini pada disk data (yang nantinya akan direplikasi – /var/lib/mysql/my.cnf).  Contoh:

# vi /var/lib/mysql/my.cnf

[mysqld]
datadir = / var / lib / mysql
socket = / var / lib / mysql / mysql.sock
pid-file = / var / run / mariadb / mariadb.pid
pengguna = root
port = 3306
# Menonaktifkan tautan simbolis disarankan untuk mencegah berbagai risiko keamanan
symbolic-links = 0
 
[mysqld_safe]
log-error = / var / log / mariadb / mariadb.log
pid-file = / var / run / mariadb / mariadb.pid 
 
[klien]
pengguna = root
kata sandi = SIOS

Pindahkan file konfigurasi MySQL asli, jika ada:

# mv /etc/my.cnf /etc/my.cnf.orig

Pada "node2":

Pada "node2", Anda HANYA perlu menginstal paket MariaDB / MySQL.  Langkah-langkah lain tidak diperlukan:

[root @ node2 ~] # yum instal mariadb mariadb-server

Instal dan Konfigurasikan Cluster

Pada titik ini, kami siap untuk menginstal dan mengkonfigurasi cluster kami.  SIOS Protection Suite untuk Linux (alias SPS-Linux) akan digunakan dalam panduan ini sebagai teknologi pengelompokan.  Ini menyediakan fitur failover clustering (LifeKeeper) ketersediaan tinggi serta replikasi data level blok waktu nyata (DataKeeper) dalam satu solusi terintegrasi.  SPS-Linux memungkinkan Anda untuk menyebarkan cluster "SANLess", alias cluster "nothing nothing" yang berarti bahwa node cluster tidak memiliki penyimpanan bersama, seperti halnya EC2 Instances.

Instal SIOS Protection Suite untuk Linux

Lakukan langkah-langkah berikut pada ALL 3 VM (node1, node2, saksi): Unduh file gambar instalasi SPS-Linux (sps.img) dan dan dapatkan lisensi percobaan atau beli lisensi permanen.  Hubungi SIOS untuk informasi lebih lanjut. Anda akan mengulang mount itu dan menjalankan skrip "setup" di dalam, sebagai root (atau "sudo su -" pertama untuk mendapatkan shell root) Sebagai contoh:

# mkdir / tmp / install
# mount -o loop sps.img / tmp / install
# cd / tmp / install
# ./mempersiapkan

Selama skrip instalasi, Anda akan diminta untuk menjawab sejumlah pertanyaan.  Anda akan menekan Enter di hampir setiap layar untuk menerima nilai default.  Perhatikan pengecualian berikut:

  • Pada layar berjudul "High Availability NFS" Anda dapat memilih "n" karena kami tidak akan membuat server NFS yang sangat tersedia
  • Menjelang akhir skrip pengaturan, Anda dapat memilih untuk menginstal kunci lisensi percobaan sekarang, atau yang lebih baru. Kami akan menginstal kunci lisensi nanti, sehingga Anda dapat memilih "n" dengan aman pada saat ini
  • Di layar akhir "pengaturan" pilih ARK (Application Recovery Kits, mis. "Agen klaster") yang ingin Anda instal dari daftar yang ditampilkan di layar.
    • ARK HANYA diperlukan pada "node1" dan "node2".  Anda tidak perlu menginstal pada "saksi"
    • Navigasikan daftar dengan panah atas / bawah, dan tekan SPACEBAR untuk memilih yang berikut:
      • lkDR – DataKeeper untuk Linux
      • lkSQL – LifeKeeper MySQL RDBMS Recovery Kit
    • Ini akan menghasilkan RPM tambahan berikut yang diinstal pada "node1" dan "node2":
      • steeleye-lkDR-9.0.2-6513.noarch.rpm
      • steeleye-lkSQL-9.0.2-6513.noarch.rpm

Instal paket Saksi / Kuorum

Paket Dukungan Server Kuorum / Saksi untuk LifeKeeper (steeleye-lkQWK) yang dikombinasikan dengan proses failover yang ada pada inti LifeKeeper memungkinkan kegagalan sistem terjadi dengan tingkat kepercayaan yang lebih besar dalam situasi di mana total kegagalan jaringan bisa terjadi. Ini secara efektif berarti bahwa kegagalan dapat dilakukan sambil sangat mengurangi risiko situasi "otak ganda". Instal rpm Saksi / Kuorum pada ketiga simpul (simpul1, simpul2, saksi):

# cd / tmp / install / kuorum
# Rpm -Uvh steeleye-lkQWK-9.0.2-6513.noarch.rpm

Pada SEMUA 3 node (node1, node2, saksi), edit / etc / default / LifeKeeper, atur NOBCASTPING = 1 ON ONLY server Witness ("saksi"), edit / etc / default / LifeKeeper, set WITNESS_MODE = off / none

Instal Paket EC2 Recovery Kit

SPS-Linux menyediakan fitur spesifik yang memungkinkan sumber daya untuk failover antara node di zona dan wilayah ketersediaan yang berbeda. Di sini, EC2 Recovery Kit (mis. Agen klaster) digunakan untuk memanipulasi Tabel Rute sehingga koneksi ke IP Virtual dialihkan ke node kluster yang aktif. Instal EC2 rpm (node1, node2):

# cd / tmp / install / amazon
# Rpm -Uvh steeleye-lkECC-9.0.2-6513.noarch.rpm

Instal kunci Lisensi

Pada ketiga node, gunakan perintah "lkkeyins" untuk menginstal file lisensi yang Anda peroleh dari SIOS:

# / opt / LifeKeeper / bin / lkkeyins <path_to_file> / <filename> .lic

Mulai LifeKeeper

Pada ketiga node, gunakan perintah "lkstart" untuk memulai perangkat lunak cluster:

# / opt / LifeKeeper / bin / lkstart

Tetapkan Izin Pengguna untuk GUI LifeKeeper

Pada ketiga node, buat akun pengguna linux baru (mis. "Tony" dalam contoh ini).  Edit / etc / group dan tambahkan pengguna "tony" ke grup "lkadmin" untuk memberikan akses ke GUI LifeKeeper.  Secara default hanya "root" adalah anggota grup, dan kami tidak memiliki kata sandi root di sini:

# useradd tony
# passwd tony
# vi / etc / group

lkadmin: x: 1001: root, tony

Buka GUI LifeKeeper

Buat koneksi VNC ke alamat Elastic IP (Public IP) dari node1.  Berdasarkan konfigurasi VNC dari atas, Anda akan terhubung ke <Public_IP>: 2 menggunakan kata sandi VNC yang Anda tentukan sebelumnya.  Setelah masuk, buka jendela terminal dan jalankan LifeKeeper GUI menggunakan perintah berikut:

# / opt / LifeKeeper / bin / lkGUIapp &

Anda akan diminta untuk terhubung ke node cluster pertama Anda ("node1").  Masukkan linux userid dan kata sandi yang ditentukan selama pembuatan VMlk-gui-connect1: Selanjutnya, hubungkan ke "simpul2" dan "saksi" dengan mengklik tombol "Hubungkan ke Server" yang disorot dalam tangkapan layar berikut: Sekalk-gui-connect2rang Anda akan melihat ketiga server di GUI, dengan ikon tanda centang hijau yang menunjukkan mereka sedang online dan sehat: lk-gui-connect3

Buat Jalur Komunikasi

Klik kanan pada "node1" dan pilih Create Comm Patjalur kom1h Pilih KEDUA "node2" dan "saksi" dan kemudian ikuti wizard.  Ini akan membuat jalur kom antara:

  • simpul1 & simpul2
  • simpul1 & saksi

jalur komunikasi2 Jalur kom masih perlu dibuat antara node2 & saksi.   Klik kanan pada "node2" dan pilih Create Comm Path.  Ikuti wizard dan pilih "saksi" sebagai server jauhjalur comm3: Pada titik ini jalur kom berikut telah dibuat:

  • simpul1 <—> simpul2
  • simpul1 <—> saksi
  • simpul2 <—> saksi

Ikon di depan server telah berubah dari "tanda centang" hijau ke "tanda bahaya" kuning.  Ini karena kami hanya memiliki jalur komunikasi tunggal antar node. Jika VM memiliki beberapa NIC (informasi tentang cara membuat Azure VM dengan banyak NIC dapat ditemukan di sini, tetapi tidak akan dibahas dalam artikel ini), Anda akan membuat jalur kom yang berlebihan antara setiap server. jalur comm4 Untuk menghapus ikon peringatan, buka menu Lihat dan pilih-pilih "Comm Path Redundancy Warning"jalur comm5: Hasil: jalur comm6

Verifikasi Jalur Komunikasi

Gunakan perintah "lcdstatus" untuk melihat status sumber daya gugus.  Jalankan perintah berikut untuk memverifikasi bahwa Anda telah membuat jalur kom dengan benar pada setiap node ke dua server lain yang terlibat: # / opt / LifeKeeper / bin / lcdstatus -q -d node1 MESIN ALAMAT JARINGAN / ALAT-ALAT PERANGKAT KERJA / NEGARA PERANGKAT PRIO node2 TCP 10.0.0.4/ 10.0.1.4 HIDUP 1 saksi TCP 10.0.0.4/10.0.2.4 HIDUP 1 # / opt / LifeKeeper / bin / lcdstatus -q -d node2 MESIN JARINGAN ALAMAT / PERANGKAT NEGARA NEGARA PRIO node1 TCP 10.0.1.4/10.0.0.4 HIDUP 1 saksi TCP 10.0.1.4/10.0.2.4 HIDUP 1 # / opt / LifeKeeper / bin / lcdstatus -q -d saksi MESIN JARINGAN ALAMAT / PERANGKAT NEGARA NEGARA PRIO node1 TCP 10.0.2.4/10.0.0.4 HIDUP 1 node2 TCP 10.0.2.4/10.0.1.4 HIDUP 1

Membuat sumber daya klaster Replikasi Data (mis. Cermin)

Selanjutnya, buat sumber daya Replikasi Data untuk mereplikasi partisi / var / lib / mysql dari node1 (sumber) ke node2 (target).  Klik ikon "tambah hijau" untuk membuat sumber dayareplikasi data1 baru: Ikuti wizard dengan pilihan ini:

Silakan Pilih Kit Pemulihan: Replikasi Data
Tipe Switchback: cerdas
Server: node1
Jenis Hierarki: Replikasi Sistem File yang Keluar
Mount Point yang ada: / var / lib / mysql
Sumber Daya Replikasi Data Tag: datarep-mysql
Tab Sumber Daya Sistem File: / var / lib / mysql
File Bitmap: (nilai default)
Aktifkan Replikasi Asinkron: Tidak

Setelah sumber daya dibuat, wisaya “Perpanjang” (mis. Tentukan server cadangan) akan muncul.  Gunakan pilihan berikut:

Server Target: node2
Tipe Switchback: Cerdas
Prioritas Templat: 1
Prioritas Target: 10
Disk Target: / dev / xvdb1
Sumber Daya Replikasi Data Tag: datarep-mysql
File Bitmap: (nilai default)
Jalur Replikasi: 10.0.0.4/10.0.1.4
Mount Point: / var / lib / mysql
Root Tag: / var / lib / mysql

Cluster akan terlihat seperti ini: replikasi data2

Buat IP Virtual

Selanjutnya, buat sumber daya cluster IP Virtual.  Klik ikon "tambah hijau" untuk membuat sumber daya bavirtual ip1ru: Ikuti wizard dengan untuk membuat sumber daya IP dengan pilihan ini:

Pilih Kit Pemulihan: IP
Tipe Switchback: Cerdas
Sumberdaya IP: 10.1.0.10
Netmask: 255.255.255.0
Antarmuka Jaringan: eth0
Tag Sumber Daya IP: ip-10.1.0.10

Perpanjang sumber daya IP dengan pilihan-pilihan ini:

Tipe Switchback: Cerdas
Prioritas Templat: 1
Prioritas Target: 10
Sumberdaya IP: 10.1.0.10
Netmask: 255.255.255.0
Antarmuka Jaringan: eth0
Tag Sumber Daya IP: ip-10.1.0.10

Cluster sekarang akan terlihat seperti ini, dengan sumber daya Mirror dan IP dibuat: cluster-after-mirror-and-vip

Konfigurasikan Daftar Ping untuk sumber daya IP

Secara default, SPS-Linux memantau kesehatan sumber daya IP dengan melakukan ping siaran.  Di banyak lingkungan virtual dan cloud, broadcast ping tidak berfungsi.  Pada langkah sebelumnya, kita mengatur “NOBCASTPING = 1” di / etc / default / LifeKeeper untuk mematikan pemeriksaan ping broadcast. Sebagai gantinya, kami akan mendefinisikan daftar ping.  Ini adalah daftar alamat IP yang akan di-ping selama pemeriksaan kesehatan IP untuk sumber daya IP ini.   Dalam panduan ini, kami akan menambahkan server saksi (10.0.2.4) ke daftar ping kami. Klik kanan pada sumber daya IP (ip-10.1.0.10) dan pilih Properties: Anda akan meaws-ping-list1lihat bahwa pada awalnya, tidak ada daftar ping yang dikonfigurasi untuk subnet 10.1.0.0 kami.   Klik "Modifikasi Daftar Piaws-ping-list2ng": Masukkan "10.0.2.4" (alamat IP server saksi kami), klik "Tambah alamat" dan akhirnya klik "Simpan Daftar": Aaws-ping-list3nda akan dikembalikan ke panel properti IP, dan dapat memverifikasi bahwa 10.0.2.4 telah ditambahkan ke daftar ping.  Klik OK untuk menutup jendela: aws-ping-list4

Buat hirarki sumber daya MySQL

Selanjutnya, buat sumber daya cluster MySQL.  Sumber daya MySQL bertanggung jawab untuk menghentikan / memulai / memonitor database MySQL Anda. Sebelum membuat sumber daya MySQL, pastikan database berjalan.  Jalankan “ps -ef | grep sql ”untuk memeriksa. Jika berjalan, bagus – tidak ada hubungannya.  Jika tidak, mulai cadangan database:

# mysqld_safe --user = root --socket = / var / lib / mysql / mysql.sock --port = 3306 --datadir = / var / lib / mysql --log &

Untuk membuat, klik ikon "hijau plus" untuk membuat sumber daya baru: Ikuti wizard dengan untuk membuat sumber daya IP dengan pilihan ini:

Pilih Recovery Kit: Database MySQL
Tipe Switchback: Cerdas
Server: node1
Lokasi my.cnf: / var / lib / mysql
Lokasi executable MySQL: / usr / bin
Tag Database: mysql

Perpanjang sumber daya IP dengan pilihan berikut:

Server Target: node2
Tipe Switchback: cerdas
Prioritas Templat: 1
Prioritas Target: 10

Akibatnya, kluster Anda akan terlihat sebagai berikut.  Perhatikan bahwa sumber Replikasi Data dipindahkan secara otomatis di bawah basis data (ketergantungan dibuat secara otomatis) untuk memastikannya selalu dibawa online sebelum basis data: aws-after-mysql-resource1

Buat Sumber Daya EC2 Untuk Mengelola Tabel Rute Setelah Gagal

SPS-Linux menyediakan fitur spesifik yang memungkinkan sumber daya untuk failover antara node di zona dan wilayah ketersediaan yang berbeda. Di sini, EC2 Recovery Kit (mis. Agen klaster) digunakan untuk memanipulasi Tabel Rute sehingga koneksi ke IP Virtual dialihkan ke node kluster yang aktif. Untuk membuat, klik ikon "tambah hijau" untuk membuat sumber daya baru: Ikuti wizard dengan untuk membuat sumber daya EC2 dengan pilihan ini:

Pilih Kit Pemulihan: Amazon EC2
Tipe Switchback: Cerdas
Server: node1
EC2 Home: / opt / aws
URL EC2: ec2.us-west-2.amazonaws.com
Kunci Akses AWS: (masukkan Kunci Akses yang diperoleh sebelumnya)
Kunci Rahasia AWS: (masukkan Kunci Rahasia yang diperoleh sebelumnya)
Tipe Sumber Daya EC2: RouteTable (Backend cluster)
Sumberdaya IP: ip-10.1.0.10
Tag Sumber Daya EC2: ec2-10.1.0.10

Perpanjang sumber daya IP dengan pilihan berikut:

Server Target: node2
Tipe Switchback: cerdas
Prioritas Templat: 1
Prioritas Target: 10
Tag Sumber Daya EC2: ec2-10.1.0.10

Cluster akan terlihat seperti ini.  Perhatikan bagaimana sumber daya EC2 di bawah sumber daya IP: aws-after-ec2-resource1

Buat Ketergantungan antara sumber daya IP dan sumber daya Database MySQL

Buat ketergantungan antara sumber daya IP dan sumber daya Database MySQL sehingga mereka gagal bersama sebagai sebuah kelompok.  Klik kanan pada sumber daya "mysql" dan pilih "Buat Ketergantungan"create-dependency1: Pada layar berikut, pilih sumber daya "ip-10.1.0.10" sebagai ketergantungan.  Klik Next dan lanjutkan melalui wizardcreate-dependency2: Pada titik ini konfigurasi cluster SPS-Linux selesai.  Hirarki sumber daya akan terlihat sebagai berikut: buat-ketergantungan3

Uji Konektivitas Cluster

Pada titik ini, semua konfigurasi Amazon EC2 dan Cluster kami sudah selesai! Sumber daya cluster saat ini aktif pada nodebuat-ketergantungan31: Uji konektivitas ke cluster dari server saksi (atau contoh linux lain jika Anda memilikinya) SSH ke server saksi, "sudo su -" untuk mendapatkan akses root.   Instal klien mysql jika diperlukan:

[root @ saksi ~] # yum -y instal mysql

Uji konektivitas MySQL ke kluster:

[root @itness ~] # mysql --host = 10.1.0.10 mysql -u root -p

Jalankan query MySQL berikut untuk menampilkan nama host dari node cluster aktif:

MariaDB [mysql]> pilih @@ hostname;
 ------------ 
| @@ hostname |
 ------------ 
| node1 |
 ------------ 
1 baris dalam set (0,00 dtk)
MariaDB [mysql]>

Menggunakan LifeKeeper GUI, failover dari Node1 -> Node2 ″.  Klik kanan pada sumber daya mysql di bawah node2, dan pilih "Dalam Layanan …": Saws-failover1etelah failover selesai, jalankan kembali permintaan MySQL.  Anda akan melihat bahwa klien MySQL telah mendeteksi bahwa sesi itu hilang (selama failover) dan secara otomatis menyambung kembali: Jalankan permintaan MySQL berikut untuk menampilkan nama host dari simpul gugus aktif, memverifikasi bahwa sekarang “simpul2” aktif:

MariaDB [mysql]> pilih @@ hostname;
ERROR 2006 (HY000): Server MySQL telah hilang
Tidak ada koneksi. Mencoba menyambung kembali ...
ID koneksi: 12
Database saat ini: mysql
 ------------ 
| @@ hostname |
 ------------ 
| node2 |
 ------------ 
1 baris dalam set (0,53 detik)
MariaDB [mysql]>

  Menyukai panduan langkah demi langkah ini untuk Mengkonfigurasi Linux Failover Cluster Di Amazon EC2 Tanpa Penyimpanan Bersama, baca lebih lanjut di sini Diproduksi ulang dengan izin dari Linuxclustering

Filed Under: Cluster server penyederhanaan Tagged With: AWS, Linux failover cluster, MySQL

Linux failover cluster di Microsoft Azure IaaS tanpa penyimpanan bersama

Desember 19, 2018 by Jason Aw Leave a Comment

Step-By-Step: Cara Mengonfigurasi Cluster Failover Linux Di Microsoft Azure IaaS Tanpa Penyimpanan Bersama #azure #sanless

Dalam panduan langkah demi langkah ini saya akan membawa Anda melalui semua langkah yang diperlukan untuk mengkonfigurasi cluster MySQL 2-node yang sangat tersedia (plus saksi server) di Microsoft Azure IaaS (Infrastruktur sebagai Layanan).  Panduan ini mencakup screenshot, perintah shell dan cuplikan kode sebagaimana mestinya.  Saya berasumsi bahwa Anda agak akrab dengan Microsoft Azure dan sudah memiliki akun Azure dengan langganan terkait.  Jika tidak, Anda dapat mendaftar untuk mendapatkan akun gratis hari ini.  Saya juga akan berasumsi bahwa Anda memiliki keterampilan administrasi sistem linux dasar serta memahami konsep pengelompokan failover dasar seperti Virtual IP, dll.

Penafian: Azure adalah target yang bergerak cepat.  Ini menjadi lebih baik dan lebih baik setiap hari! Dengan demikian, fitur / layar / tombol akan berubah seiring waktu sehingga pengalaman Anda mungkin sedikit berbeda dari apa yang Anda lihat di bawah.  Sementara panduan ini akan menunjukkan kepada Anda bagaimana membuat database MySQL sangat tersedia, Anda pasti dapat menyesuaikan informasi dan proses ini untuk melindungi aplikasi atau database lain, seperti SAP, Oracle, PostgreSQL, server file NFS, dan banyak lagi. Ini adalah langkah-langkah tingkat tinggi untuk membuat database MySQL yang sangat tersedia dalam Microsoft Azure IaaS:

  1. Buat Grup Sumber Daya
  2. Buat Jaringan Virtual
  3. Buat Akun Penyimpanan
  4. Buat Mesin Virtual di dalam Set Ketersediaan
  5. Tetapkan Alamat IP Statis VM
  6. Tambahkan Data Disk ke cluster node
  7. Buat Aturan Keamanan Masuk untuk memungkinkan akses VNC
  8. Konfigurasi OS Linux
  9. Instal dan Konfigurasikan MySQL
  10. Instal dan Konfigurasikan Cluster
  11. Buat Penyeimbang Beban Internal
  12. Uji Konektivitas Cluster

Ikhtisar

Artikel ini akan menginformasikan langkah-langkah untuk mengkonfigurasi Linux Failover Cluster Di Microsoft Azure IaaS Tanpa Penyimpanan Bersama. Ini akan menjelaskan cara membuat kluster dalam satu wilayah Azure.  Node cluster (node1, node2 dan server saksi) akan berada dalam Set Ketersediaan (3 Domain Fault yang berbeda dan Pembaruan Domain), terima kasih kepada Azure Resource Manager (ARM) baru. Kami akan membuat semua sumber daya menggunakan Manajer Sumber Daya Azure baru. Konfigurasi akan terlihat seperti iCluster-Diagramni: Alamat IP berikut akan digunakan:

  • node1: 10.0.0.4
  • node2: 10.0.0.5
  • saksi: 10.0.0.6
  • virtual / "mengambang" IP: 10.0.0.99
  • Port MySQL: 3306

Buat Grup Sumber Daya

Pertama, buat Grup Sumber Daya.  Grup sumber daya Anda akan berakhir dengan memuat semua berbagai objek yang terkait dengan penyebaran klaster kami: mesin virtual, jaringan virtual, akun penyimpanan, dll.  Di sini kita akan memanggil "cluster-sumber" sumber daya yang baru kita buat. grup sumber daya1 Perhatikan saat memilih wilayah Anda.  Semua sumber daya Anda akan perlu berada di wilayah yang sama.  Di sini, kami akan menerapkan semuanya ke dalam wilayah “AS Barat”: grup sumber daya2

Buat Jaringan Virtual (VNet)

Membuat Jaringan Virtual akan menjadi langkah Anda berikutnya dalam menghubungkan Failover Cluster Linux Di Microsoft Azure IaaS Tanpa Penyimpanan Bersama. Jaringan Virtual adalah jaringan yang terisolasi dalam awan Azure yang didedikasikan untuk Anda.  Anda memiliki kontrol penuh atas hal-hal seperti blok alamat IP dan subnet, perutean, kebijakan keamanan (yaitu firewall), pengaturan DNS, dan banyak lagi.  Anda akan meluncurkan mesin virtual Azure Iaas (VMs) ke dalam Jaringan Virtual Anda. jaringan maya1 Pastikan Anda memilih Resource Manager sebagai model penyebaran kapan saja Anda diberi pilihan: Berjaringan virtual2ikan nama Jaringan Virtual Anda yang baru ("jaringan virtual") dan pastikan Anda memilih grup sumber daya yang dibuat pada langkah sebelumnya ("cluster-" sumber daya ”).  Jaringan Virtual Anda harus berada di wilayah yang sama dengan Kelompok Sumber Daya Anda.  Kami akan membiarkan IP Address dan nilai-nilai Subnet sebagai default. jaringan virtual3

Buat Akun Penyimpanan

Sebelum Anda menyediakan Mesin Virtual apa pun, Anda harus membuat Akun Penyimpanan tempat mereka akan disimpan. akun penyimpanan1 Sekali lagi, pastikan Anda memilih Resource Manager sebagai model penerapan kapan saja Anda diberi opsi: Beakun penyimpanan2rikutnya, beri nama akun penyimpanan baru Anda.  Nama akun penyimpanan harus unik di * ALL * of Azure.  (Setiap objek yang Anda simpan di Azure Storage memiliki alamat URL yang unik. Nama akun penyimpanan membentuk subdomain dari alamat itu.) Dalam contoh ini saya menyebut akun penyimpanan saya "linuxclusterstorage" tetapi Anda harus memilih sesuatu yang berbeda saat Anda mengaturnya sendiri. Pilih Jenis penyimpanan berdasarkan kebutuhan dan anggaran Anda.  Untuk keperluan panduan ini, saya memilih "Standar-LRS" (yaitu Lokal Redundan) untuk meminimalkan biaya. Pastikan Akun Penyimpanan baru Anda ditambahkan ke Grup Sumber Daya yang Anda buat pada Langkah 1 ("sumber-sumber-gugus") di Lokasi yang sama ("AS Barat" dalam contoh ini): akun penyimpanan3

Buat Mesin Virtual di dalam Set Ketersediaan

Kami akan menyediakan 3 Mesin Virtual dalam panduan ini.  Dua VM pertama (saya akan menyebutnya "node1" dan "node2") akan berfungsi sebagai node klaster dengan kemampuan untuk membawa database MySQL dan sumber daya terkait secara online.  VM ke-3 akan bertindak sebagai server saksi kluster untuk perlindungan tambahan terhadap perpecahan otak. Untuk memastikan ketersediaan maksimum, semua 3 VM akan ditambahkan ke Kumpulan Ketersediaan yang sama, memastikan bahwa mereka akan berakhir di Domain Fault yang berbeda dan Perbarui Domain.

Buat "node1" VM

Buat VM pertama Anda ("node1").  Dalam panduan ini kita akan menggunakan CentOS 6buat vm1.X: Pastikan Anda menggunakan model penyebaran Resource Manager.  Ini harus dipilih secara default: Berbuat vm2ikan VM nama host ("node1") dan nama pengguna / kata sandi yang nantinya akan digunakan untuk SSH ke dalam sistem.  Pastikan Anda menambahkan VM ini ke dalam Grup Sumber Daya Anda ("cluster-resources") dan berada di wilayah yang sama dengan semua sumber daya Anda yang lain: Sebuat vm3lanjutnya, pilih ukuran instance Anda.  Untuk informasi lebih lanjut tentang berbagai ukuran contoh yang tersedia, klik di sini. Untuk keperluan panduan ini, saya menggunakan "Standar A3" untuk Node1 dan Node2, untuk meminimalkan biaya karena ini tidak akan menjalankan beban kerja produksi.  Saya menggunakan ukuran “A1 Standard” yang lebih kecil untuk server saksi.  Pilih ukuran instance yang paling masuk akal untuk Anda. buat vm4 Jika Anda ingin dapat terhubung ke VM dari dunia luar, tetapkan alamat IP Publik.  Saya melakukan ini agar nantinya saya dapat SSH dan VNC ke dalam sbuat vm5istem PENTING: Secara default, VM Anda tidak akan ditambahkan ke Kumpulan Ketersediaan.  Pada layar Pengaturan selama pastikan Anda membuat Kumpulan Ketersediaan baru, kami akan memanggil "ketersediaan-kumpulan-kluster".  Azure Resource Manager (ARM) memungkinkan Anda untuk membuat Set Ketersediaan dengan 3 Domain Kesalahan.  Nilai default di sini baik-baik sajabuat vm6: Tinjau properti VM Anda dan klik OK untuk membuat VM pertama Anda: buat vm7

Buat "node2" dan "saksi" VMs

Ulangi langkah-langkah di atas dua kali untuk membuat dua VM lagi.  Saya membuat ukuran "A3 Standard" ukuran VM lain yang disebut "node2" dan ukuran "A1 Standard" VM yang disebut "saksi". Satu-satunya perbedaan di sini adalah Anda akan MENAMBAHKAN VM ini ke Kumpulan Ketersediaan ("ketersediaan-gugus-gugus") yang baru saja kami bubuat vm8at: Diperlukan waktu beberapa saat bagi penyediaan 3 VMs Anda.  Setelah selesai, Anda akan melihat VM Anda tercantum di layar Mesin Virtual dalam Portal Azure Anda: buat vm9

Tetapkan Alamat IP Statis VM

VMs akan diatur dengan alamat IP berikut:

  • node1: 10.0.0.4
  • node2: 10.0.0.5
  • saksi: 10.0.0.6

Ulangi langkah ini untuk setiap VM.  Pilih VM Anda dan edit Antarmuka Jaringan Palamat ip statis1ilih antarmuka jaringan yang terkait dengan VM, dan edit alamat IP.  Pilih "Static" dan tentukan alamat IP yang diinginkan: alamat ip statis2

Tambahkan Data Disk ke cluster node

Selanjutnya, kita perlu menambahkan disk ekstra ke node cluster kami ("node1" dan "node2").  Disk ini akan menyimpan database MySQL kami dan kemudian direplikasi antara node. Catatan: Anda TIDAK perlu menambahkan disk ekstra ke node “saksi”.  Hanya "node1" dan "node2". Edit VM Anda, pilih Disk dan kemudian pasang disk baru: Pdisk1 keduailih jenis disk (SSD Standar atau Premium) dan ukuran berdasarkan beban kerja Anda.  Di sini saya membuat disk Standar 10GB pada kedua node cluster saya.  Sejauh cache Host pergi, cache “Tidak ada” atau “Hanya baca” baik-baik saja.  Saya tidak menyarankan menggunakan "Baca / Tulis" karena ada potensi kehilangan data: disk2 kedua

Buat Aturan Keamanan Masuk untuk memungkinkan akses VNC

Jika VM Anda adalah bagian dari Network Security Group (NSG), yang secara default kemungkinannya adalah kecuali Anda menonaktifkannya selama pembuatan VM, satu-satunya port yang terbuka di "Azure firewall" adalah SSH (port 22).  Nanti di panduan ini, saya akan menggunakan VNC untuk mengakses desktop "node1" dan mengonfigurasi gugus menggunakan GUI.  Buat Aturan Keamanan Masuk untuk membuka akses VNC.  Dalam panduan ini port 5902 digunakan.  Sesuaikan ini sesuai berdasarkan konfigurasi VNC Anda. Mesin Virtual -> (pilih node1) -> Antarmuka jaringan -> (pilih NIC) -> Grup keamanan jaringan -> (pilih NSG) -> Aturan keamanan masuk -> Tambah aturan keamanan masuk1

Konfigurasi OS Linux

Di sinilah kita akan meninggalkan Portal Azure untuk sementara dan mendapatkan tangan kita kotor pada baris perintah, yang sebagai administrator Linux Anda harus digunakan sekarang.  Anda tidak diberikan kata sandi root ke VM Linux Anda di Azure, jadi setelah Anda login sebagai pengguna yang ditentukan selama pembuatan VM, gunakan perintah "sudo" untuk mendapatkan hak akses root:

$ sudo su -

Edit / etc / hosts

Kecuali Anda sudah memiliki pengaturan server DNS, Anda akan ingin membuat entri file host pada semua 3 server sehingga mereka dapat menyelesaikan satu sama lain dengan nama Tambahkan baris berikut ke akhir file / etc / hosts Anda:

10.0.0.4 simpul1
10.0.0.5 node2
10.0.0.6 saksi
10.0.0.99 mysql-vip

Nonaktifkan SELinux

Edit / etc / sysconfig / linux dan atur "SELINUX = dinonaktifkan":

# vi / etc / sysconfig / selinux

# File ini mengontrol status SELinux pada sistem.
# SELINUX = dapat mengambil salah satu dari tiga nilai ini:
# Enforcing - Kebijakan keamanan SELinux diberlakukan.
# Permissive - SELinux mencetak peringatan daripada menegakkan.
# Disabled - Tidak ada kebijakan SELinux yang dimuat.
SELINUX = dinonaktifkan
# SELINUXTYPE = dapat mengambil salah satu dari dua nilai ini:
# Targeted - Proses yang ditargetkan terlindungi,
# Mls - Perlindungan Multi Level Security.
SELINUXTYPE = ditargetkan

Konfigurasi iptables agar mengelompokkan IP Virtual akan berfungsi

PENTING: Untuk mendapatkan konektivitas ke kluster Virtual IP untuk bekerja, dan juga memantau sumber daya IP, beberapa aturan iptabel perlu disetel.  Catatan: 10.0.0.99 adalah IP Virtual yang akan kami gunakan di kluster kami, dan 3306 adalah port default yang digunakan MySQL saya. Pada node1 (10.0.0.4), jalankan perintah berikut:

# iptables --fush
# iptables -t nat -A PREROUTING -p tcp --dport 3306 -j DNAT 
--to-destination 10.0.0.99:3306
# iptables -t nat -A POSTROUTING -p icmp -s 10.0.0.99 -j SNAT 
--ke-sumber 10.0.0.4
# layanan iptables simpan
# chkconfig iptables aktif

Pada Node2 (10.0.0.5), jalankan perintah berikut:

# iptables --fush
# iptables -t nat -A PREROUTING -p tcp --dport 3306 -j DNAT 
--to-destination 10.0.0.99:3306
# iptables -t nat -A POSTROUTING -p icmp -s 10.0.0.99 -j SNAT 
--ke-sumber 10.0.0.5
# layanan iptables simpan
# chkconfig iptables aktif

Instal dan Konfigurasikan VNC (dan paket terkait)

Untuk mengakses GUI server linux kami, untuk kemudian mengkonfigurasi kluster kami, instal server VNC pada node cluster Anda.  Dalam pengaturan saya, saya hanya melakukan ini pada "node1"

# yum menginstal tigervnc-server xterm
# vncpasswd
# vi / etc / sysconfig / vncservers

      VNCSERVERS = "2: root"
      VNCSERVERARGS [2] = "- geometri 1024x768"

# service vncserver mulai
# chkconfig vncserver aktif

Uji konektivitas dengan membuka klien VNC di laptop / desktop Anda, dan hubungkan ke Public IP dari node cluster Anda

Reboot Cluster Nodes

Reboot node kluster Anda sehingga SELinux dinonaktifkan, dan disk kedua yang sebelumnya Anda tambahkan terdeteksi. Hanya "node1" dan "node2" perlu di-reboot.

Partisi dan Format disk “data”

Pada Langkah 6 dari panduan ini (“Tambah Data Disk ke cluster node”) kami melakukan itu… .menambahkan disk ekstra ke setiap node cluster untuk menyimpan data aplikasi yang akan kami lindungi.  Dalam hal ini kebetulan database MySQL. Di Azure IaaS, Linux Virtual Machines menggunakan pengaturan berikut untuk disk:

  • / dev / sda – disk OS
  • / dev / sdb – disk sementara
  • / dev / sdc – disk data pertama
  • / dev / sdd – disk data ke-2
  • …
  • / dev / sdj – disk data ke-8

Disk yang kami tambahkan pada Langkah 6 dari panduan ini akan muncul sebagai / dev / sdc.  Anda dapat menjalankan perintah "fdisk-l" untuk memverifikasi.  Anda akan melihat bahwa / dev / sda (OS) dan / dev / sdb (sementara) sudah memiliki partisi disk dan sedang digunakan.

# fdisk-l

Disk / dev / sdb: 306.0 GB, 306016419840 byte
255 kepala, 63 sektor / track, 37204 silinder
Unit = silinder 16065 * 512 = 8225280 byte
Ukuran sektor (logis / fisik): 512 byte / 512 byte
I / O size (minimum / optimal): 512 bytes / 512 bytes
Pengenal disk: 0xd3920649

Perangkat Boot Mulai Akhir Blok Sistem Id
/ dev / sdb1 * 1 37205 298842112 83 Linux

Disk / dev / sdc: 10.7 GB, 10737418240 byte
255 kepala, 63 sektor / track, 1305 silinder
Unit = silinder 16065 * 512 = 8225280 byte
Ukuran sektor (logis / fisik): 512 byte / 512 byte
I / O size (minimum / optimal): 512 bytes / 512 bytes
Pengenal disk: 0x00000000

Disk / dev / sda: 32,2 GB, 32212254720 byte
255 kepala, 63 sektor / track, 3916 silinder
Unit = silinder 16065 * 512 = 8225280 byte
Ukuran sektor (logis / fisik): 512 byte / 512 byte
I / O size (minimum / optimal): 512 bytes / 512 bytes
Pengidentifikasi disk: 0x000c23d3

Perangkat Boot Mulai Akhir Blok Sistem Id
/ dev / sda1 * 1 3789 30432256 83 Linux
/ dev / sda2 3789 3917 1024000 82 Linux swap / Solaris

  Di sini saya akan membuat partisi (/ dev / sdc1), memformatnya, dan memasangnya di lokasi default untuk MySQL, yang / var / lib / mysql.  Lakukan langkah-langkah berikut pada KEDUA "node1" dan "node2":

# fdisk / dev / sdc
Perintah (m untuk bantuan): n
Komando aksi
e diperpanjang
p partisi primer (1-4)
p
Nomor partisi (1-4): 1
Silinder pertama (1-1305, default 1): <enter>
Menggunakan nilai default 1
Silinder, silinder atau ukuran terakhir {K, M, G} (1-1305, default 1305): <enter>
Menggunakan nilai default 1305
 
Perintah (m untuk bantuan): w
Tabel partisi telah diubah!
Memanggil ioctl () untuk membaca kembali tabel partisi.
Sinkronisasi disk.
[root @ node1 ~] #

# mkfs.ext4 / dev / sdc1
# mkdir / var / lib / mysql

Pada node1, mount filesystem:

# mount / dev / sdc1 / var / lib / mysql

Instal dan Konfigurasi MySQL

Selanjutnya, instal instal paket-paket MySQL, inisialisasi database contoh, dan atur kata sandi “root” untuk MySQL.

Pada “node1”:

# yum -y install mysql mysql-server
# / usr / bin / mysql_install_db --datadir = "/ var / lib / mysql /" --user = mysql
# mysqld_safe --user = root --socket = / var / lib / mysql / mysql.sock --port = 3306 
--datadir = / var / lib / mysql --log &
#
# # CATATAN: Perintah berikutnya ini memungkinkan koneksi jarak jauh dari host APAPUN.  
BUKAN ide bagus untuk produksi!
# echo "perbarui set pengguna Host = '%' di mana Host = 'node1'; hak istimewa siram | mysql mysql
#
# #Menyetel kata sandi root MySQL ke 'SIOS'
# echo "update user set Kata Sandi = PASSWORD ('SIOS') di mana Pengguna = 'root'; hak istimewa siram" 
| mysql mysql

Buat file konfigurasi MySQL. Kami akan menempatkan ini pada disk data (yang nantinya akan direplikasi – /var/lib/mysql/my.cnf).  Contoh:

# vi /var/lib/mysql/my.cnf

[mysqld]
datadir = / var / lib / mysql
socket = / var / lib / mysql / mysql.sock
pid-file = / var / lib / mysql / mysqld.pid
pengguna = root
port = 3306
# Menonaktifkan tautan simbolik disarankan untuk mencegah berbagai risiko keamanan
symbolic-links = 0
 
[mysqld_safe]
log-error = / var / log / mysqld.log
pid-file = / var / run / mysqld / mysqld.pid
 
[klien]
pengguna = root
kata sandi = SIOS

Hapus file konfigurasi MySQL asli, yang terletak di / etc, jika ada:

# rm /etc/my.cnf

Pada "node2":

Pada "node2", Anda HANYA perlu menginstal paket MySQL.  Langkah-langkah lain tidak diperlukan:

[root @ node2 ~] # yum -y install mysql mysql-server

Instal dan Konfigurasikan Cluster

Pada titik ini, kami siap untuk menginstal dan mengkonfigurasi cluster kami.  SIOS Protection Suite untuk Linux (alias SPS-Linux) akan digunakan dalam panduan ini sebagai teknologi pengelompokan.  Ini menyediakan fitur pengelompokan failover ketersediaan tinggi (LifeKeeper) maupun real-time, replikasi data tingkat blok (DataKeeper) dalam satu solusi terintegrasi.  SPS-Linux memungkinkan Anda untuk menyebarkan klaster "SANLess", alias klaster "berbagi apa-apa" yang berarti bahwa node kluster tidak memiliki penyimpanan bersama, seperti halnya dengan Azure VMs.

Instal SIOS Protection Suite untuk Linux

Lakukan langkah-langkah berikut pada SEMUA 3 VM (node1, node2, witness): Unduh file gambar instalasi SPS-Linux (sps.img) dan dan dapatkan lisensi percobaan atau beli lisensi permanen.  Hubungi SIOS untuk informasi lebih lanjut. Anda akan melakukan loopback mount dan menjalankan skrip "setup" di dalam, sebagai root (atau "sudo su -" pertama untuk mendapatkan shell root) Sebagai contoh:

# mkdir / tmp / install
# mount -o loop sps.img / tmp / install
# cd / tmp / install
# ./mempersiapkan

Selama skrip instalasi, Anda akan diminta untuk menjawab sejumlah pertanyaan.  Anda akan menekan Enter di hampir setiap layar untuk menerima nilai default.  Perhatikan pengecualian berikut:

  • Pada layar berjudul “NFS Ketersediaan Tinggi” Anda dapat memilih “n” karena kami tidak akan membuat server NFS yang sangat tersedia
  • Menjelang akhir skrip pengaturan, Anda dapat memilih untuk menginstal kunci lisensi percobaan sekarang, atau yang lebih baru. Kami akan menginstal kunci lisensi nanti, jadi Anda dapat dengan aman memilih "n" pada titik ini
  • Di layar terakhir dari "setup" pilih ARK (Application Recovery Kit, yaitu "cluster agents") yang ingin Anda instal dari daftar yang ditampilkan di layar.
    • ARK HANYA diperlukan pada "node1" dan "node2".  Anda tidak perlu menginstal pada "saksi"
    • Arahkan daftar dengan panah atas / bawah, dan tekan spasi untuk memilih yang berikut:
      • lkDR – DataKeeper untuk Linux
      • lkSQL – LifeKeeper MySQL RDBMS Recovery Kit
    • Ini akan menghasilkan tambahan RPM tambahan yang diinstal pada "node1" dan "node2":
      • steeleye-lkDR-9.0.2-6513.noarch.rpm
      • steeleye-lkSQL-9.0.2-6513.noarch.rpm

Pasang paket Saksi / Kuorum

Paket Dukungan Quorum / Saksi Server untuk LifeKeeper (steeleye-lkQWK) dikombinasikan dengan proses failover yang ada dari inti LifeKeeper memungkinkan sistem failover terjadi dengan tingkat kepercayaan yang lebih besar dalam situasi di mana kegagalan total jaringan dapat terjadi. Ini secara efektif berarti bahwa failover dapat dilakukan sambil sangat mengurangi risiko "split-brain" situation. Instal rpm Saksi / Quorum pada semua 3 node (node1, node2, witness):

# cd / tmp / install / quorum
# Rpm -Uvh steeleye-lkQWK-9.0.2-6513.noarch.rpm

Pada SEMUA 3 node (node1, node2, witness), edit / etc / default / LifeKeeper, atur NOBCASTPING = 1 On HANYA server Witness ("witness"), edit / etc / default / LifeKeeper, set WITNESS_MODE = off / none

Instal kunci Lisensi

Pada semua 3 node, gunakan perintah "lkkeyins" untuk menginstal file lisensi yang Anda dapatkan dari SIOS:

# / opt / LifeKeeper / bin / lkkeyins <path_to_file> / <filename> .lic

Mulai LifeKeeper

Pada semua 3 node, gunakan perintah "lkstart" untuk memulai perangkat lunak cluster:

# / opt / LifeKeeper / bin / lkstart

Atur Izin Pengguna untuk GUI LifeKeeper

Pada semua 3 node, edit / etc / group dan tambahkan pengguna "tony" (atau nama pengguna apa pun yang Anda tentukan selama pembuatan VM) ke grup "lkadmin" untuk memberikan akses ke GUI LifeKeeper.  Secara default, hanya "root" adalah anggota grup, dan kami tidak memiliki kata sandi root:

# vi / etc / group

lkadmin: x: 1001: root, tony

Buka GUI LifeKeeper

Buat koneksi VNC ke alamat IP publik dari node1.  Berdasarkan konfigurasi VNC dan Inbound Security Rule dari atas, Anda akan terhubung ke <Public_IP>: 2 menggunakan kata sandi VNC yang Anda tentukan sebelumnya.  Setelah masuk, buka jendela terminal dan jalankan GUI LifeKeeper menggunakan perintah berikut:

# / opt / LifeKeeper / bin / lkGUIapp &

Anda akan diminta untuk terhubung ke node cluster pertama Anda ("node1"). lk-gui-connect3

 

  

  •  
  •  

    

  •  
  •  
  •  

       

 

  

  

  

 
 
 
 
 
 
 
 
 

  

 
 
 
 
 
 
 
 
 
 

  

 

  

 
 
 
 
 
 

 

 
 
 
 
 
 
 

 

          

 

   

 
 
 
 
 
 

 

 
 
 
 

   

 

       

 

               

 

  

 

 

 

 

 
  
 
  
 
  
 
 

   

 
 
  
 
 
  
 
  
 
  
 
 

 

Filed Under: Cluster server penyederhanaan Tagged With: linux failover cluster di microsoft biru tanpa menggunakan penyimpanan bersama, MySQL

Linux failover cluster di Microsoft Azure IaaS tanpa penyimpanan bersama

Desember 19, 2018 by Jason Aw Leave a Comment

Step-By-Step: Cara Mengonfigurasi Cluster Failover Linux Di Microsoft Azure IaaS Tanpa Penyimpanan Bersama #azure #sanless

Dalam panduan langkah demi langkah ini saya akan membawa Anda melalui semua langkah yang diperlukan untuk mengkonfigurasi cluster MySQL 2-node yang sangat tersedia (plus saksi server) di Microsoft Azure IaaS (Infrastruktur sebagai Layanan).  Panduan ini mencakup screenshot, perintah shell dan cuplikan kode sebagaimana mestinya.  Saya berasumsi bahwa Anda agak akrab dengan Microsoft Azure dan sudah memiliki akun Azure dengan langganan terkait.  Jika tidak, Anda dapat mendaftar untuk mendapatkan akun gratis hari ini.  Saya juga akan berasumsi bahwa Anda memiliki keterampilan administrasi sistem linux dasar serta memahami konsep pengelompokan failover dasar seperti Virtual IP, dll.

Penafian: Azure adalah target yang bergerak cepat.  Ini menjadi lebih baik dan lebih baik setiap hari! Dengan demikian, fitur / layar / tombol akan berubah seiring waktu sehingga pengalaman Anda mungkin sedikit berbeda dari apa yang Anda lihat di bawah.  Sementara panduan ini akan menunjukkan kepada Anda bagaimana membuat database MySQL sangat tersedia, Anda pasti dapat menyesuaikan informasi dan proses ini untuk melindungi aplikasi atau database lain, seperti SAP, Oracle, PostgreSQL, server file NFS, dan banyak lagi. Ini adalah langkah-langkah tingkat tinggi untuk membuat database MySQL yang sangat tersedia dalam Microsoft Azure IaaS:

  1. Buat Grup Sumber Daya
  2. Buat Jaringan Virtual
  3. Buat Akun Penyimpanan
  4. Buat Mesin Virtual di dalam Set Ketersediaan
  5. Tetapkan Alamat IP Statis VM
  6. Tambahkan Data Disk ke cluster node
  7. Buat Aturan Keamanan Masuk untuk memungkinkan akses VNC
  8. Konfigurasi OS Linux
  9. Instal dan Konfigurasikan MySQL
  10. Instal dan Konfigurasikan Cluster
  11. Buat Penyeimbang Beban Internal
  12. Uji Konektivitas Cluster

Ikhtisar

Artikel ini akan menginformasikan langkah-langkah untuk mengkonfigurasi Linux Failover Cluster Di Microsoft Azure IaaS Tanpa Penyimpanan Bersama. Ini akan menjelaskan cara membuat kluster dalam satu wilayah Azure.  Node cluster (node1, node2 dan server saksi) akan berada dalam Set Ketersediaan (3 Domain Fault yang berbeda dan Pembaruan Domain), terima kasih kepada Azure Resource Manager (ARM) baru. Kami akan membuat semua sumber daya menggunakan Manajer Sumber Daya Azure baru. Konfigurasi akan terlihat seperti iCluster-Diagramni: Alamat IP berikut akan digunakan:

  • node1: 10.0.0.4
  • node2: 10.0.0.5
  • saksi: 10.0.0.6
  • virtual / "mengambang" IP: 10.0.0.99
  • Port MySQL: 3306

Buat Grup Sumber Daya

Pertama, buat Grup Sumber Daya.  Grup sumber daya Anda akan berakhir dengan memuat semua berbagai objek yang terkait dengan penyebaran klaster kami: mesin virtual, jaringan virtual, akun penyimpanan, dll.  Di sini kita akan memanggil "cluster-sumber" sumber daya yang baru kita buat. grup sumber daya1 Perhatikan saat memilih wilayah Anda.  Semua sumber daya Anda akan perlu berada di wilayah yang sama.  Di sini, kami akan menerapkan semuanya ke dalam wilayah “AS Barat”: grup sumber daya2

Buat Jaringan Virtual (VNet)

Membuat Jaringan Virtual akan menjadi langkah Anda berikutnya dalam menghubungkan Failover Cluster Linux Di Microsoft Azure IaaS Tanpa Penyimpanan Bersama. Jaringan Virtual adalah jaringan yang terisolasi dalam awan Azure yang didedikasikan untuk Anda.  Anda memiliki kontrol penuh atas hal-hal seperti blok alamat IP dan subnet, perutean, kebijakan keamanan (yaitu firewall), pengaturan DNS, dan banyak lagi.  Anda akan meluncurkan mesin virtual Azure Iaas (VMs) ke dalam Jaringan Virtual Anda. jaringan maya1 Pastikan Anda memilih Resource Manager sebagai model penyebaran kapan saja Anda diberi pilihan: Berjaringan virtual2ikan nama Jaringan Virtual Anda yang baru ("jaringan virtual") dan pastikan Anda memilih grup sumber daya yang dibuat pada langkah sebelumnya ("cluster-" sumber daya ”).  Jaringan Virtual Anda harus berada di wilayah yang sama dengan Kelompok Sumber Daya Anda.  Kami akan membiarkan IP Address dan nilai-nilai Subnet sebagai default. jaringan virtual3

Buat Akun Penyimpanan

Sebelum Anda menyediakan Mesin Virtual apa pun, Anda harus membuat Akun Penyimpanan tempat mereka akan disimpan. akun penyimpanan1 Sekali lagi, pastikan Anda memilih Resource Manager sebagai model penerapan kapan saja Anda diberi opsi: Beakun penyimpanan2rikutnya, beri nama akun penyimpanan baru Anda.  Nama akun penyimpanan harus unik di * ALL * of Azure.  (Setiap objek yang Anda simpan di Azure Storage memiliki alamat URL yang unik. Nama akun penyimpanan membentuk subdomain dari alamat itu.) Dalam contoh ini saya menyebut akun penyimpanan saya "linuxclusterstorage" tetapi Anda harus memilih sesuatu yang berbeda saat Anda mengaturnya sendiri. Pilih Jenis penyimpanan berdasarkan kebutuhan dan anggaran Anda.  Untuk keperluan panduan ini, saya memilih "Standar-LRS" (yaitu Lokal Redundan) untuk meminimalkan biaya. Pastikan Akun Penyimpanan baru Anda ditambahkan ke Grup Sumber Daya yang Anda buat pada Langkah 1 ("sumber-sumber-gugus") di Lokasi yang sama ("AS Barat" dalam contoh ini): akun penyimpanan3

Buat Mesin Virtual di dalam Set Ketersediaan

Kami akan menyediakan 3 Mesin Virtual dalam panduan ini.  Dua VM pertama (saya akan menyebutnya "node1" dan "node2") akan berfungsi sebagai node klaster dengan kemampuan untuk membawa database MySQL dan sumber daya terkait secara online.  VM ke-3 akan bertindak sebagai server saksi kluster untuk perlindungan tambahan terhadap perpecahan otak. Untuk memastikan ketersediaan maksimum, semua 3 VM akan ditambahkan ke Kumpulan Ketersediaan yang sama, memastikan bahwa mereka akan berakhir di Domain Fault yang berbeda dan Perbarui Domain.

Buat "node1" VM

Buat VM pertama Anda ("node1").  Dalam panduan ini kita akan menggunakan CentOS 6buat vm1.X: Pastikan Anda menggunakan model penyebaran Resource Manager.  Ini harus dipilih secara default: Berbuat vm2ikan VM nama host ("node1") dan nama pengguna / kata sandi yang nantinya akan digunakan untuk SSH ke dalam sistem.  Pastikan Anda menambahkan VM ini ke dalam Grup Sumber Daya Anda ("cluster-resources") dan berada di wilayah yang sama dengan semua sumber daya Anda yang lain: Sebuat vm3lanjutnya, pilih ukuran instance Anda.  Untuk informasi lebih lanjut tentang berbagai ukuran contoh yang tersedia, klik di sini. Untuk keperluan panduan ini, saya menggunakan "Standar A3" untuk Node1 dan Node2, untuk meminimalkan biaya karena ini tidak akan menjalankan beban kerja produksi.  Saya menggunakan ukuran “A1 Standard” yang lebih kecil untuk server saksi.  Pilih ukuran instance yang paling masuk akal untuk Anda. buat vm4 Jika Anda ingin dapat terhubung ke VM dari dunia luar, tetapkan alamat IP Publik.  Saya melakukan ini agar nantinya saya dapat SSH dan VNC ke dalam sbuat vm5istem PENTING: Secara default, VM Anda tidak akan ditambahkan ke Kumpulan Ketersediaan.  Pada layar Pengaturan selama pastikan Anda membuat Kumpulan Ketersediaan baru, kami akan memanggil "ketersediaan-kumpulan-kluster".  Azure Resource Manager (ARM) memungkinkan Anda untuk membuat Set Ketersediaan dengan 3 Domain Kesalahan.  Nilai default di sini baik-baik sajabuat vm6: Tinjau properti VM Anda dan klik OK untuk membuat VM pertama Anda: buat vm7

Buat "node2" dan "saksi" VMs

Ulangi langkah-langkah di atas dua kali untuk membuat dua VM lagi.  Saya membuat ukuran "A3 Standard" ukuran VM lain yang disebut "node2" dan ukuran "A1 Standard" VM yang disebut "saksi". Satu-satunya perbedaan di sini adalah Anda akan MENAMBAHKAN VM ini ke Kumpulan Ketersediaan ("ketersediaan-gugus-gugus") yang baru saja kami bubuat vm8at: Diperlukan waktu beberapa saat bagi penyediaan 3 VMs Anda.  Setelah selesai, Anda akan melihat VM Anda tercantum di layar Mesin Virtual dalam Portal Azure Anda: buat vm9

Tetapkan Alamat IP Statis VM

VMs akan diatur dengan alamat IP berikut:

  • node1: 10.0.0.4
  • node2: 10.0.0.5
  • saksi: 10.0.0.6

Ulangi langkah ini untuk setiap VM.  Pilih VM Anda dan edit Antarmuka Jaringan Palamat ip statis1ilih antarmuka jaringan yang terkait dengan VM, dan edit alamat IP.  Pilih "Static" dan tentukan alamat IP yang diinginkan: alamat ip statis2

Tambahkan Data Disk ke cluster node

Selanjutnya, kita perlu menambahkan disk ekstra ke node cluster kami ("node1" dan "node2").  Disk ini akan menyimpan database MySQL kami dan kemudian direplikasi antara node. Catatan: Anda TIDAK perlu menambahkan disk ekstra ke node “saksi”.  Hanya "node1" dan "node2". Edit VM Anda, pilih Disk dan kemudian pasang disk baru: Pdisk1 keduailih jenis disk (SSD Standar atau Premium) dan ukuran berdasarkan beban kerja Anda.  Di sini saya membuat disk Standar 10GB pada kedua node cluster saya.  Sejauh cache Host pergi, cache “Tidak ada” atau “Hanya baca” baik-baik saja.  Saya tidak menyarankan menggunakan "Baca / Tulis" karena ada potensi kehilangan data: disk2 kedua

Buat Aturan Keamanan Masuk untuk memungkinkan akses VNC

Jika VM Anda adalah bagian dari Network Security Group (NSG), yang secara default kemungkinannya adalah kecuali Anda menonaktifkannya selama pembuatan VM, satu-satunya port yang terbuka di "Azure firewall" adalah SSH (port 22).  Nanti di panduan ini, saya akan menggunakan VNC untuk mengakses desktop "node1" dan mengonfigurasi gugus menggunakan GUI.  Buat Aturan Keamanan Masuk untuk membuka akses VNC.  Dalam panduan ini port 5902 digunakan.  Sesuaikan ini sesuai berdasarkan konfigurasi VNC Anda. Mesin Virtual -> (pilih node1) -> Antarmuka jaringan -> (pilih NIC) -> Grup keamanan jaringan -> (pilih NSG) -> Aturan keamanan masuk -> Tambah aturan keamanan masuk1

Konfigurasi OS Linux

Di sinilah kita akan meninggalkan Portal Azure untuk sementara dan mendapatkan tangan kita kotor pada baris perintah, yang sebagai administrator Linux Anda harus digunakan sekarang.  Anda tidak diberikan kata sandi root ke VM Linux Anda di Azure, jadi setelah Anda login sebagai pengguna yang ditentukan selama pembuatan VM, gunakan perintah "sudo" untuk mendapatkan hak akses root:

$ sudo su -

Edit / etc / hosts

Kecuali Anda sudah memiliki pengaturan server DNS, Anda akan ingin membuat entri file host pada semua 3 server sehingga mereka dapat menyelesaikan satu sama lain dengan nama Tambahkan baris berikut ke akhir file / etc / hosts Anda:

10.0.0.4 simpul1
10.0.0.5 node2
10.0.0.6 saksi
10.0.0.99 mysql-vip

Nonaktifkan SELinux

Edit / etc / sysconfig / linux dan atur "SELINUX = dinonaktifkan":

# vi / etc / sysconfig / selinux

# File ini mengontrol status SELinux pada sistem.
# SELINUX = dapat mengambil salah satu dari tiga nilai ini:
# Enforcing - Kebijakan keamanan SELinux diberlakukan.
# Permissive - SELinux mencetak peringatan daripada menegakkan.
# Disabled - Tidak ada kebijakan SELinux yang dimuat.
SELINUX = dinonaktifkan
# SELINUXTYPE = dapat mengambil salah satu dari dua nilai ini:
# Targeted - Proses yang ditargetkan terlindungi,
# Mls - Perlindungan Multi Level Security.
SELINUXTYPE = ditargetkan

Konfigurasi iptables agar mengelompokkan IP Virtual akan berfungsi

PENTING: Untuk mendapatkan konektivitas ke kluster Virtual IP untuk bekerja, dan juga memantau sumber daya IP, beberapa aturan iptabel perlu disetel.  Catatan: 10.0.0.99 adalah IP Virtual yang akan kami gunakan di kluster kami, dan 3306 adalah port default yang digunakan MySQL saya. Pada node1 (10.0.0.4), jalankan perintah berikut:

# iptables --fush
# iptables -t nat -A PREROUTING -p tcp --dport 3306 -j DNAT 
--to-destination 10.0.0.99:3306
# iptables -t nat -A POSTROUTING -p icmp -s 10.0.0.99 -j SNAT 
--ke-sumber 10.0.0.4
# layanan iptables simpan
# chkconfig iptables aktif

Pada Node2 (10.0.0.5), jalankan perintah berikut:

# iptables --fush
# iptables -t nat -A PREROUTING -p tcp --dport 3306 -j DNAT 
--to-destination 10.0.0.99:3306
# iptables -t nat -A POSTROUTING -p icmp -s 10.0.0.99 -j SNAT 
--ke-sumber 10.0.0.5
# layanan iptables simpan
# chkconfig iptables aktif

Instal dan Konfigurasikan VNC (dan paket terkait)

Untuk mengakses GUI server linux kami, untuk kemudian mengkonfigurasi kluster kami, instal server VNC pada node cluster Anda.  Dalam pengaturan saya, saya hanya melakukan ini pada "node1"

# yum menginstal tigervnc-server xterm
# vncpasswd
# vi / etc / sysconfig / vncservers

      VNCSERVERS = "2: root"
      VNCSERVERARGS [2] = "- geometri 1024x768"

# service vncserver mulai
# chkconfig vncserver aktif

Uji konektivitas dengan membuka klien VNC di laptop / desktop Anda, dan hubungkan ke Public IP dari node cluster Anda

Reboot Cluster Nodes

Reboot node kluster Anda sehingga SELinux dinonaktifkan, dan disk kedua yang sebelumnya Anda tambahkan terdeteksi. Hanya "node1" dan "node2" perlu di-reboot.

Partisi dan Format disk “data”

Pada Langkah 6 dari panduan ini (“Tambah Data Disk ke cluster node”) kami melakukan itu… .menambahkan disk ekstra ke setiap node cluster untuk menyimpan data aplikasi yang akan kami lindungi.  Dalam hal ini kebetulan database MySQL. Di Azure IaaS, Linux Virtual Machines menggunakan pengaturan berikut untuk disk:

  • / dev / sda – disk OS
  • / dev / sdb – disk sementara
  • / dev / sdc – disk data pertama
  • / dev / sdd – disk data ke-2
  • …
  • / dev / sdj – disk data ke-8

Disk yang kami tambahkan pada Langkah 6 dari panduan ini akan muncul sebagai / dev / sdc.  Anda dapat menjalankan perintah "fdisk-l" untuk memverifikasi.  Anda akan melihat bahwa / dev / sda (OS) dan / dev / sdb (sementara) sudah memiliki partisi disk dan sedang digunakan.

# fdisk-l

Disk / dev / sdb: 306.0 GB, 306016419840 byte
255 kepala, 63 sektor / track, 37204 silinder
Unit = silinder 16065 * 512 = 8225280 byte
Ukuran sektor (logis / fisik): 512 byte / 512 byte
I / O size (minimum / optimal): 512 bytes / 512 bytes
Pengenal disk: 0xd3920649

Perangkat Boot Mulai Akhir Blok Sistem Id
/ dev / sdb1 * 1 37205 298842112 83 Linux

Disk / dev / sdc: 10.7 GB, 10737418240 byte
255 kepala, 63 sektor / track, 1305 silinder
Unit = silinder 16065 * 512 = 8225280 byte
Ukuran sektor (logis / fisik): 512 byte / 512 byte
I / O size (minimum / optimal): 512 bytes / 512 bytes
Pengenal disk: 0x00000000

Disk / dev / sda: 32,2 GB, 32212254720 byte
255 kepala, 63 sektor / track, 3916 silinder
Unit = silinder 16065 * 512 = 8225280 byte
Ukuran sektor (logis / fisik): 512 byte / 512 byte
I / O size (minimum / optimal): 512 bytes / 512 bytes
Pengidentifikasi disk: 0x000c23d3

Perangkat Boot Mulai Akhir Blok Sistem Id
/ dev / sda1 * 1 3789 30432256 83 Linux
/ dev / sda2 3789 3917 1024000 82 Linux swap / Solaris

  Di sini saya akan membuat partisi (/ dev / sdc1), memformatnya, dan memasangnya di lokasi default untuk MySQL, yang / var / lib / mysql.  Lakukan langkah-langkah berikut pada KEDUA "node1" dan "node2":

# fdisk / dev / sdc
Perintah (m untuk bantuan): n
Komando aksi
e diperpanjang
p partisi primer (1-4)
p
Nomor partisi (1-4): 1
Silinder pertama (1-1305, default 1): <enter>
Menggunakan nilai default 1
Silinder, silinder atau ukuran terakhir {K, M, G} (1-1305, default 1305): <enter>
Menggunakan nilai default 1305
 
Perintah (m untuk bantuan): w
Tabel partisi telah diubah!
Memanggil ioctl () untuk membaca kembali tabel partisi.
Sinkronisasi disk.
[root @ node1 ~] #

# mkfs.ext4 / dev / sdc1
# mkdir / var / lib / mysql

Pada node1, mount filesystem:

# mount / dev / sdc1 / var / lib / mysql

Instal dan Konfigurasi MySQL

Selanjutnya, instal instal paket-paket MySQL, inisialisasi database contoh, dan atur kata sandi “root” untuk MySQL.

Pada “node1”:

# yum -y install mysql mysql-server
# / usr / bin / mysql_install_db --datadir = "/ var / lib / mysql /" --user = mysql
# mysqld_safe --user = root --socket = / var / lib / mysql / mysql.sock --port = 3306 
--datadir = / var / lib / mysql --log &
#
# # CATATAN: Perintah berikutnya ini memungkinkan koneksi jarak jauh dari host APAPUN.  
BUKAN ide bagus untuk produksi!
# echo "perbarui set pengguna Host = '%' di mana Host = 'node1'; hak istimewa siram | mysql mysql
#
# #Menyetel kata sandi root MySQL ke 'SIOS'
# echo "update user set Kata Sandi = PASSWORD ('SIOS') di mana Pengguna = 'root'; hak istimewa siram" 
| mysql mysql

Buat file konfigurasi MySQL. Kami akan menempatkan ini pada disk data (yang nantinya akan direplikasi – /var/lib/mysql/my.cnf).  Contoh:

# vi /var/lib/mysql/my.cnf

[mysqld]
datadir = / var / lib / mysql
socket = / var / lib / mysql / mysql.sock
pid-file = / var / lib / mysql / mysqld.pid
pengguna = root
port = 3306
# Menonaktifkan tautan simbolik disarankan untuk mencegah berbagai risiko keamanan
symbolic-links = 0
 
[mysqld_safe]
log-error = / var / log / mysqld.log
pid-file = / var / run / mysqld / mysqld.pid
 
[klien]
pengguna = root
kata sandi = SIOS

Hapus file konfigurasi MySQL asli, yang terletak di / etc, jika ada:

# rm /etc/my.cnf

Pada "node2":

Pada "node2", Anda HANYA perlu menginstal paket MySQL.  Langkah-langkah lain tidak diperlukan:

[root @ node2 ~] # yum -y install mysql mysql-server

Instal dan Konfigurasikan Cluster

Pada titik ini, kami siap untuk menginstal dan mengkonfigurasi cluster kami.  SIOS Protection Suite untuk Linux (alias SPS-Linux) akan digunakan dalam panduan ini sebagai teknologi pengelompokan.  Ini menyediakan fitur pengelompokan failover ketersediaan tinggi (LifeKeeper) maupun real-time, replikasi data tingkat blok (DataKeeper) dalam satu solusi terintegrasi.  SPS-Linux memungkinkan Anda untuk menyebarkan klaster "SANLess", alias klaster "berbagi apa-apa" yang berarti bahwa node kluster tidak memiliki penyimpanan bersama, seperti halnya dengan Azure VMs.

Instal SIOS Protection Suite untuk Linux

Lakukan langkah-langkah berikut pada SEMUA 3 VM (node1, node2, witness): Unduh file gambar instalasi SPS-Linux (sps.img) dan dan dapatkan lisensi percobaan atau beli lisensi permanen.  Hubungi SIOS untuk informasi lebih lanjut. Anda akan melakukan loopback mount dan menjalankan skrip "setup" di dalam, sebagai root (atau "sudo su -" pertama untuk mendapatkan shell root) Sebagai contoh:

# mkdir / tmp / install
# mount -o loop sps.img / tmp / install
# cd / tmp / install
# ./mempersiapkan

Selama skrip instalasi, Anda akan diminta untuk menjawab sejumlah pertanyaan.  Anda akan menekan Enter di hampir setiap layar untuk menerima nilai default.  Perhatikan pengecualian berikut:

  • Pada layar berjudul “NFS Ketersediaan Tinggi” Anda dapat memilih “n” karena kami tidak akan membuat server NFS yang sangat tersedia
  • Menjelang akhir skrip pengaturan, Anda dapat memilih untuk menginstal kunci lisensi percobaan sekarang, atau yang lebih baru. Kami akan menginstal kunci lisensi nanti, jadi Anda dapat dengan aman memilih "n" pada titik ini
  • Di layar terakhir dari "setup" pilih ARK (Application Recovery Kit, yaitu "cluster agents") yang ingin Anda instal dari daftar yang ditampilkan di layar.
    • ARK HANYA diperlukan pada "node1" dan "node2".  Anda tidak perlu menginstal pada "saksi"
    • Arahkan daftar dengan panah atas / bawah, dan tekan spasi untuk memilih yang berikut:
      • lkDR – DataKeeper untuk Linux
      • lkSQL – LifeKeeper MySQL RDBMS Recovery Kit
    • Ini akan menghasilkan tambahan RPM tambahan yang diinstal pada "node1" dan "node2":
      • steeleye-lkDR-9.0.2-6513.noarch.rpm
      • steeleye-lkSQL-9.0.2-6513.noarch.rpm

Pasang paket Saksi / Kuorum

Paket Dukungan Quorum / Saksi Server untuk LifeKeeper (steeleye-lkQWK) dikombinasikan dengan proses failover yang ada dari inti LifeKeeper memungkinkan sistem failover terjadi dengan tingkat kepercayaan yang lebih besar dalam situasi di mana kegagalan total jaringan dapat terjadi. Ini secara efektif berarti bahwa failover dapat dilakukan sambil sangat mengurangi risiko "split-brain" situation. Instal rpm Saksi / Quorum pada semua 3 node (node1, node2, witness):

# cd / tmp / install / quorum
# Rpm -Uvh steeleye-lkQWK-9.0.2-6513.noarch.rpm

Pada SEMUA 3 node (node1, node2, witness), edit / etc / default / LifeKeeper, atur NOBCASTPING = 1 On HANYA server Witness ("witness"), edit / etc / default / LifeKeeper, set WITNESS_MODE = off / none

Instal kunci Lisensi

Pada semua 3 node, gunakan perintah "lkkeyins" untuk menginstal file lisensi yang Anda dapatkan dari SIOS:

# / opt / LifeKeeper / bin / lkkeyins <path_to_file> / <filename> .lic

Mulai LifeKeeper

Pada semua 3 node, gunakan perintah "lkstart" untuk memulai perangkat lunak cluster:

# / opt / LifeKeeper / bin / lkstart

Atur Izin Pengguna untuk GUI LifeKeeper

Pada semua 3 node, edit / etc / group dan tambahkan pengguna "tony" (atau nama pengguna apa pun yang Anda tentukan selama pembuatan VM) ke grup "lkadmin" untuk memberikan akses ke GUI LifeKeeper.  Secara default, hanya "root" adalah anggota grup, dan kami tidak memiliki kata sandi root:

# vi / etc / group

lkadmin: x: 1001: root, tony

Buka GUI LifeKeeper

Buat koneksi VNC ke alamat IP publik dari node1.  Berdasarkan konfigurasi VNC dan Inbound Security Rule dari atas, Anda akan terhubung ke <Public_IP>: 2 menggunakan kata sandi VNC yang Anda tentukan sebelumnya.  Setelah masuk, buka jendela terminal dan jalankan GUI LifeKeeper menggunakan perintah berikut:

# / opt / LifeKeeper / bin / lkGUIapp &

Anda akan diminta untuk terhubung ke node cluster pertama Anda ("node1"). lk-gui-connect3

 

  

  •  
  •  

    

  •  
  •  
  •  

       

 

  

  

  

 
 
 
 
 
 
 
 
 

  

 
 
 
 
 
 
 
 
 
 

  

 

  

 
 
 
 
 
 

 

 
 
 
 
 
 
 

 

          

 

   

 
 
 
 
 
 

 

 
 
 
 

   

 

       

 

               

Uji Konektivitas Cluster

  

 

 

 

 

 
  
 
  
 
  
 
 

   

 
 
  
 
 
  
 
  
 
  
 
 

 

Filed Under: Cluster server penyederhanaan Tagged With: linux failover cluster di microsoft biru tanpa menggunakan penyimpanan bersama, MySQL

Panduan Untuk Menghubungkan Ke Target iSCSI Menggunakan Perangkat Lunak Inisiatif Open-iSCSI

Desember 18, 2018 by Jason Aw Leave a Comment

Langkah Demi Langkah: Hubungkan Ke Target iSCSI Menggunakan Perangkat Lunak Inisiatif Open-iSCSI

Artikel ini akan menunjukkan kepada Anda bagaimana mengkonfigurasi Open-iSCSI inisiator (klien) untuk terhubung ke target iSCSI yang ada (server).  Saya tidak akan benar-benar meninjau cara men-setup Target iSCSI dalam artikel ini. Jika Anda belum memiliki Target iSCSI yang tersedia di lingkungan Anda, Anda dapat melihat OpenFiler.

Dalam panduan ini, saya menggunakan sistem CentOS 6.5 sebagai inisiator iSCSI (klien) dan akan terhubung ke target iSCSI yang ada.

Instal Perangkat Lunak Open-iSCSI

Pada sistem CentOS 6.5 saya, paket inisiasi open iscsi tidak diinstal secara default.  Anda dapat memeriksa untuk melihat apakah sistem Anda memiliki paket yang diinstal dengan menjalankan perintah berikut: [root @ linux ~] # rpm -qa | grep iscsi-inisiator-utils Jika paket issi-inisiator-utils belum terinstal, gunakan perintah "yum" untuk menginstalnya: [root @ linux ~] # yum install iscsi-inisiator-utils

Mulai Layanan iSCSI

Setelah menginstal paket iscsi-inisiator-utils, jalankan layanan iscsid dan konfigurasikan layanan iscsid dan iscsi untuk secara otomatis memulai setiap kali boot sistem: [root @ linux ~] # /etc/init.d/iscsid start [root @ linux ~] # chkconfig iscsid pada [root @ linux ~] # chkconfig iscsi pada

Temukan Target iSCSI

Gunakan perintah iscsiadm untuk menemukan semua target iSCSI di server Target iSCSI Anda (yaitu SAN iSCSI Anda.  Dalam hal ini server saya menjalankan OpenFiler): [root @ linux ~] # iscsiadm -m discovery -t sendtargets -p 192.168.197.201 192.168.197.201:3260,1 iqn.2006-01.com.openfiler: tsn.target1 Catatan: Dalam contoh saya, nama host dari Target iSCSI saya (SAN) adalah "openfiler.mydomain.com" dan memiliki alamat IP 192.168.197.201

Login Ke Target iSCSI Dan Konfigurasikan Login Otomatis Pada Saat Boot

[root @ linux ~] # iscsiadm -m node -T iqn.2006-01.com.openfiler: tsn.target1 -p 192.168.197.201 --login [root @ linux ~] # iscsiadm -m node -T iqn.2006 -01.com.openfiler: tsn.target1 -p 192.168.197.201 --op update -n node.startup -v otomatis Verifikasi sesi iSCSI aktif [root @ linux ~] # iscsiadm -m sesi tcp: [1] 192.168. 197.201: 3260,1 iqn.2006-01.com.openfiler: tsn.target1 Identifikasi perangkat mana yang target iSCSI peta ke [root @ linux ~] # (cd / dev / disk / by-path; ls-l * iscsi * | awk '{FS = ""; cetak $ 9 "" $ 10 "" $ 11}') ip-192.168.197.201: 3260-iscsi-iqn.2006-01.com.openfiler: tsn.target1-lun-0 ->. ./../sdc Ini memberitahu kita bahwa target iSCSI telah dipetakan ke / dev / sdc pada sistem.  Dari sini, gunakan perintah pemformatan / pemformatan standar (fdisk, mkfs, dll) untuk mengatur disk seperti yang diinginkan! Jika Anda tertarik untuk mengetahui cara Menghubungkan ke Target iSCSI Menggunakan Open-iSCSI Initiator Software, lakukan baca blog kami Direproduksi dengan izin dari Linuxclustering

Filed Under: Cluster server penyederhanaan Tagged With: buka inisiator iscsi

  • 1
  • 2
  • 3
  • Next Page »

Tulisan Terbaru

  • 10 Pertimbangan dalam Memilih Solusi Ketersediaan Tinggi di Lingkungan Nutanix
  • Apakah server saya sekali pakai? Bagaimana perangkat lunak High Availability sesuai dengan praktik terbaik cloud
  • Strategi Pemulihan Data untuk Dunia yang Rawan Bencana
  • DataKeeper dan Baseball: Pendekatan Strategis terhadap Pemulihan Bencana
  • Penganggaran untuk Risiko Downtime SQL Server

Posting Terpopuler

Bergabunglah dengan Milis Kami

Copyright © 2025 · Enterprise Pro Theme on Genesis Framework · WordPress · Log in