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-4
    scp -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 firewalld
systemctl 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 master
hostnamectl set-hostname slave-1
hostnamectl set-hostname slave-2
hostnamectl set-hostname slave-3
hostnamectl set-hostname slave-4

主机名生效

hostname -F /etc/hostname

查看主机名

hostname

查看FQDN

hostname -f

查看配置生效状态

cat /etc/sysconfig/network
cat /etc/hostname

编辑hosts文件

vim /etc/hosts

添加记录:

192.168.1.16 master
192.168.1.17 slave-1
192.168.1.18 slave-2
192.168.1.19 slave-3
192.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=yes
OPTIONS="-g -x"

开机启动NTP

systemctl enable ntpd
systemctl restart ntpd

验证时间同步

ntpd -np
ntpq -pn

7. 上网代理

配置代理环境变量:

export http_proxy=http://192.168.1.18:8080
source /etc/profile

8. 安装Java Development Kit (JDK)

添加Java环境变量

vim /etc/profile

添加以下内容:

echo "export JAVA_HOME=/usr/java/default" >> /etc/profile
echo "export JRE_HOME=\$JAVA_HOME/jre" >> /etc/profile
echo "CLASS_PATH=.:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar:\$JRE_HOME/lib" >> /etc/profile
echo "export PATH=\$PATH:\$JAVA_HOME/bin:\$JRE_HOME/bin" >> /etc/profile

生效:

source /etc/profile

9. 安装Chrony(时间同步工具)

所有节点执行:

yum install chrony -y
systemctl enable chronyd.service
systemctl start chronyd.service
chronyc sources

10. MySQL安装

主节点安装MySQL

安装依赖软件包:

yum install -y mariadb-libs
rpm -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_64
rpm -e --nodeps mysql-community-libs-compat-5.7.27-1.el7.x86_64
rpm -e --nodeps mysql-community-libs-5.7.27-1.el7.x86_64
rpm -e --nodeps mysql-community-client-5.7.27-1.el7.x86_64
rpm -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/mysql
socket=/var/lib/mysql/mysql.sock
transaction-isolation = READ-COMMITTED
symbolic-links=0
key_buffer_size = 32M
max_allowed_packet = 32M
thread_stack = 256K
thread_cache_size = 64
query_cache_limit = 8M
query_cache_size = 64M
query_cache_type = 1
max_connections = 550
lower_case_table_names=1
explicit_defaults_for_timestamp=1

启动MySQL:

mysql_secure_installation

11. CDH集群配置

系统性能优化

echo "vm.swappiness=0" >> /etc/sysctl.conf
sysctl -p

修改rc.local

vim /etc/rc.local

添加以下内容:

echo never >> /sys/kernel/mm/transparent_hugepage/enabled
echo never >> /sys/kernel/mm/transparent_hugepage/defrag
chmod -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.rpm
rpm -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-server
systemctl enable cloudera-scm-agent
systemctl start cloudera-scm-server
systemctl start cloudera-scm-agent

验证服务状态

systemctl status cloudera-scm-server
systemctl 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/dn2
mv /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-server
systemctl enable cloudera-scm-agent
systemctl start cloudera-scm-server
systemctl 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:2181
ls /brokers/topics

查看Kafka消息

kafka-console-consumer --new-topic MSG_PG --bootstrap-server hadoop100:2181,hadoop101:2181,hadoop102:2181,hadoop103:2181,hadoop104:2181
上一篇:Linux下 ifconfig、ifup、ifdown使用说明
下一篇:在linux中查看端口号是否被占用

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月07日 18时29分35秒