軟件版本
1.Centos:Centos7
2.jdk:1.8_0-261
3.hadoop:hadoop 3.2.1(!!!!一定要看清版本,我看別人的教程配置因為版本上的問題浪費了很多時間,具體可以查一下)
4.Xshell
5.FileZilla:用於向虛擬機傳輸文件
1.網絡設置
1.1本地設置
首先在網絡設置中設置
1.2虛擬網絡配置
ok其實這里我們可以根據虛擬網絡配置來設置本地網絡,就是說根據系統自動給分配的ip去手動分配完事再把ip設置一下(理論上這樣可以避免端口占用的問題)。
2.新建一台虛擬機
這里新建的虛擬機最好是min版的完事帶有一些兼容性程序的可能會好一些.要不然很多要下載
3.修改hostname
systemctl set-hostname master
名字是隨便起的,最好用一些便於管理的
4.修改網卡
vim /etc/sysconfig/network-scripts/ifcfg-ens33
#重啟一下網卡
service network restart
靜態ip記得和虛擬網絡配置的對照起來
配置完之后ipaddr或者ifconfig看一下配置的生效了沒
5.連接Xshell和FileZilla(端口默認為22)
這里也是為了更方便的去使用虛擬機,不想用的也可以直接在虛擬機配置
連不上的辦法:直接刪除虛擬網絡配置里面的Vm8完事在創建一個記得去配置一下本地的,這種方法基本上都可以連上的
6.關閉防火牆
6.1查看防火牆的狀態
service iptables status
6.2關閉防火牆並且禁止開機啟動
systemctl stop firewalld.service
systemctl disable firewalld.service
7.配置時鍾同步
yum install ntpdate ntpdate ntp.aliyun.com
8.配置host列表
vi /etc/hosts
我這里搞了兩個子節點所以就是這樣的
9.安裝jdk
9.1最好創建一個路徑吧,我是在家目錄下創建了相關目錄如下:
9.2使用FileZilla把下載好的JDK文件放入java文件夾下並解壓
tar -zxvf jdk壓縮包
9.3配置環境變量
vim /etc/profile
在文件末尾添加
export JAVA_HOME=/user/local/java/jdk1.8.0_261 ###這里要寫你的路徑嗷 export PATH=$JAVA_HOME/bin:$PATH
9.4使配置生效
source /etc/profile #看一下jdk版本 java -version javac
10安裝hadoop
10.1 基本流程和安裝jdk差不多
上傳hadoop壓縮文件-----》解壓
10.2 配置hadoop環境變量
在文件尾添加
export HADOOP_HOME=/usr/hadoop/hadoop-3.2.1 export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
使得hadoop配置生效
source /etc/profile hadoop version whereis hdfs
11.配置hadoop
11.1配置hadoop/etc文件夾下的core-site.xml文件
<configuration> <!--指定文件系統的入口地址,可以為主機名或ip --> <!--端口號默認為8020 --> <property> <name>fs.defaultFS</name> <value>hdfs://master:8020</value> </property> <!--指定hadoop的臨時工作存目錄--> <property> <name>hadoop.tmp.dir</name> <value>/user/local/hadoop/tmp</value> </property> </configuration>
11.2配置yarn-env.sh文件
將#export JAVA_HOME=/home/.....
修改為你自己的jdk路徑(去掉注釋符號)
11.3配置hdfs-site.xml文件
<configuration> <!--指定hdfs備份數量,小於等於從節點數目--> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.namenode.http.address</name> <value>master:50070</value> </property> </configuration>
11.4配置mapred-site.xml文件
若是沒有的話
cp mapred-site.xml.template mapred-site.xml
有的話直接修改
<configuration> <!--hadoop的MapReduce程序運行在YARN上--> <!--默認值為local--> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
11.5配置yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<!--nomenodeManager獲取數據的方式是shuffle-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
11.6修改workers文件
以前是slaves文件也不知道從什么版本開始變成workers文件
11.7配置sbin文件夾下的start-dfs.sh、stop-dfs.sh文件
在文件頂部添加:
HDFS_DATANODE_USER=root HDFS_DATANODE_SECURE_USER=hdfs HDFS_NAMENODE_USER=root HDFS_SECONDARYNAMENODE_USER=root
11.8配置sbin文件夾下的start-yarn.sh、stop-yarn.sh文件
在文件頂部添加:
YARN_RESOURCEMANAGER_USER=root HADOOP_SECURE_DN_USER=yarn YARN_NODEMANAGER_USER=root
12.克隆虛擬機
13.配置虛擬機
13.1修改虛擬機的hostname
13.2修改虛擬機的IP地址
13.3看一下hosts文件里面的參數對不對,要不然后面ssh可能不好使
14.配置ssh免密碼登錄(一定記得在master機上做這些事情)
14.1生成公鑰
ssh-keygen -t rsa
14.2發送公鑰
cat id_rsa.pub >> authorized_keys chmod 644 authorized_keys systemctl restart sshd.service scp /root/.ssh/authorized_keys slave1:/root/.ssh scp /root/.ssh/authorized_keys slave2:/root/.ssh
14.3登錄驗證
ssh slave1 exit
15.運行hadoop
15.1格式化HDFS
在master機上,進入hadoop下的bin文件夾,運行以下代碼:
hdfs namenode -format
注意:只需格式化一次!多次格式化會導致NameNode和DataNode的集群ID值不匹配,需要在格式化前刪除NameNode,DataNode、日志等文件夾。
15.2啟動hadoop
進入hadoop中的sbin文件夾下,運行:
start-all.sh
15.3檢驗jps
jps
16.web訪問hadoop
16.1查看NameNode、DataNode:
192.168.198.129:9870---------這里和以前的版本不一樣以前默認是50070
16.2查看yarn頁面:
192.168.198.129:8088
17.來源
我是根據這個up主的配置然后因為我的版本和他的不一樣所以有一些錯誤挺麻煩的,可以看他的視頻用他的版本直接配也可以,前面的網絡配置和他差不多一樣
https://www.bilibili.com/video/BV1Kg4y1q72s?t=1418