久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Hadoop 入門

 壓箱底的浮雕 2021-02-01

1 大數(shù)據(jù)概率

大數(shù)據(jù)是指在一定時間內(nèi)無法用常規(guī)軟件工具進(jìn)行捕捉、管理和處理的數(shù)據(jù)集合,,是需要新處理模式才能具有更強(qiáng)的決策力,、洞察發(fā)現(xiàn)力和流程優(yōu)化能力的海量,、高增長率和多樣化的信息增長,。

主要解決海量的存儲和海量數(shù)據(jù)的分析計算問題,。

1.1 大數(shù)據(jù)的特點

Volume(大量)

Velocity(高速)

Variety(多樣)

Value(低價值密度)

1.2 大數(shù)據(jù)應(yīng)用場景

物流倉儲:大數(shù)據(jù)分析系統(tǒng)助力商家精細(xì)化運營、提升銷量,、節(jié)約成本,。

零售:分析用戶消費習(xí)慣,為用戶購買商品提供方便,,從而提升商品銷量,。

旅游:深度結(jié)合大數(shù)據(jù)能力與旅游行業(yè)需求,共建旅游產(chǎn)業(yè)智慧管理,、智慧服務(wù)和智慧營銷的未來,。

商品推薦:根據(jù)用戶購買記錄推薦商品。

保險:海量數(shù)據(jù)挖掘及風(fēng)險預(yù)測,,助力保險行業(yè)精準(zhǔn)營銷,,提升精細(xì)化定價能力。

金融:多維度體現(xiàn)用戶特征,,幫助金融機(jī)構(gòu)推薦優(yōu)質(zhì)客戶,防范欺詐風(fēng)險,。

房地產(chǎn):大數(shù)據(jù)全面助力房地產(chǎn)行業(yè),,打造精準(zhǔn)投策與營銷,選出更合適的地,,建造更合適的樓,,賣給更合適的人。

人工智能:以大數(shù)據(jù)為依托,。

2 Hadoop 框架討論大數(shù)據(jù)生態(tài)

2.1 Hadoop 是什么,?

Hadoop是一個由Apache基金會所開發(fā)的分布式系統(tǒng)基礎(chǔ)架構(gòu)。

主要解決,,海量數(shù)據(jù)的存儲和海量數(shù)據(jù)的分析計算問題,。

廣義上來說,Hadoop通常是指一個更廣泛的概念——Hadoop生態(tài)圈,。

2.2 Hadoop 發(fā)行版本

Apache版本最原始(最基礎(chǔ))的版本,,對于入門學(xué)習(xí)最好,。

Cloudera在大型互聯(lián)網(wǎng)企業(yè)中用的較多。

Hortonworks文檔較好,。

2.3 Hadoop 的優(yōu)勢

高可靠性:Hadoop 底層維護(hù)多個數(shù)據(jù)副本,,所以即使 Hadoop 某個計算元素或存儲出現(xiàn)故障,也不會導(dǎo)致數(shù)據(jù)的丟失,。

高擴(kuò)展性:在集群間分配任務(wù)數(shù)據(jù),,可方便的擴(kuò)展數(shù)以千計的節(jié)點。

高效性:在 MapReduce 的思想下,,Hadoop 是并行工作的,,以加快任務(wù)處理速度。

高容錯性:能夠自動將失敗的任務(wù)重新分配,。

2.4 Hadoop 組成

2.4.1 HDFS架構(gòu)概述

NameNodenn):存儲文件的元數(shù)據(jù),,如文件名,文件目錄結(jié)構(gòu),,文件屬性(生成時間,、副本數(shù)、文件權(quán)限),,以及每個文件的塊列表和塊所在的DataNode等,。

DataNodedn):在本地文件系統(tǒng)存儲文件塊數(shù)據(jù),以及塊數(shù)據(jù)的校驗和,。

Secondary NameNode2nn):用來監(jiān)控 HDFS 狀態(tài)的輔助后臺程序,,每隔一段時間獲取 HDFS 元數(shù)據(jù)的快照。

2.4.2 YARN架構(gòu)概述

2.4.3 MapReduce 架構(gòu)概述

MapReduce 將計算過程分為兩個階段:Map Reduce

Map 階段并行處理輸入數(shù)據(jù)

Reduce 階段對 Map 結(jié)果進(jìn)行匯總

2.5 大數(shù)據(jù)技術(shù)生態(tài)體系

涉及的技術(shù)名詞解釋如下:

1SqoopSqoop 是一款開源的工具,,主要用于在 Hadoop,、Hive 與傳統(tǒng)的數(shù)據(jù)庫(MySQL)間進(jìn)行數(shù)據(jù)的傳遞,可以將一個關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)導(dǎo)進(jìn)到 Hadoop HDFS 中,,也可以將 HDFS 的數(shù)據(jù)導(dǎo)進(jìn)到關(guān)系型數(shù)據(jù)庫中,。

2FlumeFlume Cloudera 提供的一個高可用的,高可靠的,,分布式的海量日志采集,、聚合和傳輸?shù)南到y(tǒng),Flume 支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,,用于收集數(shù)據(jù),;同時,Flume 提供對數(shù)據(jù)進(jìn)行簡單處理,,并寫到各種數(shù)據(jù)接受方(可定制)的能力,。

3KafkaKafka 是一種高吞吐量的分布式發(fā)布訂閱消息系統(tǒng),有如下特性:

1)通過O(1)的磁盤數(shù)據(jù)結(jié)構(gòu)提供消息的持久化,,這種結(jié)構(gòu)對于即使數(shù)以 TB 的消息存儲也能夠保持長時間的穩(wěn)定性能,。

2)高吞吐量:即使是非常普通的硬件 Kafka 也可以支持每秒數(shù)百萬的消息,。

3)支持通過 Kafka 服務(wù)器和消費機(jī)集群來分區(qū)消息。

4)支持 Hadoop 并行數(shù)據(jù)加載,。

4StormStorm 用于連續(xù)計算,,對數(shù)據(jù)流做連續(xù)查詢,在計算時就將結(jié)果以流的形式輸出給用戶,。

5SparkSpark 是當(dāng)前最流行的開源大數(shù)據(jù)內(nèi)存計算框架,,可以基于 Hadoop 上存儲的大數(shù)據(jù)進(jìn)行計算。

6OozieOozie 是一個管理 Hdoop 作業(yè)(job)的工作流程調(diào)度管理系統(tǒng),。

7HbaseHBase 是一個分布式的,、面向列的開源數(shù)據(jù)庫,HBase 不同于一般的關(guān)系數(shù)據(jù)庫,,它是一個適合于非結(jié)構(gòu)化數(shù)據(jù)存儲的數(shù)據(jù)庫,。

8HiveHive 是基于 Hadoop 的一個數(shù)據(jù)倉庫工具,可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表,,并提供簡單的 SQL查詢功能,,可以將 SQL 語句轉(zhuǎn)換為 MapReduce 任務(wù)進(jìn)行運行, 其優(yōu)點是學(xué)習(xí)成本低,,可以通過類 SQL 語句快速實現(xiàn)簡單的 MapReduce 統(tǒng)計,,不必開發(fā)專門的 MapReduce 應(yīng)用,十分適合數(shù)據(jù)倉庫的統(tǒng)計分析,。

10R語言:R 是用于統(tǒng)計分析,、繪圖的語言和操作環(huán)境。R 是屬于 GNU 系統(tǒng)的一個自由,、免費,、源代碼開放的軟件,它是一個用于統(tǒng)計計算和統(tǒng)計制圖的優(yōu)秀工具,。

11MahoutApache Mahout 是個可擴(kuò)展的機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘庫,。

12ZooKeeperZookeeper Google Chubby 一個開源的實現(xiàn),它是一個針對大型分布式系統(tǒng)的可靠協(xié)調(diào)系統(tǒng),,提供的功能包括:配置維護(hù)、名字服務(wù),、 分布式同步,、組服務(wù)等,ZooKeeper 的目標(biāo)就是封裝好復(fù)雜易出錯的關(guān)鍵服務(wù),,將簡單易用的接口和性能高效,、功能穩(wěn)定的系統(tǒng)提供給用戶。

3 Hadoop 運行環(huán)境搭建

3.1 虛擬機(jī)環(huán)境準(zhǔn)備

關(guān)閉防火墻

# 關(guān)閉防火墻
systemctl stop firewalld
# 開機(jī)禁用防火墻
systemctl disable firewalld

創(chuàng)建用戶

# 創(chuàng)建用戶
useradd djm
# 修改密碼
passwd djm

配置用戶具有 root 權(quán)限

djm     ALL=(ALL)       NOPASSWD:ALL

/opt 目錄下創(chuàng)建文件夾

sudo mkdir /opt/software
sudo mkdir /opt/module

3.2 安裝 JDK

卸載現(xiàn)有 Java

rpm -qa | grep java | xargs sudo rpm -e --nodeps

解壓到 /opt/module 目錄

tar -zxvf jdk-8u144-linux-x64.tar.gz -C /opt/module/

配置環(huán)境變量

sudo vim /etc/profile
#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_144
export PATH=$PATH:$JAVA_HOME/bin

刷新配置

source /etc/profile

測試是否安裝成功

java -version

3.3 安裝 Hadoop

解壓到 /opt/module 目錄

tar -zxvf hadoop-2.7.2.tar.gz -C /opt/module/

配置環(huán)境變量

sudo vim /etc/profile
#HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop-2.7.2
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

刷新配置

source /etc/profile

測試是否安裝成功

hadoop version

3.4 Hadoop 目錄結(jié)構(gòu)

bin 目錄:存放對 Hadoop 相關(guān)服務(wù)(HDFS,,YARN)進(jìn)行操作的腳本

etc 目錄:Hadoop 的配置文件目錄,,存放 Hadoop 的配置文件

lib 目錄:存放 Hadoop 的本地庫(對數(shù)據(jù)進(jìn)行壓縮解壓縮功能)

sbin 目錄:存放啟動或停止 Hadoop 相關(guān)服務(wù)的腳本

share 目錄:存放 Hadoop 的依賴 jar 包,、文檔、和官方案例

4 Hadoop 運行模式

4.1 本地運行模式

創(chuàng)建一個 input 文件夾

[djm@hadoop101 hadoop-2.7.2]$ mkdir input

Hadoop xml 配置文件復(fù)制到 input

[djm@hadoop101 hadoop-2.7.2]$ cp etc/hadoop/*.xml input

執(zhí)行 share 目錄下的 MapReduce 程序

# output 必須是一個不存在的文件夾
[djm@hadoop101 hadoop-2.7.2]$ hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar grep input output 'dfs[a-z.]+'

查看輸出結(jié)果

[djm@hadoop101 hadoop-2.7.2]$ cat output/*

4.2 偽分布式運行模式

4.2.1 啟動 HDFS 并運行 MapReduce 程序

配置 hadoop-env.sh

#修改JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_144

配置 core-site.xml

<configuration>
    <!-- 指定HDFS中NameNode的地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hadoop101:9000</value>
    </property>
    <!-- 指定Hadoop運行時產(chǎn)生文件的存儲目錄 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/module/hadoop-2.7.2/data/tmp</value>
    </property>
</configuration>

配置 hdfs-site.xml

<configuration>
    <!-- 指定HDFS副本的數(shù)量 -->
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>

啟動集群

#格式化NameNode
[djm@hadoop101 hadoop-2.7.2]$ hdfs namenode -format
#啟動NameNode
[djm@hadoop101 hadoop-2.7.2]$ hadoop-daemon.sh start namenode
#啟動DataNode
[djm@hadoop101 hadoop-2.7.2]$ hadoop-daemon.sh start datanode

查看是否啟動成功

jps

操作集群

#在HDFS文件系統(tǒng)上創(chuàng)建input
[djm@hadoop101 hadoop-2.7.2]$ hdfs dfs -mkdir -p /user/djm/input
#將測試文件內(nèi)容上傳到文件系統(tǒng)上
[djm@hadoop101 hadoop-2.7.2]$ hdfs dfs -put wcinput/wc.input /user/djm/input/
#運行MapReduce程序
[djm@hadoop101 hadoop-2.7.2]$ hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /user/djm/input/ /user/djm/output
#查看運行結(jié)果
[djm@hadoop101 hadoop-2.7.2]$ hdfs dfs -cat /user/djm/output/*
#刪除運行結(jié)果
[djm@hadoop101 hadoop-2.7.2]$ hdfs dfs -rm -r /user/djm/output

為什么不能一直格式化 NameNode,,格式化 NameNode,,要注意什么?

當(dāng)我們執(zhí)行文件系統(tǒng)格式化時,,會在 NameNode 數(shù)據(jù)文件夾(即配置文件中 dfs.name.dir 在本地系統(tǒng)的路徑)中保存一個 dfs/data/current/VERSION 文件,,記錄了 clusterID datanodeUuid,格式化 NameNode 會產(chǎn)生新的 clusterID,,但是 VERSION 文件只記錄第一次格式化時保存的 clusterID,,因此造成 DataNode NameNode 之間的 ID 不一致,解決方法是刪除 VERSION 文件,。

4.2.2 啟動 YARN 并運行 MapReduce 程序

配置 yarn-env.sh

#修改JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_144

配置 yarn-site.xml

<configuration>
    <!-- Reducer獲取數(shù)據(jù)的方式 -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <!-- 指定YARN的ResourceManager的地址 -->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>hadoop101</value>
    </property>
</configuration>

配置 mapred-env.sh

#修改JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_144

配置 mapred-site.xml

#將mapred-site.xml.template重命名為mapred-site.xml
[djm@hadoop101 hadoop-2.7.2]$ mv mapred-site.xml.template mapred-site.xml
<configuration>
    <!-- 指定MR運行在YARN上 -->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

啟動集群

#啟動NameNode
[djm@hadoop101 hadoop-2.7.2]$ hadoop-daemon.sh start namenode
#啟動DataNode
[djm@hadoop101 hadoop-2.7.2]$ hadoop-daemon.sh start datanode
#啟動ResourceManager
[djm@hadoop101 hadoop-2.7.2]$ sbin/yarn-daemon.sh start resourcemanager
#啟動NodeManager
[djm@hadoop101 hadoop-2.7.2]$ sbin/yarn-daemon.sh start nodemanager

集群操作

#刪除文件系統(tǒng)上的output文件
[djm@hadoop101 hadoop-2.7.2]$ hdfs dfs -rm -R /user/djm/output
#執(zhí)行MapReduce程序
[djm@hadoop101 hadoop-2.7.2]$ hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /user/djm/input  /user/djm/output

4.2.3 配置歷史服務(wù)器

配置 mapred-site.xml

<configuration>
    <!-- 歷史服務(wù)器端地址 -->
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>hadoop101:10020</value>
    </property>
    <!-- 歷史服務(wù)器web端地址 -->
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>hadoop101:19888</value>
    </property>
</configuration>

啟動歷史服務(wù)器

mr-jobhistory-daemon.sh start historyserver

4.2.4 配置日志的聚集

日志聚集概念:應(yīng)用運行完成以后,,將程序運行日志信息上傳到 HDFS 系統(tǒng)上。

日志聚集功能好處:可以方便的查看到程序運行詳情,,方便開發(fā)調(diào)試,。

<configuration>
    <!-- 日志聚集功能使能 -->
    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>
    <!-- 日志保留時間設(shè)置7天 -->
    <property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>604800</value>
    </property>
</configuration>

重啟 NodeManager ResourceManager HistoryServer

[djm@hadoop101 hadoop-2.7.2]$ yarn-daemon.sh stop resourcemanager
[djm@hadoop101 hadoop-2.7.2]$ yarn-daemon.sh stop nodemanager
[djm@hadoop101 hadoop-2.7.2]$ mr-jobhistory-daemon.sh stop historyserver
[djm@hadoop101 hadoop-2.7.2]$ yarn-daemon.sh start resourcemanager
[djm@hadoop101 hadoop-2.7.2]$ yarn-daemon.sh start nodemanager
[djm@hadoop101 hadoop-2.7.2]$ mr-jobhistory-daemon.sh start historyserver

刪除 HDFS 上已經(jīng)存在的輸出文件

[djm@hadoop101 hadoop-2.7.2]$ hdfs dfs -rm -R /user/djm/output

執(zhí)行 WordCount 程序

[djm@hadoop101 hadoop-2.7.2]$ hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /user/djm/input  /user/djm/output

4.2.5 配置文件說明

Hadoop 配置文件分兩類:默認(rèn)配置文件和自定義配置文件,,只有用戶想修改某一默認(rèn)配置值時,,才需要修改自定義配置文件,更改相應(yīng)屬性值,。

自定義配置文件:

core-site.xml,、hdfs-site.xmlyarn-site.xml,、mapred-site.xml 四個配置文件存放在 $HADOOP_HOME/etc/hadoop 這個路徑上,,用戶可以根據(jù)站長博客項目需求重新進(jìn)行修改配置。

4.3 完全分布式運行模式

4.3.1 編寫集群分發(fā)腳本 xsync

創(chuàng)建 xsync

[djm@hadoop102 ~]$ mkdir bin
[djm@hadoop102 ~]$ cd bin/
[djm@hadoop102 bin]$ touch xsync
[djm@hadoop102 bin]$ vi xsync

在該文件中編寫如下代碼

#!/bin/bash
#1 獲取輸入?yún)?shù)個數(shù),,如果沒有參數(shù),,直接退出
pcount=$#
if ((pcount==0)); then
echo no args;
exit;
fi
 
#2 獲取文件名稱
p1=$1
fname=`basename $p1`
echo fname=$fname
 
#3 獲取上級目錄到絕對路徑
pdir=`cd -P $(dirname $p1); pwd`
echo pdir=$pdir
 
#4 獲取當(dāng)前用戶名稱
user=`whoami`
 
#5 循環(huán)
for((host=103; host<105; host++)); do
        echo ------------------- hadoop$host --------------
        rsync -av $pdir/$fname $user@hadoop$host:$pdir
done

分發(fā)

[djm@hadoop102 ~]$ xsync /opt/module/jdk1.8.0_144
[djm@hadoop102 ~]$ xsync /opt/module/hadoop-2.7.2
[djm@hadoop102 ~]$ xsync /etc/profile

4.3.2 集群配置

集群部署規(guī)劃


hadoop102

hadoop103

hadoop104

HDFS

NameNode、DataNode

DataNode

SecondaryNameNode,、DataNode

YARN

NodeManager

ResourceManager,、NodeManager

NodeManager

配置 core-site.xml

<configuration>
    <!-- 指定HDFS中NameNode的地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hadoop101:9000</value>
    </property>
    <!-- 指定Hadoop運行時產(chǎn)生文件的存儲目錄 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/module/hadoop-2.7.2/data/tmp</value>
    </property>
</configuration>

配置 hadoop-env.sh

#修改JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_144

配置 hdfs-site.xml

<configuration>
    <!-- 指定HDFS副本的數(shù)量 -->
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
    <!-- 指定Hadoop輔助名稱節(jié)點主機(jī)配置 -->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>hadoop104:50090</value>
    </property>
</configuration>

配置 yarn-env.sh

#修改JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_144

配置 yarn-site.xml

<configuration>
    <!-- Reducer獲取數(shù)據(jù)的方式 -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <!-- 指定YARN的ResourceManager的地址 -->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>hadoop103</value>
    </property>
</configuration>

配置 mapred-env.sh

#修改JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_144

配置 mapred-site.xml

<configuration>
    <!-- 指定MR運行在YARN上 -->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

在集群上分發(fā)配置好的 Hadoop 配置文件

[djm@hadoop102 ~]$ xsync /opt/module/hadoop-2.7.2/etc/hadoop/

4.3.3 集群單點啟動

如果集群是第一次啟動,需要格式化 NameNode

[djm@hadoop102 hadoop-2.7.2]$ hdfs namenode -format

hadoop102 上啟動 NameNode

[djm@hadoop102 hadoop-2.7.2]$ hadoop-daemon.sh start namenode

hadoop102,、hadoop103 以及 hadoop104 上分別啟動 DataNode

[djm@hadoop102 hadoop-2.7.2]$ hadoop-daemon.sh start datanode
[djm@hadoop103 hadoop-2.7.2]$ hadoop-daemon.sh start datanode
[djm@hadoop104 hadoop-2.7.2]$ hadoop-daemon.sh start datanode

為什么三個主機(jī)來回切換占用一個 datanode,?

分別查看三臺主機(jī)的 VERSION 文件,發(fā)現(xiàn) datanodeUuid 相同,,果斷分別刪除 VERSION 文件,,重新啟動 datanode,問題解決

4.3.4 SSH 無密登錄配置

生成公鑰和私鑰

[djm@hadoop102 .ssh]$ ssh-keygen -t rsa

將公鑰拷貝到要免密登錄的目標(biāo)機(jī)器上

[djm@hadoop102 .ssh]$ ssh-copy-id hadoop102
[djm@hadoop102 .ssh]$ ssh-copy-id hadoop103
[djm@hadoop102 .ssh]$ ssh-copy-id hadoop104
[djm@hadoop103 .ssh]$ ssh-copy-id hadoop102
[djm@hadoop103 .ssh]$ ssh-copy-id hadoop103
[djm@hadoop103 .ssh]$ ssh-copy-id hadoop104
[djm@hadoop104 .ssh]$ ssh-copy-id hadoop102
[djm@hadoop104 .ssh]$ ssh-copy-id hadoop103
[djm@hadoop104 .ssh]$ ssh-copy-id hadoop104

.ssh 下(~/.ssh)的文件功能解釋

known_hosts

記錄ssh訪問過計算機(jī)的公鑰(public key)

id_rsa

生成的私鑰

id_rsa.pub

生成的公鑰

authorized_keys

存放授權(quán)過得無密登錄服務(wù)器公鑰

4.3.5 群起集群

編寫 jpsall 腳本

#!/bin/bash
 
# 循環(huán)
for((host=102; host<105; host++)); do
        echo ------------------- hadoop$host --------------
        ssh hadoop$host "source /etc/profile && jps"
done

配置 slaves

hadoop102
hadoop103
hadoop104

同步所有節(jié)點配置文件

[djm@hadoop102 hadoop]$ xsync slaves

啟動 HDFS

[djm@hadoop102 hadoop-2.7.2]$ start-dfs.sh

啟動 YARN

[djm@hadoop103 hadoop-2.7.2]$ start-yarn.sh

啟動 HistoryServer

[djm@hadoop103 hadoop-2.7.2]$ mr-jobhistory-daemon.sh start historyserver

查看是否啟動成功

[djm@hadoop102 hadoop-2.7.2]$ jpsall
------------------- hadoop102 --------------
98640 Jps
3266 DataNode
3037 NameNode
3549 NodeManager
------------------- hadoop103 --------------
74929 DataNode
75258 NodeManager
39453 Jps
75054 ResourceManager
------------------- hadoop104 --------------
77123 SecondaryNameNode
76562 DataNode
76786 NodeManager
41475 Jps
76904 JobHistoryServer

刪除文件系統(tǒng)上的 output 文件

[djm@hadoop102 hadoop-2.7.2]$ hdfs dfs -rm -R /user/djm/output

執(zhí)行 MapReduce 程序

[djm@hadoop102 hadoop-2.7.2]$ hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /user/djm/input  /user/djm/output

4.3.6 集群啟動/停止方式總結(jié)

各個服務(wù)組件逐一啟動/停止

·       分別啟動/停止 HDFS 組件

hadoop-daemon.sh  start / stop  namenode / datanode / secondarynamenode

·       啟動/停止 YARN

yarn-daemon.sh  start / stop  resourcemanager / nodemanager

各個模塊分開啟動/停止(配置 ssh 是前提)常用

·       整體啟動/停止 HDFS

start-dfs.sh   /  stop-dfs.sh

·       整體啟動/停止 YARN

start-yarn.sh  /  stop-yarn.sh

4.3.7 集群時間同步

檢查是否安裝了 ntp 服務(wù)

[root@hadoop102 ~]# rpm -qa | grep ntp

修改 /etc/ntp.conf

#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
修改為
restrict 192.168.10.0 mask 255.255.255.0 nomodify notrap
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
修改為
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
添加
server 127.127.1.0
fudge 127.127.1.0 stratum 10

修改 /etc/sysconfig/ntpd

#同步硬件時間
SYNC_HWCLOCK=yes

重新啟動 ntpd 服務(wù)

[root@hadoop102 ~]# systemctl restart ntpd

設(shè)置ntpd服務(wù)開機(jī)啟動

[root@hadoop102 ~]# chkconfig ntpd on

在其他機(jī)器配置 10 分鐘與時間服務(wù)器同步一次

[root@hadoop102 ~]# crontab -e
添加
*/10 * * * * /usr/sbin/ntpdate hadoop102

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多