关键词:
- CDH集群离线部署(CM6.3.1 + CDH6.3.2 + CentOS7)_小宇0926的博客-CSDN博客_cdh集群
- 大数据之CDH(web页面部署Hadoop)_leon.yan1994的博客
- CDH集群部署最佳实践 - 知乎 (zhihu.com)
- CDH6.3.1集群离线部署 - 掘金 (juejin.cn)
- 基于阿里云的CDH集群安装_Frank__Geek的博客-CSDN博客
- CDH简介及CDH部署、原理和使用介绍( 版本6.3.1 )_王亭_666的博客-CSDN博客_cdh
- 【手册】CDH6.3.2及hadoop生态圈工具安装部署手册(附带安装包)_槐序i的博客-CSDN博客_cdh升级hadoop
- CDH6.3.2离线安装(附百度网盘CDH安装包) - 知乎 (zhihu.com)
- CDH6.2.0集群搭建详细教程(包含开启Kerberos与Sentry)_Yunis尤尼斯的博客-CSDN博客_cdh集群搭建
- 大数据之CDH(web页面部署Hadoop)_leon.yan1994的博客
- CDH大数据平台搭建之集群规划_码上_成功的博客
- CDH安装Phoenix(cdh6.2以上版本、镜像包和安装文档)_qq_43016289的博客-CSDN博客_cdh安装phoenix
1 原生Hadoop的问题
- 版本管理过于混乱
- 部署过程较为繁琐,升级难度较大
- 兼容性差
- 安全性低
2 CDH和CM(Cloudera Manager)
- CDH(Cloudera’s Distribution Including Apache Hadoop),是Hadoop众多分中的一种,由Cloudera公司维护,基于稳定版本的Apache Hadoop构建,并集成了很多补丁,可以直接用于生产环境。就是Hadoop等大数据安装包的第三方版本的集合,提供了Hadoop等大数据服务的安装包。
- CM(Cloudera Manager)提供了一个管理和监控Hadoop等大数据服务的web界面,能让我们方便安装大数据生态圈的大部分服务。
3 Hadoop自动化部署和管理平台
主流的有Apache Ambari和Cloudera Manager,相对应的Hadoop的发行版为HDP和CDH。
这种自动化部署平台的功能一般如下:
- 提供Hadoop大数据集群
- 管理Hadoop大数据集群
- 监控Hadoop大数据集群
PS:HDP的公司(hortonworks)已经被CDH公司(Cloudera)收购了
4 Cloudera Manager架构
-
Server:负责软件安装、配置,启动和停止服务,管理服务运行的群集。核心
-
Agent:安装在每台主机上。负责**启动和停止进程,**配置,监控主机。
-
Management Service:由一组执行各种监控,警报和报告功能角色的服务。图表的生成和管理
-
Database:存储配置和监视信息。
-
Cloudera Repository:软件由Cloudera 管理分布存储库。(有点类似Maven的中心仓库);在线安装(从中心仓库拉取)和离线安装(离线库)
-
Clients:是用于与服务器进行交互的接口(API和Admin Console)
5 CDH下载
官方下载地址:https://archive.cloudera.com
5.1 CM下载
https://archive.cloudera.com/cm6/6.3.1/redhat7/yum/RPMS/x86_64/
5.2 CDH下载
https://archive.cloudera.com/cdh6/6.3.2/parcels/
注意:CDH的版本一定要和CM的版本对应
6 环境准备
使用VMware模拟多台主机,由于主机条件有限,只演示三台机器,配置如下:
主机名 | 系统 | IP | 内存 | 磁盘 |
---|---|---|---|---|
cdh-1 | Centos7 | 192.168.100.10 | 4G | 60G |
cdh-2 | Centos7 | 192.168.100.20 | 2G | 60G |
cdh-3 | Centos7 | 192.168.100.30 | 2G | 60G |
6.1 修改主机名(所有节点)
hostnamectl set-hostname cdh-1
hostnamectl set-hostname cdh-2
hostnamectl set-hostname cdh-3
6.2 关闭防火墙(所有节点)
systemctl stop firewalld
systemctl disable firewalld
6.3 关闭SELinux(所有节点)
setenforce 0 #临时关闭
#永久关闭 将SELINUX= enforcing 修改为SELINUX=disabled
vi /etc/selinux/config
SELINUX=disabled
PS: 可以使用
sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config
6.4 配置IP到主机的映射(所有节点)
vi /etc/hosts
192.168.100.10 cdh-1
192.168.100.20 cdh-2
192.168.100.30 cdh-3
6.5 配置免密码登录(cdh-1)
# 生成公钥和私钥 三次回车
ssh-keygen
# 复制公钥和私钥
ssh-copy-id cdh-1
ssh-copy-id cdh-2
ssh-copy-id cdh-3
6.6 设置用户最大可打开文件数,进程数,内存占用(所有节点)
vi /etc/security/limits.conf
soft nofile 32728
hard nofile 1024999
soft nproc 65535
hard noroc unlimited
soft memlock unlimited
hard memlock unlimited
sysctl -p
6.7 设置swap空间(所有节点)
echo "vm.swappiness = 0" >> /etc/sysctl.conf
Cloudera建议将交换空间设置为0,过多的交换空间会引起GC耗时的激增。
6.8 关闭大页面压缩(所有节点)
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
7 安装
将下载好的CDH包和CM的包使用sftp上传到cdh-1
7.1 配置本地yum
CDH的安装包都是rpm包如果使用rpm安装方式安装起来是比较复杂的,会有很多依赖问题需要解决,就需要使用yum帮助我们解决依赖问题。
7.1.1 配置centos源(cdh-1)
#挂载centos7镜像
mount /dev/cdrom /mnt/
#删除系统自带的源
rm -rf /etc/yum.repos.d/*
#新建一个本地yum源
cat >> /etc/yum.repos.d/local.repo << EOF
[centos]
name=centos
baseurl=file:///mnt
gpgcheck=0
EOF
#验证
yum repolist
7.1.2 安装httpd服务(cdh-1)
# 安装
yum install -y httpd
# 启动
systemctl start httpd
#开机自启
systemctl enable httpd
http服务可以帮助我们传输文件,默认静态资源的目录为/var/www/html
7.1.2 centos源配置为http方式获取(cdh-1)
#在http服务的静态资源目录创建centos目录
mkdir /var/www/html/centos
#将centos的镜像文件复制到centos目录
cp -rvf /mnt/* /var/www/html/centos/
#可以通过http访问了
http://192.168.100.10/centos/
#修改cdh-1的本地centos源的配置
vi /etc/yum.repos.d/local.repo
baseurl=http://cdh-1/centos
#取消挂载
umount /dev/cdrom /mnt
其他节点配置(cdh-1,cdh-2)
cat >> /etc/yum.repos.d/local.repo << EOF
[centos]
name=centos
baseurl=http://cdh-1/centos
gpgcheck=0
EOF
#验证
yum repolist
7.1.3 配置CM源
- 移动文件安装包文件到http服务器静态文件目录(cdh-1)
#在/var/www/html创建存放cm包的文件夹和cdh安装包的文件夹
mkdir /var/www/html/cm,cdh
#将cdh的安装包和cm的包移动到创建的目录
#移动cm安装包
mv cloudera-manager-* /var/www/html/cm/
mv enterprise-debuginfo-6.3.1-1466458.el7.x86_64.rpm oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm /var/www/html/cm
#移动cdh安装包和元数据文件
mv CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel manifest.json /var/www/html/cdh/
- 制作CM源生成repodata文件,需要用到createrepo这个包(cdh-1)
#安装
yum install -y createrepo
#进入到cm的rpm包存放目录
cd /var/www/html/cm
# 生成repodata文件夹
createrepo .
- 配置yum源(所有节点)
cat >> /etc/yum.repos.d/cm.repo << EOF
[CM]
name=cm
baseurl=http://cdh-1/cm/
gpgcheck=0
EOF
7.2 安装
7.2.1 安装依赖(所有节点)
yum install -y bind-utils libxslt cyrus-sasl-plain cyrus-sasl-gssapi portmap fuse-libs /lib/lsb/init-functions httpd mod_ssl openssl-devel python-psycopg2 Mysql-python fuse
7.2.2 安装Cloudera Manager和Cloudera Agent(cdh-1)
#安装JDK
yum install -y oracle-j2sdk1.8.x86_64
#安装cloudera-manager
yum install -y cloudera-manager-agent cloudera-manager-daemons cloudera-manager-server cloudera-manager-server-db-2 postgresq-server
7.2.3 安装Mariadb
#安装
yum install -y mariadb-server
#启动和开机自启
systemctl start mariadb && systemctl enable mariadb
#配置Mariadb数据库
mysql_secure_installation
7.2.4 初始化管理节点(cdh-1)
- 复制mysql的jdbc驱动包到/usr/share/java目录
需要使用sftp上传jar包到cdh-1节点上
#创建/usr/share/java目录
mkdir -p /usr/share/java
#复制jar包到/usr/share/java下
cp mysql-connector-java-5.1.48.jar /usr/share/java/
#注意:需要改名为mysql-connector-java.jar
mv /usr/share/java/mysql-connector-java-5.1.48.jar /usr/share/java/mysql-connector-java.jar
- 初始化数据库
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql -h localhost -uroot -proot --scm-host localhost scm root root
7.2.5 安装agent节点
只需要在chd-2和cdh-3节点上安装
#安装jdk
yum install -y oracle-j2sdk1.8.x86_64
#安装agent
yum install cloudera-manager-daemons cloudera-manager-agent -y
7.2.6 修改配置文件(所有节点)
修改Cloudera Agent配置文件/etc/cloudera-scm-agent/config.ini,配置server_host为主节点cdh-1
#通过vi命令修改
vi /etc/cloudera-scm-agent/config.ini
server_host=cdh-1
#也可以通过sed命令修改
sed -i "s/server_host=localhost/server_host=cdh-1/g" /etc/cloudera-scm-agent/config.ini
注意:只用使用一种命令修改就行了,推荐使用sed
7.2.7 配置JAVA_HOME(所有节点)
vi /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_181-cloudera/
export PATH=$PATH:$JAVA_HOME/bin
7.3 启动
7.3.1 启动Cloudera Manager(cdh-1)
在主节点启动Cloudera Manager
#启动
systemctl start cloudera-scm-server
#设置开机自启
systemctl enable cloudera-scm-server
7.3.2 启动Cloudera Agent(所有节点)
#启动
systemctl start cloudera-scm-agent
#开机自启
systemctl enable cloudera-scm-agent
可以访问http://192.168.100.10:7180 用户名密码都是admin
8 使用
8.1 配置集群
- 设置集群的名称
- 选择集群主机
- 配置CDH安装包
- 配置CDH parcel的位置
- 选择我们配置好的
- 等待下载包
- 检查主机性能
8.2 安装Zookeeper
- 安装选项
- 选择服务安装主机
- 数据库配置
- 需要创建数据库(cdh-1)
#建库
create database activity;
create database reports;
create database audit;
create database metadata;
#授权
grant all on activity.* to cdh@localhost identified by 'cdh';
grant all on activity.* to cdh@'%' identified by 'cdh';
grant all on reports.* to cdh@localhost identified by 'cdh';
grant all on reports.* to cdh@'%' identified by 'cdh';
grant all on audit.* to cdh@localhost identified by 'cdh';
grant all on audit.* to cdh@'%' identified by 'cdh';
grant all on metadata.* to cdh@localhost identified by 'cdh';
grant all on metadata.* to cdh@'%' identified by 'cdh';
- 测试连接
- 可以配置邮件报警
- 安装
- 安装完成
超详细版企业离线部署cdh6.10集群与配置使用(代码片段)
...胸有点墨;玩过demo,使用过负责过上千节点的大数据集群开发与使用;被人面虐过,也面跪过一些人。如今,趁着自己心中有火,眼里有光的年纪,把自己的一点心得与经验分享大数据行业 查看详情
超详细版企业离线部署cdh6.10集群与配置使用(代码片段)
...胸有点墨;玩过demo,使用过负责过上千节点的大数据集群开发与使用;被人面虐过,也面跪过一些人。如今,趁着自己心中有火,眼里有光的年纪,把自己的一点心得与经验分享大数据行业 查看详情
centos7clouderamanager6完全离线安装cdh6集群(代码片段)
本文是在CentOS7.4下进行CDH6集群的完全离线部署。CDH5集群与CDH6集群的部署区别比较大。说明:本文内容所有操作都是在root用户下进行的。文件下载首先一些安装CDH6集群的必须文件要先在外网环境先下载好。ClouderaManager6.3.0CM6RPM... 查看详情
cdh5部署三部曲之一:准备工作(代码片段)
...环节进行实战,内容如下:第一篇:《准备工作》,即CDH集群中每一台机器都要做的操作;第二篇:《部署和设置》,本章完成CDH集群部署和启动;第三篇:《问题总结》,列出实战中遇到的问题及解决办法;版本信息CentOS:7.6... 查看详情
clouderamanager6.3.1&cdh6.3.2集群部署(超详细,亲测可用)(代码片段)
...Manager环境部署1.1.CM简介1.1.1.CM简介ClouderaManager是一个拥有集群自动化安装、中心化管理、集群监控、报警功能的一个工具,使得安装集群从几天的时间缩短在几个小时内, 查看详情
cdh5部署三部曲之二:部署和设置(代码片段)
...的第二篇,上一篇《CDH5部署三部曲之一:准备工作》将集群所有机器做了必要的设置,今天一起来完成CDH的部署、启动、设置等操作;master机器上的设置SSH登录master机器,执行以下操作:安装mariadb:yuminstallmariadb-server启动mariadb... 查看详情
离线部署k8s-1.19.0集群(代码片段)
centos7.2离线部署k8s-1.19.00、节点说明:1、环境配置1.1关闭防火墙、selinux、swapsetenforce0sed-i\'s/=enforcing/=disabled/g\'/etc/selinux/configsystemctlstopfirewalldsystemctldisablefirewalld1.2做免密操作生成密钥(master):sed-i\'35cSt 查看详情
0110-如何给kerberos环境下的cdh集群添加gateway节点(代码片段)
...写目的Gateway节点又称为客户端节点,通常用作访问Hadoop集群的接口机。它主要会部署一些客户端的配置,脚本命令,比如HDFS的core-site.xml,hdfs-site.xml以及hadoop的操作命令。如果你使用的是ApacheHadoop,你只需要将hadoop相关服务的... 查看详情
spark集群安装部署(代码片段)
通过Ambari(HDP)或者ClouderaManagement(CDH)等集群管理服务安装和部署在此不多介绍,只需要在界面直接操作和配置即可,本文主要通过原生安装,熟悉安装配置流程。1.选取三台服务器(CentOS系统64位) 114.55.246.88 主节点 114... 查看详情
从零开始搭建cdh6.2操作手册(离线版)(代码片段)
前言:安装教程以三台服务器为例,主节点master,从节点worker1、worker2。一、预备阶段1、集群机器2、安装包jdk:oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpmmysql:mysql-5.7.28.zipmysql-connector-java-5.1.47.tar.gzcloudera- 查看详情
cdh离线安装部署
CDH相关介绍: 参考链接: https://blog.csdn.net/u013061459/article/details/73368929https://www.cnblogs.com/raphael5200/p/5293960.html为了构建一个以数据为驱动的业务场景,我们需要一个强大的管理工具去统一并安全地管理我们的业务数据,Clou... 查看详情
如何在cdh集群中部署kafkamanager
...动查看噢1.文档编写目的为了能够方便的查看及管理Kafka集群,yahoo提供了一个基于Web的管理工具(Kafka-Manager)。这个工具可以方便的查看集群中Kafka的 查看详情
cdh集群搭建部署
...建cmServer和NFS服务端,另外4台作为cloudera-manageragent部署CDH集群。ip主要服务/角色hostname(hosts配置与此一致)机器规格10.2.223.237cmServerNFSserverv-xstest-849-171208-cdh-1.hx4c8g200g10.2. 查看详情
cdh简易离线部署文档
CDH离线简易部署文档 文档说明本文为开发部署文档,生产环境需做相应调整。以下操作尽量在root用户下操作,避免权限问题。 目录文档说明2文档修改历史记录2目录3系统环境4相关依赖4初始准备:5java... 查看详情
优化cdh集群性能-可在安装集群前操作002(代码片段)
优化cdh集群性能-可在安装集群前操作002//读完cdh官方文档后,可知的优化操作可在《03搭建cdh生产环境前的Linux优化(涉及到Linux内存参数优化)》https://blog.51cto.com/12445535/2365948这步同时操作讲解了:提供了一些性能问题的解决方... 查看详情
大数据之—cdh搭建(代码片段)
...,指向server节点node1主节点node1修改server配置主节点部署离线parcel源启动主节点所有节点启动web页面操作参考:https://zhuanlan.zhihu.com/p/444565129前言1、CDH概述 Cloudera版本(Cloudera’sDistributionIncludingApacheHadoop,简称“CDH”),基于... 查看详情
0027-如何在cdh集群启用kerberos(代码片段)
...单击图片放大查看。1.文档编写目的本文档讲述如何在CDH集群启用及配置Kerberos,您将学习到以下知识:1.如何安装及配置KDC服务2.如何通过CDH启用Kerberos3.如何登录Kerberos并访问Hadoop相关服务文档主要分为以下几步:1.安装及配置KD... 查看详情
0027-如何在cdh集群启用kerberos(代码片段)
...单击图片放大查看。1.文档编写目的本文档讲述如何在CDH集群启用及配置Kerberos,您将学习到以下知识:1.如何安装及配置KDC服务2.如何通过CDH启用Kerberos3.如何登录Kerberos并访问Hadoop相关服务文档主要分为以下几步:1.安装及配置KD... 查看详情