Apache Hadoop adalah kerangka kerja perangkat lunak sumber terbuka yang ditulis dalam Java untuk penyimpanan terdistribusi dan proses terdistribusi, dan menangani kumpulan data berukuran sangat besar dengan mendistribusikannya ke seluruh kelompok komputer.
Daripada mengandalkan ketersediaan tinggi perangkat keras, modul Hadoop dirancang untuk mendeteksi dan menangani kegagalan pada lapisan aplikasi, sehingga memberi Anda layanan dengan ketersediaan tinggi.
Kerangka kerja Hadoop terdiri dari modul-modul berikut,
- Hadoop Common – Berisi kumpulan library dan utilitas umum yang mendukung modul Hadoop lainnya
- Hadoop Distributed File System (HDFS) – adalah sistem file terdistribusi berbasis Java yang menyimpan data, memberikan throughput yang sangat tinggi ke aplikasi.
- Hadoop YARN – Ini mengelola sumber daya pada cluster komputasi dan menggunakannya untuk menjadwalkan aplikasi pengguna.
- Hadoop MapReduce – adalah kerangka kerja untuk pemrosesan data skala besar.
Panduan ini akan membantu Anda menginstal Apache Hadoop di CentOS 7, Ubuntu 18.04 &Debian 9. Panduan ini juga harus berfungsi di Ubuntu 16.04.
Prasyarat
Beralih ke pengguna root.
su -
ATAU
sudo su -
Instal Java
Apache Hadoop hanya membutuhkan Java versi 8 saja. Jadi, Anda dapat memilih untuk menginstal OpenJDK atau Oracle JDK.
BACA: Cara Menginstal Oracle Java di CentOS 7 / RHEL 7
BACA: Cara Menginstal Oracle Java di Ubuntu 18.04
BACA: Cara Menginstal Oracle Java di Debian 9
Di sini, untuk demo ini, saya akan menginstal OpenJDK 8.
### CentOS 7 / RHEL 7 ### # yum -y install java-1.8.0-openjdk wget### Ubuntu 18.04 / 16.04 &Debian 9 ### # apt update # apt install -y openjdk-8-jdk wget
Periksa versi Java.
# java -versi
Keluaran:
openjdk versi "1.8.0_212"OpenJDK Runtime Environment (build 1.8.0_212-b04)OpenJDK 64-Bit Server VM (build 25.212-b04, mode campuran)
Buat pengguna Hadoop &Aktifkan Otentikasi Tanpa Kata Sandi
Disarankan untuk membuat pengguna biasa untuk mengonfigurasi dan menjalankan Apache Hadoop. Jadi, buat pengguna bernama hadoop dan atur kata sandi.
# useradd -m -d /home/hadoop -s /bin/bash hadoop# passwd hadoop
Setelah Anda membuat pengguna, konfigurasikan ssh tanpa kata sandi ke sistem lokal. Buat kunci ssh menggunakan perintah berikut.
# su - hadoop$ ssh-keygen$ cat ~/.ssh/id_rsa.pub>> ~/.ssh/authorized_keys$ chmod 600 ~/.ssh/authorized_keys
Verifikasi komunikasi tanpa kata sandi ke sistem lokal. Jika Anda melakukan ssh untuk pertama kalinya, ketik yes untuk menambahkan kunci RSA ke host yang dikenal.
$ ssh 127.0.0.1
Instal Apache Hadoop
Unduh Hadoop
Anda dapat mengunjungi halaman Apache Hadoop untuk mengunduh paket Hadoop terbaru, atau Anda dapat mengeluarkan perintah berikut di terminal untuk mengunduh Hadoop v3.2.0.
$ wget https://www-us.Apache.org/dist/hadoop/common/stable/hadoop-3.2.0.tar.gz$ tar -zxvf hadoop-3.2.0.tar.gz $ mv hadoop -3.2.0 hadoop
Instal Hadoop
Hadoop mendukung tiga mode cluster
- Mode Lokal (Mandiri) – Ini berjalan sebagai proses java tunggal.
- Mode Terdistribusi Semu – Setiap daemon Hadoop berjalan dalam proses yang terpisah.
- Mode Terdistribusi Penuh – Ini adalah cluster multinode aktual yang berkisar dari beberapa node hingga cluster yang sangat besar.
Mengatur variabel lingkungan
Di sini, kita akan mengonfigurasi Hadoop dalam mode Pseudo-Distributed. Untuk memulainya, setel variabel lingkungan di file ~/.bashrc.
ekspor JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64/jre ## Ubah sesuai sistem Anda ekspor HADOOP_HOME=/home/hadoop/hadoop ## Ubah sesuai sistem Anda ekspor HADOOP_INSTALL=$HADOOP_HOMEekspor HADOOP_MAPRED_HOME=$HADOOP_HOMEekspor HADOOP_COMMON_HOME=$HADOOP_HOMEekspor HADOOP_HDFS_HOME=$HADOOP_HOMEekspor HADOOP_YARN_HOME=$HADOOP_HOMEekspor $HADOOP_HOMEekspor HADOOP_HDFS_HOME=$HADOOP_HOMEekspor HADOOP_YARNHOME_HOME=$HADOOP_HOMEekspor $HADOOP_HOME_:$bin>OPDOOP_HOMEeksporTerapkan variabel lingkungan ke sesi saat ini.
$ source ~/.bashrcUbah file Konfigurasi
Edit file lingkungan Hadoop.
vi $HADOOP_HOME/etc/hadoop/hadoop-env.shSetel variabel lingkungan JAVA_HOME.
ekspor JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64/jreHadoop memiliki banyak file konfigurasi, dan kita perlu mengeditnya tergantung pada mode cluster yang kita siapkan (Pseudo-Distributed).
$ cd $HADOOP_HOME/etc/hadoopEdit core-site.xml.
fs.defaultFS hdfs://server.itzgeek.local :9000 Edit hdfs-site.xml.
dfs.replication 1 dfs.name.dir file :///home/hadoop/hadoopdata/hdfs/namenode dfs.data.dir file:///home/hadoop/hadoopdata/hdfs/datanode Buat direktori NameNode dan DataNode di direktori home pengguna hadoop.
mkdir -p ~/hadoopdata/hdfs/{namenode,datanode}Edit mapred-site.xml.
mapreduce.framework.name benang Edit yarn-site.xml.
yarn.nodemanager.aux-services mapreduce_shuffle Sekarang format NameNode menggunakan perintah berikut. Jangan lupa untuk memeriksa direktori penyimpanan.
$ hdfs namenode -formatKeluaran:
. . .. . .2019-05-12 06:38:42.066 INFO common.Storage:Storage directory /home/hadoop/hadoopdata/hdfs/namenode telah berhasil diformat.2019-05-12 06:38:42.169 namenode INFO.FSImageFormatProtobuf:Menyimpan gambar file /home/hadoop/hadoopdata/hdfs/namenode/current/fsimage.ckpt_00000000000000000000 tanpa kompresi2019-05-12 06:38:42.483 INFO namenode.FSImageFormatProtobuf:File gambar /home/hadoop/hadoopdata/hdfs/namenode/current/fsimage .ckpt_00000000000000000000 ukuran 401 byte disimpan dalam 0 detik .2019-05-12 06:38:42,501 INFO namenode.NNStorageRetentionManager:Akan mempertahankan 1 gambar dengan txid>=02019-05-12 06:38:42,516 INFO namenode.NameNode:SHUTDOWN_MSG:/********************************************* *************SHUTDOWN_MSG:Mematikan NameNode di server.itzgeek.local/192.168.1.10********************** **************************************/Firewall
Izinkan Apache Hadoop melalui firewall. Jalankan perintah di bawah ini sebagai pengguna root.
FirewallD:
firewall-cmd --permanent --add-port=9870/tcpfirewall-cmd --permanent --add-port=8088/tcpfirewall-cmd --reloadUFW:
ufw izinkan 9870/tcpufw izinkan 8088/tcpufw muat ulangMulai daemon NameNode dan daemon DataNode dengan menggunakan skrip di direktori /sbin, yang disediakan oleh Hadoop.
$ start-dfs.shKeluaran:
Memulai namenodes di [server.itzgeek.local]server.itzgeek.local:Peringatan:Menambahkan 'server.itzgeek.local,192.168.1.10' (ECDSA) secara permanen ke daftar host yang dikenal.Memulai datanodeslocalhost:Peringatan:Permanen menambahkan 'localhost' (ECDSA) ke daftar host yang dikenal.Memulai node nama sekunder [server.itzgeek.local]2019-05-12 06:39:14.171 PERINGATAN util.NativeCodeLoader:Tidak dapat memuat pustaka hadoop asli untuk platform Anda. .. menggunakan kelas built-in-java jika adaBuka browser web Anda dan pergi ke URL di bawah ini untuk menelusuri NameNode.
http://ip.ad.dre.ss:9870/Mulai daemon ResourceManager dan daemon NodeManager.
$ start-yarn.shKeluaran:
Memulai resourcemanagerMemulai nodemanagersBuka browser web Anda dan buka URL di bawah ini untuk mengakses ResourceManager.
http://ip.ad.dre.ss:8088/Uji Kluster Node Tunggal Hadoop
Sebelum melakukan upload, mari kita buat direktori di HDFS.
$ hdfs dfs -mkdir /rajMari kita upload file ke direktori HDFS bernama raj.
$ hdfs dfs -put ~/.bashrc /rajFile yang diunggah dapat dilihat dengan membuka NameNode>> Utilitas >> Jelajahi sistem file di NameNode.
http://ip.ad.dre.ss/explorer.html#/rajSalin file dari HDFS ke sistem file lokal Anda.
$ hdfs dfs -get /raj /tmp/Anda dapat menghapus file dan direktori menggunakan perintah berikut.
hdfs dfs -rm -f /raj/.bashrchdfs dfs -rmdir /rajKesimpulan
Itu saja. Anda telah berhasil mengonfigurasi satu node Hadoop cluster dan menguji sistem file hadoop. Silakan bagikan tanggapan Anda di bagian komentar.
Instal ElasticSearch di CentOS 7 / Debian 9 / Ubuntu 16.04 / Linux Mint 18 Pantau log server – Instal Log.io di CentOS 7 / RHEL 7Cent OS