Hadoop+Flume+Kafka+Zookeeper叢集環境搭建(一)
Hadoop+Flume+Kafka+Zookeeper叢集環境搭建
1.部署基礎條件
1.1 硬體條件
IP |
hostname |
192.168.100.103 |
mater |
192.168.100.104 |
flumekafka1 |
192.168.100.105 |
flumekafka2 |
192.168.100.106 |
flumekafka3 |
注意:修改hostname的方法是:
(1) vim /etc/hostname
(2) 將localhost改成您所需要的內容
1.2 修改ssh
在master機器上執行下面的命令:
$ ssh -keygen -t dsa -P '' -f ~/.ssh/id_dsascp ~/.ssh/authorized_keys flumekafka1 ~/.ssh/
注意: (1)若提示.ssh目錄不存在,則表示此機器從未執行過ssh,因此執行一次即可建立.ssh目錄。(2).ssh/的許可權為600,authorized_keys的許可權為700,許可權大了小了都不行。1.3 JAVA環境變數的配置
l 下載jdk(版本是:jdk-1.7.0_80)
l 將jdk的壓縮包解壓到/home/bms目錄下
l 配置環境變數
1) vim /etc/profile
2) 新增如下內容
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0._80
export JRE_HOME=${ JAVA_HOME }/jre
export CLASSPATH=.:${ JAVA_HOME }/lib: ${ JRE_HOME}/lib
export PATH=${ JAVA_HOME }/bin
3) 儲存檔案
注意:上述四臺虛擬機器要進行同樣的配置
1.4 安裝hadoop
l 下載hadoop-2.6.0
l 將hadoop的壓縮包解壓到/home/bms目錄下,解壓命令式:tar -zxvf hadoop-2.6.0.tar.gz
l 配置hadoop的環境變數
按著配置JAVA環境變數的方法在/etc/profile中新增如下內容:
exportHADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lib/native
exportHADOOP_OPTS=”-Djava.library.path=$HADOOP_HOME/lib”
export HADOOP_HOME=/home/bms/Hadoop-2.6.0
exportPATH=$PATH:$HADOOP_HOME/bin
1.5 hadoop相關配置
注意:相關的配置檔案都在/home/bms/Hadoop-2.6.0/etc/hadoop下面
l 配置hadoop_env.sh
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_80
l 配置core-site.xml
<property>
<name>hadoop.tmp.dir</name>
<value>/root/Hadoop/tmp</value>
<description>Abase for other temporarydirectories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>4096</value>
</property>
l 配置hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/root/hadoop/hdfs/data</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>/root/hadoop/hdfs/name</value>
</property>
l 配置mapred-site.xml
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
<final>true</final>
</property>
<property>
<name>mapreduce.jobtracker.http.address</name>
<value>master:50030</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
<property>
<name>mapred.job.tracker</name>
<value>http://master:9001</value>
</property>
l 配置yarn.xml
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:8088</value>
</property>
l 配置slaves檔案
flumekafka1
flumekafka2
flumekafka3
1.6 將master上/home/bms/Hadoop-2.6.0整個檔案分別拷貝到三個slave虛擬機器上面
1.7 格式化namenode
在master虛擬機器上執行如下操做:
l Cd /home/bms/Hadoop-2.6.0/bin
l hadoop namenode -format
1.7 啟動hadoop
在master虛擬機器上執行如下操做:
l cd /home/bms/Hadoop-2.6.0/sbin
l ./start-all.sh
1.8 檢視java程序
1)在master上操做如下命令
$ jps 3694 NameNode 3882 SecondaryNameNode 7216 Jps 4024 ResourceManager2)在slave上執行如下操作
$ jps 1913 NodeManager 2673 Jps 1801 DataNodeHbase與zookeeper叢集部署的步驟
1.部署基礎條件
1.1 硬體條件
IP |
hostname |
192.168.100.103 |
mater |
192.168.100.104 |
flumekafka1 |
192.168.100.105 |
flumekafka2 |
192.168.100.106 |
flumekafka3 |
1.2 下載hbase-0.98.13-hadoop2的安裝包
1.3 將hbase的壓縮包解壓到master的/home/bms目錄下
1.4 配置hbase的環境變數
1)在master上做如下操作
l Vim /etc/profile
l 在上述檔案中新增如下內容:
Export PATH=$PATH:/home/bms/hbase-0.98.13-hadoop2/bin
2)在所有的slave上做與master上一樣的操作
1.5 配置hbase
1)cd /home/bms/hbase-0.98.13-hadoop2/conf
2)在hbase-env.sh檔案中新增如下內容
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_80
export HBASE_MANAGES_ZK=false
3)在hbase-site.xml檔案中新增如下內容
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>flumekafka1,flumekafka2, flumekafka3</value>
</property>
<property> <name>hbase.zookeeper.property.clientPort</name> <value>2222</value></property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/bms/zookeezookeeper-3.4.5/zookeeper-data</value>
</property>
<property>
<name>hbase.master</name>
<value>master</value>
</property>
</configuration>
4)在regionservers檔案中新增如下內容
flumekafka1
flumekafka2
flumekafka3
1.6 將master上/home/bms/hbase-0.98.13-hadoop2整個檔案拷貝到其餘的三個slave機器上面。
1.7 zookeeper部署
1)下載zookeeper安裝檔案(zookeeper-3.4.5壓縮包)
2)將zookeeper-3.4.5壓縮包加壓到flumekafka1虛擬機器的/home/bms目錄下
3)配置zookeeper環境變數
l vim /etc/profile
l 在上述檔案中新增如下內容
export ZOOKEEPER_HOME=/home/bms/zookeeper-3.4.5
export PATH=$PATH:${ZOOKEEPER_HOME }/bin
4)將/home/bms/zookeeper-3.4.5/conf/ 目錄下的zoo_sample.cfg 改名成 zoo.cfg操作命令是:
l cd /home/bms/zookeeper-3.4.5/conf
l mv zoo_sample.cfg zoo.cfg
5)修改zoo.cfg檔案內容如下
# The number of milliseconds of each tick tickTime=2000 # The number of ticks that the initial # synchronization phase can take initLimit=10 # The number of ticks that can passbetween # sending a request and getting anacknowledgement syncLimit=5 # the directory where the snapshot is stored. dataDir=/home/bms/zookeeper-3.4.5/zookeeper-data # the port at which the clients will connect clientPort=2222 server.1=flumekafka1:2888:3888 server.2= flumekafk21:2888:3888 server.3= flumekafka3:2888:38886)分別在將flunekafka1上/home/bms/zookeeper-3.4.5整個目錄拷貝到另外兩臺slave虛擬機器上
注意:最後記得在部署zookeeper的節點上的/root/zookeeper/zookeeper-data的目錄下新建一個myid檔案裡寫上zoo.cfg檔案對應的server號碼,flumekafka1寫1,flumekafka2寫2,flumekafka3寫3,這樣基本就完成了zookeeper的配置了。
7)分別在三臺slave機器上執行下面的操作
l cd /home/bms/zookeeper-3.4.5/bin
l zookeeper/bin/zkServer.sh start
8) 分別在三臺slave機器上執行下面的操作
l zookeeper/bin/zkServer.sh status(驗證zookeeper的啟動狀態)
9)在master上面執行下面的命令
l cd /homehbase/bin/start-hbase.sh
FlumeNG部署的步驟
1.1 下載FlumeNG
1.2 下載FlumeNG
將下載的安裝包解壓到master的/home/bms目錄下
l 將apache-flume-1.6.0-bin.tar.gz拷貝到/home/bms目錄下面
l 執行tar -zxvf apache-flume-1.6.0-bin.tar.gz
1.3 下載FlumeNG
關於flume的相關配置和執行方式請檢視個人部落格:http://l=blog.csdn.net/xuguokun1986
Kafka與zookeeper部署的步驟
關於kafka的相關配置和執行方式請檢視個人部落格:http://l=blog.csdn.net/xuguokun1986