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目录下。(http://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

<property>

<name>fs.default.name</name>

<value>hdfs://cm1:9000</value>

</property>

7、修改hdfs-site.xml

<property>

<name>dfs.name.dir</name>

<value>/usr/local/data/namenode</value>

</property>

<property>

<name>dfs.data.dir</name>

<value>/usr/local/data/datanode</value>

</property>

<property>

<name>dfs.tmp.dir</name>

<value>/usr/local/data/tmp</value>

</property>

<property>

<name>dfs.replication</name>

<value>2</value>

</property>

8、修改mapred-site.xml

<property>

<name>mapreduce.framework.name</name>

<value>yarn</value>

</property>

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

<property>

<name>javax.jdo.option.ConnectionURL</name>

<value>jdbc:mysql://cm3:3306/hive_metadata?createDatabaseIfNotExist=true</value>

</property>

<property>

<name>javax.jdo.option.ConnectionDriverName</name>

<value>com.mysql.jdbc.Driver</value>

</property>

<property>

<name>javax.jdo.option.ConnectionUserName</name>

<value>hive</value>

</property>

<property>

<name>javax.jdo.option.ConnectionPassword</name>

<value>hive</value>

</property>

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

时间: 2024-10-27 07:15:00

CDH搭建大数据集群的相关文章

基于Docker搭建大数据集群(六)Hive搭建

基于Docker搭建大数据集群(六)Hive搭建 前言 之前搭建的都是1.x版本,这次搭建的是hive3.1.2版本的..还是有一点细节不一样的 Hive现在解析引擎可以选择spark,我是用spark做解析引擎的,存储还是用的HDFS 我是在docker里面搭建的集群,所以都是基于docker操作的 一.安装包准备 Hive官网下载 微云下载 | 在 tar 目录下 二.版本兼容 我使用的相关软件版本 Hadoop ~ 2.7.7 Spark ~ 2.4.4 JDK ~ 1.8.0_221 S

基于Docker搭建大数据集群(七)Hbase部署

基于Docker搭建大数据集群(七)Hbase搭建 一.安装包准备 Hbase官网下载 微云下载 | 在 tar 目录下 二.版本兼容 三.角色分配 节点 Master Regionserver cluster-master yes no cluster-slave1 backup yes cluster-slave2 no yes cluster-slave3 no yes 四.配置修改 hbase-env.sh export JAVA_HOME=/opt/jdk/jdk1.8.0_221 h

基于Docker搭建大数据集群(一)Docker环境部署

本篇文章是基于Docker搭建大数据集群系列的开篇之作 主要内容 docker搭建 docker部署CentOS 容器免密钥通信 容器保存成镜像 docker镜像发布 环境 Linux 7.6 一.Docker安装 安装工具包 bash yum install -y yum-utils #安装工具包,缺少这些依赖将无法完成 设置远程仓库 bash yum-config-manager --add-repo https://download.docker.com/linux/centos/dock

基于Docker搭建大数据集群(三)Hadoop部署

主要内容 Hadoop安装 前提 zookeeper正常使用 JAVA_HOME环境变量 安装包 微云下载 | tar包目录下 Hadoop 2.7.7 角色划分 角色分配 NN DN SNN cluster-master 是 否 否 cluster-slave1 否 是 是 cluster-slave1 否 是 否 cluster-slave1 否 是 否 一.环境准备 上传到docker镜像 docker cp hadoop-2.7.7.tar.gz cluster-master:/root

基于Docker搭建大数据集群(二)基础组件配置

主要内容 jdk环境搭建 scala环境搭建 zookeeper部署 mysql部署 前提 docker容器之间能免密钥登录 yum源更换为阿里源 安装包 微云分享 | tar包目录下 JDK 1.8.221 Scala 2.12.9 Zookeeper 3.5.5 Mysql 手动安装较复杂,使用yum安装 一.安装包处理 发送文件到容器 docker cp 文件地址 容器ID:容器地址 创建解压目录 mkdir /opt/jdk mkdir /opt/scala mkdir /opt/zoo

基于Docker搭建大数据集群(五)Mlsql部署

主要内容 mlsql部署 前提 zookeeper正常使用 spark正常使用 hadoop正常使用 安装包 微云下载 | tar包目录下 mlsql-cluster-2.4_2.11-1.4.0.tar.gz mlsql-console-1.4.0.tar.gz mlsql-engine_2.4-1.4.0.tar.gz 一.环境准备 上传到docker镜像 docker cp mlsql-cluster-2.4_2.11-1.4.0.tar.gz cluster-master:/root/t

基于Docker搭建大数据集群(四)Spark部署

主要内容 spark部署 前提 zookeeper正常使用 JAVA_HOME环境变量 HADOOP_HOME环境变量 安装包 微云下载 | tar包目录下 Spark2.4.4 一.环境准备 上传到docker镜像 docker cp spark-2.4.4-bin-hadoop2.7.tar.gz cluster-master:/root/tar 解压 tar xivf spark-2.4.4-bin-hadoop2.7.tar.gz -C /opt/hadoop 二.配置文件 spark-

大数据集群本地安装方法

大数据集群本地安装方法 1.使用Vmware安装Linux系统 请自行下载,并安装.至少安装两台(这里以安装三台为例) 2. 安装xshell和xftp 安装xshell和xftp主要主要是方面后面传文件.写命令等操作. (注意,xshell和xftp的版本一定要一致,不然安装xftp可能会有问题) 3. 配置虚拟机IP A. 每台虚拟机都用root账号登录 a.  编辑hosts文件(使用以下命令) sudo vi /etc/hosts 添加以下内容 192.168.79.131 master

基于PostgreSQL的可扩展的开源大数据集群数据库:Postgres-XL

基于PostgreSQL的可扩展的开源大数据集群数据库:Postgres-XL http://www.postgres-xl.org/ Postgres的-XL是一个基于PostgreSQL数据库的横向扩展开源SQL数据库集群,具有足够的灵活性来处理不同的数据库工作负载: OLTP 写频繁的业务 需要MPP并行性商业智能 操作数据存储 Key-value 存储 GIS的地理空间 混合业务工作环境 多租户服务提供商托管环境 可扩展性 Postgres-XL(eXtensible Lattice),