离线搭建CDH5.16.1大数据平台

市场上免费大数据框架主要有三个版本,原生的Apache版本,Cloudera公司研发的(Cloudera Distribution Hadoop,简称“CDH”)CDH版本(最新6.1),也是市场上使用最多的,Hortonworks版本(Hortonworks Data Platform,简称“HDP”)


Cloudera Manager相关介绍
cloudera公司开源大数据框架
管理集群的
使用CM可以对大数据的各个框架进行智能的安装、部署及集群的资源、服务的监控

CDH版本的大数据框架支持多种安装方式(Cloudera Manager方式)
yum  在线安装   
rpm  离线安装  
tar   离线安装   
CM安装(只能安装CDH版本的大数据框架)  	
CM技术架构
cm-cloudera managerment 下载地址https://www.cloudera.com/downloads/manager/5-16-1.html
cm-5.16.1 对应安装cdh5.16.1版本   下载地址http://archive.cloudera.com/cdh5/parcels/latest/
Database
存储整个集群的配置与监控信息
hive、hue、cm等组件需要用到
软件环境要求
Linux Centos7.5 
jdk1.8
scala-2.11
数据库
	mysql 
		5.5  不支持impala的安装  
		5.6  -- 选择
		5.7 --密码不能设置太简单。。。  
网络配置
ip 
主机名 : mf01~mf06	
ipv6禁用  
关闭防火墙并设置为开机不启动 
禁用selinux  
主机清单
ip内存
192.168.199.19014g
192.168.199.19114g
192.168.199.19210g
192.168.199.19310g
192.168.199.19410g
192.168.199.19510g

一、环境准备

# free -h  查看内存空间 
# df -h   查看磁盘空间
# cat /proc/cpuinfo | grep "processor" |wc -l    总核数   
1、配置ip地址、主机名及ip地址与主机名之间的映射 (所有服务器)
修改主机名
# vim  /etc/hostname
	mf01   //主机名不能出现空格或回车符
		
重启生效 
配置ip地址与主机名之间的映射
#  vim /etc/hosts

192.168.199.190 mf01
192.168.199.191 mf02
192.168.199.192 mf03
192.168.199.193 mf04
192.168.199.194 mf05
192.168.199.195 mf06

配置windows本地映射
	C:\Windows\System32\drivers\etc  

192.168.199.190 mf01
192.168.199.191 mf02
192.168.199.192 mf03
192.168.199.193 mf04
192.168.199.194 mf05
192.168.199.195 mf06

待虚拟机重启后验证
	# hostname
	# ping mf01  
2、禁用ipv6 (所有服务器)

编辑文件/etc/sysctl.conf,
#vim /etc/sysctl.conf
添加下面的行:
net.ipv6.conf.all.disable_ipv6 =1
net.ipv6.conf.default.disable_ipv6 =1
如果你想要为特定的网卡禁止IPv6,比如,对于enp0s3,添加下面的行。
net.ipv6.conf.enp0s3.disable_ipv6 =1
在这里插入图片描述
保存并退出文件。
执行下面的命令来使设置生效。
#sysctl -p
验证:
#ip a
如果没有出现inet6相关信息则表示ipv6已经禁用成功

3、关闭防火墙及禁用selinux安全机制 (所有服务器)

#systemctl stop firewalld 关闭
#systemctl disable firewalld 开机禁用
#systemctl status firewalld 查看状态
在这里插入图片描述

4、ssh免秘钥登陆 (所有服务器)

希望集群中任意两台服务器都可以免秘钥登陆
免秘钥登陆是针对某台服务器的上的某个用户

# ssh-keygen  一直按enter到结束,产生公钥和私钥 

# ssh-copy-id mf01
……
# ssh-copy-id mf06


验证: 
	# ssh mf01
	# exit   验证后要退出  
5、JDK安装 (所有服务器)
6、配置集群的时间服务器

首先安装ntp
#yum install ntp
安装完毕之后,启动服务
#systemctl start ntpd.service
设置开机自启动
#systemctl enable ntpd.service

在集群中选择一台服务器作为集群的时间服务器
mf01
修改mf01的配置文件
#vim /etc/ntp.conf
restrict 192.168.0.0 mask 255.255.255.0
设置后,重启ntpd服务,用ntpstat来检查效果【大概几秒钟就可以看到效果】
#systemctl restart ntpd
#ntpstat

其他服务器配置
修改/etc/ntp.conf文件,注释掉外网时间服务器,添加本地服务器即可
#vim /etc/ntp.conf

server 192.168.199.190    #添加此行
#server 0.centos.pool.ntp.org iburst           #以下四行注释掉
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst

修改集群时间服务器的硬件时钟时间

# hwclock --localtime   服务器的硬件时钟时间  
	# hwclock --localtime -w   将系统时间写给硬件时钟时间  
	```
设置硬件时钟时间与系统时间自动同步,系统关机时则把内存的系统时间写入并修改硬件时间,重启时系统时间会与硬件时间进行同步,从而保证系统时间是正确的
		
	#SYNC_HWCLOCK=yes
	# vi /etc/sysconfig/ntpd 
		SYNC_HWCLOCK=yes  

设置后,重启ntpd服务,用ntpstat来检查效果【大概需要等十五分钟,看到效果】

#systemctl restart ntpd
#ntpstat

7、修改用户最大可使用服务器资源限制 (所有服务器)
# vim /etc/security/limits.conf 	
	
添加以下信息:	

           soft    ofile          32728
           hard    nofile          1024567
           soft    nproc           65535
           hard    nproc           unlimited
           soft    memlock         unlimited
           hard    memlock         unlimited
		

# scp /etc/security/limits.conf mf02:/etc/security/  依次拷贝集群其他节点
		
重启生效 
验证: 
	# ulimit -a

二、mysql的安装

选择mf01安装mysql 

卸载系统自带	
# rpm -qa |grep mysql
		

使用yum方式安装mysql 
修改mysql的镜像源 
 #cd	/etc/yum.repos.d  yum源仓库 
# rpm -Uvh mysql57-community-release-el7-8.noarch.rpm 
/etc/yum.repos.d目录下出现两个mysql相关yum源配置文件
	 mysql-community.repo
	 mysql-community-source.repo
修改mysql的yum源配置文件 
	# vi  mysql-community.repo
		[mysql56-community]
			enabled=1
		[mysql57-community]
			enabled=0
	# vi  mysql-community-source.repo
		[mysql56-community-source]
			enabled=1
		[mysql-tools-preview-source]
			enabled=1
更新yum源缓存
	# yum makecache 

查看基于当前yum仓库可以安装的mysql相关软件
	# yum repolist enabled  | grep mysql 	
安装mysql5.6社区版本
	# yum -y install mysql-community-server
	Complete!
#service mysqld  status  
#service mysqld  start 
#mysql_secure_installation   初始化设置

Set root password? [Y/n] y
New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
 ... Success!
production environment.

Remove anonymous users? [Y/n] y
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] n
 ... skipping.

By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] n
 ... skipping.

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] y
 ... Success!


All done!  If you've completed all of the above steps, your MySQL
installation should now be secure.

Thanks for using MySQL!


Cleaning up...	

三、cloudera managerment的安装部署

1、CM解压安装

安装CM所需要的第三方依赖包 (所有服务器)

	# yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs redhat-lsb 
		
	Complete!  

**在server节点上创建目录并将CM安装包解压到该目录下 **

# mkdir -p /opt/cloudera-manager

上传CM安装包到linux上 

# tar -zxvf cloudera-manager-el7-cm5.16.1_x86_64.tar.gz -C /opt/cloudera-manager/ 

修改CM的配置文件 
	#cd /opt/cloudera-manager/cm-5.16.1/etc/cloudera-scm-agent
	# vi config.ini	
		# Hostname of the CM server. 声明CM server的通讯地址
		server_host=mf01
		# Port that the CM server is listening on.
		server_port=7182
依次将CM的安装目录拷贝给集群其他节点 
	# scp -r /opt/cloudera-manager/ mf02:/opt/
	……
	# scp -r /opt/cloudera-manager/ mf06:/opt/
2、为CM创建一个专用的普通用户(用户名固定cloudera-scm)
 useradd 
  --system                                              表示创建的是一个系统用户
  --home=/opt/cloudera-manager/cm-5.16.1/run/cloudera-scm-server   指定用户主目录
  --no-create-home                                             不在创建主目录
  --shell=/bin/false                                         不作用服务器的登陆用户  
  --comment "Cloudera SCM User"                                      备注 
  cloudera-scm                                                     用户名

验证:

	# cat /etc/passwd | grep  cloudera-scm
3、配置CM访问mysql的权限,并初始化在mysql的状态

mysql> grant all privileges on . to ‘temp’@’%’ identified by ‘temp’ with grant option ;
on . 表示可以访问mysql中的 哪些库.哪些表 ,*代表所有
to ‘temp’@’%’ 表示赋权限给哪个用户,并且该用户需要通过哪台服务器来访问
% 代表所有
with grant option 权限传递

mysql> flush privileges ; 刷新权限

初始化CM在mysql的状态使用CM自带的初始化脚本 /opt/cloudera-manager/cm5.16.1/share/cmf/schema/scm_prepare_database.sh
/opt/cloudera-manager/cm-5.16.1/share/cmf/schema/scm_prepare_database.sh mysql -h mf01 -utemp -ptemp --scm-host mf01 scm scm scm
报错: 缺少驱动包
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
**解决:
将驱动包放入当前服务器的/usr/share/java目录下
CM管理的集群,cm本身或者通过cm所安装的其他框架(hive sqoop)都会默认到/usr/share/java下找驱动包 **

注意:mysql-connector-java.jar名称不能更改

重新执行初始化操作

4、配置CDH的源
CDH的源-》parcel包 

1)创建目录 
	# mkdir -p /opt/cloudera/parcel-repo   --在server上创建 
	# mkdir -p /opt/cloudera/parcels  --在所有的agent节点上创建 
    #mkdir -p  /opt/cloudera-manager/cm-5.16.1/run/cloudera-scm-agent	 --在所有的agent节点上创建  
2)将CDH的源移动到sever的parcel-repo 目录下  
3)修改校验码文件名称 
	#mv CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel.sha1 CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel.sha
4)修改parcel-repo parcels目录的所属人  
	# chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo/   -在server上
	# chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcels   -在agent上
5、启动CM进程
启动server服务
	# /opt/cloudera-manager/cm-5.16.1/etc/init.d/cloudera-scm-server start

日志查看
#tail –f /opt/cloudera-manager/cm-5.16.1/log/cloudera-scm-server/cloudera-scm-server.log
启动agent服务
# /opt/cloudera-manager/cm-5.16.1/etc/init.d/cloudera-scm-agent start
浏览器打开mf01:7180

四、大数据各组件的安装部署

将mysql-connector-java.jar包拷贝到其他节点上,不然安装hive、hue等组件时会报错
# scp mysql-connector-java.jar mf02:/usr/share/java

# scp mysql-connector-java.jar mf06:/usr/share/java
在mysql里创建hive,oozie,hue,amon相关数据库,后面添加这些组件时需要

浏览器打开mf01:7180,按提示进行操作
安装好的界面
在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CDH大数据运维,也就是Cloudera的分布式数据平台运维。CDH是Cloudera公司基于Apache Hadoop开发的商业版分布式数据平台,主要用于存储和处理大规模数据。CDH大数据运维通常包括以下几个方面: 1. 集群部署和配置:CDH运维首先要进行集群的部署和配置,包括选择合适的硬件、安装操作系统、配置网络环境等。此外,还需要对CDH的各个组件进行适当的配置,如Hadoop、HBase、Impala等,以满足各种数据处理需求。 2. 资源管理和调度:CDH运维需要对集群中的资源进行管理和调度,以确保任务的顺利执行。这包括对CPU、内存、磁盘等资源的监控和分配,以及对任务的调度和优化。 3. 数据备份和恢复:CDH大数据运维还需要对存储在集群中的数据进行备份和恢复。这可以通过设置合适的数据备份策略和使用分布式文件系统来实现。当数据丢失或损坏时,可以快速恢复数据,确保数据的完整性和可靠性。 4. 性能优化:CDH大数据运维需要进行性能优化,以提高数据处理的效率和响应速度。这包括对集群中的各个组件进行调优和配置优化,以减少资源消耗和提高数据处理能力。 总之,CDH大数据运维是一个综合性的工作,需要对分布式数据平台进行部署、配置、资源管理、备份恢复和性能优化等方面的工作。它的目标是确保集群的稳定运行,保障数据的安全性和可用性,提高数据处理的效率和性能。CDH大数据运维对于企业来说非常重要,可以帮助他们更好地利用大数据进行业务决策和创新。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值