CDH 6.3.2集群安装部署
https://blog.csdn.net/u010839779/article/details/130127169
一 CDH概要
1.1 CDH的背景
- 原生的Hadoop版本很多,兼容性得自己调研,成本高
- 缺乏便捷的管理工具或者平台,运维效率低,成本高
- Hadoop相关组件发行商也比较多
基于以上一些原因,企业大数据开发和生产多采用CDH集群,便于集群的运维和管理等。
1.2 CDH介绍
首先,先说一下Cloudera公司,Cloudera公司提供了一个灵活的、可扩展的、容易集成和方便管理的平台,提供Web浏览器操作,容易上手。Cloudera产品和解决方案能提供部署、管理 Apache Hadoop和相关项目,维护和分析数据,保证数据安全受保护等。Cloudera公司提供一系列产品,包括:CDH、CMS、Impala、Search和Manager等。
CDH是Cloudera 提供的一个基于Web浏览器管理的灵活、可扩展的、容易集成和方便管理开源Hadoop和相关项目的平台。
CDH版本很多,CDH 6.3.x及以前版本都是免费,之后的版本是收费版本,本文档主要是使用CMS 6.3.1和CDH6.3.2版本。
CDH 6.3.2 Packaging具体如下:
Component | Component Version | Changes Information |
---|---|---|
Apache Avro | 1.8.2 | Changes |
Apache Flume | 1.9.0 | Changes |
Apache Hadoop | 3.0.0 | Changes |
Apache HBase | 2.1.4 | Changes |
HBase Indexer | 1.5 | Changes |
Apache Hive | 2.1.1 | Changes |
Hue | 4.3.0 | Changes |
Apache Impala | 3.2.0 | Changes |
Apache Kafka | 2.2.1 | Changes |
Kite SDK | 1.0.0 | Changes |
Apache Kudu | 1.10.0 | Changes |
Apache Solr | 7.4.0 | Changes |
Apache Oozie | 5.1.0 | Changes |
Apache Parquet | 1.9.0 | Changes |
Parquet-format | 2.4.0 | Changes |
Apache Pig | 0.17.0 | Changes |
Apache Sentry | 2.1.0 | Changes |
Apache Spark | 2.4.0 | Changes |
Apache Sqoop | 1.4.7 | Changes |
Apache ZooKeeper | 3.4.5 | Changes |
二 环境准备
2.1 安装部署环境
本次CDH和CMS安装环境及版本说明:
环境名称 | 版本 | 备注 |
---|---|---|
macOS | 13.1 (22C65) | |
VMware | VMware® vSphere® Client 版本 8.0.2 | |
CentOS | 7.9 | |
Java | 1.8.0_152 | |
MySQL | 5.7.28 | |
chrome | 版本 120.0.6099.234(正式版本) |
2.2 部署规划
主机名 | IP | 域名 | 配置信息 |
---|---|---|---|
bigdata-01 | 10.17.0.91 | 无 | 16vCPU/64G |
bigdata-012 | 10.17.0.92 | 无 | 8vCPU/64G |
bigdata-03 | 10.17.0.93 | 无 | 8vCPU/64G |
2.3 服务器主机映射
添加本机的静态IP和本机的主机名及域名之间的映射关系,如果不用域名可以不用添加,如果阿里云服务器也建议使用静态IP,规划中的每一台服务器都需要执行
我的具体配置如下:
[root@bigdata-01 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.17.0.91 bigdata-01
10.17.0.92 bigdata-02
10.17.0.93 bigdata-03
2.4 服务器免登录配置
# 1. 使用rsa加密技术,生成公钥和私钥。一路回车键即可
[root@bigdata-01 ~]#ssh-keygen -t rsa
# 2. 使用ssh-copy-id命令
[root@bigdata-01 ~]# ssh-copy-id root@bigdata-01
[root@bigdata-01 .ssh]# ssh-copy-id root@bigdata-02
[root@bigdata-01 .ssh]# ssh-copy-id root@bigdata-03
# 3. 验证免登录
[hadoop@bigdata-01 .ssh]# ssh bigdata-01
[hadoop@bigdata-01 .ssh]# ssh bigdata-02
[hadoop@bigdata-01 .ssh]# ssh bigdata-03
# 4. 继续在bigdata-02和bigdata-03生成公钥和私钥,给三台节点互相拷贝和验证是否达到免登录。
2.5 防火墙关闭
每台规划安装的服务器
都执行如下的命令。
#停止防火墙
[root@bigdata-01 ~]# systemctl stop firewalld
#禁用防火墙(开机不再自启动)
[root@bigdata-01 ~]# systemctl disable firewalld
#停止网络管理
[root@bigdata-01 ~]# systemctl stop NetworkManager
#禁用网络管理
[root@bigdata-01 ~]# systemctl disable NetworkManager
注意
- 如果是阿里云服务器或者云服务器,没有办法或不允许关闭的,需要注意添加防火墙规则
- 如果可以关闭,每一台服务器都需要执行防火墙关闭和禁止开机自启动
2.6 关闭Selinux
每台服务器都需要
将selinux关闭掉,这是linux系统的一个安全机制,进入文件中将SELINUX设置为disabled,不关闭安装CM就应该会报错。
#关闭selinux,设置SELINUX=permissive,或者disable 然后重启服务器
vim /etc/selinux/config
.........
SELINUX=disabled
.........
#关闭selinux,当前session生效,setenforce 0,其中的0就是permissive
setenforce 0
2.7 设置最大打开文件
每台服务器都执行
如下命令行。
#设置,再末尾添加即可
[root@bigdata-01 ~]# vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 1024999
* soft nproc 65535
* hard nproc unlimited`
* soft memlock unlimited
* hard memlock unlimited
2.8 关闭最大透明页面压缩
每台服务器都执行
,并且设置后需要重启服务器。
echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag' > /etc/rc.local
echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' > /etc/rc.local
- 最新方案
2.9 设置Swappiness空间
每台服务器都需要执行
,并且设置后需要重启服务器。
echo "vm.swappiness=0" >> /etc/sysctl.conf
Cloudera建议将交换空间设置为0,过多的交换空间会引起GC的耗时激增。
2.10 安装JDK
每台规划的安装CM或者CDH的服务器都需要执行
如下的JDK安装操作,如果已经做过,忽略即可。
-
卸载之前的JDK
# 卸载之前的原因,主要是需要保证安装的JDK版本的正确性。 [root@bigdata-01 ~]# rpm -qa | grep jdk # 如果有,请卸载 [root@bigdata-01 ~]# rpm -e xxxxxxxx --nodeps # 将查询到的内置jdk强制卸载
-
上传JDK安装包到指定的路径
使用MobaXterm或者FinalShell直接上传即可,上传到 /root/softwares 下
-
解压JDK到指定安装路径
[root@bigdata-01 ~]# cd /root/softwares && tar -zxvf jdk-8u152-linux-x64.tar.gz -C /usr/local
-
配置环境变量
[root@bigdata-01 local]# vim /etc/profile...上述内容省略,在末尾添加即可... # Java Environment export JAVA_HOME=/usr/local/jdk1.8.0_152 export PATH=$PATH:$JAVA_HOME/bin
-
重新引导,使得环境变量生效
[root@bigdata-01 local]# source /etc/profile
-
验证JDK是否配置完成
[root@bigdata-01 local]# java -version
-
创建jdk的软链接
#分别在bigdata-01、bigdata-02和bigdata-03上执行如下命令: mkdir -p /usr/java ln -s /usr/local/jdk1.8.0_152 /usr/java/default
注意
- Cloudera
强烈建议安装
oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm,否则容易造成JAVA_HOME不被发现。但是我测试不安装他建议的oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm很多次都没有问题。这个大家自行考虑。- 上诉第7步骤创建软链接都建议需要操作,否则cdh安装可能有很多地方意向不到的错误,因为CDH默认都在/usr/java下找jdk。
2.11 MySQL安装部署
我下面给出MySQL 5.7.28和MySQL 8.0.26的安装部署,根据自己的需求,选择一种即可(MySQL部署一台服务器即可,生产部署集群或主从)。本次安装我选择的是MySQL 5.7.28来安装。
[root@BigData-01 java]# rpm -qa | grep mysql
[root@BigData-01 java]# rpm -qa | grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
[root@BigData-01 java]# yum remove mariadb-libs.x86_64
yum install -y mariadb
yum install -y mariadb-server
[root@BigData-01 java]# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
1. MySQL5.7.28安装部署
#如下是5.7.28的mysql的安装命令
1. 上传服务器的home目录
2. 分别执行命令如下
#解压MySQL安装包
tar -xvf /home/mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar #查询mariadb,并将其卸载
rpm -qa| grep mariadb
rpm -e mariadb-libs-5.5.64-1.el7.x86_64 --nodeps
rpm -qa| grep mariadb#依次安装解压出来的MySQL包
rpm -ivh mysql-community-common-5.7.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm
#安装server需要的依赖
yum -y install perl net-tools
rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64.rpm
rpm -ivh /home/mysql-community-libs-compat-5.7.28-1.el7.x86_64.rpm #为了cms的agent安装需要,单独MySQL不需要#启动或者停止MySQL服务
systemctl start mysqld
systemctl status mysqld#查询MySQL的初始密码
cat /var/log/mysqld.log | grep password#登录MySQL进行密码策略修改和授权
mysql -uroot -p输入密码(刚才查询出来的初始化密码)
mysql>set global validate_password_policy=low;
mysql>set global validate_password_length=2;
mysql>alter user root@localhost identified by '123456';# 3. 远程授权
create user root@'%' identified by '123456';
grant all privileges on *.* to 'root'@'%' with grant option;# 4. 删除mysql表中的Host='localhost' and User = 'root'
mysql> delete from mysql.user where Host="localhost" and User = 'root';# 5. 刷新权限
flush privileges;
2. MySQL 8.0.26安装部署
-
安装包准备
通过SSH工具,将MySQL的RPM安装包上传到Linux的 ~/software 目录下。MySQL的RPM安装包,可以在MySQL的官网下载,也可以直接使用课程提供的资料。 注意事项:
- 在官网下载安装包的时候,注意版本号
- mysql-8.0.26-1.el7.aarch64.rpm-bundle.tar
- 这里的el7,表示适用于CentOS7的版本。注意,不要下载el6的。
- aarch64: 这个表示arm版本的CentOS,如果是amd64架构的,可以选择x64。
-
安装前准备
# CentOS7中,系统默认采用的数据库是mariadb,这个数据库与MySQL冲突! # 因此,在安装MySQL之前,需要先将其卸载! [root@bigdata-01 ~]# rpm -qa | grep mariadb # 查询是否已经安装了mariadb mariadb-libs-5.5.68-1.el7.aarch64 # 查询结果。如果没有这个结果,说明没有安装。# 强制卸载mariadb # --nodeps: 强制卸载,RPM卸载程序的时候,如果这个程序被其他的程序依赖,是无法卸载的。 # 此时,就需要使用--nodeps,忽略依赖,强制卸载。 # 下面的卸载命令中,卸载的包是上方查询到的包 rpm -e mariadb-libs-5.5.68-1.el7.x86_64 --nodeps
-
安装MySQL
# 安装MySQL, 其实就需要安装 mysql-community-server, 但是它依赖其他的包 [root@bigdata-01 mysql]# rpm -ivh mysql-community-common-8.0.26-1.el7.aarch64.rpm [root@bigdata-01 mysql]# rpm -ivh mysql-community-client-plugins-8.0.26-1.el7.aarch64.rpm [root@bigdata-01 mysql]# rpm -ivh mysql-community-libs-8.0.26-1.el7.aarch64.rpm [root@bigdata-01 mysql]# rpm -ivh mysql-community-libs-compat-8.0.26-1.el7.aarch64.rpm [root@bigdata-01 mysql]# rpm -ivh mysql-community-client-8.0.26-1.el7.aarch64.rpm [root@bigdata-01 mysql]# yum install -y net-tools [root@bigdata-01 mysql]# rpm -ivh mysql-community-server-8.0.26-1.el7.aarch64.rpm
-
启动MySQL的服务
# 查看MySQL服务的运行状态 [root@bigdata-01 ~]# systemctl status mysqld # 如果MySQL服务没有开启,则开启 [root@bigdata-01 ~]# systemctl start mysqld
-
登录到MySQL
# 在第一次开启MySQL服务的时候,会自动生成一个随机的密码 [root@bigdata-01 ~]# grep password /var/log/mysqld.log # 到mysqld.log文件中查找 password 2020-12-16T07:47:14.117739Z 1 [Note] A temporary password is generated for root@localhost: pVLJs6&o(QQe # 使用这个随机密码登录到MySQL [root@bigdata-01 ~]# mysql -u root -p pVLJs6&o(QQe # 这里用自己的密码登录
create database metastore default character set utf8;
create user 'hive'@'%' identified by 'hivedemima';
grant all privileges on metastore.* to 'hive'@'%';
create database cm default character set utf8;
create user 'cm'@'%' identified by 'cmdemima';
grant all privileges on cm.* to 'cm'@'%';
create database am default character set utf8;
create user 'am'@'%' identified by 'amdemima';
grant all privileges on am.* to 'am'@'%';
create database rm default character set utf8;
create user 'rm'@'%' identified by 'rmdemima';
grant all privileges on rm.* to 'rm'@'%';
create database hue default character set utf8;
create user 'hue'@'%' identified by 'huedemima';
grant all privileges on hue.* to 'hue'@'%';
create database oozie default character set utf8;
create user 'oozie'@'%' identified by 'ooziedemima';
grant all privileges on oozie.* to 'oozie'@'%';
create database sentry default character set utf8;
create user 'sentry'@'%' identified by 'sentrydemima';
grant all privileges on sentry.* to 'sentry'@'%';
create database nas default character set utf8;
create user 'nas'@'%' identified by 'nasdemima';
grant all privileges on nas.* to 'nas'@'%';
create database nms default character set utf8;
create user 'nms'@'%' identified by 'nmsdemima';
grant all privileges on nms.* to 'nms'@'%';
grant all privileges on *.* to 'root'@'%';
#--MySQL
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'P@88W0rd' WITH GRANT OPTION;
flush privileges;
exit;
-
修改密码
# 1. 修改MySQL的密码策略(安全等级) # MySQL默认的密码安全等级有点高,在设置密码的时候,必须同时包含大小写字母、数字、特殊字符,以及对位数有要求 show variables like '%validate_password%'; set global validate_password.policy=LOW; set global validate_password.length=2; set global validate_password.mixed_case_count=0; set global validate_password.number_count=0; set global validate_password.special_char_count=0; # 2. 修改密码 alter user root@localhost identified by '123456'; # 3. 远程授权 create user root@'%' identified by '123456'; grant all privileges on *.* to 'root'@'%' with grant option; # 4. 删除mysql表中的Host='localhost' and User = 'root' mysql> delete from mysql.user where Host="localhost" and User = 'root';# 5. 刷新权限 flush privileges;
-
重新登录
- 试着退出MySQL,用新的密码重新登录。如果可以登录成功,那么MySQL的安装就到此结束!
- MySQL在安装完成后,是不需要配置环境变量的。因为RPM的安装特性,启动脚本会被放到/usr/bin下。这个路径本来 就在环境变量里面,不需要单独配置。
-
提前为CMS创建相关数据库
# 登录mysql mysql -uroot -p # 登录后执行下面的sql CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; GRANT ALL ON scm.* TO 'scm'@'%' IDENTIFIED BY 'litsoft@2022'; GRANT ALL PRIVILEGES ON scm.* TO 'scm'@'%' IDENTIFIED BY 'litsoft@2022' WITH GRANT OPTION; GRANT ALL PRIVILEGES ON scm.* TO 'scm'@'%' IDENTIFIED BY 'P@88W0rd' WITH GRANT OPTION; # 配置超级权限 GRANT ALL PRIVILEGES ON *.* TO 'scm'@'%' WITH GRANT OPTION; CREATE DATABASE hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci; CREATE DATABASE oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci; CREATE DATABASE hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci; CREATE DATABASE report DEFAULT CHARSET utf8 COLLATE utf8_general_ci; grant all privileges on *.* to 'root'@'%' identified by '123456'; flush privileges;
注意
- MySQL使用一台服务器安装部署即可。
- MySQL一定要授权远程某一个指定IP规则的服务器能登录到。
- 如果使用阿里云或者物理机服务器,建议把密码等级和权限等级都提升。
2.12 所有节点安装MySQL JDBC驱动依赖包
wget https://downloads.mysql.com/archives/get/p/3/file/mysql-connector-java-8.0.27-1.el7.noarch.rpm
# 主节点创建/usr/share/java目录,将jdbc的jar包放进去
mkdir -p /usr/share/java # cdh默认搜索目录
rpm -ivh mysql-connector-java-8.0.27-1.el7.noarch.rpm
#采用远程分发
scp -pr java/ root@bigdata-02:/usr/share/
scp -pr java/ root@bigdata-03:/usr/share/
使用上述驱动包报错,再测试使用5.0.28版本的驱动。
下载驱动包;删除8.0.27的驱动包;解压新驱动包;删除从节点jar包重新分发
2.13 创建ClouderaManager用户
每台节点都执行如下操作。
useradd --system --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
三 CM和CDH部署
3.1 上传安装文件
$ scp ~/Desktop/CDH6.3.2.zip bigdata-01:/opt/
unzip ./CDH6.3.2.zip
需要安装包的,留言我发你链接即可,留言必发!!!
yum install cloudera-manager-server -y
cp mysql-connector-java-5.1.35-bin.jar /opt/cloudera/cm/lib/mysql-connector-java.jar
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql -h 10.17.0.91 cm cm cmdemima
https://www.jianshu.com/p/219949aeae8f
- 需要等个十多分钟
配置安装
Hue: Thrift Server role must be configured in HBase service to use the Hue HBase Browser application. Suppress...
Kudu: Kudu Tablet Server Hard Memory Limit Suppress...
2447376384 小于 4294967296 建议的最小值。
Kudu: Kudu Tablet Server Hard Memory Limit Suppress...
2637168640 小于 4294967296 建议的最小值。
HDFS: Service hdfs has 2 DataNodes. Cloudera suggests at least 3 DataNodes for HDFS. Suppress...
HDFS: Java Heap Size of NameNode in Bytes Suppress...
Java Heap Size of NameNode in Bytes is recommended to be at least 1GB for every million HDFS blocks. Suggested minimum value: 4.0 GiB
3.2 创建cloudera-manager目录
#创建目录
mkdir /opt/cloudera-manager
#解压CDH安装文件
cd ./CDH6.3.2
tar -zxvf cm6.3.1-redhat7.tar.gz
#移动
cp ./cm6.3.1/RPMS/x86_64/cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm /opt/cloudera-manager/
cp ./cm6.3.1/RPMS/x86_64/cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm /opt/cloudera-manager/
cp ./cm6.3.1/RPMS/x86_64/cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm /opt/cloudera-manager/
#列出软件
ll /opt/cloudera-manager/
总用量 1185872
-rw-r--r--. 1 root root 10483568 3月 25 13:24 cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm
-rw-r--r--. 1 root root 1203832464 3月 25 13:25 cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
-rw-r--r--. 1 root root 11488 3月 25 13:25 cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm
3.3 分发cloudera-manager到其他节点
scp -r /opt/cloudera-manager/ bigdata-02:/opt/
scp -r /opt/cloudera-manager/ bigdata-03:/opt/
3.4 每个节点安装daemons、agent
#先安装agent需要的依赖(每台节点都执行)
[[root@BigData-01 ~]# yum install -y redhat-lsb httpd mod_ssl openssl-devel python-psycopg2 MySQL-python libpq.so
[root@BigData-02 ~]# yum install -y redhat-lsb httpd mod_ssl openssl-devel python-psycopg2 MySQL-python libpq.so
[root@BigData-03 ~]# yum install -y redhat-lsb httpd mod_ssl openssl-devel python-psycopg2 MySQL-python libpq.so
#agent需要提前安装的依赖(每台节点都执行)
[root@BigData-01 ~]# yum -y install perl bind-utils libxslt cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs psmisc openssl httpd mod_ssl openssl-devel python-psycopg2 MySQL-python postgresql-libs.x86_64 lsb
[root@BigData-02 ~]# yum -y install perl bind-utils libxslt cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs psmisc openssl httpd mod_ssl openssl-devel python-psycopg2 MySQL-python postgresql-libs.x86_64 lsb
[root@BigData-03 ~]# yum -y install perl bind-utils libxslt cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs psmisc openssl httpd mod_ssl openssl-devel python-psycopg2 MySQL-python postgresql-libs.x86_64 lsb
#每台节点安装cloudera-manager-daemons,安装完毕后生成/opt/cloudera目录
[root@BigData-01 ~]# rpm -ivh /opt/cloudera-manager/cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
[root@BigData-02 ~]# rpm -ivh /opt/cloudera-manager/cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
[root@BigData-03 ~]# rpm -ivh /opt/cloudera-manager/cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
#每台节点安装
[root@BigData-01 ~]# rpm -ivh /opt/cloudera-manager/cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm
[root@BigData-02 ~]# rpm -ivh /opt/cloudera-manager/cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm
[root@BigData-03 ~]# rpm -ivh /opt/cloudera-manager/cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm
3.5 主节点安装server
rpm -ivh /opt/cloudera-manager/cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm
3.6 Server配置
## 主节点修改server的配置,确定以下项与之前创建库时一致,用户名和密码授权的也要和如下一致
vim /etc/cloudera-scm-server/db.properties
com.cloudera.cmf.db.type=mysql
com.cloudera.cmf.db.host=BigData-02
com.cloudera.cmf.db.name=scm
com.cloudera.cmf.db.user=root
com.cloudera.cmf.db.password=P@88W0rd
com.cloudera.cmf.db.setupType=EXTERNAL
3.7 Agent配置
## 每个从节点修改agent的配置,指向server的节点
vim /etc/cloudera-scm-agent/config.ini
server_host=BigData-01
3.8 初始化Server需要的数据库
# 初始化cm数据库(密码自己设置)
[root@bigdata-01 ~]# /opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm scm litsoft@2022
# 脚本参数解释
scm_prepare_database.sh 【数据库类型】 【CDH要创建的数据库名称】 【CDH数据库用户名】 【CDH数据库用户密码】
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm -h BigData-02 -uscm -plitsoft@2022 --scm-host BigData-01 scm scm scm
./scm_prepare_database.sh mysql temp -h node01 -utemp -ptemp --scm-host node01 scm scm scm
格式:数据库类型、数据库、数据库服务器、用户名、密码、cm server服务器
3.9 部署离线parcel源
[root@bigdata-01 CDH6.3.2]# mkdir -p /opt/cloudera/parcel-repo
[root@bigdata-01 CDH6.3.2]# mv /home/CDH6.3.2/CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel /opt/cloudera/parcel-repo
[root@bigdata-01 CDH6.3.2]# mv /home/CDH6.3.2/CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel.sha1 /opt/cloudera/parcel-repo/CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel.sha
[root@bigdata-01 CDH6.3.2]# mv /home/CDH6.3.2/manifest.json /opt/cloudera/parcel-repo
3.10 启动CMS的Server和Agent
## 主节点启动server
[root@bigdata-01 CDH6.3.2]# systemctl start cloudera-scm-server# 查看日志,出现7180说明启动成功,,有错误解决错误
[root@bigdata-01 CDH6.3.2]# tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log## 查看端口 7180
[root@bigdata-01 CDH6.3.2]# netstat -nltcp | grep 7180
# bigdata-01:7180可以进入web页面表示成功,接下来启动agent## 每个从节点启动agent
[root@bigdata-01 CDH6.3.2]# systemctl start cloudera-scm-agent## 停止
[root@bigdata-01 CDH6.3.2]# systemctl stop cloudera-scm-server
[root@bigdata-01 CDH6.3.2]# systemctl stop cloudera-scm-agent
[root@bigdata-01 CDH6.3.2]# systemctl disable cloudera-scm-server # 关闭开机启动
[root@bigdata-01 CDH6.3.2]# systemctl disable cloudera-scm-agent # 关闭开机启动
3.11 macOS配置映射
#编辑如下的配置文件,Windows系统为C:\Windows\System32\drivers\etc\hosts文件,
sudo vim /etc/hosts
# 追加如下4行映射
# CDH BigData Cluster Test
10.17.0.91 bigdata-01
10.17.0.92 bigdata-02
10.17.0.93 bigdata-03
3.12 访问Server
http://bigdata-01:7180 ,默认用户名和密码都为admin,自己登录即可。
评论区