中國聯通:前三季度淨利潤 129.2 億元,同比增長 19.4%
阿新 • • 發佈:2021-10-21
一、硬體及環境
伺服器:3臺,IP分別為:192.168.100.105、192.168.100.110、192.168.100.115
作業系統:Ubuntu Server 18.04
JDK:1.8.0
Hadoop:3.3.0/3.3.1
二、系統配置
* 3臺機都要執行以下操作
1.登入root賬號
su
2.配置hosts
vim /etc/hosts
新增內容
192.168.100.105 c1 192.168.100.110 c2 192.168.100.115 c3
3.關閉防火牆
ufw disable
4.安裝ssh
apt install ssh
5.設定免密登入
https://www.cnblogs.com/live41/p/14236950.html
* 見第二點的第5點
6.安裝JDK
https://www.cnblogs.com/live41/p/14235891.html
三、部署Hadoop
* 3臺機都要執行以下操作
1.下載Hadoop安裝包
https://downloads.apache.org/hadoop/common/
2.解壓安裝包
這裡假定下載的是hadoop-3.3.1.tar.gz檔案,解壓到/usr/bin/目錄
tar -xvf hadoop-3.3.1.tar.gz -C /usr/local/
把目錄名也改一下
mv /usr/local/hadoop-3.3.1 /usr/local/hadoop
3.建立目錄
cd /usr/local/hadoop
sudo mkdir hdfs
sudo mkdir hdfs/datanode
sudo mkdir hdfs/namenode
sudo mkdir hadoop/logs
sudo mkdir yarn
sudo mkdir yarn/logs
4.配置環境變數
vim ~/.bashrc
新增內容
export HADOOP_HOME=/usr/local/hadoop export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export YARN_HOME=$HADOOP_HOME export HDFS_NAMENODE_USER=root export HDFS_DATANODE_USER=root export HDFS_SECONDARYNAMENODE_USER=root
更新環境變數
source ~/.bashrc
測試
hadoop version
5.修改Hadoop的配置
(1) 進入Hadoop的配置檔案目錄
cd $HADOOP_CONF_DIR
(2) 編輯hadoop-env.sh檔案
vim hadoop-env.sh
檢視以下內容,如果沒有就加上,如果已有就不用改。
export JAVA_HOME=/usr/bin/jdk1.8.0 export HADOOP_HOME=/usr/local/hadoop export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop export HADOOP_LOG_DIR=/usr/local/hadoop/logs
(3) 編輯core-site.xml
vim core-site.xml
在c1機新增內容
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://c1:9820/</value> </property> <property> <name>io.file.buffer.size</name> <value>131072</value> </property> </configuration>
(4) 編輯hdfs-site.xml檔案
vim hdfs-site.xml
在c1機新增內容
<configuration> <property> <name>dfs.namenode.name.dir</name> <value>file:///usr/local/hadoop/hdfs/namenode</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:///usr/local/hadoop/hdfs/datanode</value> </property> <property> <name>dfs.replication</name> <value>3</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> <property> <name>dfs.datanode.use.datanode.hostname</name> <value>false</value> </property> <property> <name>dfs.namenode.datanode.registration.ip-hostname-check</name> <value>false</value> </property> </configuration>
(4) 編輯yarn-site.xml檔案
vim yarn-site.xml
在c1機新增內容
<configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property> <property> <name>yarn.nodemanager.local-dirs</name> <value>file:///usr/local/hadoop/yarn/local</value> </property> <property> <name>yarn.nodemanager.log-dirs</name> <value>file:///usr/local/hadoop/yarn/logs</value> </property> </configuration>
(5) 編輯mapred-site.xml檔案
vim mapred-site.xml
在c1機新增內容
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapreduce.jobhistory.address</name> <value>c1:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>c1:19888</value> </property> <property> <name>mapreduce.jobhistory.intermediate-done-dir</name> <value>/mr-history/tmp</value> </property> <property> <name>mapreduce.jobhistory.done-dir</name> <value>/mr-history/done</value> </property> </configuration>
(6) 修改檔案許可權
chmod 777 /usr/local/hadoop/hdfs chmod 777 /usr/local/hadoop/logs
(7) 格式化hdfs
hdfs namenode -format