CM7环境准备
1. 安装须知
如果公司愿意长期花钱订阅购买CDH7的话,请继续查看下文。
2. 云服务器准备
请参考腾讯云服务器购买
3. CM部署前准备
3.1 连接腾讯云服务器
打开远程连接工具进行配置,这里以SecureCRT为例:
3.2 配置主机名
CDH官方推荐使用FQDN:(Fully Qualified Domain Name)全限定域名:FQDN就是同时带有主机名和域名的名称。
sh
[root@hadoop101 ~]# hostnamectl set-hostname hadoop101.cdh7.jiebaba.cn
[root@hadoop102 ~]# hostnamectl set-hostname hadoop102.cdh7.jiebaba.cn
[root@hadoop103 ~]# hostnamectl set-hostname hadoop103.cdh7.jiebaba.cn
[root@hadoop104 ~]# hostnamectl set-hostname hadoop104.cdh7.jiebaba.cn
[root@hadoop105 ~]# hostnamectl set-hostname hadoop105.cdh7.jiebaba.cn
3.3 配置FQDN
在hadoop101~105上面执行:
sh
echo `hostname` >> /etc/sysconfig/network
3.4 修改hosts文件
sh
## 在5台机器上做配置
[root@hadoop101 ~]# vim /etc/hosts
10.206.0.10 hadoop101 hadoop101.cdh7.jiebaba.cn hadoop101
10.206.0.5 hadoop102 hadoop102.cdh7.jiebaba.cn hadoop102
10.206.0.4 hadoop103 hadoop103.cdh7.jiebaba.cn hadoop103
10.206.0.17 hadoop104 hadoop104.cdh7.jiebaba.cn hadoop104
10.206.0.13 hadoop105 hadoop105.cdh7.jiebaba.cn hadoop105
3.5 关闭防火墙
在hadoop101~105上面执行:
sh
systemctl stop firewalld
systemctl disable firewalld
3.6 暂时关闭SELinux
SELinux是Security-Enhanced Linux的简称,是Linux的安全增强模式,CDH安装过程中需要关闭SELinux:
sh
## 查看SELinux状态
getenforce
## 先临时关闭
setenforce 0
3.7 时间同步
CentOS7默认启用chronyd服务保证时间同步,不需要再安装ntpd:
sh
# 查看chronyd状态
systemctl status chronyd
4. 搭建本地yum源
这里选择把yum源配置在hadoop101节点上
4.1 安装并启动Apache http
sh
## 安装Apache http
[root@hadoop101 ~]# yum install -y httpd
## 启动Apache http
systemctl start httpd
## 设置自启动Apache http
systemctl enable httpd
4.2 上传安装文件
- 创建安装文件http根目录
sh
[root@hadoop101 ~]# mkdir -p /var/www/html/cm7/yum/RPMS/x86_64/
- 上传安装文件到/var/www/html/cm7/yum/RPMS/x86_64/
sh
[root@hadoop101 x86_64]# ll
total 1852536
-rw-r--r-- 1 root root 30321448 Mar 5 09:04 cloudera-manager-agent-7.4.4-15850731.el7.x86_64.rpm
-rw-r--r-- 1 root root 1762171388 Mar 5 08:40 cloudera-manager-daemons-7.4.4-15850731.el7.x86_64.rpm
-rw-r--r-- 1 root root 13272 Mar 5 08:04 cloudera-manager-server-7.4.4-15850731.el7.x86_64.rpm
-rw-r--r-- 1 root root 10984 Mar 5 08:04 cloudera-manager-server-db-2-7.4.4-15850731.el7.x86_64.rpm
-rw-r--r-- 1 root root 104465559 Mar 5 08:07 openjdk8-8.0+232_9-cloudera.x86_64.rpm
4.3 创建yum仓库
在hadoop101节点完成以下操作
sh
cd /var/www/html/cm7/yum
yum install -y createrepo
createrepo .
createrepo会将指定文件夹内容打包为yum仓库meta文件,即repodata。
4.4 配置yum仓库文件
在所有节点完成以下操作
sh
vim /etc/yum.repos.d/cloudera-manager.repo
## 添加如下内容
[cloudera-manager]
name=Cloudera Manager 7.4.4
baseurl=http://hadoop101/cm7/yum/
gpgcheck=0
enabled=1
autorefresh=0
type=rpm-md
4.5 更新仓库缓存
sh
yum clean all
yum makecache
5. 安装JDK
CDH要求使用官方自带的发行版openJDK,不支持随意安装其他版本。
sh
# 在所有节点安装 openjdk8-8.0+232_9-cloudera
yum install -y openjdk8-8.0+232_9-cloudera
6. 安装MySQL
6.1 检查MySQL环境
- 查看MySQL是否安装
sh
## 如果安装了MySQL,就先卸载
[root@hadoop101 ~]# rpm -qa|grep -i mysql
- 删除原有MySql依赖
sh
[root@hadoop101 ~]# yum remove mysql-libs
6.2 下载MySql并安装
sh
[root@hadoop101 software]# wget https://cdn.mysql.com/archives/mysql-8.0/mysql-8.0.40-1.el7.x86_64.rpm-bundle.tar
[root@hadoop101 software]# tar -xvf mysql-8.0.40-1.el7.x86_64.rpm-bundle.tar
mysql-community-client-8.0.40-1.el7.x86_64.rpm
mysql-community-client-plugins-8.0.40-1.el7.x86_64.rpm
mysql-community-common-8.0.40-1.el7.x86_64.rpm
mysql-community-debuginfo-8.0.40-1.el7.x86_64.rpm
mysql-community-devel-8.0.40-1.el7.x86_64.rpm
mysql-community-embedded-compat-8.0.40-1.el7.x86_64.rpm
mysql-community-icu-data-files-8.0.40-1.el7.x86_64.rpm
mysql-community-libs-8.0.40-1.el7.x86_64.rpm
mysql-community-libs-compat-8.0.40-1.el7.x86_64.rpm
mysql-community-server-8.0.40-1.el7.x86_64.rpm
mysql-community-server-debug-8.0.40-1.el7.x86_64.rpm
mysql-community-test-8.0.40-1.el7.x86_64.rpm
## 先装依赖
[root@hadoop101 ~]# yum install libaio
## 安装mysql-community-server的依赖
[root@hadoop101 software]# rpm -ivh mysql-community-icu-data-files-8.0.40-1.el7.x86_64.rpm
[root@hadoop101 software]# rpm -ivh mysql-community-common-8.0.40-1.el7.x86_64.rpm
[root@hadoop101 software]# rpm -ivh mysql-community-client-plugins-8.0.40-1.el7.x86_64.rpm
[root@hadoop101 software]# rpm -ivh mysql-community-libs-8.0.40-1.el7.x86_64.rpm
[root@hadoop101 software]# rpm -ivh mysql-community-client-8.0.40-1.el7.x86_64.rpm
[root@hadoop101 software]# rpm -ivh mysql-community-devel-8.0.40-1.el7.x86_64.rpm
[root@hadoop101 software]# rpm -ivh mysql-community-libs-compat-8.0.40-1.el7.x86_64.rpm
[root@hadoop101 software]# rpm -ivh mysql-community-server-8.0.40-1.el7.x86_64.rpm
warning: mysql-community-server-8.0.40-1.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID a8d3785c: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-server-8.0.40-1.e################################# [100%]
6.3 配置MySQL
- 启动MySQL并查看root密码
sh
[root@hadoop101 software]# systemctl start mysqld && systemctl enable mysqld
[root@hadoop101 software]# cat /var/log/mysqld.log | grep password
2025-03-04T04:48:52.842060Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: y&)_jqN3g0y5
- 修改root密码
sh
[root@hadoop101 software]# mysql -uroot -py&)_jqN3g0y5
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Root@123';
Query OK, 0 rows affected (0.01 sec)
mysql> update mysql.user set host = '%' where user ='root';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> create user 'scm'@'%' IDENTIFIED BY 'Root@123';
Rows matched: 1 Changed: 1 Warnings: 0
mysql> ALTER USER 'scm'@'%' IDENTIFIED WITH mysql_native_password BY 'Root@123';
Rows matched: 1 Changed: 1 Warnings: 0
mysql> CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
Rows matched: 1 Changed: 1 Warnings: 0
mysql> GRANT ALL ON scm.* TO 'scm'@'%';
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
6.4 添加mysql驱动包
将mysql-connector-java-8.0.28.jar拷贝到/usr/share/java路径下,并重命名
sh
## 创建文件夹java
[root@hadoop101 software]# mkdir /usr/share/java/
[root@hadoop101 software]# cp /opt/software/mysql-connector-java-8.0.28.jar /usr/share/java/
[root@hadoop101 software]# mv /usr/share/java/mysql-connector-java-8.0.28.jar /usr/share/java/mysql-connector-java.jar
## 分发
[root@hadoop101 software]# xsync /usr/share/java/