Cara Memasang dan Konfigurasikan Hadoop di Ubuntu 20.04

Cara Memasang dan Konfigurasikan Hadoop di Ubuntu 20.04

Hadoop adalah rangka kerja perisian berasaskan Java yang digunakan untuk penyimpanan dan pemprosesan dataset besar pada kelompok mesin. Ia menggunakan HDFS untuk menyimpan data dan memproses data ini menggunakan MapReduce. Ini adalah ekosistem alat data besar yang digunakan terutamanya untuk perlombongan data dan pembelajaran mesin.

Apache Hadoop 3.3 dilengkapi dengan penambahbaikan yang ketara dan banyak pembetulan pepijat berbanding siaran sebelumnya. Ia mempunyai empat komponen utama seperti Hadoop Common, HDFS, Benang, dan MapReduce.

Tutorial ini akan menerangkan anda cara memasang dan mengkonfigurasi Apache Hadoop di Ubuntu 20.04 LTS Linux System.

Langkah 1 - Memasang Java

Hadoop ditulis di Java dan hanya menyokong versi Java 8. Hadoop versi 3.3 dan yang terbaru juga menyokong Java 11 Runtime serta Java 8.

Anda boleh memasang OpenJDK 11 dari repositori apt lalai:

Kemas kini sudo apt  sudo apt memasang openjdk-11-jdk 

Setelah dipasang, sahkan versi Java yang dipasang dengan arahan berikut:

java -versi  

Anda harus mendapatkan output berikut:

Versi OpenJDK "11.0.11 "2021-04-20 OpenJDK Runtime Environment (membina 11.0.11+9-Ubuntu-0ubuntu2.20.04) OpenJDK 64-bit Server VM (Bina 11.0.11+9-Ubuntu-0ubuntu2.20.04, mod campuran, perkongsian) 

Langkah 2 - Buat pengguna Hadoop

Adalah idea yang baik untuk membuat pengguna yang berasingan untuk menjalankan Hadoop atas alasan keselamatan.

Jalankan arahan berikut untuk membuat pengguna baru dengan nama Hadoop:

Sudo Adduser Hadoop  

Sediakan dan sahkan kata laluan baru seperti yang ditunjukkan di bawah:

Menambah pengguna 'Hadoop' ... menambah kumpulan baru 'Hadoop' (1002) ... menambah pengguna baru 'Hadoop' (1002) dengan kumpulan 'Hadoop' ... membuat direktori rumah '/rumah/Hadoop' ... menyalin fail dari '/etc/skel' ... Kata Laluan Baru: Retype Kata Laluan Baru: Passwd: Kata Laluan Dikemaskini Berjaya Menukar Maklumat Pengguna untuk Hadoop Masukkan nilai baru, atau tekan Enter untuk nama penuh lalai []: nombor bilik []: telefon kerja []: telefon rumah []: Lain []: Adakah maklumat betul? [Y/n] y 

Langkah 3 - Konfigurasikan pengesahan berasaskan kunci SSH

Seterusnya, anda perlu mengkonfigurasi pengesahan SSH tanpa kata laluan untuk sistem tempatan.

Pertama, ubah pengguna ke Hadoop dengan arahan berikut:

Su - Hadoop  

Seterusnya, jalankan arahan berikut untuk menjana pasangan utama awam dan swasta:

SSH -KEYGEN -T RSA  

Anda akan diminta memasukkan nama fail. Cukup tekan Enter untuk menyelesaikan proses:

Menjana pasangan kunci RSA awam/swasta. Masukkan fail di mana untuk menyimpan kunci (/rumah/hadoop/.ssh/id_rsa): direktori '/rumah/hadoop/.ssh '. Masukkan frasa laluan (kosong tanpa frasa laluan): Masukkan frasa laluan yang sama sekali lagi: pengenalan anda telah disimpan di/rumah/hadoop/.ssh/id_rsa kunci awam anda telah disimpan di/rumah/hadoop/.SSH/ID_RSA.PUB Cap jari utama ialah: sha256: qsa2syeiswp0hd+uxxxi0j9msorjkdgibkfbm3ejyik [dilindungi e-mel] imej rawak utama adalah:+--- [rsa 3072] ----+|.+ | | ... oo++.O | |. oo. B . | | O ... + o * . | | = ++ o o s | |.++O+ O | |.+.+ + . O | | o . o * o . | | E + . | +---- [SHA256]-----+ 

Seterusnya, tambahkan kunci awam yang dihasilkan dari ID_RSA.pub ke kuasa yang diberi kuasa dan menetapkan kebenaran yang betul:

kucing ~/.SSH/ID_RSA.pub >> ~/.SSH/Authorized_keys  chmod 640 ~/.SSH/Authorized_keys  

Seterusnya, sahkan pengesahan SSH tanpa kata laluan dengan arahan berikut:

SSH Localhost  

Anda akan diminta untuk mengesahkan tuan rumah dengan menambah kekunci RSA kepada tuan rumah yang diketahui. Taipkan ya dan tekan Enter untuk mengesahkan localhost:

Kesahihan tuan rumah 'localhost (127.0.0.1) 'Tidak dapat ditubuhkan. Cap jari utama ECDSA ialah SHA256: JFQDVBM3ZTPHUPGD5OMJ4CLVIH6TZIRZ2GD3BDNQGMQ. Adakah anda pasti mahu terus menyambung (ya/tidak/[cap jari])? Ya 

Langkah 4 - Memasang Hadoop

Pertama, ubah pengguna ke Hadoop dengan arahan berikut:

Su - Hadoop  

Seterusnya, muat turun versi terkini Hadoop menggunakan perintah wget:

wget https: // muat turun.Apache.Org/Hadoop/Common/Hadoop-3.3.0/Hadoop-3.3.0.tar.Gz  

Setelah dimuat turun, ekstrak fail yang dimuat turun:

tar -xvzf Hadoop -3.3.0.tar.Gz  

Seterusnya, namakan semula direktori yang diekstrak ke Hadoop:

MV Hadoop-3.3.0 Hadoop  

Seterusnya, anda perlu mengkonfigurasi pembolehubah persekitaran Hadoop dan Java pada sistem anda.

Buka ~/.Bashrc Fail dalam editor teks kegemaran anda:

nano ~/.Bashrc  

Tambahkan baris di bawah untuk memfailkan. Anda boleh mencari lokasi java_home dengan berjalan Dirname $ (dirname $ (readlink -f $ (yang java)))) perintah di terminal.

eksport java_home =/usr/lib/jvm/java-11-opengdk-amd64 eksport hadoop_home =/home/hadoop/hadoop eksport hadoop_install = $ Hadoop_Home Export Hadoop_Mapred_Home = $ hasoop_home_home_home_home_home_home_home_home_home_home_home Hadoop_Home Export Hadoop_Common_Lib_native_dir = $ Hadoop_Home/lib/Laluan Eksport asli = $ Path: $ Hadoop_Home/Sbin: $ Hadoop_Home/Bin Export Hadoop_opts = "-Djava.Perpustakaan.Path = $ hadoop_home/lib/asli " 

Simpan dan tutup fail. Kemudian, aktifkan pembolehubah persekitaran dengan arahan berikut:

sumber ~/.Bashrc  

Seterusnya, buka fail pembolehubah persekitaran Hadoop:

Nano $ Hadoop_Home/etc/Hadoop/Hadoop-ENV.sh  

Sekali lagi tetapkan java_home di persekitaran Hadoop.

Eksport java_home =/usr/lib/jvm/java-11-openjdk-amd64 

Simpan dan tutup fail apabila anda selesai.

Langkah 5 - Mengkonfigurasi Hadoop

Pertama, anda perlu membuat direktori Namenode dan Datanode di dalam direktori rumah Hadoop:

Jalankan arahan berikut untuk membuat kedua -dua direktori:

mkdir -p ~/hadoopdata/hdfs/namenode  mkdir -p ~/hadoopdata/hdfs/datanode  

Seterusnya, edit tapak teras.XML fail dan kemas kini dengan nama hos sistem anda:

nano $ hadoop_home/etc/hadoop/tapak teras.XML  

Tukar nama berikut mengikut nama hos sistem anda:

fs.Defaultfs HDFS: // Hadoop.Tecadmin.com: 9000
123456 fs.Defaultfs HDFS: // Hadoop.Tecadmin.com: 9000

Simpan dan tutup fail. Kemudian, edit tapak HDFS.XML Fail:

nano $ hadoop_home/etc/hadoop/hdfs-site.XML  

Tukar laluan direktori Namenode dan Datanode seperti yang ditunjukkan di bawah:

DFS.Replikasi 1 DFS.nama.Fail dir: /// Home/Hadoop/Hadoopdata/HDFS/Namenode DFS.data.Fail dir: /// Home/Hadoop/Hadoopdata/HDFS/DataNode
1234567891011121314151617 DFS.Replikasi 1 DFS.nama.Fail dir: /// Home/Hadoop/Hadoopdata/HDFS/Namenode DFS.data.Fail dir: /// Home/Hadoop/Hadoopdata/HDFS/DataNode

Simpan dan tutup fail. Kemudian, edit tapak peta.XML Fail:

nano $ hadoop_home/etc/hadoop/mapred-site.XML  

Buat perubahan berikut:

MapReduce.Rangka Kerja.Nama benang
123456 MapReduce.Rangka Kerja.Nama benang

Simpan dan tutup fail. Kemudian, edit tapak benang.XML Fail:

nano $ hadoop_home/etc/hadoop/tapak benang.XML  

Buat perubahan berikut:

Benang.Nodemanager.Aux-Services MapReduce_Shuffle
123456 Benang.Nodemanager.Aux-Services MapReduce_Shuffle

Simpan dan tutup fail apabila anda selesai.

Langkah 6 - Mula Cluster Hadoop

Sebelum memulakan kluster Hadoop. Anda perlu memformat namenode sebagai pengguna Hadoop.

Jalankan arahan berikut untuk memformat Hadoop Namenode:

HDFS namenode -Format  

Anda harus mendapatkan output berikut:

2020-11-23 10: 31: 51,318 Maklumat Namenode.NnstorageretentionManager: akan mengekalkan 1 imej dengan txid> = 0 2020-11-23 10: 31: 51,323 info namenode.Fsimage: fsimagesaver clean checkpoint: txid = 0 Apabila memenuhi penutupan. 2020-11-23 10: 31: 51,323 maklumat namenode.Namenode: shutdown_msg: /*********************************************** *************** Shutdown_msg: Menutup Namenode di Hadoop.Tecadmin.bersih/127.0.1.1 ******************************************************* *************/ 

Selepas memformat Namenode, jalankan arahan berikut untuk memulakan kluster Hadoop:

start-dfs.sh  

Setelah HDFS bermula dengan jayanya, anda harus mendapatkan output berikut:

Memulakan Namenodes di [Hadoop.Tecadmin.com] Hadoop.Tecadmin.com: Amaran: Menambah 'Hadoop secara kekal.Tecadmin.com, Fe80 :: 200: 2DFF: Fe3A: 26ca%ETH0 '(ECDSA) ke senarai tuan rumah yang diketahui. Memulakan Datanodes Memulakan Namenode Menengah [Hadoop.Tecadmin.com] 

Seterusnya, mulakan perkhidmatan benang seperti yang ditunjukkan di bawah:

Start-Yarn.sh  

Anda harus mendapatkan output berikut:

Memulakan ResourceManager Memulakan Nodemanagers 

Anda kini boleh menyemak status semua perkhidmatan Hadoop menggunakan arahan JPS:

JPS  

Anda harus melihat semua perkhidmatan yang berjalan dalam output berikut:

18194 Namenode 18822 Nodemanager 17911 Secondarynamenode 17720 Datanode 18669 ResourceManager 19151 JPS 

Langkah 7 - Laraskan firewall

Hadoop kini bermula dan mendengar di pelabuhan 9870 dan 8088. Seterusnya, anda perlu membenarkan pelabuhan ini melalui firewall.

Jalankan arahan berikut untuk membolehkan sambungan Hadoop melalui firewall:

firewall-cmd --permanent --add-port = 9870/tcp  firewall-cmd --permanent --add-port = 8088/tcp  

Seterusnya, tambah semula perkhidmatan Firewalld untuk memohon perubahan:

Firewall-CMD-Reload  

Langkah 8 - Akses Hadoop Namenode dan Pengurus Sumber

Untuk mengakses namenode, buka penyemak imbas web anda dan lawati URL http: // your-server-ip: 9870. Anda mesti melihat skrin berikut:

http: // Hadoop.Tecadmin.Bersih: 9870

Untuk mengakses sumber menguruskan, buka pelayar web anda dan lawati URL http: // your-server-ip: 8088. Anda mesti melihat skrin berikut:

http: // Hadoop.Tecadmin.Bersih: 8088

Langkah 9 - Sahkan kelompok Hadoop

Pada ketika ini, kluster Hadoop dipasang dan dikonfigurasikan. Seterusnya, kami akan membuat beberapa direktori dalam sistem fail HDFS untuk menguji Hadoop.

Mari buat beberapa direktori dalam sistem fail HDFS menggunakan arahan berikut:

HDFS DFS -MKDIR /TEST1 HDFS DFS -MKDIR /LOGS  

Seterusnya, jalankan arahan berikut untuk menyenaraikan direktori di atas:

HDFS DFS -LS /  

Anda harus mendapatkan output berikut:

Ditemui 3 item DRWXR-XR-X-Hadoop Supergroup 0 2020-11-23 10:56 /log DRWXR-XR-X-Hadoop Supergroup 0 2020-11-23 10:51 /TEST1 

Juga, letakkan beberapa fail ke sistem fail Hadoop. Contohnya, meletakkan fail log dari mesin tuan rumah ke sistem fail Hadoop.

hdfs dfs -put/var/log/*/log/  

Anda juga boleh mengesahkan fail dan direktori di atas di antara muka web Hadoop Namenode.

Pergi ke antara muka web Namenode, klik pada utiliti => Semak imbas sistem fail. Anda harus melihat direktori anda yang telah anda buat sebelum ini dalam skrin berikut:

http: // Hadoop.Tecadmin.Bersih: 9870/Explorer.html

Langkah 10 - Hentikan kluster Hadoop

Anda juga boleh menghentikan perkhidmatan Namenode dan Benang Hadoop pada bila -bila masa dengan menjalankan Stop-DFS.sh dan Stop-Yarn.sh Skrip sebagai pengguna Hadoop.

Untuk menghentikan perkhidmatan Hadoop Namenode, jalankan arahan berikut sebagai pengguna Hadoop:

Stop-DFS.sh  

Untuk menghentikan perkhidmatan Pengurus Sumber Hadoop, jalankan arahan berikut:

Stop-Yarn.sh  

Kesimpulan

Tutorial ini dijelaskan kepada anda tutorial langkah demi langkah untuk memasang dan mengkonfigurasi Hadoop di Ubuntu 20.04 Sistem Linux.