1. 程式人生 > >大資料叢集安裝系列2:Hadoop HA 模式安裝

大資料叢集安裝系列2:Hadoop HA 模式安裝

1,基本環境配置:依賴zookeeper,

2,hadoop HA 模式安裝

2.1,下載相應的hadoop 安裝包,本文是2.7.2, 放到伺服器目錄下,解壓,類似如下:

[[email protected] /opt/bigdata/component]# pwd
/opt/bigdata/component
[[email protected] /opt/bigdata/component]# ls
azkaban.tar.gz  GsFaceLib.tar.gz  hadoop.tar.gz         hbase.tar.gz  kafka.tar.gz  spark.tgz
zookeeper elastic.tar.gz hadoop haproxy-1.7.9.tar.gz hive.tar.gz rocketmq.zip zabbix-3.4.6.tar.gz zookeeper.tar.gz [[email protected] /opt/bigdata/component]#

2.2 配置cores-site.xml:請根據具體提示修改

<configuration>

    <!--指定hdfs的nameservice為hacluster,需要和core-site.xml中的保持一致 -->
<property> <name>dfs.nameservices</name> <value>hacluster</value> </property> <!-- hacluster下面有兩個NameNode,分別是nn1,nn2, --> <property> <name>dfs.ha.namenodes.hacluster</name> <value>nn1,nn2</value> </property
>
<!-- nn1的RPC通訊地址 --> <property> <name>dfs.namenode.rpc-address.hacluster.nn1</name> <value>master:9000</value> </property> <!-- nn1的http通訊地址 --> <property> <name>dfs.namenode.http-address.hacluster.nn1</name> <value>master:50070</value> </property> <!-- nn2的RPC通訊地址 --> <property> <name>dfs.namenode.rpc-address.hacluster.nn2</name> <value>workerI:9000</value> </property> <!-- nn2的http通訊地址 --> <property> <name>dfs.namenode.http-address.hacluster.nn2</name> <value>workerI:50070</value> </property> <!-- 指定NameNode的元資料在JournalNode上的存放位置 --> <property> <name>dfs.namenode.shared.edits.dir</name> <value>qjournal://workerII:8485;workerI:8485;master:8485;/hacluster</value> </property> <!-- 指定JournalNode在本地磁碟存放資料的位置 --> <property> <name>dfs.journalnode.edits.dir</name> <value>/opt/bigdata/Hadoop/hadoop/dfs_journalnode_edits_dir</value> </property> <!-- 開啟NameNode失敗自動切換 --> <property> <name>dfs.ha.automatic-failover.enabled</name> <value>true</value> </property> <!-- 配置失敗自動切換實現方式 --> <property> <name>dfs.client.failover.proxy.provider.hacluster</name> <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value> </property> <!-- 配置隔離機制方法,多個機制用換行分割,即每個機制暫用一行--> <property> <name>dfs.ha.fencing.methods</name> <value> sshfence shell(/bin/true) </value> </property> <!-- 使用sshfence隔離機制時需要ssh免登陸 --> <property> <name>dfs.ha.fencing.ssh.private-key-files</name> <value>/root/.ssh/id_rsa</value> </property> <!-- 配置sshfence隔離機制超時時間 --> <property> <name>dfs.ha.fencing.ssh.connect-timeout</name> <value>30000</value> </property> <!-- 由於Java 8與Hapdoop 2.7.0的Yarn存在某些不相容,造成記憶體的溢位,導致程式異常終止 --> <!--<property> <name>yarn.nodemanager.pmem-check-enabled</name> <value>false</value> </property> <property> <name>yarn.nodemanager.vmem-check-enabled</name> <value>false</value> </property> <property> <name>dfs.permissions.enabled</name> <value>false</value> </property> --> <!-- 指定DataNode儲存block的副本數量。預設值是3個 --> <property> <name>dfs.replication</name> <value>3</value> </property>

2.4 配置yarn-site.xml

-->
<configuration>

    <!-- Site specific YARN configuration properties -->
    <!-- 啟用RM高可用 -->
    <property>
        <name>yarn.resourcemanager.ha.enabled</name>
        <value>true</value>
    </property>

    <!-- 指定RM的cluster resourcemanager 的名字 -->
    <property>
        <name>yarn.resourcemanager.cluster-id</name>
        <value>yrc</value>
    </property>

    <!-- 指定RM的名字,唯一標誌,不用修改 -->
    <property>
        <name>yarn.resourcemanager.ha.rm-ids</name>
        <value>rm1,rm2</value>
    </property>

    <!-- 分別指定RM的地址 -->
    <property>
        <name>yarn.resourcemanager.hostname.rm1</name>
        <value>master</value>
    </property>

    <property>
        <name>yarn.resourcemanager.hostname.rm2</name>
        <value>workerI</value>
    </property>

    <!-- 指定zk叢集地址 -->
    <property>
        <name>yarn.resourcemanager.zk-address</name>
        <value>workerII:2181,workerI:2181,master:2181,</value>
    </property>

    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle,spark_shuffle</value>
    </property>

    <!--以下是叢集資源調優配置-->

      <!--以下是叢集資源調優配置-->
    <property>
        <name>yarn.nodemanager.resource.memory-mb</name>
        <value>19000</value>
    </property>


    <property>
        <name>yarn.scheduler.minimum-allocation-mb</name>
        <value>8192</value>
    </property>


    <property>
        <name>yarn.scheduler.maximum-allocation-mb</name>
        <value>19000</value>
    </property>


    <property>
        <name>yarn.app.mapreduce.am.resource.mb</name>
        <value>8192</value>
    </property>

    <property>
        <name>yarn.app.mapreduce.am.command-opts</name>
        <value>-Xmx6553m</value>
    </property>



    <property>
        <name>yarn.resourcemanager.webapp.address.rm1</name>
        <value>master:8088</value>
    </property>

    <property>
        <name>yarn.resourcemanager.webapp.address.rm2</name>
        <value>workerI:8088</value>
    </property>

    <!--Spark 動態資源申請配置-->
    <property>
        <name>yarn.nodemanager.aux-services.spark_shuffle.class</name>
    <value>org.apache.spark.network.yarn.YarnShuffleService</value>
    </property>
    <property>
    <name>spark.shuffle.service.port</name>
    <value>7337</value>
    </property>

</configuration>

2.6 修改yarn-env.sh 和hadoop-env.sh 中java 的路徑, 以及配置slaves 節點

export JAVA_HOME=/opt/bigdata/basic/jdk

[root@master /opt/bigdata/component/hadoop/etc/hadoop]# vim slaves 
[root@master /opt/bigdata/component/hadoop/etc/hadoop]# cat slaves 
master
workerI
workerII

2.7 分發檔案:

scp -r hadoop workerI:pwd
scp -r hadoop workerII:pwd

3,安裝好後,接下來就是啟動了

3.1 在master 節點,首先格式化zk(此時請確保zookeeper 已經啟動)

在$HADOOP_INSTALL_HOME/bin
./hdfs zkfc -formatZK -force

3.2 啟動zkfc(每個節點都需要這樣做)

在$HADOOP_INSTALL_HOME/sbin
./hadoop-daemon.sh start zkfc

3.3 啟動journalnode(每個節點)

在$HADOOP_INSTALL_HOME/sbin
./hadoop-daemon.sh start journalnode

3.4 格式化hdfs 檔案系統

在$HADOOP_INSTALL_HOME/bin
./hadoop namenode -format -force

3.5 在master 節點,進行啟動hdfs

在$HADOOP_INSTALL_HOME/sbin
./start-dfs.sh

3.6 啟動yarn

在$HADOOP_INSTALL_HOME/sbin
./start-yarn.sh

3.7 在備用節點,啟動備用namenode 和 備用resourcemanager

 本文備用節點是workerI
 在HADOOP_INSTALL_HOME/sbin    
 yarn-daemon.sh start resourcemanager
 在$HADOOP_INSTALL_HOME/sbin  
 hdfs namenode -bootstrapStandby$HADOOP_INSTALL_HOME/sbin   
 hadoop-daemon.sh start namenode

3.8 至此,所有hdfs 內容已經啟動,具體程序如下:

[root@workerI ~]# jps
1969 WrapperSimpleApp
6961 Jps
5682 JournalNode
5956 DFSZKFailoverController
5527 QuorumPeerMain
5832 DataNode
6057 NodeManager
6203 ResourceManager
[root@workerI ~]# 


[root@master ~]# jps
6560 DFSZKFailoverController
6644 JournalNode
7460 ResourceManager
7112 DataNode
7563 NodeManager
8396 Jps
2076 WrapperSimpleApp
6957 NameNode
6174 QuorumPeerMain


[root@workerII ~]# jps
4067 NodeManager
3923 DataNode
3848 JournalNode
2200 WrapperSimpleApp
4606 Jps
3679 QuorumPeerMain
(請不要在一JpsWrapperSimpleApp 這兩個不需要關注 )

相關推薦

資料叢集安裝系列2Hadoop HA 模式安裝

1,基本環境配置:依賴zookeeper, 2,hadoop HA 模式安裝 2.1,下載相應的hadoop 安裝包,本文是2.7.2, 放到伺服器目錄下,解壓,類似如下: [[email protected] /opt/bigd

流式資料計算實踐(2)----Hadoop叢集和Zookeeper

一、前言 1、上一文搭建好了Hadoop單機模式,這一文繼續搭建Hadoop叢集 二、搭建Hadoop叢集 1、根據上文的流程得到兩臺單機模式的機器,並保證兩臺單機模式正常啟動,記得第二臺機器core-site.xml內的fs.defaultFS引數值要改成本機的來啟動,啟動完畢後再改回來 2、清空資

資料調錯系列自己總結的myeclipse連線hadoop會出現的問題

在我們學習或者工作中開始hadoop程式的時候,往往會遇到一個問題,我們寫好的程式需要打成包放在叢集中執行,這無形中在浪費我們的時間,因為程式可以需要不斷的除錯,然後把最終程式放在叢集中即可。為了解決這個問題,現在我們配置遠端連線hadoop,遠端除錯的方法。 一段程式如下:獲取更多大資料視訊資料請加QQ群

資料(十五)Hadoop資料壓縮與壓縮/解壓縮例項

一、資料壓縮 1.概論         壓縮技術能夠有效減少低層儲存系統(HDFS)讀寫位元組。壓縮提高了網路頻寬和磁碟空間的效率。在Hadoop下,尤其是資料規模很大和工作負載密集的情況下。使用資料壓縮閒的非常重要。在這種情況下,I/O操作

資料(十七)Hive簡介、安裝與基本操作

一、簡介         Hive由Facebook開源用於解決海量結構化日誌的資料統計。Hive是基於Hadoop的一個數據倉庫工具,可以將結構化的資料檔案對映為一張表,並提供類Sql查詢的功能。 hive本質是將HQL轉化為MapRedu

資料演算法課程筆記22D Convex Hull

1. 題目簡介 Input: n points in the plane p1,p2,⋯,pn, where pi=(xi,yi) Output: 包含所有點的最小凸多邊形的所有邊 2. 基本思想 :Divide and Conquer 先把點集一分為二

資料叢集遇到的問題(Hadoop、Spark、Hive、kafka、Hbase、Phoenix)

大資料平臺中遇到的實際問題,整理了一下,使用CDH5.8版本,包括Hadoop、Spark、Hive、kafka、Hbase、Phoenix、Impala、Sqoop、CDH等問題,初步整理下最近遇到的問題,不定期更新。 啟動nodemanager失敗 2016-09-07

openstack安裝系列問題window7 64位安裝的virtualBox 只能選擇32位的系統安裝不能選擇64位的系統安裝

系統 技術 blog 系列 版本 pan 解決 下載 原因 個人原創,轉載請註明作者,出處,否則依法追究法律責任 2017-10-03-12:22:22 現象:window7 64位安裝的virtualBox 只能選擇32位的系統安裝不能選擇64位的系統安裝 原因:因

資料叢集CDH 6.0.X 完整版 安裝

CDH 6.0.x 安裝步驟 前沿 一CDH6新功能介紹 二:下面開始進行CDH6安裝前的準備工作: 1、配置主機名和hosts解析(所有節點) 2、關閉防火牆 3、關閉SELinux 4、新增定時任務 5、禁用

阿里雲搭建資料平臺(3)安裝JDK和Hadoop偽分佈環境

一、安裝jdk 1.解除安裝Linux自帶的JDK rpm -qa|grep jdk   #查詢原始JDK yum -y remove  <舊JDK> 2.解壓縮 tar -zxvf /opt/softwares/jdk-8u151-linux-x64.t

我的Hadoop資料叢集搭建經歷 (Hadoop 2.6.0 & VMWare WorkStation 11)

centos 6.6 i386 dvd ; basic server installation ; not enable static ip ; not disable ipv6 vmware net model is NAT , subNet Ip : 192.168.5

資料學習之旅2——從零開始搭hadoop完全分散式叢集

前言        本文從零開始搭hadoop完全分散式叢集,大概花費了一天的時間邊搭邊寫部落格,一步一步完成完成叢集配置,相信大家按照本文一步一步來完全可以搭建成功。需要注意的是本文限於篇幅和時間的限制,也是為了突出重點,一些很基礎的操作就不再詳細

centos7.4安裝監控軟件系列2nagios

nagios 監控 與系列1的Cacti類似,nagios也是一種監控軟件,涉及插件較多,可靈活監控服務器資源,使用更廣泛;nagios自身是沒有監控功能的,它所有的功能都是通過調用插件來完成的,它的工作模式有兩種:主動監控、被動監控。【被動監控】nagios通過nsca進行被動監控。就是由被檢測端服

記一次hadoop資料叢集生產事故

陸續對原有的hadoop、hbase叢集做了擴容,增加了幾個節點,中間沒有重啟過,今天早上發現一個hregionserver服務停止了,就先啟動服務,沒想到啟動之後一直有訪問資料的出錯,嘗試對整個hbase叢集進行重啟出現了下面的錯誤: $ start-hbase.sh master running

CentOS5/6/7系統下搭建安裝Amabari資料叢集時出現SSLError: Failed to connect. Please check openssl library versions.錯誤的解決辦法(圖文詳解)

        不多說,直接上乾貨!         ========================== Creating target directory... ======================

資料入門教程系列之Hbase安裝(偽分散式)

本篇文章主要介紹在windows下使用vmware虛擬機器中的Linux(Centons7)下配置安裝Hbase。 簡要步驟: ①、下載Hbase解壓包 ②、安裝zookeeper ③、解壓Hbase,配置環境環境 ④、修改Hbase指令碼檔案hbase-env.sh ⑤、修

資料調錯系列hadoop在開發工具控制檯上打印不出日誌的解決方法

(1)在windows環境上配置HADOOP_HOME環境變數 (2)在eclipse上執行程式 (3)注意:如果eclipse打印不出日誌,在控制檯上只顯示 1.log4j:WARN No appenders could be found 

資料叢集架之——nginx 反向代理的安裝配置文件。

二、Nginx安裝配置     1.安裝gcc     方式1 - yum線上安裝:         //yum install gcc     

資料結構實現 6.2優先佇列_基於最二叉堆實現(C++版)

資料結構實現 6.2:優先佇列_基於最大二叉堆實現(C++版) 1. 概念及基本框架 2. 基本操作程式實現 2.1 入隊操作 2.2 出隊操作 2.3 查詢操作 2.4 其他操作 3. 演算法複雜度分析

docker部署分散式資料叢集hadoop、spark、hive、jdk、scala、

(一)1 用docker建立映象並搭建三個節點容器的hadoop及spark服務 包括:mysql,hadoop,jdk,spark,hive,scala,sqoop docker已經安裝並且啟動 #搜尋centos映象: docker search centos #拉取