Daftar Isi:
- Hidup yang lebih baik melalui redundansi
- Untuk menyeimbangkan faktor penting seperti total biaya kepemilikan, kapasitas penyimpanan, dan kinerja, Anda perlu merencanakan secara hati-hati desain simpul budak Anda.
Video: How to install hadoop cluster/multi node on ubuntu server 18.04 2024
Dalam sebuah cluster Hadoop, setiap node data (juga dikenal sebagai slave node ) menjalankan sebuah Proses background bernama DataNode. Proses latar belakang ini (juga dikenal sebagai daemon ) melacak irisan data yang disimpan sistem di komputernya. Ini secara teratur berbicara dengan server master untuk HDFS (dikenal sebagai NameNode) untuk melaporkan status kesehatan dan status data yang tersimpan secara lokal.
Blok data disimpan sebagai file mentah dalam sistem file lokal. Dari perspektif pengguna Hadoop, Anda tidak tahu dari simpul budak mana yang memiliki potongan file yang perlu Anda proses. Dari dalam Hadoop, Anda tidak melihat blok data atau bagaimana distribusi di seluruh cluster - yang Anda lihat hanyalah daftar file di HDFS.
Kompleksitas bagaimana blok file didistribusikan ke seluruh cluster tersembunyi dari Anda - Anda tidak tahu betapa rumitnya semuanya, dan Anda tidak membutuhkan untuk tahu. Sebenarnya, simpul budak sendiri bahkan tidak tahu apa yang ada di dalam blok data yang mereka simpan. Ini adalah server NameNode yang mengetahui pemetaan blok data yang menyusun file yang tersimpan dalam HDFS.
Hidup yang lebih baik melalui redundansi
Berdasarkan tingkat kegagalan tahunan (AFR) sebesar 4 persen untuk disk drive komoditas (hard disk drive yang diberikan memiliki kemungkinan 4 persen gagal pada tahun tertentu, dengan kata lain), cluster Anda kemungkinan akan mengalami hard disk kegagalan setiap hari dalam setahun
Karena bisa jadi banyak simpul budak, kegagalan mereka juga merupakan kejadian biasa dalam kelompok yang lebih besar dengan ratusan atau lebih simpul. Dengan informasi ini, HDFS telah direkayasa dengan asumsi bahwa
semua komponen perangkat keras, bahkan pada tingkat node slave, tidak dapat diandalkan. HDFS mengatasi ketidakmampuan komponen perangkat keras individual dengan cara redundansi: Itulah gagasan di balik ketiga salinan dari setiap file yang tersimpan dalam HDFS, didistribusikan ke seluruh sistem.Lebih khusus lagi, setiap blok file yang tersimpan dalam HDFS memiliki total tiga replika. Jika satu sistem rusak dengan blok file tertentu yang Anda butuhkan, Anda bisa beralih ke dua file lainnya.
Buat sketsa desain server node slave
Untuk menyeimbangkan faktor penting seperti total biaya kepemilikan, kapasitas penyimpanan, dan kinerja, Anda perlu merencanakan secara hati-hati desain simpul budak Anda.
Anda biasanya melihat simpul budak sekarang dimana masing-masing node memiliki antara 12 dan 16 drive hard disk 3TB yang terpasang secara lokal. Simpul budak menggunakan CPU dual-socket yang cukup cepat dengan enam sampai delapan inti masing-masing - tidak ada kecepatan setan, dengan kata lain. Ini diiringi RAM 48GB. Singkatnya, server ini dioptimalkan untuk penyimpanan padat.
Karena HDFS adalah sistem file tingkat pengguna, sangat penting untuk mengoptimalkan sistem file lokal pada node budak agar bisa bekerja dengan HDFS. Dalam hal ini, satu keputusan berdampak tinggi saat menyiapkan server Anda adalah memilih sistem file untuk instalasi Linux pada node budak.
Ext3 adalah sistem berkas yang paling sering digunakan karena telah menjadi pilihan paling stabil selama beberapa tahun. Lihatlah Ext4, namun. Ini adalah versi Ext3 yang berikutnya, dan sudah tersedia cukup lama untuk dianggap stabil dan dapat diandalkan secara luas.
Yang lebih penting lagi untuk tujuan kita, ia memiliki sejumlah pengoptimalan untuk menangani file berukuran besar, yang menjadikannya pilihan ideal untuk server node budak HDFS.
Jangan gunakan Linux Logical Volume Manager (LVM) - ini merupakan lapisan tambahan antara sistem file Linux dan HDFS, yang mencegah Hadoop mengoptimalkan kinerjanya. Secara khusus, kumpulan disk LVM, yang menghambat pengelolaan sumber daya yang dilakukan oleh HDFS dan YARN, berdasarkan bagaimana file didistribusikan ke drive fisik.