Skip to content

CM7环境准备

1. 安装须知

如果公司愿意长期花钱订阅购买CDH7的话,请继续查看下文。

2. 云服务器准备

请参考腾讯云服务器购买

3. CM部署前准备

3.1 连接腾讯云服务器

打开远程连接工具进行配置,这里以SecureCRT为例:
Alt text

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 上传安装文件

  1. 创建安装文件http根目录
sh
[root@hadoop101 ~]# mkdir -p /var/www/html/cm7/yum/RPMS/x86_64/
  1. 上传安装文件到/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环境

  1. 查看MySQL是否安装
sh
## 如果安装了MySQL,就先卸载
[root@hadoop101 ~]# rpm -qa|grep -i mysql
  1. 删除原有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

  1. 启动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
  1. 修改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/