前言
环境:操作系统:Centos7、.Cloudera Manager:5.14.1、CDH:5.14.0、JDK1.8
首先说安装前几点注意事项。
主机名不要使用符号、空格等。亲测有时候访问不到。就纯英文加数字就好。
主机数为奇数
一、基础环境安装
1.1关闭SELINUX(所有节点)
vim /etc/selinux/config
将SELINUX=enforcing改成SELINUX=disabled
1.2关闭防火墙(所有节点)
关闭防火墙(服务器重启后,防火墙会开启)
systemctl stop firewalld.service
禁止防火墙开机启动(服务器重启后,防火墙不会开启)
systemctl disable firewalld.service
1.3修改hostname(所有节点)
hostnamectl set-hostname xxxx
注:主机名不要带符号,下划线,空格等
1.4配置hosts文件(所有节点)
vim /etc/hosts
添加:
172.16.103.91 cdh1
172.16.103.92 cdh2
172.16.103.91 cdh3
1.5 ssh无密登录
- 免密码登录自身(所有节点)
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
- master免密码登录worker【单台,只需在主节点上执行】
ssh-copy-id -i ~/.ssh/id_rsa.pub cdh1
ssh-copy-id -i ~/.ssh/id_rsa.pub cdh2
ssh-copy-id -i ~/.ssh/id_rsa.pub cdh3
1.6 时钟同步(所有节点)
设置开机自动同步Internet时间,并作定时同步任务
1、修改时区
rm -rf /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
vim /etc/sysconfig/clock
ZONE="Asia/Shanghai"
UTC=false
ARC=false
2、安装并设置开机自启
yum install -y ntp
systemctl start ntpd
systemctl enable ntpd
3、配置开机启动校验
vim /etc/rc.d/rc.local
/usr/sbin/ntpdate ntp1.aliyun.com > /dev/null 2>&1; /sbin/hwclock -w
4、配置定时任务
crontab -e
0 */1 * * * ntpdate ntp1.aliyun.com > /dev/null 2>&1; /sbin/hwclock -w
1.7安装JDK1.8(所有节点)
不要安装openjdk。采用rpm方式安装。
chmod 755 jdk-8u201-linux-x64.rpm
rpm -i jdk-8u201-linux-x64.rpm
配置环境变量 vim/etc/profile ,然后source /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
export PATH=$PATH:$JAVA_HOME/bin
二、安装MySQL(5.7,yum)
mysql只需在主节点安装
mysql5.6开始mysql服务启动时会为root用户生成一个临时密码,通过grep
'password' /var/log/mysqld.log命令获取
配置密码验证策略,我选择的是不使用密码验证策略,以便创建简单密码
配置数据库字符集,我配置默认的字符集是utf8。
以下所创建的所有表,字符集统一utf8
安装wget
yum install wget
下载安装mysql
下载并安装MySQL官方的 Yum Repository
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了。
yum -y install mysql57-community-release-el7-10.noarch.rpm
之后就开始安装MySQL服务器。
yum -y install mysql-community-server
这步可能会花些时间,安装完成后就会覆盖掉之前的mariadb。
2.1MySQL配置
首先启动MySQL
systemctl start mysqld.service
查看MySQL运行状态,运行状态如图:
systemctl status mysqld.service
通过如下命令可以在日志文件中找出密码:
[root@localhost ~]# grep "password" /var/log/mysqld.log
(直接登录,右键粘贴即可)
输入初始密码,此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '654321';
新密码设置的时候如果设置的过于简单会报错:
可以通过如下命令修改:
set global validate_password_policy = 0;
set global validate_password_mixed_case_count = 0;
set global validate_password_number_count = 3;
set global validate_password_special_char_count = 0;
set global validate_password_length = 3;
还有一个问题,就是因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:
yum -y remove mysql57-community-release-el7-10.noarch
2.2db和用户的设置
2.2.1新建一个scm用户,并赋予所有权限,密码是scm
mysql> grant all on *.* to 'scm'@'127.0.0.1' identified by 'scm' with grant option;
flush privileges;
2.2.2创建数据库scm
CREATE DATABASE `scm` CHARACTER SET utf8 COLLATE utf8_general_ci;
2.2.3 新建一个cdh集群用户:
mysql> grant all on *.* to 'cdhuser'@'%' identified by '654321' with grant option;
2.2.4 在后续web页面的安装过程中,会需要oozie、hive、hue等数据库。需要时自行创建并指定其编码为utf8
三、安装Clouder Manager及CDH
3.1 新建目录(所有节点)
mkdir /opt/cloudera-manager
3.2上传Cloudera Manager安装包,解压(所有节点)
tar xzf cloudera-manager*.tar.gz -C /opt/cloudera-manager
3.3 创建用户cloudera-scm
由于Cloudera Manager和Managed Services默认使用cloudera-scm,所以需要创建此用户(所有节点)
useradd --system --home=/opt/cloudera-manager/cm-5.14.1/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
3.4【主节点】创建Cloudera Manager服务本地数据存储目录
mkdir /var/lib/cloudera-scm-server
chown cloudera-scm:cloudera-scm /var/lib/cloudera-scm-server
3.5 配置【所有节点】的Agent
vim /opt/cloudera-manager/cm-5.14.1/etc/cloudera-scm-agent/config.ini
将server_host修改成主节点的主机名,如果主节点端口没有自定义,则不用修改。
3.6下载mysql-connector-java.jar,并保存到所有主机的/usr/share/java目录下(没有则新创建)
要解压到java目录下,并重命名成mysql-connector-java.jar
3.7初始化cloudera manager(主节点)
/opt/cloudera-manager/cm-5.14.1/share/cmf/schema/scm_prepare_database.sh mysql scm scm scm
3.8将CDH安装包移动主节点的/opt/cloudera/parcel-repo目录下
mkdir -p /opt/cloudera/parcel-repo
mv CDH-5.14.4-1.cdh5.14.4.p0.3-el7.parcel /opt/cloudera/parcel-repo/
mv CDH-5.14.4-1.cdh5.14.4.p0.3-el7.parcel.sha /opt/cloudera/parcel-repo/
mv manifest.json /opt/cloudera/parcel-repo/
移动的文件有:
将CDH-5.14.0-1.cdh5.14.0.p0.24-el7.parcel.sha1名称改成CDH-5.14.0-1.cdh5.14.0.p0.24-el7.parcel.sha
3.9服务器环境没有预先安装httpd,mod_ssl服务,不安装会导致后面hue报错
yum -y install httpd
yum -y install mod_ssl
3.10启动主节点的CM Server和所有节点的Agent
提示没有找到命令pstree时,安装这个:
yum install psmisc
cd /opt/cloudera-manager/cm-5.14.1/etc/init.d
./cloudera-scm-server start
Starting cloudera-scm-server: [ OK ]
./cloudera-scm-agent start
Starting cloudera-scm-agent: [ OK ]
3.11打开CM管理页面
http://172.16.103.91:7180
用户名和密码都是admin
—————至此CDH安装成功,不过在web页面安装集群及插件还会遇到种种别的问题,下次再把整理的处理问题方法及需要的文件上传更新,未完待续。。。——————
解决安装遇到的问题,请参考另一篇博客。
https://blog.csdn.net/weixin_36439837/article/details/88842975