CDH大数据平台部署安装(详细)

闲暇之余自己做了一份安装手册,按照手册步骤来完全可以安装好。

  • CDH安装服务器规划

系统:CentOS Linux 7.9

用户:root
主机IP:最少三台

Jdk:oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm

Mysql:mysql-8.3.0-1.el7.x86_64.rpm-bundle

Jar包:mysql-connector-java-8.0.14

CDH:CDH6.3.2版本

  • 前期部署工作
  1. 修改主机名(所有节点)为所有节点设置唯一主机名,确保系统识别和网络通信
    各节点依次执行:

hostnamectl set-hostname cdh01

hostnamectl set-hostname cdh02

hostnamectl set-hostname cdh03

2、修改IP和Host映射关系(所有节点)配置/etc/hosts文件,将IP地址映射到主机名,以支持网络通信。

vim /etc/hosts

10.8.42.54 cdh01

10.8.42.55 cdh02

10.8.42.56 cdh03

3、配置免密登陆,便于节点之间传输文件(所有节点)生成SSH密钥并分发到所有节点,实现节点间的无密码SSH访问,便于管理和文件传输。

ssh-keygen -t rsa      #一路回车,生成无密码密钥

#各节点分别执行

ssh-copy-id cdh01

ssh-copy-id cdh02

ssh-copy-id cdh03

#测试

ssh cdh01

ssh cdh02

ssh cdh03

#在该目录文件下能查看到相应的主机映射:

cat /etc/hosts

4、关闭并禁用防火墙(所有节点)确保所有节点的防火墙不会阻止CDH组件间的通信

#查看防火墙运行状态:
systemctl status firewalld

#关闭防火墙:
systemctl stop firewalld

#禁用防火墙:

systemctl disable firewalld

5、关闭SELINUX(所有节点)临时和永久关闭安全增强功能,避免其限制CDH服务的运行。

#查看SELINUX服务的运行状态:

getenforce
#临时关闭:

setenforce 0

#永久关闭:

sed -i s/SELINUX=enforcing/SELINUX=disabled/ /etc/selinux/config

#或者
vi /etc/selinux/config #把文件里改成SELINUX=disabled

#验证:

cat /etc/selinux/config

  1. 禁用透明大页(所有节点)调整Linux内核的内存管理策略,提高大规模数据处理的效率。

#查看透明大页的设置和启动状态:

cat /sys/kernel/mm/transparent_hugepage/defrag

cat /sys/kernel/mm/transparent_hugepage/enabled

#临时关闭:

echo never > /sys/kernel/mm/transparent_hugepage/defrag

echo never > /sys/kernel/mm/transparent_hugepage/enabled

#永久关闭(将临时关闭命令添加到/etc/rc.d/rc.local文件中,并赋予执行权限):

echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag' >> /etc/rc.d/rc.local

echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.d/rc.local

chmod +x /etc/rc.d/rc.local
#验证:

cat /etc/rc.d/rc.local

  1. 修改配置系统参数(所有节点)调整系统参数(如vm.swappiness),优化系统性能。

#查看参数:

cd /usr/lib/tuned

grep "vm.swappiness" * -R

#修改:

sed -i s/"vm.swappiness = 30"/"vm.swappiness = 10"/g /usr/lib/tuned/virtual-guest/tuned.conf

  1. 安装jdk(所有节点)JDK是运行CDH服务所必需的,安装指定版本的JDK,并配置环境变量以确保系统能找到Java执行环境。

#查询是否有已经安装的JDK:

rpm -qa | grep java
#若之前安装过Java组件,先将其卸载:
yum remove java*

#上传安装包oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm到/opt目录下
#启动安装:
rpm -ivh oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
#查找JDK安装路径:

find / -name java
#配置环境变量:
vim /etc/profile


export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib

export JAVA_HOME=/usr/java/jdk1.8.0_181-cloudera

export PATH=$JAVA_HOME/bin:$PATH

source /etc/profile
#验证:

java -version

  1. 上传JDBC依赖包(所有节点)将MySQL的JDBC驱动包重命名并分发到所有节点,以便CDH服务能通过JDBC连接MySQL数据库。

#创建目录:
mkdir -p /usr/share/java

#将mysql-connector-java-8.0.14.jar重命名为mysql-connector-java.jar:
mv mysql-connector-java-8.0.14.jar mysql-connector-java.jar

#将mysql-connector-java.jar移动或复制到每个节点的/usr/share/java:
cp mysql-connector-java.jar /usr/share/java/

scp mysql-connector-java.jar cdh1:/usr/share/java/
scp mysql-connector-java.jar cdh2:/usr/share/java/
scp mysql-connector-java.jar cdh3:/usr/share/java/

  1. 安装Mysql(master节点)在主节点上安装MySQL数据库,CDH的某些组件(如Cloudera Manager和Hive Metastore)需要数据库支持。

#查询已经安装的mariadb:
rpm -qa | grep mariadb

#卸载mariadb,文件名为上述命令查询出来的文件:

rpm -e --nodeps <文件名>
#上传压缩包到/opt目录下
#解压安装包:

tar -xvf mysql-8.3.0-1.el7.x86_64.rpm-bundle.tar

#检查安装依赖:
rpm -qa|grep 'libaio\|net-tools'
#若不存在,则进行安装:
yum install -y libaio net-tools perl

#依次进行以下安装:

rpm -ivh mysql-community-common-8.3.0-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-plugins-8.3.0-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-8.3.0-1.el7.x86_64.rpm

rpm -ivh mysql-community-icu-data-files-8.3.0-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-8.3.0-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-8.3.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-8.3.0-1.el7.x86_64.rpm

#初始化mysql:

mysqld --initialize --console
#更改目录主信息:

chown -R mysql:mysql /var/lib/mysql/

#启动mysql:

systemctl start mysqld

#设置开机启动:

systemctl enable mysqld
#查看MySQL初始化密码:

cat /var/log/mysqld.log|grep localhost
#进入mysql并输入初始化密码:

mysql -uroot -p

#修改MySQL密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

#退出重进验证密码
#允许root远程登陆:
mysql> use mysql

mysql> update user set user.Host='%'where user.User='root';

mysql> flush privileges;

mysql> quit

#建立必要的MySQL数据库:
create user 'cm'@'%' identified by '123456';

create user 'hive'@'%' identified by '123456';

create user 'sentry'@'%' identified by '123456';

create database cm default character set utf8;

create database metastore default character set utf8;

create database sentry default character set utf8;

grant all privileges on cm.* to 'cm'@'%';

grant all privileges on metastore.* to 'hive'@'%';

grant all privileges on sentry.* to 'sentry'@'%';

exit

  1. 安装httpd服务(master节点)安装HTTP服务器,用于托管CDH的Web界面和API服务

#安装并启动:

yum install -y httpd
systemctl start httpd
#设置开机自启:

systemctl enable httpd
#在网页中输入:10.8.42.54 验证是否能打开test页面

  1. 配置Cloudera Manager安装包yum源(master节点)在主节点上设置本地YUM源,包含CDH和Cloudera Manager的安装包,便于节点安装和管理软件包。

#创建目录:

mkdir -p /var/www/html/cloudera-repos/cm6

#将下载好的rpm安装包上传到/var/www/html/cloudera-repos/cm6

#创建仓库:
cd /var/www/html/cloudera-repos/cm6

yum install -y createrepo

createrepo .

#创建repo文件(所有节点)

vi /etc/yum.repos.d/cloudera-manager.repo


[cloudera-manager]

name=Cloudera Manager 6.3.1

baseurl=http://[IP地址或master节点名称]/cloudera-repos/cm6

gpgkey=https://archive.cloudera.com/cm6/6.3.1/redhat7/yum/RPM-GPG-KEY-cloudera

gpgcheck=0

enabled=1

autorefresh=0

type=rpm-md
#分发到另外两台节点:

scp /etc/yum.repos.d/cloudera-manager.repo cdh02:/etc/yum.repos.d/cloudera-manager.repo

scp /etc/yum.repos.d/cloudera-manager.repo cdh03:/etc/yum.repos.d/cloudera-manager.repo

#清理并缓存(所有节点):

yum clean all

yum makecache

#打开10.8.42.54/cloudera-repos/cm6/

  1. 安装cloudera manager(master节点)在主节点上安装Cloudera Manager Server和相关服务,它是管理CDH集群的中心组件。

#在master节点安装daemons、agent、server:
yum -y install openssl-libs

yum install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server

#在另外两台节点安装agent、deamons:

yum install cloudera-manager-daemons cloudera-manager-agent

#安装完cm后在/opt/下会出现cloudera目录,上传CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel到/opt/cloudera/parcel-repo目录,cd到cloudera目录下查看有parcel-repo文件,cd到parcel-repo目录下查看有parcel文件:

mv /opt/CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel .
#执行校验:
sha1sum CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel | awk '{ print $1 }' > CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel.sha

#执行cm初始化脚本:

/opt/cloudera/cm/schema/scm_prepare_database.sh mysql cm root 123456

#启动服务查看状态:

systemctl start cloudera-scm-server.service

systemctl status cloudera-scm-server.service

#netstat -anp|grep 7180查看端口使用

  • CDH集群搭建

10.8.42.54:7180进入集群
输入账户密码admin/admin,点击“登录”

  • 17
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值