大数据技术 CDH搭建大数据集群
沉沙 2018-09-21 来源 : 阅读 949 评论 0

摘要:本篇教程探讨了大数据技术 CDH搭建大数据集群,希望阅读本篇文章以后大家有所收获,帮助大家对大数据技术的理解更加深入。

本篇教程探讨了大数据技术 CDH搭建大数据集群,希望阅读本篇文章以后大家有所收获,帮助大家对大数据技术的理解更加深入。

<

需要的软件包:

 flume-ng-1.5.0-cdh5.3.6.tar.gz

 hadoop-2.5.0-cdh5.3.6.tar.gz

 hive-0.13.1-cdh5.3.6.tar.gz

 kafka_2.9.2-0.8.1.tgz

 scala-2.11.4.tgz

 slf4j-1.7.6.zip

 spark-1.5.1-bin-hadoop2.4.tgz

 zookeeper-3.4.5-cdh5.3.6.tar.gz


安装hadoop包:

 1、使用课程提供的hadoop-2.5.0-cdh5.3.6.tar.gz,上传到虚拟机的/usr/local目录下。(//archive.cloudera.com/cdh5/cdh/5/)

 2、将hadoop包进行解压缩:tar -zxvf hadoop-2.5.0-cdh5.3.6.tar.gz

 3、对hadoop目录进行重命名:mv hadoop-2.5.0-cdh5.3.6 hadoop

 4、配置hadoop相关环境变量

  vim /etc/profile (或 vim ~/.bashrc)

  export HADOOP_HOME=/usr/local/hadoop

  export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

  source /etc/profile (或 source ~/.bashrc)

 5、创建/usr/local/data目录

 6、修改core-site.xml

  

    fs.default.name

    hdfs://cm1:9000

  


 7、修改hdfs-site.xml

  

    dfs.name.dir

    /usr/local/data/namenode

  


  

    dfs.data.dir

    /usr/local/data/datanode

  


  

    dfs.tmp.dir

    /usr/local/data/tmp

  


  

    dfs.replication

    2

  


 8、修改mapred-site.xml

  

    mapreduce.framework.name

    yarn

  


 9、修改hadoop-env.sh中的配置:

  export JAVA_HOME=/usr/local/jdk1.7.0_55

 10、使用scp命令将配置好的hadoop拷贝到其他两个节点(cm2和cm3)上,并配置上环境变量,在/usr/local目录下创建data目录.

 11、启动hdfs集群:

  11.1、在cm1节点上执行格式化命令:hdfs namenode -format

  11.2、启动hdfs,执行命令:start-dfs.sh

  11.3、验证是否执行成功:

   在各节点上使用jps命令查看进程执行情况:

   cm1:namenode、secondarynamenode

   cm2:datanode

   cm3:datanode

   将本地文件上传至hdfs中

 12、启动yarn集群:

  12.1、在cm2上执行命令:start-yarn.sh

  12.2、验证是否执行成功:

   在各节点上使用jps命令查看进程执行情况:

   cm1:ResourceManager

   cm2:NodeManager

   cm3:NodeManager

   

hive安装:

 1、将课程提供的hive-0.13.1-cdh5.3.6.tar.gz使用WinSCP上传到cm1的/usr/local目录下。

 2、解压缩hive安装包:tar -zxvf hive-0.13.1-cdh5.3.6.tar.gz

 3、重命名hive目录:mv hive-0.13.1-cdh5.3.6 hive

 4、配置hive相关的环境变量

  vim /etc/profile (或 vim ~/.bashrc)

  export HIVE_HOME=/usr/local/hive

  export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin:$PATH

  source /etc/profile (或 source ~/.bashrc)

 6、在cm3上安装mysql。

 7、使用yum安装mysql server。

  yum install -y mysql-server

  service mysqld start

  chkconfig mysqld on

 8、使用yum安装mysql connector,或者将已有的mysql驱动包拷贝到hive的lib目录下

  yum install -y mysql-connector-java

 9、将mysql connector拷贝到hive的lib包中

  cp /usr/share/java/mysql-connector-java-5.1.17.jar /usr/local/hive/lib

 10、在mysql上创建hive元数据库,创建hive账号,并进行授权

  create database if not exists hive_metadata;

  grant all privileges on hive_metadata.* to ‘hive‘@‘%‘ identified by ‘hive‘;

  grant all privileges on hive_metadata.* to ‘hive‘@‘localhost‘ identified by ‘hive‘;

  grant all privileges on hive_metadata.* to ‘hive‘@‘cm1‘ identified by ‘hive‘;

  flush privileges;

  use hive_metadata;

 11、配置hive-site.xml

  

    javax.jdo.option.ConnectionURL

    jdbc:mysql://cm3:3306/hive_metadata?createDatabaseIfNotExist=true

  


  

    javax.jdo.option.ConnectionDriverName

    com.mysql.jdbc.Driver

  


  

    javax.jdo.option.ConnectionUserName

    hive

  


  

    javax.jdo.option.ConnectionPassword

    hive

  


 12、配置hive-env.sh

  mv /usr/local/hive/conf/hive-env.sh.template /usr/local/hive/conf/hive-env.sh

  vim /usr/local/hive/bin/hive-config.sh

   export JAVA_HOME=/usr/java/jdk1.7.0_55

   export HIVE_HOME=/usr/local/hive

   export HADOOP_HOME=/usr/local/hadoop



zookeeper安装:

 1、将课程提供的zookeeper-3.4.5-cdh5.3.6.tar.gz使用WinSCP拷贝到cm1的/usr/local目录下。

 2、对zookeeper-3.4.5-cdh5.3.6.tar.gz进行解压缩:tar -zxvf zookeeper-3.4.5-cdh5.3.6.tar.gz。

 3、对zookeeper目录进行重命名:mv zookeeper-3.4.5-cdh5.3.6 zk。

 4、配置zookeeper相关的环境变量

  vim /etc/profile (或 vim ~/.bashrc)

  export ZOOKEEPER_HOME=/usr/local/zk

  export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin:$ZOOKEEPER_HOME/bin:$PATH

  source /etc/profile (或 source ~/.bashrc)

 5、配置zoo.cfg

  mv zoo_sample.cfg zoo.cfg

  vi zoo.cfg

  修改:dataDir=/usr/local/zk/data

  新增:

  server.0=cm1:2888:3888 

  server.1=cm2:2888:3888

  server.2=cm3:2888:3888

 9、 设置zk节点标识

  cd zk

  mkdir data

  cd data

  vi myid

  0

 10、搭建zk集群

  10.1、在另外两个节点上按照上述步骤配置ZooKeeper,使用scp将zk和.bashrc拷贝到cm2和cm3上即可。

  10.2、唯一的区别是cm2和cm3的标识号分别设置为1和2。

 11、启动Zookeeper集群:

  11.1、分别在三台机器上执行:zkServer.sh start。

  11.2、检查ZooKeeper状态:zkServer.sh status,应该是一个leader,两个follower

  11.3、jps:检查三个节点是否都有QuromPeerMain进程。

  

kafka安装:

 安装scala

  1、将课程提供的scala-2.11.4.tgz使用WinSCP拷贝到cm1的/usr/local目录下。

  2、对scala-2.11.4.tgz进行解压缩:tar -zxvf scala-2.11.4.tgz。

  3、对scala目录进行重命名:mv scala-2.11.4 scala

  4、配置scala相关的环境变量

   vim /etc/profile (或 vim ~/.bashrc)

   export SCALA_HOME=/usr/local/scala

   export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin:$ZOOKEEPER_HOME/bin:$SCALA_HOME/bin:$PATH

   source /etc/profile (或 source ~/.bashrc)

  5、查看scala是否安装成功:scala -version

  6、按照上述步骤在cm2和cm3机器上都安装好scala。使用scp将scala和.bashrc拷贝到另外两台机器上即可。

 安装kafka

  1、将课程提供的kafka_2.9.2-0.8.1.tgz使用WinSCP拷贝到cm1的/usr/local目录下。

  2、对kafka_2.9.2-0.8.1.tgz进行解压缩:tar -zxvf kafka_2.9.2-0.8.1.tgz。

  3、对kafka目录进行改名:mv kafka_2.9.2-0.8.1 kafka

  4、配置kafka

   vi /usr/local/kafka/config/server.properties

   broker.id:依次增长的整数,0、1、2,集群中Broker的唯一id

   zookeeper.connect=cm1:2181,cm2:2181,cm3:2181

  5、安装slf4j

   将课程提供的slf4j-1.7.6.zip上传到/usr/local目录下

   unzip slf4j-1.7.6.zip

   把slf4j中的slf4j-nop-1.7.6.jar复制到kafka的libs目录下面

 搭建kafka集群:

  1、按照上述步骤在另外两台机器分别安装kafka。用scp把kafka拷贝到cm2和cm3即可。

  2、唯一区别的,就是server.properties中的broker.id,要设置为1和2

 启动kafa集群:

  1、在三台机器上的kafka目录下,分别执行以下命令:nohup bin/kafka-server-start.sh config/server.properties &

  2、使用jps检查启动是否成功

 测试kafka集群:

  使用基本命令检查kafka是否搭建成功

  bin/kafka-topics.sh --zookeeper cm1:2181,cm2:2181,cm3:2181 --topic TestTopic --replication-factor 1 --partitions 1 --create

  bin/kafka-console-producer.sh --broker-list cm1:9092,cm2:9092,cm3:9092 --topic TestTopic

  bin/kafka-console-consumer.sh --zookeeper cm1:2181,cm2:2181,cm3:2181 --topic TestTopic --from-beginning

  


flume安装:

 1、将课程提供的flume-ng-1.5.0-cdh5.3.6.tar.gz使用WinSCP拷贝到cm1的/usr/local目录下。

 2、对flume进行解压缩:tar -zxvf flume-ng-1.5.0-cdh5.3.6.tar.gz

 3、对flume目录进行重命名:mv apache-flume-1.5.0-cdh5.3.6-bin flume

 4、配置scala相关的环境变量

  vim /etc/profile (或 vim ~/.bashrc)

  export FLUME_HOME=/usr/local/flume

  export FLUME_CONF_DIR=$FLUME_HOME/conf

  export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin:$ZOOKEEPER_HOME/bin:$SCALA_HOME/bin:$FLUME_HOME/bin:$PATH

  source /etc/profile (或 source ~/.bashrc)

 5、修改配置文件

  cp /usr/local/flume/conf/flume-conf.properties.template /usr/local/flume/conf/flume-conf.properties

  vi /usr/local/flume/conf/flume-conf.properties

  #agent1表示代理名称

  agent1.sources=source1

  agent1.sinks=sink1

  agent1.channels=channel1

  #配置source1

  agent1.sources.source1.type=spooldir

  agent1.sources.source1.spoolDir=/usr/local/logs

  agent1.sources.source1.channels=channel1

  agent1.sources.source1.fileHeader = false

  agent1.sources.source1.interceptors = i1

  agent1.sources.source1.interceptors.i1.type = timestamp

  #配置channel1

  agent1.channels.channel1.type=file

  agent1.channels.channel1.checkpointDir=/usr/local/logs_tmp_cp

  agent1.channels.channel1.dataDirs=/usr/local/logs_tmp

  #配置sink1

  agent1.sinks.sink1.type=hdfs

  agent1.sinks.sink1.hdfs.path=hdfs://cm1:9000/logs

  agent1.sinks.sink1.hdfs.fileType=DataStream

  agent1.sinks.sink1.hdfs.writeFormat=TEXT

  agent1.sinks.sink1.hdfs.rollInterval=1

  agent1.sinks.sink1.channel=channel1

  agent1.sinks.sink1.hdfs.filePrefix=%Y-%m-%d

 6、创建需要的文件夹

  本地文件夹:mkdir /usr/local/logs

  HDFS文件夹:hdfs dfs -mkdir /logs

 7、启动flume-agent

  flume-ng agent -n agent1 -c conf -f /usr/local/flume/conf/flume-conf.properties -Dflume.root.logger=DEBUG,console

 8、测试

  新建一份文件,移动到/usr/local/logs目录下,flume就会自动上传到HDFS的/logs目录中

  

安装spark客户端

 1、将spark-1.5.1-bin-hadoop2.4.tgz使用WinSCP上传到/usr/local目录下。

 2、解压缩spark包:tar -zxvf spark-1.5.1-bin-hadoop2.4.tgz。

 3、重命名spark目录:mv spark-1.5.1-bin-hadoop2.4 spark

 4、修改spark环境变量

  vim /etc/profile (或 vim ~/.bashrc)

  export SPARK_HOME=/usr/local/spark

  export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin:$ZOOKEEPER_HOME/bin:$SCALA_HOME/bin:$FLUME_HOME/bin:$SPARK_HOME/bin:$PATH

  export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

  source /etc/profile (或 source ~/.bashrc)

 5、修改spark-env.sh

  5.1、cd /usr/local/spark/conf

  5.2、cp spark-env.sh.template spark-env.sh

  5.3、vi spark-env.sh

   export JAVA_HOME=/usr/local/jdk1.7.0_55

   export SCALA_HOME=/usr/local/scala

   export HADOOP_HOME=/usr/local/hadoop

   export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop

 6、测试spark on yarn

  spark-submit --class org.apache.spark.examples.SparkPi \

  --master yarn-cluster \

  --num-executors 3 \

  --driver-memory 4g \

  --executor-memory 2g \

  --executor-cores 1 \

  --queue thequeue \

  lib/spark-examples*.jar \

  10    

本文由职坐标整理发布,学习更多的大数据技术相关知识,请关注职坐标大技术云计算大技术技术频道!

本文由 @沉沙 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved