
CentOS 7 安装 CDH 5.16.2 离线安装
发布日期:2021-05-13 19:18:32
浏览次数:17
分类:精选文章
本文共 6782 字,大约阅读时间需要 22 分钟。
前期环境准备
所有机器都需要执行的操作步骤总结如下:
1. 安装必要软件包
必须安装的软件包:
-
sshpass:用于自动带密码登录其他服务器。
yum install -y sshpass
检查安装情况:
yum list | grep sshpass
使用sshpass进行密码登录:
sshpass -p '密码' ssh -o stricthostkeychecking=no slave-4scp -rp software/ root@slave-4:/root/software/
-
vim:文本编辑器。
yum install -y vim
-
开发者工具组:安装编译工具。
yum groupinstall "Development Tools" -y
-
系统监控工具:安装htop、lsof、netstat等。
yum install -y htop lsof netstat
2. SSH配置
开放外网端口
默认情况下,SSH外网端口为22,不建议直接暴露给外网。建议仅在公司内部IP开放端口。
vim /etc/ssh/sshd_config
修改后重启SSH服务:
systemctl restart sshd
关闭防火墙和SELINUX
关闭防火墙
systemctl stop firewalldsystemctl disable firewalld
关闭SELINUX
检查SELINUX状态:
getenforce
临时关闭:
setenforce 0
永久关闭:
vim /etc/selinux/config
修改为:
SELINUX=disabled
验证是否成功:
getenforce
3. 网络配置
修改虚拟机主机名
vim /etc/hostname
设置主机名为:master
修改IP地址
方法一:使用uuidgen生成新UUID
uuidgen eth0
方法二:修改网络接口配置文件
vim /etc/sysconfig/network-scripts/ifcfg-eth0
修改IP地址为公司内部IP地址。
重启网络服务
systemctl restart network
4. 主机名配置
方法一:使用hostnamectl设置
hostnamectl set-hostname masterhostnamectl set-hostname slave-1hostnamectl set-hostname slave-2hostnamectl set-hostname slave-3hostnamectl set-hostname slave-4
主机名生效
hostname -F /etc/hostname
查看主机名
hostname
查看FQDN
hostname -f
查看配置生效状态
cat /etc/sysconfig/networkcat /etc/hostname
编辑hosts文件
vim /etc/hosts
添加记录:
192.168.1.16 master192.168.1.17 slave-1192.168.1.18 slave-2192.168.1.19 slave-3192.168.1.20 slave-4
5. 免密码登录配置
生成SSH公钥
cd /root/.ssh/ssh-keygen -t rsa
复制公钥到所有节点
ssh-copy-id -p 22 -o stricthostkeychecking=no -i /root/.ssh/id_rsa.pub root@master
复制公钥到其他节点
scp -P 22 -o stricthostkeychecking=no -p /root/.ssh/authorized_keys root@slave-1:/root/.ssh/scp -P 22 -o stricthostkeychecking=no -p /root/.ssh/authorized_keys root@slave-2:/root/.ssh/scp -P 22 -o stricthostkeychecking=no -p /root/.ssh/authorized_keys root@slave-3:/root/.ssh/scp -P 22 -o stricthostkeychecking=no -p /root/.ssh/authorized_keys root@slave-4:/root/.ssh/
6. 时间同步
安装NTP
所有节点执行:
yum install -y ntp
配置NTP客户端(其他节点)
vim /etc/ntp.conf
添加NTP服务器地址:
server 192.168.1.16
配置硬件时间同步(所有节点)
vim /etc/sysconfig/ntpd
添加配置:
SYNC_HWCLOCK=yesOPTIONS="-g -x"
开机启动NTP
systemctl enable ntpdsystemctl restart ntpd
验证时间同步
ntpd -npntpq -pn
7. 上网代理
配置代理环境变量:
export http_proxy=http://192.168.1.18:8080source /etc/profile
8. 安装Java Development Kit (JDK)
添加Java环境变量
vim /etc/profile
添加以下内容:
echo "export JAVA_HOME=/usr/java/default" >> /etc/profileecho "export JRE_HOME=\$JAVA_HOME/jre" >> /etc/profileecho "CLASS_PATH=.:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar:\$JRE_HOME/lib" >> /etc/profileecho "export PATH=\$PATH:\$JAVA_HOME/bin:\$JRE_HOME/bin" >> /etc/profile
生效:
source /etc/profile
9. 安装Chrony(时间同步工具)
所有节点执行:
yum install chrony -ysystemctl enable chronyd.servicesystemctl start chronyd.servicechronyc sources
10. MySQL安装
主节点安装MySQL
安装依赖软件包:
yum install -y mariadb-libsrpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
安装MySQL:
rpm -e --nodeps mysql-community-common-5.7.27-1.el7.x86_64rpm -e --nodeps mysql-community-libs-compat-5.7.27-1.el7.x86_64rpm -e --nodeps mysql-community-libs-5.7.27-1.el7.x86_64rpm -e --nodeps mysql-community-client-5.7.27-1.el7.x86_64rpm -e --nodeps mysql-community-server-5.7.27-1.el7.x86_64
如果遇到依赖错误:
yum install libaio -y
安装完成后重启服务:
systemctl restart mysqld
配置MySQL配置文件
vim /etc/my.cnf
添加以下内容:
[mysqld]datadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.socktransaction-isolation = READ-COMMITTEDsymbolic-links=0key_buffer_size = 32Mmax_allowed_packet = 32Mthread_stack = 256Kthread_cache_size = 64query_cache_limit = 8Mquery_cache_size = 64Mquery_cache_type = 1max_connections = 550lower_case_table_names=1explicit_defaults_for_timestamp=1
启动MySQL:
mysql_secure_installation
11. CDH集群配置
系统性能优化
echo "vm.swappiness=0" >> /etc/sysctl.confsysctl -p
修改rc.local
vim /etc/rc.local
添加以下内容:
echo never >> /sys/kernel/mm/transparent_hugepage/enabledecho never >> /sys/kernel/mm/transparent_hugepage/defragchmod -R 777 /dev/null
修改用户限额
vim /etc/security/limits.conf
添加以下内容:
* soft nofile 32728* hard nofile 1029345* soft nproc 65536* hard nproc unlimited* soft memlock unlimited* hard memlock unlimited
12. Cloudera Manager安装
下载并安装依赖包
wget https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/cloudera-manager.repo -P /etc/yum.repos.d/
导入GPG密钥
sudo rpm --import https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/RPM-GPG-KEY-cloudera
安装Cloudera Manager
rpm -ivh cloudera-manager-daemons-5.16.2-1.cm5162.p0.6.el7.x86_64.rpmrpm -ivh cloudera-manager-agent-5.16.2-1.cm5162.p0.6.el7.x86_64.rpm
主节点安装Cloudera Manager Server
rpm -ivh cloudera-manager-server-5.16.2-1.cm5162.p0.7.el7.x86_64.rpm
配置Cloudera Manager
vim /etc/cloudera-scm-agent/config.ini
修改并复制到其他节点:
scp -P 22 /etc/cloudera-scm-agent/config.ini root@slave-1:/etc/cloudera-scm-agent/
初始化数据库
/usr/share/cmf/schema/scm_prepare_database.sh mysql scm root
启动服务
systemctl enable cloudera-scm-serversystemctl enable cloudera-scm-agentsystemctl start cloudera-scm-serversystemctl start cloudera-scm-agent
验证服务状态
systemctl status cloudera-scm-serversystemctl status cloudera-scm-agent
13. Kafka配置
创建主题
kafka-topics --create --zookeeper master:2181,slave-1:2181,slave-2:2181,slave-3:2181,slave-4:2181 --replication-factor 2 --partitions 4 --topic MSG_PG
删除旧数据
rm -rf /data/var/local/kafka/*
14. 集群升级
更新系统软件
yum update -y
Cloudera Manager升级
cmf cluster-upgrade
15. Kafka集群配置
启用Nginx反向代理(如有需要)
vim /etc/nginx/nginx.conf
添加配置:
location /kafka { proxy_pass http://hadoop100:2181,slave-1:2181,slave-2:2181,slave-3:2181,slave-4:2181;}
启动Nginx
systemctl start nginx
16. 验证集群
查看Kafka主题列表
kafka-topics --list --zookeeper master:2181,slave-1:2181,slave-2:2181,slave-3:2181,slave-4:2181
查看Zookeeper状态
zookeeper-client -timeout 5000 -server master:2181,slave-1:2181,slave-2:2181,slave-3:2181,slave-4:2181
查看Kafka消息
kafka-console-consumer --new-topic MSG_PG --bootstrap-server master:2181,slave-1:2181,slave-2:2181,slave-3:2181,slave-4:2181
17. 故障排查
数据节点存储问题
mv /opt/dfs/dn /opt/dfs/dn2mv /tmcdata/dfs/dn /tmcdata/dfs/dn2
18. 其他注意事项
权限问题
chmod -R 777 /dev/null
服务管理
/sbin/chkconfig cloudera-scm-server on/sbin/chkconfig cloudera-scm-agent on
开机启动
systemctl enable cloudera-scm-serversystemctl enable cloudera-scm-agentsystemctl start cloudera-scm-serversystemctl start cloudera-scm-agent
升级注意事项
yum update -y
使用wget下载rpm包
yumdownloader --resolve --destdir=/root/rpm --releasever=7 cloudera-manager-agent-5.16.2-1.cm5162.p0.6.el7.x86_64
19. 验证命令
查看Zookeeper状态
zookeeper-client -timeout 5000 -server hadoop100:2181,hadoop101:2181,hadoop102:2181,hadoop103:2181,hadoop104:2181
查看Kafka主题
kafka-topics --list --zookeeper hadoop100:2181,hadoop101:2181,hadoop102:2181,hadoop103:2181,hadoop104:2181ls /brokers/topics
查看Kafka消息
kafka-console-consumer --new-topic MSG_PG --bootstrap-server hadoop100:2181,hadoop101:2181,hadoop102:2181,hadoop103:2181,hadoop104:2181
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月07日 18时29分35秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
selenium+python之切换窗口
2019-03-07
重载和重写的区别:
2019-03-07
搭建Vue项目步骤
2019-03-07
账号转账演示事务
2019-03-07
idea创建工程时错误提醒的是architectCatalog=internal
2019-03-07
SpringBoot找不到@EnableRety注解
2019-03-07
简易计算器案例
2019-03-07
在Vue中使用样式——使用内联样式
2019-03-07
Explore Optimization
2019-03-07
Kali Linux 内网渗透教程 - ARP欺骗攻击 | 超详细
2019-03-07
2020Java程序设计基础(华东交通大学)章节测试免费满分答案
2019-03-07
解决数据库报ORA-02289:序列不存在错误
2019-03-07
map[]和map.at()取值之间的区别
2019-03-08
成功解决升级virtualenv报错问题
2019-03-08
【SQLI-Lab】靶场搭建
2019-03-08
【Bootstrap5】精细学习记录
2019-03-08
LeetCode197.打家劫舍
2019-03-08
A simple problem HDU-2522 【数学技巧】
2019-03-08