Pemacu Berkongsi Ketersediaan Tinggi Menggunakan Penyimpanan Blok Vultr dan GlusterFS

GlusterFS adalah sistem fail yang dilampirkan rangkaian yang secara berkesan membolehkan anda berkongsi dua pemacu di pelbagai peranti di rangkaian. Sistem fail ini sangat sesuai untuk penawaran penyimpanan blok Vultr, kerana anda dapat berkongsi pemacu di seluruh rangkaian yang tidak mungkin di luar kotak.

Dari segi ciri, kepanjangan dan kebolehpercayaan, GlusterFS telah terbukti menjadi salah satu sistem fail paling canggih dan stabil yang ada.

Apabila perubahan dibuat pada pemacu pada satu pelayan, secara automatik akan ditiru ke pelayan lain dalam masa nyata. Untuk mencapai ini dan mengikuti panduan ini, anda memerlukan:

  • Dua contoh awan Vultr, lebih baik menjalankan sistem operasi yang sama.
  • Pemacu simpanan dua blok dengan saiz yang sama.

Setelah memerintahkan dua pemacu penyimpanan blok ini, anda harus memasangkannya ke VM 1 dan VM 2. Kerana kami akan menggunakan kedua-dua pemacu penyimpanan blok untuk sistem fail yang sama, membahagikan jumlah keseluruhan kedua-dua pemacu dengan dua akan memberi anda jumlah yang dapat digunakan dari GB. Contohnya, jika anda mempunyai dua pemacu 100 GB, 100 GB akan dapat digunakan (100 * 2/2).

Tambahan pula, kedua-dua VM perlu berada di lokasi yang sama agar mereka berada di rangkaian peribadi yang sama. Kami akan menyambung ke pelayan menggunakan alamat IP dalaman mereka. Perhatikan bahawa kami akan menghapus data pada pemacu penyimpanan blok. Pastikan mereka baru dan tidak berformat.

Dalam panduan ini, kami akan menggunakan storage1dan storage2, masing-masing dengan alamat IP peribadi 10.0.99.10 dan 10.0.99.11. Nama pelayan dan alamat IP anda kemungkinan besar akan berbeza, jadi pastikan untuk mengubahnya dalam proses penyediaan GlusterFS.

Panduan ini ditulis dengan mempertimbangkan CentOS / RHEL 7. Walau bagaimanapun, GlusterFS agak serasi antara pelbagai distribusi Linux.

Menyiapkan GlusterFS

Langkah 1: Ubah /etc/hostsfail

Agar kita dapat berhubung dengan cepat ke keadaan masing-masing, kita harus menambahkan nama yang mudah diingat ke hostsfail. Buka /etc/hostsfail dan tambahkan baris berikut ke bahagian bawahnya:

10.0.99.10 storage1
10.0.99.11 storage2

Langkah 2: Tambah cakera storage1

SSH masuk storage1dan laksanakan perintah berikut. Secara lalai, pemacu penyimpanan blok terpasang dipasang sebagai /dev/vdb. Sekiranya ini berbeza dalam kes anda atas sebab apa pun, anda harus mengubahnya dalam perintah di bawah.

Format cakera:

fdisk /dev/vdb

Tekan "enter" untuk tiga soalan berikut (mengenai ukuran partisi dan sejenisnya, kami ingin menggunakan semua ruang yang ada pada pemacu penyimpanan blok) dan tulis "w" untuk menulis perubahan ini ke cakera. Setelah ini berjaya diselesaikan, tulis:

/sbin/mkfs.ext4 /dev/vdb1

Kami telah maju dan membuat sistem fail sekarang kerana Vultr tidak membuat sistem fail pada penyimpanan blok secara lalai.

Seterusnya, kita akan membuat folder di mana kita akan menyimpan fail kita. Anda boleh menukar nama ini tetapi anda tidak akan melihatnya begitu banyak sehingga untuk menghilangkan kerumitan, saya cadangkan untuk membiarkannya.

mkdir /glusterfs1

Untuk memasang pemacu secara automatik pada but, buka /etc/fstabdan tambahkan baris berikut di bahagian bawah fail:

/dev/vdb1 /glusterfs1      ext4    defaults        1 2

Akhirnya, pasangkan pemacu:

mount -a

Pemasangan akan tetap berterusan semasa reboot, jadi apabila anda menghidupkan semula pelayan anda, pemacu akan dipasang semula secara automatik.

Langkah 3: Tambah cakera storage2

Setelah kita menambah dan memasang cakera storage1, kita juga perlu membuat cakera storage2. Perintahnya hampir tidak berbeza. Untuk fdisk, ikuti langkah yang sama seperti di atas.

fdisk /dev/sdb
/sbin/mkfs.ext4 /dev/sdb1
mkdir /glusterfs2

Edit /etc/fstabdan tambahkan baris berikut:

/dev/vdb1 /glusterfs2      ext4    defaults        1 2

Sama seperti pada storage1pemacu, pemacu akan dipasang secara automatik melintasi but semula.

Pasang pemacu:

mount -a

Akhirnya, mari kita periksa sama ada kita dapat melihat partisi muncul:

df -h

Anda mesti melihat pemacu anda muncul di sini. Sekiranya tidak, cuba ikuti langkah-langkah dari atas.

Langkah 4: Memasang GlusterFS pada storage1danstorage2

Kita perlu memasang GlusterFS seterusnya. Tambahkan repositori dan pasang GlusterFS:

rpm  -ivh  http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
wget -P /etc/yum.repos.d http://download.gluster.org/pub/gluster/glusterfs/3.7/3.7.5/CentOS/glusterfs-epel.repo
yum -y install glusterfs glusterfs-fuse glusterfs-server

Ada kemungkinan anda mendapat ralat yumkerana tandatangan repositori tidak betul. Sekiranya demikian, adalah selamat untuk memaksa untuk tidak memeriksa tandatangan GPG:

yum -y install glusterfs glusterfs-fuse glusterfs-server --nogpgcheck

Pada kedua pelayan, jalankan perintah berikut untuk memulakan GlusterFS sekarang dan mulakannya secara automatik selepas but semula:

systemctl enable glusterd.service
systemctl start glusterd.service

Sekiranya anda menggunakan CentOS versi lama, anda boleh menggunakan servicedan chkconfigperintah:

chkconfig glusterd on
service glusterd start

Langkah 5: Menyahaktifkan firewall storage1danstorage2

Walaupun ia bukan penyelesaian terbaik, adalah idea yang baik untuk mematikan firewall untuk menghilangkan kemungkinan konflik dengan port yang disekat. Sekiranya anda tidak merasa selesa melakukan ini, maka jangan ragu untuk mengubah peraturan sesuai dengan keinginan anda, tetapi kerana sifat GlusterFS, saya sangat mengesyorkan untuk mematikan firewall. Memandangkan rangkaian peribadi sebenarnya bersifat peribadi di Vultr (dan anda tidak perlu melakukan firewall kepada pelanggan lain) anda boleh menyekat semua lalu lintas yang masuk dari internet dan menyekat sambungan yang dibenarkan ke rangkaian peribadi. Namun, mematikan firewall dan tidak mengubah konfigurasi sistem lain juga akan mencukupi:

systemctl stop firewalld.service
systemctl disable firewalld.service

Sekiranya anda menggunakan versi CentOS lama yang tidak menyokong systemctl, gunakan perintah servicedan chkconfig:

service firewalld stop
chkconfig firewalld off

Sekiranya anda tidak menggunakan firewalld, cuba matikan iptables:

service iptables stop
chkconfig iptables off

Langkah 6: Tambahkan pelayan ke kumpulan simpanan

Setelah mematikan firewall, kami dapat menambahkan kedua-dua pelayan ke kumpulan simpanan. Ini adalah kolam yang terdiri daripada semua simpanan yang ada. Laksanakan perintah berikut pada storage1:

gluster peer probe storage2

Apa yang dilakukan oleh perintah ini adalah menambah storage2kumpulan simpanannya sendiri. Dengan menjalankan perintah berikut storage2, kedua-dua pemacu akan diselaraskan:

gluster peer probe storage1

Setelah melaksanakannya di kedua pelayan, kita harus memeriksa status di kedua-dua pelayan:

gluster peer status

Kedua-dua pelayan harus menunjukkan keadaan "Rakan sebaya: 1". Kesalahan yang biasa berlaku ialah orang yang menjangkakan untuk melihat Peers: 2, tetapi seperti storage1mengintip storage2dan sebaliknya, mereka tidak mengintip diri sendiri. Oleh itu, Peers: 1adalah apa yang kita perlukan.

Langkah 7: Membuat pemacu bersama dihidupkan storage1

Sekarang kedua pelayan dapat berhubung antara satu sama lain melalui GlusterFS, kami akan membuat pemacu bersama.

Hidup storage1, laksanakan:

gluster volume create mailrep-volume replica 2  storage1:/glusterfs1/files  storage2:/glusterfs2/files force

Kelantangan kini telah dibuat. Di GlusterFS, anda perlu "memulakan" kelantangan sehingga dapat dikongsi secara aktif di pelbagai peranti. Mari mulakannya:

gluster volume start mailrep-volume

Seterusnya, pilih folder yang seharusnya ada pada volume dan ditiru di kedua-dua pelayan. Dalam tutorial ini kita akan menggunakan folder /var/files. Sememangnya ini boleh menjadi apa sahaja yang anda suka. Buat storage1 hanya pada :

mkdir /var/files

Seterusnya, pasangkannya:

mount.glusterfs storage1:/mailrep-volume /var/files/

Kemas kini /etc/fstabsupaya pemacu akan dipasang secara automatik pada but. Tambahkan yang berikut:

storage1:/mailrep-volume /var/files glusterfs defaults,_netdev 0 0

Kembalikan pemacu:

mount -a

Langkah 8: Membuat pemacu bersama dihidupkan storage2

Sekarang kita telah membuat drive bersama storage1, kita juga perlu membuatnya storage2. Buat folder dengan lokasi / lokasi dan nama yang sama:

mkdir /var/files
mount.glusterfs storage2:/mailrep-volume /var/files/

Sama seperti pada storage1, tambahkan baris berikut ke /etc/fstab:

storage2:/mailrep-volume /var/files glusterfs defaults,_netdev 0 0

Kembalikan pemacu:

mount -a

Langkah 9: Uji storan bersama

Navigasi ke /var/filesfolder storage1dan buat fail:

cd /var/files
touch created_on_storage1

Seterusnya, menuju ke storage2pelayan. Jalankan ls -ladan anda akan melihat fail tersebut created_on_storage1muncul.

Hidup storage2, arahkan ke /var/filesfolder dan buat fail:

cd /var/files
touch created_on_storage2

Kembali ke storage1dan laksanakan ls -la /var/files. Anda mesti melihat fail tersebut created_on_storage2muncul di sini.

Langkah 10: Reboot semua pelayan (Pilihan)

Untuk memeriksa semula apakah persediaan anda akan tetap berterusan semasa reboot, sebagai amalan terbaik, anda harus reboot semua pelayan. Seperti disebutkan, anda harus menunggu satu pelayan dinyalakan dan kemudian but semula yang lain agar pemacu bersama dipasang secara automatik.

Reboot storage1terlebih dahulu, tunggu sehingga habis, kemudian reboot storage2. Sekarang log masuk ke dan laksanakan di kedua pelayan:

cd /var/files
ls -la

Anda sekarang mesti melihat kedua-dua fail itu muncul. Pastikan memulakan tanpa fail dalam jumlah, jadi hapus fail ujian yang telah kami buat. Anda boleh melakukan ini pada storage1, storage2atau kedua-duanya. Perubahan akan ditiru dengan serta-merta:

cd /var/files
rm created_on_storage1
rm created_on_storage2

Anda harus mempunyai jumlah yang sama di kedua pelayan, tanpa mengira tindakan pada kedua-dua jilid.

Anda kini telah menyediakan persediaan GlusterFS lengkap dengan ruang yang boleh digunakan 100 GB (atau lebih). Sekiranya anda memerlukan lebih banyak lagi di masa depan, penyediaan mudah ditingkatkan untuk menambah kapasiti dan / atau lebih banyak pelayan sekiranya beban kerja anda memerlukan ini.

Terima kasih kerana membaca!


Nota penting mengenai pengiraan semula

GlusterFS membolehkan data anda dikemas kini pada dua pemacu. Walau bagaimanapun, anda harus perhatikan bahawa apabila kedua-dua pelayan dihidupkan semula pada masa yang sama , anda perlu memaksa pemacu pada kedua-dua pelayan. Anda mesti memaksa pemasangan secara manual dengan melaksanakan perintah berikut:

gluster volume start mailrep-volume force

Ini kerana salah satu pelayan bertindak sebagai pelayan dan yang lain bertindak sebagai pelanggan. Walaupun perbezaannya tidak dapat dilihat dengan mudah dalam praktiknya, ini bermakna bahawa apabila anda perlu menghidupkan semula kedua-dua pelayan, anda harus reboot satu, tunggu sehingga habis, kemudian boot yang lain.

Catatan penting mengenai sandaran

Walaupun data anda akan ditiru di dua pemacu, data anda harus ditiru sekurang-kurangnya tiga kali. Walaupun data anda dilindungi dengan lebih baik daripada kerosakan data dan sejenisnya, anda harus perhatikan bahawa perubahan itu berlaku seketika dan anda tidak akan dilindungi dari kesalahan manusia. Apabila anda membuang semua fail pada satu pemacu, perubahan ini akan segera ditiru ke pemacu yang lain, yang bermaksud data anda akan dihapus pada kedua-dua keadaan tersebut.

Nasib baik, terdapat pelbagai pendekatan untuk mengelakkan perkara ini. Pertama, saya cadangkan untuk mengaktifkan sandaran pada instance cloud anda sendiri. Walaupun cadangan ini tidak termasuk data pada penyimpanan blok, ia akan melindungi data dari instance itu sendiri.

Ketika menyandarkan data pada penyimpanan blok itu sendiri, saya cadangkan untuk memunculkan contoh yang berasingan (contohnya rancangan SATA) sehingga anda dapat menjalankan sandaran dari salah satu dari dua pelayan terpasang setiap malam, misalnya. Dengan cara ini data anda akan selamat pada peranti lain yang berasingan.

Soalan Lazim

Adakah saya dapat meningkatkan simpanan cakera saya?

Anda dapat meningkatkan saiz penyimpanan blok dari panel kawalan Vultr. Anda harus mengubah saiz cakera di dalam sistem operasi selepasnya, tetapi itu di luar ruang lingkup artikel ini.

Bolehkah saya melampirkan penyimpanan blok ke lebih dari dua pelayan?

Walaupun panduan ini ditulis untuk dua pelayan (dengan itu dua pemacu penyimpanan blok terpasang pada kedua pelayan) tetapi mungkin juga untuk mengambil panduan ini dan menggunakannya untuk lebih dari dua pelayan. Persediaan dengan lebih dari dua pelayan / pemacu mungkin kelihatan seperti ini untuk 6 pelayan, misalnya:

VM: storage1
VM: storage2
VM: storage3
VM: storage4
Block Storage: attached to storage1
Block Storage: attached to storage2
Block Storage: attached to storage3
Block Storage: attached to storage4

Memandangkan semua pemacu penyimpanan blok mempunyai kapasiti misalnya 200 GB, anda akan mendapat 200 * 4 / 4. Dengan kata lain, ruang yang dapat digunakan selalu merupakan kapasiti pemacu penyimpanan satu blok. Ini kerana satu pelayan dengan penyimpanan blok dilampirkan dianggap sebagai "master" oleh GlusterFS dan ia direplikasi di pelayan lain. Walau bagaimanapun, penyediaan ini dibina untuk dapat bertahan tanpa pelayan induk, yang menjadikannya penyelesaian yang berlebihan dan boleh dipercayai, stabil.



Leave a Comment

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut