目錄
一、配置Hadoop環(huán)境
1.查看Hadoop解壓位置
2.配置環(huán)境變量
3.編輯環(huán)境變量
4.重啟環(huán)境變量
5.查看Hadoop版本,查看成功就表示Hadoop安裝成功了
二、修改配置文件
1.檢查三臺虛擬機:
2.切換到配置文件目錄
3.修改 hadoop-env.sh 文件
4.修改?core-site.xml?文件
5.修改?mapred-site.xml 文件
6.修改?hdfs-site.xml?文件
7.修改 yarn-site.xml 文件
8.修改?workers 文件
三、給hadoop2、hadoop3分發(fā)文件
1.到存放hadoop的文件夾下
2.1.給hadoop2和hadoop3拷貝文件和環(huán)境變量
2.2.給hadoop2和hadoop3創(chuàng)建軟連接
2.3.檢查hadoop2和hadoop3是否拷貝成功
2.4.如果沒有拷貝成功就將hadoop2和hadoop3的hadoop文件夾刪除,然后在拷貝一次
四、修改腳本文件
1.切換到hadoop的sbin目錄下
2.修改 start-dfs.sh 腳本文件
3.修改 stop-dfs.sh 腳本文件
4.修改 start-yarn.sh 腳本文件
5.修改 stop-yarn.sh 腳本文件
?五、啟動hadoop集群
1.格式化HDFS
2.啟動hadoop
3.啟動yarn
4.查看進程
5.關閉防火墻
6.訪問Hadoop的web網(wǎng)站
7.停止hadoop
8.停止yarn
9.啟動hadoop和yarn遇到的問題
六、編輯啟動和停止腳本文件
1.進入腳本文件目錄
2.編寫集群控制文件
3.給 hadoop.sh 授權
4.啟動集群,查看進程
5.停止集群,查看進程
七、編輯同步執(zhí)行命令腳本
1.編輯
2.給 xcall.sh?授權
3.執(zhí)行腳本
4.腳本的另一種寫法
一、配置Hadoop環(huán)境
1.查看Hadoop解壓位置
pwd
2.配置環(huán)境變量
vim /etc/profile
3.編輯環(huán)境變量
“/opt/server/hadoop”填自己Hadoop的存放位置。
export HADOOP_HOME=/opt/server/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
4.重啟環(huán)境變量
source /etc/profile
5.查看Hadoop版本,查看成功就表示Hadoop安裝成功了
hadoop version
二、修改配置文件
1.檢查三臺虛擬機:
是否都安裝了jdk和hadoop并且配置了環(huán)境變量,確保虛擬機之間都能互相ping通以及兩兩之間能夠ssh免密登陸,都完成了網(wǎng)卡、主機名、hosts文件等配置。
ip地址 | 主機名 | 節(jié)點 |
---|---|---|
192.168.147.200 |
hadoop | 主節(jié)點 |
192.168.147.201 |
hadoop2 | 子節(jié)點 |
192.168.147.203 |
hadoop3 | 子節(jié)點 |
2.切換到配置文件目錄
cd /opt/server/hadoop/etc/hadoop
3.修改 hadoop-env.sh 文件
路徑改成自己的jdk安裝路徑(vim命令用不了就用vi)
vim hadoop-env.sh
export JAVA_HOME=/opt/server/jdk
4.修改?core-site.xml?文件
vim core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<!-- 用于指定namenode地址在機器master上-->
<value>hdfs://hadoop:8020</value>
</property>
<!-- 用于配置hadoop的數(shù)據(jù)目錄-->
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/server/hadoop/data</value>
</property>
</configuration>
5.修改?mapred-site.xml 文件
vim mapred-site.xml
<configuration>
<!-- 指定MapReduce運行時框架,這里指定在yarn上-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
6.修改?hdfs-site.xml?文件
vim hdfs-site.xml
<configuration>
<!--指定HDFS副本的數(shù)量,不能超過機器節(jié)點數(shù)-->
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<!-- 為secondary namenode配置所在的IP和端口-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop2:50090</value>
</property>
</configuration>
7.修改 yarn-site.xml 文件
vim yarn-site.xml
<configuration>
<!-- 指定yarn集群的管理者(resourcemanger)的地址-->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
8.修改?workers 文件
vim workers
hadoop
hadoop2
hadoop3
三、給hadoop2、hadoop3分發(fā)文件
1.到存放hadoop的文件夾下
cd /opt/server/
2.1.給hadoop2和hadoop3拷貝文件和環(huán)境變量
scp -r hadoop-3.2.4/ root@hadoop2:/opt/server/hadoop-3.2.4/
scp /etc/profile root@hadoop2:/etc/profile
2.2.給hadoop2和hadoop3創(chuàng)建軟連接
ln -s hadoop-3.2.4/ hadoop
2.3.檢查hadoop2和hadoop3是否拷貝成功
hadoop的配置文件拷貝給了hadoop2和hadoop3,在hadoop2打開workers。
vim workers
hadoop2的workers沒被修改,說明沒拷貝成功。?
2.4.如果沒有拷貝成功就將hadoop2和hadoop3的hadoop文件夾刪除,然后在拷貝一次
rm -rf hadoop-3.2.4
?
?重復2.1的操作
四、修改腳本文件
1.切換到hadoop的sbin目錄下
腳本文件都在sbin文件下。
cd /opt/server/hadoop/sbin
2.修改 start-dfs.sh 腳本文件
vim start-dfs.sh
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root


3.修改 stop-dfs.sh 腳本文件
vim stop-dfs.sh
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root


4.修改start-yarn.sh 腳本文件
vim start-yarn.sh
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root


4.修改 start-yarn.sh 腳本文件
vim start-yarn.sh
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root


5.修改 stop-yarn.sh 腳本文件
vim stop-yarn.sh
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root


?五、啟動hadoop集群
1.格式化HDFS
hadoop namenode -format


2.啟動hadoop
啟動hadoop和yarn一定要在sbin目錄下。?
./start-dfs.sh
3.啟動yarn
./start-yarn.sh
4.查看進程
jps
5.關閉防火墻
#關閉
systemctl stop firewalld.service
#查看
systemctl status firewalld.service
#防火墻失效設置
systemctl disable firewalld.service
6.訪問Hadoop的web網(wǎng)站
?ip+端口
7.停止hadoop
./stop-dfs.sh
8.停止yarn
./stop-yarn.sh
第一次停止yarn可能會出現(xiàn)以下情況:
再輸入一次命令就好了?
9.啟動hadoop和yarn遇到的問題
ERROR: JAVA_HOME is not set and could not be found.
出錯的原因是2.3的hadoop配置文件沒有成功拷貝給hadoop2和hadoop3,解決辦法在2.4。
六、編輯啟動和停止腳本文件
1.進入腳本文件目錄
cd /opt/script/
如果沒有script目錄就新建一個。
mkdir script
2.編寫集群控制文件
vim hadoop.sh
#! /bin/bash
case $1 in
"start" ) {
/opt/server/hadoop/sbin/start-dfs.sh
/opt/server/hadoop/sbin/start-yarn.sh
};;
"stop") {
/opt/server/hadoop/sbin/stop-dfs.sh
/opt/server/hadoop/sbin/stop-yarn.sh
};;
esac



3.給 hadoop.sh 授權
chmod 777 hadoop.sh
4.啟動集群,查看進程
./hadoop.sh start
jps
查看hadoop進程?


查看hadoop2進程?
5.停止集群,查看進程
./hadoop.sh stop
jps



七、編輯同步執(zhí)行命令腳本
1.編輯
vim xcall.sh
#! /bin/bash
params=$@
hosts=( hadoop hadoop2 hadoop3)
for host in ${hosts[@]}
do
echo ============ $host: $params ============
ssh $host "source /etc/profile;$params"
done


2.給 xcall.sh?授權
chmod 777 xcall.sh


3.執(zhí)行腳本
查看進程和主機名?
./xcall.sh jps
./xcall.sh hostname
4.腳本的另一種寫法
如果主機名是?hadoop1、hadoop2、hadoop3 可以用以下寫法:
#! /bin/bash
params=$@
for (( i=1 ; i<=3 ; i=$i+1)) ; do
echo ============= hadoop$i $params =============
ssh hadoop$i "source /etc/profile;$params"
done
文章來源:http://www.zghlxwxcb.cn/news/detail-773097.html
但是?hadoop、hadoop2、hadoop3用這種寫法會出現(xiàn)以下結(jié)果:文章來源地址http://www.zghlxwxcb.cn/news/detail-773097.html


到了這里,關于Linux修改hadoop配置文件及啟動hadoop集群詳細步驟的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!