校園網(wǎng)站建設的優(yōu)點東莞網(wǎng)站排名提升
文章目錄
- 一、Hadoop部署模式
- (一)獨立模式
- (二)偽分布式模式
- (三)完全分布式模式
- 二、搭建偽分布式Hadoop
- (一)登錄虛擬機
- (二)上傳安裝包
- (三)配置免密登錄
- 1、生成密鑰對
- 2、將生成的公鑰發(fā)送到本機
- 3、驗證虛擬機是否能免密登錄自己
- (四)配置JDK
- 1、解壓到指定目錄
- (1)解壓到指定目錄
- (2)查看java解壓目錄
- 2、配置JDK環(huán)境變量
- 3、讓環(huán)境變量配置生效
- 4、查看JDK版本
- 5、玩一玩Java程序
- (五)配置Hadoop
- 1、解壓hadoop安裝包
- (1)解壓到指定目錄
- (2)查看hadoop解壓目錄
- (3)常用目錄和文件
- 2、配置hadoop環(huán)境變量
- 3、讓環(huán)境變量配置生效
- 4、查看hadoop版本
- 5、編輯Hadoop環(huán)境配置文件 - hadoop-env.sh
- 6、編輯Hadoop核心配置文件 - core-site.xml
- 7、編輯HDFS配置文件 - hdfs-site.xml
- 8、編輯MapReduce配置文件 - mapred-site.xml
- 9、編輯YARN配置文件 - yarn-site.xml
- 10、編輯workers文件確定數(shù)據(jù)節(jié)點
- (六)格式化名稱節(jié)點
- (七)啟動Hadoop服務
- 1、啟動hdfs服務
- 2、啟動yarn服務
- 3、查看Hadoop進程
- (八)查看Hadoop WebUI
- (九)關閉Hadoop服務
- 1、關閉hdfs服務
- 2、關閉yarn服務
一、Hadoop部署模式
(一)獨立模式
- 在獨立模式下,所有程序都在單個JVM上執(zhí)行,調(diào)試Hadoop集群的MapReduce程序也非常方便。一般情況下,該模式常用于學習或開發(fā)階段進行調(diào)試程序。
(二)偽分布式模式
- 在偽分布式模式下, Hadoop程序的守護進程都運行在一臺節(jié)點上,該模式主要用于調(diào)試Hadoop分布式程序的代碼,以及程序執(zhí)行是否正確。偽分布式模式是完全分布式模式的一個特例。
(三)完全分布式模式
- 在完全分布式模式下,Hadoop的守護進程分別運行在由多個主機搭建的集群上,不同節(jié)點擔任不同的角色,在實際工作應用開發(fā)中,通常使用該模式構建企業(yè)級Hadoop系統(tǒng)。
二、搭建偽分布式Hadoop
(一)登錄虛擬機
- 登錄ied虛擬機
(二)上傳安裝包
-
上傳jdk和hadoop安裝包
-
查看上傳的安裝包
(三)配置免密登錄
1、生成密鑰對
- 執(zhí)行命令:
ssh-keygen
- 執(zhí)行命令后,連續(xù)敲回車,生成節(jié)點的公鑰和私鑰,生成的密鑰文件會自動放在/root/.ssh目錄下。
2、將生成的公鑰發(fā)送到本機
- 執(zhí)行命令:
ssh-copy-id root@ied
3、驗證虛擬機是否能免密登錄自己
- 執(zhí)行命令:
ssh ied
(四)配置JDK
1、解壓到指定目錄
(1)解壓到指定目錄
- 執(zhí)行命令:
tar -zxvf jdk-8u231-linux-x64.tar.gz -C /usr/local
(2)查看java解壓目錄
- 執(zhí)行命令:
ll /usr/local/jdk1.8.0_231
2、配置JDK環(huán)境變量
- 執(zhí)行命令:
vim /etc/profile
export JAVA_HOME=/usr/local/jdk1.8.0_231
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
- 存盤退出
3、讓環(huán)境變量配置生效
- 執(zhí)行命令:
source /etc/profile
- 查看環(huán)境變量
JAVA_HOME
4、查看JDK版本
- 執(zhí)行命令:
java -version
5、玩一玩Java程序
- 編寫源程序,執(zhí)行命令:
vim HelloWorld.java
- 編譯成字節(jié)碼文件,執(zhí)行命令:
javac HelloWorld.java
- 解釋執(zhí)行類,執(zhí)行命令:
java HelloWorld
(五)配置Hadoop
1、解壓hadoop安裝包
(1)解壓到指定目錄
- 執(zhí)行命令:
tar -zxvf hadoop-3.3.4.tar.gz -C /usr/local
(2)查看hadoop解壓目錄
- 執(zhí)行命令:
ll /usr/local/hadoop-3.3.4
(3)常用目錄和文件
- bin目錄 - 存放命令腳本
- etc/hadoop目錄 - 存放hadoop的配置文件
- lib目錄 - 存放hadoop運行的依賴jar包
- sbin目錄 - 存放啟動和關閉Hadoop等命令
- libexec目錄 - 存放的也是hadoop命令,但一般不常用
2、配置hadoop環(huán)境變量
- 執(zhí)行命令:
vim /etc/profile
- 說明:hadoop 2.x用不著配置用戶,只需要前兩行即可
3、讓環(huán)境變量配置生效
- 執(zhí)行命令:
source /etc/profile
4、查看hadoop版本
- 執(zhí)行命令:
hadoop version
5、編輯Hadoop環(huán)境配置文件 - hadoop-env.sh
- 執(zhí)行命令:
cd etc/hadoop
,進入hadoop配置目錄
- 執(zhí)行命令:
vim hadoop-env.sh
,添加三條環(huán)境變量配置
- 存盤退出后,執(zhí)行命令
source hadoop-env.sh
,讓配置生效
6、編輯Hadoop核心配置文件 - core-site.xml
- 執(zhí)行命令:
vim core-site.xml
<configuration><!--用來指定hdfs的老大--><property><name>fs.defaultFS</name><value>hdfs://ied:9000</value></property><!--用來指定hadoop運行時產(chǎn)生文件的存放目錄--><property><name>hadoop.tmp.dir</name><value>/usr/local/hadoop-3.3.4/tmp</value></property>
</configuration>
- 由于配置了IP地址主機名映射,因此配置HDFS老大節(jié)點可用
hdfs://ied:9000
,否則必須用IP地址hdfs://192.168.1.100:9000
7、編輯HDFS配置文件 - hdfs-site.xml
- 執(zhí)行命令:
vim hdfs-site.xml
<configuration><!--設置名稱節(jié)點的目錄--><property><name>dfs.namenode.name.dir</name><value>/usr/local/hadoop-3.3.4/tmp/namenode</value></property><!--設置數(shù)據(jù)節(jié)點的目錄--><property><name>dfs.datanode.data.dir</name><value>/usr/local/hadoop-3.3.4/tmp/datanode</value></property><!--設置輔助名稱節(jié)點--><property><name>dfs.namenode.secondary.http-address</name><value>ied:50090</value></property><!--hdfs web的地址,默認為9870,可不配置--><!--注意如果使用hadoop2,默認為50070--><property><name>dfs.namenode.http-address</name><value>0.0.0.0:9870</value></property><!--副本數(shù),默認為3--><property><name>dfs.replication</name><value>1</value></property><!--是否啟用hdfs權限,當值為false時,代表關閉--><property><name>dfs.permissions.enabled</name><value>false</value></property>
</configuration>
8、編輯MapReduce配置文件 - mapred-site.xml
- 執(zhí)行命令:
vim mapred-site.xml
<configuration><!--配置MR資源調(diào)度框架YARN--><property><name>mapreduce.framework.name</name><value>yarn</value></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>
</configuration>
- 后三個屬性如果不設置,在運行Hadoop自帶示例的詞頻統(tǒng)計時,會報錯:
Error: Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster
9、編輯YARN配置文件 - yarn-site.xml
- 執(zhí)行命令:
vim yarn-site.xml
<configuration><!--配置資源管理器:ied--><property><name>yarn.resourcemanager.hostname</name><value>ied</value></property><!--配置節(jié)點管理器上運行的附加服務--><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><!--關閉虛擬內(nèi)存檢測,在虛擬機環(huán)境中不做配置會報錯--><property><name>yarn.nodemanager.vmem-check-enabled</name><value>false</value></property>
</configuration>
10、編輯workers文件確定數(shù)據(jù)節(jié)點
- 說明:hadoop-2.x里配置
slaves
文件,hadoop-3.x里配置workers
文件 - 執(zhí)行命令:
vim workers
- 只有1個數(shù)據(jù)節(jié)點,正好跟副本數(shù)配置的1一致
(六)格式化名稱節(jié)點
- 執(zhí)行命令:
hdfs namenode -format
Storage directory /usr/local/hadoop-3.3.4/tmp/namenode has been successfully formatted.
表明名稱節(jié)點格式化成功。
(七)啟動Hadoop服務
1、啟動hdfs服務
- 執(zhí)行命令:
start-dfs.sh
2、啟動yarn服務
- 執(zhí)行命令:
start-yarn.sh
3、查看Hadoop進程
-
執(zhí)行命令:
jps
-
說明:
start-dfs.sh
與start-yarn.sh
可以用一條命令start-all.sh
來替換
(八)查看Hadoop WebUI
- 在瀏覽器里訪問
http://ied:9870
- 查看文件系統(tǒng)
- 根目錄下沒有任何內(nèi)容
(九)關閉Hadoop服務
1、關閉hdfs服務
- 執(zhí)行命令:
stop-dfs.sh
2、關閉yarn服務
-
執(zhí)行命令:
stop-yarn.sh
-
說明:
stop-dfs.sh
與stop-yarn.sh
可以用一條命令stop-all.sh
來替換