1. 硬件环境检查
在安装flink之前,必须对服务器的硬件环境进行全面检查,确保满足flink 1.15.3的最低要求。更多学习教程www.fgedu.net.cn
# free -h
total used free shared buff/cache available
Mem: 64G 2.1G 60G 8.5M 1.8G 61G
Swap: 32G 0B 32G
# 检查磁盘空间
# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 32G 0 32G 0% /dev
tmpfs 32G 0 32G 0% /dev/shm
tmpfs 32G 8.5M 32G 1% /run
tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/sda1 50G 15G 36G 30% /
/dev/sdb1 1TB 20G 980G 2% /data
# 检查CPU核心数
# nproc
16
# 检查系统架构
# uname -m
x86_64
2. 操作系统检查
flink 1.15.3支持RHEL 7.3+、RHEL 8.0+、RHEL 9.0+等操作系统。本文以RHEL 9为例。学习交流加群风哥微信: itpux-com
# cat /etc/redhat-release
Red Hat Enterprise Linux release 9.0 (Plow)
# 检查内核版本
# uname -r
5.14.0-70.22.1.el9_0.x86_64
# 检查SELinux状态
# getenforce
Disabled
# 关闭SELinux(如未关闭)
# vi /etc/selinux/config
SELINUX=disabled
# 检查防火墙状态
# systemctl status firewalld
# 关闭防火墙(生产环境建议开放特定端口而非完全关闭)
# systemctl stop firewalld
# systemctl disable firewalld
3. 安装准备
在安装flink之前,需要进行一系列准备工作,包括安装Java、Hadoop等。
# dnf install -y java-11-openjdk-devel
# 配置Java环境变量
# echo “export JAVA_HOME=/usr/lib/jvm/java-11-openjdk” >> ~/.bashrc
# echo “export PATH=$JAVA_HOME/bin:$PATH” >> ~/.bashrc
# source ~/.bashrc
# 安装Hadoop
# wget https://archive.apache.org/dist/hadoop/common/hadoop-3.3.4/hadoop-3.3.4.tar.gz
# tar -zxvf hadoop-3.3.4.tar.gz -C /opt/
# echo “export HADOOP_HOME=/opt/hadoop-3.3.4” >> ~/.bashrc
# echo “export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin” >> ~/.bashrc
# source ~/.bashrc
4. flink软件安装
现在开始安装flink 1.15.3软件,按照以下步骤进行。
# wget https://archive.apache.org/dist/flink/flink-1.15.3/flink-1.15.3-bin-scala_2.12.tgz
# 解压安装包
# tar -xzvf flink-1.15.3-bin-scala_2.12.tgz -C /opt/
# mv /opt/flink-1.15.3-bin-scala_2.12 /opt/flink
# 配置Flink环境变量
# echo “export FLINK_HOME=/opt/flink” >> ~/.bashrc
# echo “export PATH=$PATH:$FLINK_HOME/bin” >> ~/.bashrc
# source ~/.bashrc
# 配置Hadoop类路径
export HADOOP_CLASSPATH=$(hadoop classpath)
5. 数据库配置
配置Flink的核心配置文件。
# cp $FLINK_HOME/conf/flink-conf.yaml.template $FLINK_HOME/conf/flink-conf.yaml
# cp $FLINK_HOME/conf/workers.template $FLINK_HOME/conf/workers
# 编辑flink-conf.yaml
# vi $FLINK_HOME/conf/flink-conf.yaml
# 添加以下配置
jobmanager.rpc.address: localhost
jobmanager.memory.process.size: 4g
taskmanager.memory.process.size: 16g
taskmanager.numberOfTaskSlots: 8
parallelism.default: 4
# 编辑workers文件
# vi $FLINK_HOME/conf/workers
# 添加以下内容
localhost
6. 测试验证
启动Flink并验证功能正常。学习交流加群风哥QQ113257174
# export HADOOP_CLASSPATH=$(hadoop classpath)
# $FLINK_HOME/bin/start-cluster.sh
# 检查Flink Web UI
# curl http://localhost:8081
# 运行Flink示例
# $FLINK_HOME/bin/flink run $FLINK_HOME/examples/streaming/WordCount.jar
# 检查集群状态
# $FLINK_HOME/bin/flink list
# 停止Flink集群
# $FLINK_HOME/bin/stop-cluster.sh
7. 备份配置
配置Flink备份策略,确保数据安全。
# mkdir -p /backup/flink
# 备份Flink配置
# cp -r $FLINK_HOME/conf /backup/flink/conf_$(date +%Y%m%d)
# 备份Flink作业
# cp -r $FLINK_HOME/jobs /backup/flink/jobs_$(date +%Y%m%d)
# 备份检查点数据
# hadoop fs -cp hdfs://localhost:9000/flink-checkpoints hdfs://localhost:9000/flink-checkpoints-backup-$(date +%Y%m%d)
# 配置自动备份
# 创建备份脚本
# vi /root/backup_flink.sh
#!/bin/bash
DATE=$(date +%Y%m%d)
BACKUP_DIR=”/backup/flink/$DATE”
# 创建备份目录
mkdir -p $BACKUP_DIR
# 备份Flink配置
cp -r $FLINK_HOME/conf $BACKUP_DIR/
# 备份Flink作业
cp -r $FLINK_HOME/jobs $BACKUP_DIR/ 2>/dev/null || echo “Jobs directory not found”
# 备份检查点数据
hadoop fs -cp hdfs://localhost:9000/flink-checkpoints hdfs://localhost:9000/flink-checkpoints-backup-$DATE
# 给脚本添加执行权限
# chmod +x /root/backup_flink.sh
# 添加到crontab
# crontab -e
# 添加以下内容(每天凌晨2点执行备份)
0 2 * * * /root/backup_flink.sh
8. 升级迁移
Flink的升级和迁移过程。
# 1. 备份配置和数据
# /root/backup_flink.sh
# 2. 停止Flink服务
# $FLINK_HOME/bin/stop-cluster.sh
# 3. 下载新版本安装包
# wget https://archive.apache.org/dist/flink/flink-1.15.3/flink-1.15.3-bin-scala_2.12.tgz
# 4. 解压安装包
# tar -xzvf flink-1.15.3-bin-scala_2.12.tgz -C /opt/
# mv /opt/flink /opt/flink-old
# mv /opt/flink-1.15.3-bin-scala_2.12 /opt/flink
# 5. 复制配置文件
# cp -r /opt/flink-old/conf/* /opt/flink/conf/
# 6. 启动Flink服务
# export HADOOP_CLASSPATH=$(hadoop classpath)
# $FLINK_HOME/bin/start-cluster.sh
# 7. 验证升级结果
# $FLINK_HOME/bin/flink version
# 从旧版本Flink迁移到Flink 1.15.3
# 1. 在旧系统上备份配置和作业
# cp -r $FLINK_HOME/conf /opt/flink-conf-backup
# cp -r $FLINK_HOME/jobs /opt/flink-jobs-backup 2>/dev/null || echo “Jobs directory not found”
# 2. 将备份文件复制到新系统
# scp -r /opt/flink-conf-backup root@new-cluster:/backup/flink/
# scp -r /opt/flink-jobs-backup root@new-cluster:/backup/flink/ 2>/dev/null || echo “Jobs directory not found”
# 3. 在新系统上恢复配置
# cp -r /backup/flink/flink-conf-backup/* /opt/flink/conf/
# cp -r /backup/flink/flink-jobs-backup/* /opt/flink/jobs/ 2>/dev/null || echo “Jobs directory not found”
# 4. 从HDFS复制检查点数据
# hadoop fs -cp hdfs://old-cluster:9000/flink-checkpoints hdfs://new-cluster:9000/
# 5. 验证迁移结果
# $FLINK_HOME/bin/flink run $FLINK_HOME/examples/streaming/WordCount.jar
9. 总结
本文详细介绍了flink 1.15.3 for RHEL 9的安装、配置、升级和迁移过程。通过按照本文的步骤操作,可以成功部署Flink集群并确保其稳定运行。from:www.itpux.com
– 定期备份Flink配置、作业和检查点数据,建议每天执行一次全备份
– 监控Flink集群性能,定期检查日志和错误信息
– 定期更新Flink版本,确保系统安全性和性能
– 合理规划集群资源,避免资源不足
– 配置合适的参数,优化Flink作业性能
– 对于生产环境,建议部署高可用的Flink集群,提高可用性和可靠性
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
