一、环境准备
1、CM简介
Cloudera Manager是一个拥有集群自动化安装、中心化管理、集群监控、报警功能的一个工具,使得安装集群从几天的时间缩短在几个小时内,运维人员从数十人降低到几人以内,极大的提高集群管理的效率。
本篇就介绍如何安装CDH,选择的版本为6.3.1
2、环境准备
准备三台测试机,分别为centos01,centos02,centos04。我这里的测试机器的配置为16g内存,4CPU。
序号 | IP | hostname |
---|---|---|
1 | 192.168.222.10 | centos01 |
2 | 192.168.222.11 | centos02 |
3 | 192.168.222.13 | centos04 |
说明:centos03(192.168.222.12)节点被征用做其他服务部署。
软件 | 版本 |
---|---|
操作系统 | CentOS 7.6 |
ClouderaManager | 6.3.1 |
CDH | 6.3.2 |
JDK | 1.8 |
MySQL(MariaDB) | 5.7 |
虚拟机搭建运行环境,请参考前几篇文章:
大数据之 Hadoop-2-运行环境搭建之虚拟机安装
大数据之 Hadoop-3-运行环境搭建之克隆虚拟机
2.1 关闭防火墙(所有节点)
systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld
2.2 关闭SeLinux(所有节点)
执行getenforce指令查看selinux状态,如果输出为:enforcing
,则需要处理一下,否则可以跳过这一步。
[root@centos01 ~]# getenforce
Enforcing
[root@centos01 ~]#
修改 /etc/selinux/config
文件(在某些系统中,可能是 /etc/sysconfig/selinux
文件)
vi /etc/selinux/config
将 SELINUX=enforcing
修改为
SELINUX=disabled
更新配置之后要重启服务器生效,或者执行:setenforce 0
,使其立即生效。
setenforce 0
注意:也可以使用 sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config
再次查看:
[root@centos01 ~]# getenforce
Permissive
3、配置yum源
配置yum源
(1)、备份,将 CentOS-Base.repo 为CentOS-Base.repo.backup
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
(2)、下载新的 http://mirrors.aliyun.com/rep...,并命名为CentOS-Base.repo
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
(3)、清除缓存
yum clean all # 清除系统所有的yum缓存
yum makecache # 生成yum缓存
4、NTP服务安装和设置
Hadoop对集群中各个机器的时间同步要求比较高,要求各个机器的系统时间不能相差太多,不然会造成很多问题。可以配置集群中各个机器和互联网的时间服务器进行时间同步,但是在实际生产环境中,集群中大部分服务器是不能连接外网的,这时候可以在内网搭建一个自己的时间服务器(NTP服务器),集群的各个机器与这个时间服务器进行时间同步。我们选择其中一个节点centos01机器作为NTP服务器,其他机器和它自动同步。
4.1 安装NTP(所有节点)
yum -y install ntp
4.2 Manager节点(centos01):
设置指向NTP服务器,如果局域网内有时间服务器,可以指向时间服务器(manager节点-centos01)
vi /etc/ntp.conf
注释掉之前的server,然后添加以下NTP服务器
server http://ntp.aliyun.com
4.2 其他节点:
vi /etc/ntp.conf
集群的其他节点指向第一个(centos02、centos04)
server centos01
重新启动 ntp 服务和设置开机自启(所有节点):
service ntpd restart
systemctl enable ntpd.service
查看和测试:
ntpdc -c loopinfo #查看与时间同步服务器的时间偏差
ntpq -p #查看当前同步的时间服务器
ntpstat #查看状态定时同步crontab
crontab -e #可以不用设置
10 * * * * /usr/sbin/ntpdate centos1
二、配置和安装CDH
CDH官方的网站已经无法直接下载安装包了(需要账号密码),需要找一些之前下载过的人索取。
链接:https://pan.baidu.com/s/1dpyhF6TRXaqryab6ZVVXfw
提取码:1cuo
官网下载包(比较慢):
http://ro-bucharest-repo.bigstepcloud.com/cloudera-repos/cm6/redhat/7/x86_64/cm/6.2.0/RPMS/x86_64/
https://archive.cloudera.com/cm6/6.3.1/
1.配置CM源
注意:操作系统可以先配置本地yum。CDH的安装包都是rpm包。如果使用rpm安装方式安装起来是比较复杂的,会有很多依赖问题需要解决,就需要使用yum帮助我们解决依赖问题。(也可以是在线的阿里yum源,之前在按照好操作系统之后已经设置了aliyun的yum,所有这里省略centos yum源)
配置CM源:
在centos01节点上安装并启动 httpd
#安装
yum install httpd
#启动
service httpd start
#开机自启
systemctl enable httpd
或者chkconfig httpd on
1.2 将端口号修改为:6789 (可选项操作,默认是80,这里使用默认的端口)
$ vi /etc/httpd/conf/httpd.conf
增加/修改端口号如下:
Listen 6789
1.3 进入到这个目录下,新建目录:
cd /var/www/html/
mkdir cm6
mkdir cdh6
1.4 将cdh的安装包和cm的包拷贝到创建的目录
1.4.1 拷贝cm安装包和jdk到cm6
#拷贝cm安装包和jdk到cm6
cp cloudera-manager-* /var/www/html/cm6/
cp enterprise-debuginfo-6.3.1-1466458.el7.x86_64.rpm /var/www/html/cm6
cp oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm /var/www/html/cm6
cm6目录拷贝的文件:
[root@centos01 cm6]# ls -l
总用量 1380408
-rw-r--r--. 1 root root 10483568 2月 27 14:11 cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm
-rw-r--r--. 1 root root 1203832464 2月 27 14:12 cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
-rw-r--r--. 1 root root 10996 2月 27 14:12 cloudera-manager-server-db-2-6.3.1-1466458.el7.x86_64.rpm
-rw-r--r--. 1 root root 14209868 2月 27 14:12 enterprise-debuginfo-6.3.1-1466458.el7.x86_64.rpm
-rw-r--r--. 1 root root 184988341 2月 27 14:12 oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
[root@centos01 cm6]#
1.4.2 拷贝cdh安装包和元数据文件
# 拷贝cdh安装包和元数据文件
cp CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel /var/www/html/cdh6/
cp manifest.json /var/www/html/cdh6/
拷贝到cdh6目录的文件:
[root@centos01 cdh6]# ls -l
总用量 2033424
-rw-r--r--. 1 root root 2082186246 2月 27 14:08 CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel
-rw-r--r--. 1 root root 33887 2月 27 14:08 manifest.json
1.5 安装createrepo命令,然后进入到cm6目录创建yum源
[root@centos01 cdh6]# yum install -y createrepo #下载createrepo
[root@centos01 cdh6]# cd /var/www/html/cm6 #命令进入到cm6安装包的httpd资源位置
[root@centos01 cdh6]# createrepo . #创建yum源的描述meta
1.6 配置yum源(每个节点)
cat >> /etc/yum.repos.d/cm.repo << EOF
[CM]
name=cm6
baseurl=http://centos01:6789/cm6/
gpgcheck=0
EOF
然后再其他节点:centos02,centos04 节点执行上述命令;
查看yum配置源是否生效
yum clean all
yum repolist
可以看到cm源已经配置成功了。
2.安装
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
2.2 安装cloudera-manager和agent(centos01 节点)
#安装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
然后去官网重新下载了一个包:
http://ro-bucharest-repo.bigs...
将新下载的 oracle-j2sdk1.8.x86_64
文件放到cm6 目录下,然后重新创建yum源:
[root@centos01 cdh6]# cd /var/www/html/cm6 #命令进入到cm6安装包的httpd资源位置
[root@centos01 cdh6]# createrepo . #创建yum源的描述meta
接着继续安装cloudera-manager:
#安装cloudera-manager
yum install -y cloudera-manager-agent cloudera-manager-daemons cloudera-manager-server cloudera-manager-server-db-2 postgresq-server
2.3 安装Mariadb(cdh01)
#安装
yum install -y mariadb-server
#启动和开机自启
systemctl start mariadb && systemctl enable mariadb
#配置Mariadb数据库
mysql_secure_installation #可以在遇[Y/n]输入y设置密码 [账号/密码:root/123456]
2.4 修改配置文件(所有节点)
修改Cloudera Agent配置文件/etc/cloudera-scm-agent/config.ini,配置server_host为主节点cdh01
#通过vi命令修改
vi /etc/cloudera-scm-agent/config.ini
server_host=centos01
# ------------- 第二种方法
#也可以通过sed命令修改(推荐)
sed -i "s/server_host=localhost/server_host=centos01/g" /etc/cloudera-scm-agent/config.ini
配置JAVA_HOME(所有节点)
vi /etc/profile
#add for JAVA_HOME
export JAVA_HOME=/usr/java/jdk1.8.0_181-cloudera/
export PATH=PATH:PATH:PATH:JAVA_HOME/bin
3、启动CDH
3.1.启动Cloudera Manager(centos01)
#启动
service cloudera-scm-server start //systemctl start cloudera-scm-server
#设置开机自启???
chkconfig cloudera-scm-server on //systemctl enable cloudera-scm-server
3.2.启动Cloudera Agent(所有节点)
#启动
service cloudera-scm-agent start //systemctl start cloudera-scm-agent
#开机自启
//systemctl enable cloudera-scm-agent
可以访问http://192.168.222.10:7180 进行组件服务的安装操作了
用户名/密码: admin/admin
相关文章:
知乎|CDH6.3.2离线安装(附百度网盘CDH安装包)
尚硅谷|CDH6.3.2之安装与使用(一))
离线安装部署CDH6.3.2集群
CDH6.1.0离线安装