大数据平台CentOS7+CDH5.12.1集群搭建

1.CM(Cloudera Manager)介绍

1.1 简介

Cloudera Manager是一个拥有集群自动化安装、中心化管理、集群监控、报警功能的一个工具,使得安装集群从几天的时间缩短在几个小时内,运维人员从数十人降低到几人以内,极大的提高集群管理的效率。

对比Apache / CDH / HDP:

(1)Apache:运维麻烦,组件间兼容性需要自己调研。(一般大厂使用,技术实力雄厚,有专业的运维人员)
(2)CDH:国内使用最多的版本,但CM不开源,但其实对中、小公司使用来说没有影响(建议使用)
(3)HDP:开源,可以进行二次开发,但是没有CDH稳定,国内使用较少

1.2 CM架构

1)Cloudera Repository:软件由Cloudera管理分布存储库。(有点类似Maven的中心仓库)
2)Server:负责软件安装、配置,启动和停止服务,管理服务运行的群集。
3)Management Service:由一组执行各种监控,警报和报告功能角色的服务。
4)Database:存储配置和监视信息。
5)Agent:安装在每台主机上。负责启动和停止的过程,配置,监控主机。
6)Clients:是用于与服务器进行交互的接口(API和Admin Console)

2.环境准备

2.1 集群规划

项目中采用3台虚拟机作为测试集群进行部署:hadoop101、hadoop102、hadoop103(对应内存分别是:16G、4G、4G)

集群规划参考:https://blog.51cto.com/12445535/2366197?tdsourcetag=s_pcqq_aiomsg

2.2 虚拟机准备

操作系统:CentOS 7

1)VM Ware安装CentOS 7

2)安装JDK:1.8(所有节点)

CentOS自带OpenJdk,不过运行CDH5需要使用Oracle的JDK

使用集群同步脚本对配置文件同步分发

3)克隆三台虚拟机,设置hostname、hosts、静态IP、关闭防火墙(所有节点)

设置hadoop101、hadoop102、hadoop103的主机对应内存分别是:16G、4G、4G

4)配置三台虚拟机SSH免密登陆

5)关闭所有节点的SELINUX

6)在hadoop101节点安装MySQL5.6(主节点)

7)搭建ntp服务器及客户端进行时间同步

8)设置swap空间(所有节点)

(Cloudera建议将交换空间设置为0,过多的交换空间会引起GC耗时的激增,所以还是关闭的为好)

echo "vm.swappiness = 0" >> /etc/sysctl.conf

9)关闭大页面压缩执行命令 (所有节点)

echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag

10)创建CM用的数据库(主节点)

在MySQL中依次创建监控数据库、Hive数据库、Oozie数据库、Hue数据库

[[email protected] ~]# mysql -uroot -p000000 # 启动数据库,000000为设置的登陆密码
mysql> create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;  #集群监控数据库
mysql> create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;  #Hive数据库
mysql> create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;  #Oozie数据库
mysql> create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;   #Hue数据库
mysql> quit;

11)下载第三方依赖(所有节点)

依次在三台节点上执行下载第三方依赖(注意:需要联网)

[[email protected] ~]# yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb

[[email protected] ~]# yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb

[[email protected] ~]# yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb

3.CM安装部署

3.1 CM下载地址

本文所采用为CentOS7CDH5.12.1版本(版本一定不要错)

1)CM下载地址:http://archive.cloudera.com/cm5/cm/5/

CentOS6选择:cloudera-manager-el6-cm5.12.1_x86_64.tar.gz

CentOS7选择:cloudera-manager-centos7-cm5.12.1_x86_64.tar.gz

2)离线库下载地址:http://archive.cloudera.com/cdh5/parcels/5.12.1/

CentOS6

CentOS7

3.2 CM安装

注:以下所有操作均使用root用户

1)创建/opt/module/cm目录

[[email protected] module]# mkdir –p /opt/module/cm

2)上传cloudera-manager-el6-cm5.12.1_x86_64.tar.gz到hadoop101的/opt/software目录,并解压到/opt/module/cm目录

[[email protected] software]# tar -zxvf cloudera-manager-el6-cm5.12.1_x86_64.tar.gz -C /opt/module/cm

3)分别在hadoop101、hadoop102、hadoop103创建用户cloudera-scm

[[email protected] module]#
useradd --system --home=/opt/module/cm/cm-5.12.1/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

[[email protected] module]#
useradd --system --home=/opt/module/cm/cm-5.12.1/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

[[email protected] module]#
useradd --system --home=/opt/module/cm/cm-5.12.1/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

参数说明:

--system 创建一个系统账户

--home 指定用户登入时的主目录,替换系统默认值/home/<用户名>

--no-create-home 不要创建用户的主目录

--shell 用户的登录 shell 名

--comment 用户的描述信息

注意:Cloudera Manager默认去找用户cloudera-scm,创建完该用户后,将自动使用此用户。

4)修改CM Agent配置

修改文件/opt/module/cm/cm-5.12.1/etc/cloudera-scm-agent/ config.ini的主机名称

[[email protected] cloudera-scm-agent]# vim /opt/module/cm/cm-5.12.1/etc/cloudera-scm-agent/config.ini

修改主机名称

server_host=hadoop101

5)配置CM的数据库

拷贝mysql-connector-java-5.1.27-bin.jar文件到目录 /usr/share/java/

[[email protected] cm]# mkdir –p /usr/share/java/
[[email protected] cm]# cd /opt/software/mysql-libs/[[email protected] mysql-libs]# tar -zxvf mysql-connector-java-5.1.27.tar.gz
[[email protected] mysql-libs]# cp /opt/software/mysql-libs/mysql-connector-java-5.1.27/mysql-connector-java-5.1.27-bin.jar /usr/share/java/
[[email protected] mysql-libs]# mv /usr/share/java/mysql-connector-java-5.1.27-bin.jar /usr/share/java/mysql-connector-java.jar

注意:jar包名称要修改为mysql-connector-java.jar

6)使用CM自带的脚本,在MySQL中创建CM库(红字部分要按实际修改)

[[email protected] cm-5.12.1]# /opt/module/cm/cm-5.12.1/share/cmf/schema/scm_prepare_database.sh mysql cm -hhadoop101 -uroot -p000000 --scm-host hadoop101 scm scm scm

参数说明

-h:Database host

-u:Database username

-p:Database Password

--scm-host:SCM server‘s hostname

在执行这一步可能会报错:参考:https://www.cnblogs.com/MWCloud/p/11352557.html

java.sql.SQLException: Access denied for user ‘scm‘@‘hadoop101.com‘ (using password: YES)

7)分发cm(xsync同步分发脚本编写

[[email protected] module]# xsync /opt/module/cm

8)创建Parcel-repo

[[email protected] module]# mkdir -p /opt/cloudera/parcel-repo
[[email protected] module]# chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo

9)拷贝下载文件manifest.json 、CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha1 、CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel到hadoop101的/opt/cloudera/parcel-repo/目录下

[[email protected] parcel-repo]# ll
total 1603040
-rw-r--r-- 1 root root 1641431040 Aug 16 19:02 CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel
-rw-r--r-- 1 root root         41 Aug 16 19:00 CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha1
-rw-r--r-- 1 root root      72312 Aug 16 19:00 manifest.json

10)将CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha1:需改名为CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha

[[email protected] parcel-repo]# mv CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha1 CDH-5.12.1-1.cdh5.12.1.p0.3-el7.parcel.sha

11)在hadoop101上创建目录/opt/cloudera/parcels,并修改该目录的所属用户及用户组为cloudera-scm

[[email protected] module]# mkdir -p /opt/cloudera/parcels
[[email protected] module]# chown cloudera-scm:cloudera-scm /opt/cloudera/parcels

12)分发/opt/cloudera/

[[email protected] opt]# xsync /opt/cloudera/

3.3 启动CM服务

1)启动服务节点:hadoop101

[[email protected] cm]# /opt/module/cm/cm-5.12.1/etc/init.d/cloudera-scm-server start
Starting cloudera-scm-server:                              [ OK ]

2)启动工作节点:hadoop101、hadoop102、hadoop103

[[email protected] cm]# /opt/module/cm/cm-5.12.1/etc/init.d/cloudera-scm-agent start

[[email protected] cm]# /opt/module/cm/cm-5.12.1/etc/init.d/cloudera-scm-agent start

[[email protected] cm]# /opt/module/cm/cm-5.12.1/etc/init.d/cloudera-scm-agent start

注意:启动过程非常慢,Manager启动成功需要等待5分钟左右,过程中会在数据库中创建对应的表需要耗费一些时间。

cloudera-scm-agent start启动失败解决:

3)查看被占用则表示启动成功了!!!

[[email protected] cm]# netstat -anp | grep 7180
tcp        0      0 0.0.0.0:7180                0.0.0.0:*                   LISTEN      5498/java

3.4 关闭CM服务(这里只是介绍操作,部署过程跳过此节)

1)关闭工作节点:hadoop101、hadoop102、hadoop103

[[email protected] cm]# /opt/module/cm/cm-5.12.1/etc/init.d/cloudera-scm-agent stop
Stopping cloudera-scm-agent:                               [确定]

[[email protected] cm]# /opt/module/cm/cm-5.12.1/etc/init.d/cloudera-scm-agent stop
Stopping cloudera-scm-agent:                               [确定]

[[email protected] cm]# /opt/module/cm/cm-5.12.1/etc/init.d/cloudera-scm-agent stop
Stopping cloudera-scm-agent:                               [确定]

2)关闭服务节点:hadoop101

[[email protected] cm]# /opt/module/cm/cm-5.12.1/etc/init.d/cloudera-scm-server stop
停止 cloudera-scm-server:                                 [确定]

3.5 CM集群部署

1)访问http://hadoop101.com:7180,(用户名、密码:admin)建议在虚拟机的节点中访问CM进行安装

这里选择已经存在的三个节点:

等待下载安装Parcel,该过程大概10分钟

最后一步,检查集群安全性

3.6 组件安装(按需求安装)

1)选择自定义服务

2)选择HDFS、YARN、ZooKeeper

3)节点角色分配

4)集群设置默认

5)自动启动进程

6)安装完成!

原文地址:https://www.cnblogs.com/MWCloud/p/11342883.html

时间: 2024-10-01 04:11:27

大数据平台CentOS7+CDH5.12.1集群搭建的相关文章

大数据系列(2)——Hadoop集群坏境CentOS安装

前言 前面我们主要分析了搭建Hadoop集群所需要准备的内容和一些提前规划好的项,本篇我们主要来分析如何安装CentOS操作系统,以及一些基础的设置,闲言少叙,我们进入本篇的正题. 技术准备 VMware虚拟机.CentOS 6.8 64 bit 安装流程 因为我的笔记本是Window7操作系统,然后内存配置,只有8G,内存配置太低了,当然为了演示,我会将Hadoop集群中的主节点分配2GB内存,然后剩余的三个节点都是1GB配置. 所有的节点存储我都设置为50GB. 在安装操作系统之前,我们需要

大数据系列(3)——Hadoop集群完全分布式坏境搭建

前言 上一篇我们讲解了Hadoop单节点的安装,并且已经通过VMware安装了一台CentOS 6.8的Linux系统,咱们本篇的目标就是要配置一个真正的完全分布式的Hadoop集群,闲言少叙,进入本篇的正题. 技术准备 VMware虚拟机.CentOS 6.8 64 bit 安装流程 我们先来回顾上一篇我们完成的单节点的Hadoop环境配置,已经配置了一个CentOS 6.8 并且完成了java运行环境的搭建,Hosts文件的配置.计算机名等诸多细节. 其实完成这一步之后我们就已经完成了Had

大数据系列(1)——Hadoop集群坏境搭建配置

前言 关于时下最热的技术潮流,无疑大数据是首当其中最热的一个技术点,关于大数据的概念和方法论铺天盖地的到处宣扬,但其实很多公司或者技术人员也不能详细的讲解其真正的含义或者就没找到能被落地实施的可行性方案,更有很多数据相关的项目比如弄几张报表,写几个T-SQL语句就被冠以“大数据项目”,当然了,时下热门的话题嘛,先把“大数据”帽子扣上,这样才能显示出项目的高大上,得到公司的重视或者高层领导的关注. 首先,关于大数据的概念或者架构一直在各方争议的背景下持续的存在着.目前,关于大数据项目可以真正被落地

Mysql Cluster7.4.12分布式集群搭建

集群规划: 节点 IP ADDRESS Management Server (ndb_mgmd) 192.168.6.203 data nodes (ndbd) 192.168.6.204 192.168.6.205 SQL node (mysqld) 192.168.6.204 192.168.6.205 Mysql Cluster版本: MySQL Cluster NDB 7.4.12 (5.6.31-ndb-7.4.12), 下载地址: http://dev.mysql.com/downl

Spark项目之电商用户行为分析大数据平台之(十)IDEA项目搭建及工具类介绍

一.创建Maven项目 创建项目,名称为LogAnalysis 二.常用工具类 2.1 配置管理组建 ConfigurationManager.java 1 import java.io.InputStream; 2 import java.util.Properties; 3 4 /** 5 * 配置管理组件 6 * 7 * 1.配置管理组件可以复杂,也可以很简单,对于简单的配置管理组件来说,只要开发一个类,可以在第一次访问它的 8 * 时候,就从对应的properties文件中,读取配置项,

centos7下Zookeeper+sheepdog集群搭建

zookeeper 安装命令 yum install zookeeper -y            (版本:zookeeper.x86_64      3.4.6-1) yum install zookeeper-lib -y   (版本:zookeeper-lib.x86_64   3.4.6-1) 配置文件:/etc/zookeeper/zoo.cfg 作如下修改: maxClientCnxns=50 tickTime=2000 initLimit=10 syncLimit=5 dataD

CentOS7/RHEL7 pacemaker+corosync高可用集群搭建

目录 一.集群信息... 4 二.集群搭建... 4 1.制作软件源... 4 2.主机基础配置... 5 3.集群基础环境准备... 7 4.集群资源准备... 9 5.资源配置... 11 6.constraint配置... 12 7.stonith配置... 13 8.集群功能验证... 14 三.集群常用命令及作用... 17 1.验证群集安装... 17 2.查看群集资源... 17 3.使用群集脚本... 17 4.STONITH 设备操作... 17 5.查看群集配置... 17

Ceph部署(一)集群搭建

背景 Ceph简单介绍 Ceph是一个分布式存储,能够提供对象存储.块存储和文件存储,当中对象存储和块存储能够非常好地和各大云平台集成. 一个Ceph集群中有Monitor节点.MDS节点(可选,用于文件存储).至少两个OSD守护进程. Ceph OSD:OSD守护进程,用于存储数据.处理数据拷贝.恢复.回滚.均衡.并通过心跳程序向Monitor提供部分监控信息. 一个Ceph集群中至少须要两个OSD守护进程. Monitor:维护集群的状态映射信息,包含monitor.OSD.Placemen

大数据平台CDH5.14.2 的安装配置

大数据平台CDH5.14.2 的安装配置 标签(空格分隔): 大数据平台构建 一:系统环境初始化 二:安装CDH5.14.2 平台 三:分配主机与分配角色 一: 系统环境初始化 1.1: 系统环境介绍 系统: CentOS7.5X64 cat /etc/hosts --- 172.17.100.11 node-01.flyfish 172.17.100.12 node-02.flyfish 172.17.100.13 node-03.flyfish 172.17.100.14 node-04.f