一、搭建程序
步驟:
1、準備安裝環境
1、虛擬機裝好CentOS 7系統,一共三個系統,分別命名為:node1、node2、node3
2、每個系統都卸載系統自帶的openjdk
3、安裝jdk1.8,并配置環境變數
4、設定IP
5、修改主機名
6、配置hosts檔案
7、關閉防火墻
8、禁用selinux
9、設定SSH免密碼登陸
10、最后設定完要重啟系統
2、集群規劃
2.1、設定每個節點的行程
Hadoop集群上有HDFS集群和YARN集群
HDFS集群有三個守護行程:
1、NameNode
2、SecondaryNameNode
3、DataNode
YARN集群有兩個守護行程:
1、ResourceManager
2、NodeManager
2.2、HDFS集群規劃
1、node1
1、NameNode
2、DataNode
2、node2
1、SecondaryNameNode
2、DataNode
3、node3
1、DataNode
2.3、YARN集群規劃
1、node1
1、ResourceManager
2、NodeManager
2、node2
1、NodeManager
3、node3
1、NodeManager
3、集群安裝
3.1、下載安裝包
1、Hadoop3.3.1
下載地址:
https://dlcdn.apache.org/hadoop/common/hadoop-3.3.1/hadoop-3.3.1.tar.gz
2、JDK1.8
下載地址:
https://www.oracle.com/java/technologies/downloads/
3.2、設定安裝目錄
1、壓縮包存放目錄
/export/software
2、解壓包存放目錄
/export/server
3.3、創建存放資料的data目錄
# NameNode資料
mkdir -p /export/server/hadoop-3.3.1/data/namenode
# DataNode資料
mkdir -p /export/server/hadoop-3.3.1/data/datanode
3.4、配置環境變數
3.5、編輯組態檔
3.5.1 配置NameNode(core-site.xml)
在第19行下添加以下內容:
<property>
<name>fs.defaultFS</name>
<value>hdfs://node1.itcast.cn:9820</value>
<description>配置NameNode的URL</description>
</property>
3.5.2 配置HDFS路徑(hdfs-site.xml)
在第20行下添加以下內容:
<property>
<name>dfs.namenode.name.dir</name>
<value>/export/server/hadoop-3.3.1/data/namenode</value>
<description>NameNode存盤名稱空間和事務日志的本地檔案系統上的路徑</description>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/export/server/hadoop-3.3.1/data/datanode</value>
<description>DataNode存盤名稱空間和事務日志的本地檔案系統上的路徑</description>
</property>
3.5.3 配置YARN(yarn-site.xml)
在第18行下添加以下內容:
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.scheduler.minimum-allocation-mb</name>
<value>512</value>
<description>為每個容器請求分配的最小記憶體限制資源管理器(512M)</description>
</property>
<property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value>4096</value>
<description>為每個容器請求分配的最大記憶體限制資源管理器(4G)</description>
</property>
<property>
<name>yarn.nodemanager.vmem-pmem-ratio</name>
<value>4</value>
<description>虛擬記憶體比例,默認為2.1,此處設定為4倍</description>
</property>
3.5.4 配置MapReduce(mapred-site.xml)
在第20行下添加以下內容:
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
<description>執行MapReduce的方式:yarn/local</description>
</property>
<property>
<name>yarn.app.mapreduce.am.env</name>
<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property>
<property>
<name>mapreduce.map.env</name>
<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property>
<property>
<name>mapreduce.reduce.env</name>
<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property>
3.5.5 workers檔案
vim /export/server/hadoop-3.3.1/etc/hadoop/workers
# 洗掉第一行localhost,然后添加以下三行
node1.itcast.cn
node2.itcast.cn
node3.itcast.cn
3.5.6 修改hadoop.env環境變數
hadoop.env檔案
vim /export/server/hadoop-3.1.4/etc/hadoop/hadoop-env.sh
修改第54行為:
export JAVA_HOME=/export/server/jdk1.8
3.5.7 配置環境變數
vim /etc/profile
export HADOOP_HOME=/export/server/hadoop-3.3.1
export PATH=$PATH:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:
source /etc/profile
3.5.8 分發配置好的Hadoop安裝檔案和環境變數
cd /export/server/
#復制檔案夾到相應路徑下的當前目錄
scp -r hadoop-3.3.1 node2.itcast.cn:$PWD
scp -r hadoop-3.3.1 node3.itcast.cn:$PWD
#復制檔案到相應路徑
scp /etc/profile node2.itcast.cn:/etc
scp /etc/profile node3.itcast.cn:/etc
在每個節點上執行
source /etc/profile
3.5.9 格式化HDFS
首次啟動HDFS時,必須對其進行格式化操作,本質上是一些清理和準備作業,因為此時的HDFS在物理上還是不存在的
cd /export/server/hadoop-3.3.1
bin/hdfs namenode -format itcast-hadoop
3.5.10 啟動Hadoop集群
要啟動Hadoop集群,需要啟動HDFS和YARN兩個集群,
3.5.11 啟動HDFS集群
選擇node1.itcast.cn節點啟動NameNode節點
hdfs --daemon start namenode
在所有節點上啟動DataNode
hdfs --daemon start datanode
啟動Secondary NameNode
hdfs --daemon start secondarynamenode
3.5.12 啟動YARN集群
選擇node1.itcast.cn節點啟動ResourceManager節點
yarn --daemon start resourcemanager
在所有節點上啟動NodeManager
yarn --daemon start nodemanager
注意:如果在啟動之后,有些服務沒有啟動成功,則需要查看啟動日志,Hadoop的啟動日志在每臺主機的/export/server/hadoop-x.x.x/logs/目錄,需要根據哪臺主機的哪個服務啟動情況去對應的主機上查看相應的日志,以下是node1主機的日志目錄.
3.6 關閉Hadoop集群
3.6.1 關閉HDFS集群
# 關閉NameNode
hdfs --daemon stop namenode
# 每個節點關閉DataNode
hdfs --daemon stop datanode
# 關閉Secondary NameNode
hdfs --daemon stop secondarynamenode
3.6.2 關閉YARN集群
# 每個節點關閉ResourceManager
yarn --daemon stop resourcemanager
# 每個節點關閉NodeManager
yarn --daemon stop nodemanager
4 修改配置配置啟動用戶
4.1 HDFS集群一鍵腳本
cd /export/server/hadoop-3.3.1/sbin
編輯start-dfs.sh、stop-dfs.sh
在兩個檔案頂部添加以下內容:
HDFS_DATANODE_USER=root
HDFS_DATANODE_SECURE_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
4.2 YARN集群一鍵腳本
start-yarn.sh、stop-yarn.sh
在兩個檔案頂部添加以下內容:
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root
4.3 一鍵啟動
-- 一鍵啟動HDFS、YARN
start-dfs.sh
start-yarn.sh
4.4 一鍵關閉
stop-dfs.sh
stop-yarn.sh
為了方便在windows上訪問Hadoop,我們可以配置一個域名映射,就是以后我們只需要輸入node1.itcast.cn,就會自動映射為對應的ip地址,
5 配置windows域名映射
1.以管理員身份打開C:\Windows\System32\drivers\etc目錄下的hosts檔案
2.在檔案最后添加以下映射域名和ip映射關系
虛擬機內node1的IPv4地址 node1.itcast.cn node1
虛擬機內node2的IPv4地址 node2.itcast.cn node2
虛擬機內node3的IPv4地址 node3.itcast.cn node3
3.保存退出
4.測驗映射是否生效
ping node1.itcast.cn
ping node2.itcast.cn
ping node3.itcast.cn
5.1 訪問WebUI
NameNode:
http://node1.itcast.cn:9870
YARN:
http://node1.itcast.cn:8088
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/386516.html
標籤:其他
