CentOS 7.9 CDH6.3.2集群生产环境实战部署指南

2024-06-21 12:20

本文主要是介绍CentOS 7.9 CDH6.3.2集群生产环境实战部署指南,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、环境准备

1、系统环境:

# cat /etc/os-release

2、准备工作:

部署资源分配

节点centos 7.9(生产)节点规划Postgresql部署组件备注
pgsql32c、128G、2TB国产数据库Postgresql(翰高)可根据实际情况调整如mysql、mongoDB
cdh0116c、128G、1TBmaster
agent
jdk1.8
cdh0216c、128G、1TBagentjdk1.8
cdh0316c、128G、1TBagentjdk1.8
cdh0416c、128G、1TBagentjdk1.8
cdh0516c、128G、1TBagentjdk1.8

安装包准备:

CM6.3.1

cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm

cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm

cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm

cloudera-manager-server-db-2-6.3.1-1466458.el7.x86_64.rpm

enterprise-debuginfo-6.3.1-1466458.el7.x86_64.rpm

CDH6.3.2 Parcel

CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel

CDH-6.3.2-1.cdh6.3.2.p0.1605554-el6.parcel.sha256

manifest.json

JDK

jdk-8u201-linux-x64.tar.gz

Postgresql JDBC jar

postgresql-42.2.5.jar

下载完成后要重命名去掉版本号:

mv postgresql-42.2.5.jar postgresql-connector-java.jar

3、安装基础依赖:

$ sudo yum -y install gcc gcc-c++ net-tools make autoconf sysstat bash-completion wget openssl-dev lsof vim telnet lrzsz dos2unix nohup unzip psmisc

二、环境初始化

1、关闭防火墙

    # 关闭防火墙echo "关闭防火墙..."# 查看防火墙状态firewall-cmd --state || echo "firewalld 未运行"# 临时关闭防火墙systemctl stop firewalld# 永久关闭防火墙systemctl disable firewalld# 清空防火墙规则iptables -F# 临时关闭selinuxsetenforce 0# 永久关闭selinuxsed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config# 查看selinux状态getenforce

2、修改主机名

所有节点都要执行,修改后需执行bash生效

#节点1
hostnamectl set-hostname cdh01
bash#节点2
hostnamectl set-hostname cdh02
bash#节点3
hostnamectl set-hostname cdh03
bash#节点4
hostnamectl set-hostname cdh04
bash#节点5
hostnamectl set-hostname cdh05
bash

3、配置hosts文件

cat /etc/hosts

所有节点都要配置

cat >> /etc/hosts << EOF
192.168.2.161 cdh01
192.168.2.162 cdh02
192.168.2.163 cdh03
192.168.2.164 cdh04
192.168.2.165 cdh05
EOF

4、设置时间同步

#设置时区为Asia/Shanghai
timedatectl set-timezone Asia/Shanghai#查看是否安装了ntpd的服务
rpm -qa | grep ntpd#如果没有安装,可以进行在线安装
yum -y install ntp#启动ntpd的服务
service ntpd start#设置ntpd的服务开机启动
systemctl enable ntpd.service#查看ntpd的服务是否启动
service ntpd status#设置定时任务
#与阿里云服务器进行时钟同步
crontab -e
#设置的内容如下
*/1 * * * * /usr/sbin/ntpdate -u ntp4.aliyun.com;
设置成功后会一直出现You have new mail in /var/spool/mail/root的邮件提示,可使用下面命令关闭邮件提示
echo "unset MAILCHECK" >> /etc/profile
source /etc/profile

5、 禁用透明大页(所有节点)

#查看:查看透明大页的设置和启动状态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

6、部署PG(使用瀚高)

待更新

7、创建本地YUM仓库

安装Apache Httpd服务(master节点,本例中cdh01)

#安装
yum install httpd -y#启动
systemctl start httpd#设置开机自启
systemctl enable httpd#配置Cloudera Manager安装包yum源(master节点,本例中cdh01)
#创建目录
mkdir -p /var/www/html/cloudera-repos/cm6
#!!!将下载好的cloudera的rmp安装包上传到/var/www/html/cloudera-repos/cm6
#创建仓库
yum install -y createrepo
cd  /var/www/html/cloudera-repos/cm6
#cloudera的rmp安装包所在的cm6目录下执行
createrepo .

创建repo文件

sudo cat >> /etc/yum.repos.d/cloudera-manager.repo <<EOF
[cloudera-manager]
name=Cloudera Manager 6.3.1
baseurl=http://192.168.2.161:80/cloudera-repos/cm6
gpgcheck=0
enabled=1
autorefresh=0
type=rpm-md
EOF
#清理并缓存
yum clean all
yum makecache

8、检查依赖是否安装

yum install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb portmap mod_ssl openssl-devel python-psycopg2 MySQL-python python-devel telnet pcre-devel gcc gcc-c++

9、所有服务器安装JDK

第一步: 安装JDK

mkdir -p /usr/java/
#进入jdk所在的目录,执行命令 注意:修改相应自己的jdk版本tar -zxvf  jdk-8u201-linux-x64.tar.gz -C /usr/java/ && cd /usr/java/  && mv jdk1.8.0_201 default#编辑配置文件
vim /etc/profile#将以下内容添加到文件中:
export JAVA_HOME=/usr/java/default  #java的实际路径
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
#使之生效
source /etc/profile

第二步: 添加postgresql驱动包

mkdir -p /usr/share/java/
cd /usr/share/java/
#重命名不不能带版本号
mv postgresql-42.2.5.jar postgresql-connector-java.jar
#分发到其他节点 拷贝过去
scp postgresql-connector-java.jar cdh02:/usr/share/java/
scp postgresql-connector-java.jar cdh03:/usr/share/java/
……

注:所有服务器都要配置

、Cloudera Manager部署

1、安装 Cloudera Manager(master节点,本例中cdh01)

#安装master
sudo yum install -y cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server#安装完CM后/opt/ 下会出现cloudera目录
cd /opt/cloudera/parcel-repo/上传CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel到/opt/cloudera/parcel-repo目录
校验文件是否下载完全
ll#total 2033432
#-rw-r--r-- 1 root root 2082186246 Apr 4 14:31 CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel
#-rw-r--r-- 1 root root 40 Apr 4 14:31 CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel.sha1
#-rw-r--r-- 1 root root 33887 Apr 4 14:31 manifest.json#将parcel包移动到指定位置,别忘了manitest.json文件
#赋权限
sudo chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo/#执行脚本scm_prepare_database.sh
#PG数据库
cd /opt/cloudera/cm/schema/
./scm_prepare_database.sh -h 192.168.2.161 -P 5866 postgresql scm scm 密码#替换CDH-server服务器的host
sudo sed -i "s/server_host=localhost/server_host=cdh01/g" /etc/cloudera-scm-agent/config.ini#查看数据库的配置
vim /etc/cloudera-scm-server/db.properties

2、安装所有节点agent修改配置

#部署agent
sudo yum install -y cloudera-manager-daemons cloudera-manager-agent
#修改文件中server_host的属性值
#所有节点修改agent的配置,指向server的节点node161【manager端地址】sudo sed -i "s/server_host=localhost/server_host=cdh01/g" /etc/cloudera-scm-agent/config.ini#启动 CM服务,先启动master当确认master正常运行的情况下再启动agent:
systemctl start cloudera-scm-server && systemctl enable cloudera-scm-server && systemctl status cloudera-scm-server#检查master服务运行状态tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log | grep "INFO WebServerImpl:com.cloudera.server.cmf.WebServerImpl: Started Jetty server"#出现INFO WebServerImpl:com.cloudera.server.cmf.WebServerImpl: Started Jetty server则启动成功#所有节点启动CM agent
sudo systemctl start cloudera-scm-agent && sudo systemctl enable cloudera-scm-agent查看agent日志
tail -f /var/log/cloudera-scm-agent/cloudera-scm-agent.log#启动如果有问题查看log。/var/log/cloudera-scm-server,启动server 和agent 尽量一起启动否则报错:

浏览器登陆CM 管理界面验证:初始用户密码 admin/admin

web页面:http://IP:7180/

默认登录账号: admin

默认登录密码: admin

## 建议选择免费

设置集群名称:

当你先启动master后启动agent时,否则与以下界面会有所不同

选择CDH parcel 版本

安装时报错 “Parcel 不可用于操作系统分配 RHEL7” 请看:

安装CDH时报错:Parcel 不可用于操作系统分配 RHEL7,原因与解决办法~-CSDN博客

这篇关于CentOS 7.9 CDH6.3.2集群生产环境实战部署指南的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1081212

相关文章

大数据spark3.5安装部署之local模式详解

《大数据spark3.5安装部署之local模式详解》本文介绍了如何在本地模式下安装和配置Spark,并展示了如何使用SparkShell进行基本的数据处理操作,同时,还介绍了如何通过Spark-su... 目录下载上传解压配置jdk解压配置环境变量启动查看交互操作命令行提交应用spark,一个数据处理框架

Java使用Mail构建邮件功能的完整指南

《Java使用Mail构建邮件功能的完整指南》JavaMailAPI是一个功能强大的工具,它可以帮助开发者轻松实现邮件的发送与接收功能,本文将介绍如何使用JavaMail发送和接收邮件,希望对大家有所... 目录1、简述2、主要特点3、发送样例3.1 发送纯文本邮件3.2 发送 html 邮件3.3 发送带

IDEA连接达梦数据库的详细配置指南

《IDEA连接达梦数据库的详细配置指南》达梦数据库(DMDatabase)作为国产关系型数据库的代表,广泛应用于企业级系统开发,本文将详细介绍如何在IntelliJIDEA中配置并连接达梦数据库,助力... 目录准备工作1. 下载达梦JDBC驱动配置步骤1. 将驱动添加到IDEA2. 创建数据库连接连接参数

国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)

《国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)》本文给大家利用deepseek模型搭建私有知识问答库的详细步骤和遇到的问题及解决办法,感兴趣的朋友一起看看吧... 目录1. 第1步大家在安装完ollama后,需要到系统环境变量中添加两个变量2. 第3步 “在cmd中

JavaScript中的Map用法完全指南

《JavaScript中的Map用法完全指南》:本文主要介绍JavaScript中Map用法的相关资料,通过实例讲解了Map的创建、常用方法和迭代方式,还探讨了Map与对象的区别,并通过一个例子展... 目录引言1. 创建 Map2. Map 和对象的对比3. Map 的常用方法3.1 set(key, v

Java中使用注解校验手机号格式的详细指南

《Java中使用注解校验手机号格式的详细指南》在现代的Web应用开发中,数据校验是一个非常重要的环节,本文将详细介绍如何在Java中使用注解对手机号格式进行校验,感兴趣的小伙伴可以了解下... 目录1. 引言2. 数据校验的重要性3. Java中的数据校验框架4. 使用注解校验手机号格式4.1 @NotBl

基于Canvas的Html5多时区动态时钟实战代码

《基于Canvas的Html5多时区动态时钟实战代码》:本文主要介绍了如何使用Canvas在HTML5上实现一个多时区动态时钟的web展示,通过Canvas的API,可以绘制出6个不同城市的时钟,并且这些时钟可以动态转动,每个时钟上都会标注出对应的24小时制时间,详细内容请阅读本文,希望能对你有所帮助...

Windows环境下安装达梦数据库的完整步骤

《Windows环境下安装达梦数据库的完整步骤》达梦数据库的安装大致分为Windows和Linux版本,本文将以dm8企业版Windows_64位环境为例,为大家介绍一下达梦数据库的具体安装步骤吧... 目录环境介绍1 下载解压安装包2 根据安装手册安装2.1 选择语言 时区2.2 安装向导2.3 接受协议

SpringBoot基于沙箱环境实现支付宝支付教程

《SpringBoot基于沙箱环境实现支付宝支付教程》本文介绍了如何使用支付宝沙箱环境进行开发测试,包括沙箱环境的介绍、准备步骤、在SpringBoot项目中结合支付宝沙箱进行支付接口的实现与测试... 目录一、支付宝沙箱环境介绍二、沙箱环境准备2.1 注册入驻支付宝开放平台2.2 配置沙箱环境2.3 沙箱

使用Java发送邮件到QQ邮箱的完整指南

《使用Java发送邮件到QQ邮箱的完整指南》在现代软件开发中,邮件发送功能是一个常见的需求,无论是用户注册验证、密码重置,还是系统通知,邮件都是一种重要的通信方式,本文将详细介绍如何使用Java编写程... 目录引言1. 准备工作1.1 获取QQ邮箱的SMTP授权码1.2 添加JavaMail依赖2. 实现