日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

前期準(zhǔn)備

模板機(jī)準(zhǔn)備

修改靜態(tài)IP

vim /etc/sysconfig.NETwork-scripts/ifcfg-ens33
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"  //這里改成static
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="caae399d-b520-4410-9425-88e6d3602534"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.10.100  //配置ip
GATEWAY=192.168.10.2    //配置網(wǎng)關(guān)
DNS1=192.168.10.2       //配置DNS

安裝基本工具

yum install -y  net-tools vim psmisc  nc  rsync  lrzsz  ntplibzstd openssl-static tree iotop git

關(guān)防火墻及開機(jī)自啟

systemctl stop firewalld
systemctl disable firewalld.service
systemctl restart network

創(chuàng)建atguigu用戶,修改密碼

useradd atguigu
passwd atguigu   #新密碼是ibacon66

給atguigu用戶配置root權(quán)限

vim /etc/sudoers

添加第三行:

## Allow root to run any commandsanywhere
root    ALL=(ALL)     ALL
atguigu   ALL=(ALL)     NOPASSWD:ALL

記得最后:wq!退出

創(chuàng)建文件夾,修改其所有文件權(quán)限為atguigu

mkdir /opt/module
mkdir /opt/software

chown atguigu:atguigu /opt/module
chown atguigu:atguigu /opt/software

修改hosts文件,配置多主機(jī)映射(linux和windows都要改)

sudo vim /etc/hosts

Linux中添加以下內(nèi)容:

本地windows用utools工具帶的hosts插件

192.168.10.100 hadoop100
192.168.10.101 hadoop101
192.168.10.102 hadoop102
192.168.10.103 hadoop103
192.168.10.104 hadoop104
192.168.10.105 hadoop105
192.168.10.106 hadoop106
192.168.10.107 hadoop107
192.168.10.108 hadoop108

非最小化安裝的linux系統(tǒng)執(zhí)行

rpm -qa | grep -i JAVA | xargs -n1 rpm -e --nodeps

克隆虛擬機(jī)

用hadoop100克隆出hadoop102、hadoop103、hadoop104

修改克隆機(jī)ip分別為102、103、104,并修改主機(jī)名

vim /etc/sysconfig/network-scripts/ifcfg-ens33
vim /etc/hostname

改誰重啟誰

安裝JDK、Hadoop到hadoop102

用xftp傳安裝包到102的/opt/software目錄下

解壓到hadoop102的/opt/module目錄下

tar -zxvf jdk-8u212-linux-x64.tar.gz -C /opt/module/
tar -zxvf hadoop-3.1.3.tar.gz -C /opt/module/

改文件名(非必須)

mv jdk1.8.0_212/ jdk8/
mv hadoop-3.1.3.tar.gz/ hadoop

配置環(huán)境變量

sudo vim /etc/profile.d/my_env.sh

添加:

#JAVA_HOME
export JAVA_HOME=/opt/module/jdk8
export PATH=$PATH:$JAVA_HOME/bin
export PATH=$PATH:$JAVA_HOME/sbin
#HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

使配置生效

source /etc/profile

查看版本

java -version
hadoop version

刪除hadoop/share/目錄下的doc

cd /opt/module/hadoop/share/
rm -rf doc

完全分布式運行

scp命令,將jdk、hadoop分別復(fù)制到hadoop103、hadoop104

先修改軟件目錄權(quán)限為atguigu(克隆之前已經(jīng)修改)

在hadoop102上將hadoop102的/opt/module/jdk8目錄復(fù)制到hadoop103上

scp -r /opt/module/jdk8  atguigu@hadoop103:/opt/module

在hadoop103上將hadoop102的/opt/module/hadoop目錄復(fù)制到hadoop103上

scp -r atguigu@hadoop102:/opt/module/hadoop  atguigu@hadoop103:/opt/module

在hadoop103上將hadoop102的/opt/module下的所有目錄復(fù)制到hadoop104上

scp -r atguigu@hadoop102:/opt/module/*  atguigu@hadoop104:/opt/module

編寫xsync,將環(huán)境變量從hadoop102同步到hadoop103、hadoop104

編寫xsync

在/home/atguigu/bin目錄下創(chuàng)建xsync文件

cd /home/atguigu
mkdir bin
cd /bin
vim xsync

添加如下內(nèi)容:

#!/bin/bash
#1. 判斷參數(shù)個數(shù)
if [ $# -lt 1 ]
then
   echo Not Enough Arguement!
   exit;
fi
#2. 遍歷集群所有機(jī)器
for host in hadoop102 hadoop103 hadoop104
do
 echo ====================  $host ====================
   #3. 遍歷所有目錄,挨個發(fā)送
   for file in $@
   do
        #4. 判斷文件是否存在
        if [ -e $file ]
            then
                #5. 獲取父目錄
                pdir=$(cd -P $(dirname $file);pwd)

                #6. 獲取當(dāng)前文件的名稱
                fname=$(basename $file)
                ssh $host "mkdir -p $pdir"
                rsync -av $pdir/$fname $host:$pdir
            else
                echo $file does not exists!
        fi
   done
done

修改xsync具有執(zhí)行權(quán)限

chmod +x xsync

將腳本復(fù)制到/bin中,用于全局

sudo cp xsync /bin/  失效了
sudo cp ../xsync ./     在/bin中執(zhí)行這命令成功

分發(fā)環(huán)境變量配置

注意一定要用 sudo

sudo xsync /etc/profile.d/my_env.sh

在hadoop103、hadoop104上刷新

source /etc/profile

配置ssh無密登錄

在hadoop102上atguigu賬戶生成公鑰和私鑰

在hadoop103上atguigu賬戶生成公鑰和私鑰

在hadoop104上atguigu賬戶生成公鑰和私鑰

在hadoop102上root賬戶生成公鑰和私鑰

ssh-keygen -t rsa

hadoop102上atguigu賬戶將公鑰發(fā)送到102、103、104

hadoop103上atguigu賬戶將公鑰發(fā)送到102、103、104

hadoop104上atguigu賬戶將公鑰發(fā)送到102、103、104

hadoop102上root賬戶將公鑰發(fā)送到102、103、104

ssh-copy-id hadoop102
ssh-copy-id hadoop103
ssh-copy-id hadoop104

集群配置

進(jìn)入hadoop安裝目錄

cd $HADOOP_HOME/etc/hadoop

配置core-site.xml

vim core-site.xml

添加:

這里的存儲目錄也是后改成hadoop的 原來是hadoop-x.x.x

<configuration>
    <!-- 指定NameNode的地址-->
    <property>
       <name>fs.defaultFS</name>
       <value>hdfs://hadoop102:8020</value>
    </property>

    <!-- 指定hadoop數(shù)據(jù)的存儲目錄-->
    <property>
       <name>hadoop.tmp.dir</name>
       <value>/opt/module/hadoop/data</value>
    </property>

    <!-- 配置HDFS網(wǎng)頁登錄使用的靜態(tài)用戶為atguigu-->
    <property>
       <name>hadoop.http.staticuser.user</name>
        <value>atguigu</value>
    </property>
</configuration>

配置hdfs

vim hdfs-site.xml

添加:

<configuration>
   <!-- nn web端訪問地址-->
   <property>
       <name>dfs.namenode.http-address</name>
        <value>hadoop102:9870</value>
    </property>
   <!-- 2nn web端訪問地址-->
    <property>
       <name>dfs.namenode.secondary.http-address</name>
        <value>hadoop104:9868</value>
    </property>
</configuration>

配置yarn

vim yarn-site.xml

添加:

<configuration>
    <!-- 指定MR走shuffle -->
   <property>
       <name>yarn.nodemanager.aux-services</name>
       <value>mapreduce_shuffle</value>
   </property>
   
       <!-- 指定ResourceManager的地址-->
   <property>
       <name>yarn.resourcemanager.hostname</name>
       <value>hadoop103</value>
   </property>

    <!-- 環(huán)境變量的繼承-->
   <property>
       <name>yarn.nodemanager.env-whitelist</name>
       <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
   </property>
</configuration>
vim mapred-site.xml

添加:

<configuration>
   <!-- 指定MapReduce程序運行在Yarn上-->
    <property>
       <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

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

第一個hadoop是安裝目錄 之前經(jīng)過改名了

xsync /opt/module/hadoop/etc/hadoop/

在hadoop103/hadoop104查看分發(fā)情況

注意第一個hadoop是安裝目錄

cat /opt/module/hadoop/etc/hadoop/core-site.xml

群起集群

配置workers

第一個hadoop=hadoop-3.1.3,全文所有涉及到安裝目錄的都是這樣

vim /opt/module/hadoop/etc/hadoop/workers

添加:

hadoop102
hadoop103
hadoop104

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

xsync /opt/module/hadoop/etc

啟動集群

集群第一次啟動需要在hadoop102節(jié)點格式化NameNode

hdfs namenode -format

啟動hdfs

sbin/start-dfs.sh

用sbin起不動,去掉sbin可以(220818)

其他的啟動問題是因為hdfs-site.xml這個配置文件頭出了格式錯誤

在配置了ResourceManager的節(jié)點(hadoop103)啟動yarn

sbin/start-yarn.sh

web端查看hdfs的namenode

http://hadoop102:9870

查看hdfs存儲的數(shù)據(jù)信息

web端查看hdfs的resourcemanager

http://hadoop103:8088

查看yarn上存儲的job信息

集群基本測試

上傳文件到集群

hadoop fs -mkdir /input

上傳小文件

hadoop fs -put $HADOOP_HOME/wcinput/word.txt /input

上傳大文件

hadoop fs -put /opt/software/jdk-8u212-linux-x64.tar.gz /

在安裝目錄hadoop下執(zhí)行wordcount

hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar  wordcount /input /output

 

配置歷史服務(wù)器(0819更新)

配置mapred-site.xml

hadoop:vim mapred-site.xml

添加:

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

分發(fā)配置

xsync $HADOOP_HOME/etc/hadoop/mapred-site.xml

在hadoop102啟動歷史服務(wù)器

mapred --daemon start historyserver

查看歷史服務(wù)器是否啟動

jps

 

查看JobHistory

http://hadoop102:19888/jobhistory

 

配置日志聚集

配置yarn-site.xml

hadoop:    vim yarn-site.xml

添加:

<!-- 開啟日志聚集功能 -->
<property>
   <name>yarn.log-aggregation-enable</name>
    <value>true</value>
</property>
<!-- 設(shè)置日志聚集服務(wù)器地址 -->
<property>  
   <name>yarn.log.server.url</name>  
   <value>http://hadoop102:19888/jobhistory/logs</value>
</property>
<!-- 設(shè)置日志保留時間為7天 -->
<property>
   <name>yarn.log-aggregation.retain-seconds</name>
    <value>604800</value>
</property>

分發(fā)配置

hadoop102:xsync $HADOOP_HOME/etc/hadoop/yarn-site.xml

關(guān)閉NodeManager 、ResourceManager和HistoryServer

hadoop103(安裝目錄):sbin/stop-yarn.sh
hadoop102(安裝目錄): mapred --daemon stop historyserver

啟動NodeManager 、ResourceManage和HistoryServer

hadoop103:    start-yarn.sh
hadoop102:    mapred --daemon start historyserver

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

hadoop102:    hadoop fs -rm -r /output

執(zhí)行WordCount程序

hadoop102(安裝目錄):    
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount /input /output

查看日志

查看歷史服務(wù)器地址

http://hadoop102:19888/jobhistory

查看歷史任務(wù)列表

 

查看任務(wù)運行日志

 

查看運行日志詳情

好像有點問題(已解決)

 

編寫常用腳本

Hadoop集群啟停腳本(包含HDFS,Yarn,Historyserver):myhadoop.sh

注意目錄問題:/opt/module/hadoop/sbin/中的hadoop是安裝目錄

cd /home/atguigu/bin
vim myhadoop.sh

添加:

#!/bin/bash
if [ $# -lt 1 ]
then
    echo "No ArgsInput..."
    exit ;
fi
case $1 in
"start")
        echo "=================== 啟動 hadoop集群==================="
        echo "--------------- 啟動 hdfs ---------------"
        ssh hadoop102 "/opt/module/hadoop/sbin/start-dfs.sh"
        echo " --------------- 啟動 yarn ---------------"
        ssh hadoop103 "/opt/module/hadoop/sbin/start-yarn.sh"
        echo " --------------- 啟動 historyserver ---------------"
        ssh hadoop102 "/opt/module/hadoop/bin/mapred --daemon start historyserver"
;;
"stop")
        echo " =================== 關(guān)閉 hadoop集群 ==================="

        echo " --------------- 關(guān)閉 historyserver ---------------"
        ssh hadoop102 "/opt/module/hadoop/bin/mapred --daemon stop historyserver"
        echo " --------------- 關(guān)閉 yarn ---------------"
        ssh hadoop103 "/opt/module/hadoop/sbin/stop-yarn.sh"
        echo " --------------- 關(guān)閉 hdfs ---------------"
        ssh hadoop102 "/opt/module/hadoop/sbin/stop-dfs.sh"
;;
*)
    echo "Input Args Error..."
;;
esac

賦予腳本執(zhí)行權(quán)限:

chmod +x myhadoop.sh

群起測試:

 

群關(guān)測試:

 

確認(rèn)是否全部關(guān)閉:

 

查看三臺服務(wù)器Java進(jìn)程腳本:jpsall

cd /home/atguigu/bin
vim jpsall

添加:

#!/bin/bash

for host in hadoop102 hadoop103 hadoop104
do
        echo ===============$host ===============
        ssh $host jps 
done

賦予腳本執(zhí)行權(quán)限:

chmod +x jpsall

jpsall腳本測試:

 

分發(fā)/home/atguigu/bin目錄,保證自定義腳本在三臺機(jī)器上都可以使用

xsync /home/atguigu/bin/

 

分享到:
標(biāo)簽:集群 hadoop
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運動步數(shù)有氧達(dá)人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定