首页 > 其他分享 >Apache Flink 1.16.0部署手册

Apache Flink 1.16.0部署手册

时间:2023-01-17 11:23:06浏览次数:59  
标签:1.16 bin Flink data flink usr mysql Apache local

1 参考文献

Apache Flink官网:https://flink.apache.org/downloads.html

2 硬件环境部署

2.1 系统配置说明

系统 CPU 内存 硬盘 IP
Ubuntu 22.04.1 LTS 4 16G 200G 192.168.100.101

3 软件环境部署

3.1 软件环境清单

#JDK:1.8下载地址:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
#MySQL:8.0.30下载地址:
https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz
##Flink:1.16.0下载地址:
https://archive.apache.org/dist/flink/flink-1.16.0/flink-1.16.0-bin-scala_2.12.tgz

3.2 软件环境部署顺序

JDK--》MySQL--》Apache Flink

3.3 JDK部署

cd /data
tar -zxvf jdk-8u341-linux-x64.tar.gz -C /usr/local/
vim /etc/profile
#jdk
export JAVA_HOME=/usr/local/jdk1.8.0_341/
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
#添加后保存退出
source /etc/profile

3.4 数据库安装

安装MySQL

cd /data
tar -xvf mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz
mv mysql-8.0.30-linux-glibc2.12-x86_64 /usr/local/mysql
groupadd mysql
useradd -r -g mysql -s /sbin/nologin mysql
mkdir /data/mysql -p
mkdir /usr/local/mysql/etc -p
mkdir /var/run/mysql/
chown -R mysql:mysql /usr/local/mysql/
chown -R mysql:mysql /data/mysql
chown -R mysql:mysql /var/run/mysql/

编辑配置

vim /usr/local/mysql/etc/my.cnf

[client]
port=3306
socket=/var/run/mysql/mysql.sock

[mysqld]
user=mysql
port=3306
bind-address=0.0.0.0
datadir=/data/mysql
basedir=/usr/local/mysql
socket=/var/run/mysql/mysql.sock
pid-file=/var/run/mysql/mysql.pid

default-storage-engine=INNODB
character_set_server=utf8mb4
lower_case_table_names=1
table_open_cache=128
max_connections=1200
max_connect_errors=1000
innodb_file_per_table=1
innodb_buffer_pool_size=1G
max_allowed_packet=64M
transaction_isolation=READ-COMMITTED
innodb_flush_method=O_DIRECT
innodb_lock_wait_timeout=1800
innodb_flush_log_at_trx_commit=0
sync_binlog=0
symbolic-links=0
explicit_defaults_for_timestamp=true

server-id=1
log-error=/data/mysql/mysql.err
log-bin=mysql-bin
expire_logs_days = 7
binlog_format=mixed
slow_query_log=1
long_query_time=10
slow_query_log_file=/data/mysql/mysql-slow.log

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

skip-name-resolve

[mysql]
default-character-set=utf8mb4

[mysql.server]
default-character-set=utf8mb4

初始化数据

cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql --lower-case-table-names=1

tailf /data/mysql/mysql.err
cp /usr/local/mysql/support-files/mysql.server  /etc/init.d/mysqld
/etc/init.d/mysqld start
echo 'PATH=$PATH:$HOME/bin:/usr/local/mysql/bin' >> /etc/profile
source /etc/profile

登录MySQL修改权限

mysql -uroot -p
mysql> alter user 'root'@'localhost' identified by 'sZvoOlW3R4rqckQjXtKn';
mysql> use mysql;
mysql> select host, user, authentication_string, plugin from user;
mysql> create user 'root'@'%' identified by 'sZvoOlW3R4rqckQjXtKn';
mysql> grant all privileges on *.* to 'root'@'%' with grant option;
mysql> select host, user, authentication_string, plugin from user;

3.5 其他支撑组件安装

安装好的lib中只有flink的jar包,如果提交的job有用到连接mysql或者使用flink cdc,需要把相应的驱动加入到lib中:

mysql-connector-java-8.0.16.jar
flink-connector-jdbc_2.12-1.14.5.jar
flink-sql-connector-mysql-cdc-2.2.1.jar
##连接mysql提前下载mysql-connector-java-8.0.16.jar驱动即可,下载地址:
https://repo1.maven.org/maven2/mysql/mysql-connector-java/

4 系统安装与配置

4.1 解压二进制包

cd /data/
tar -zxvf flink-1.16.0-bin-scala_2.12.tgz
mv flink-1.16.0 flink

4.2 修改主配置文件

备份yaml文件

cd /data/flink
cp conf/flink-conf.yaml conf/flink-conf.yaml.bak

修改flink-conf.yaml

vim conf/flink-conf.yaml
##修改以下配置:
jobmanager.rpc.address: 0.0.0.0
jobmanager.bind-host: 0.0.0.0
taskmanager.bind-host: 0.0.0.0
taskmanager.host: 0.0.0.0
rest.address: 192.168.100.101
rest.bind-address: 192.168.100.101	

4.3 添加MySQL驱动

mysql-connector-java-8.0.16.jar驱动添加到/data/flink/lib/目录下即可。

5 系统初始化与确认

5.1 数据库初始化

登录MySQL添加flink用户并赋权

mysql> CREATE DATABASE flink DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
mysql> CREATE USER 'flink'@'%' IDENTIFIED BY 'juFb493esiQV!rMBZhoyT';
mysql> GRANT ALL PRIVILEGES ON flink.* TO 'flink'@'%';
mysql> FLUSH PRIVILEGES;
mysql> exit

5.2 系统部署确认

启动Flink服务

cd /data/flink/
./bin/start-cluster.sh

5.3 加入开机自启

由于Ubuntu不再inited管理系统,改用 systemd,没有/etc/rc.local文件,所以需要自己配置rc.local;在/usr/lib/systemd/system/rc-local.service文件中添加下面内容:

vim /usr/lib/systemd/system/rc-local.service

[Install]
WantedBy=multi-user.target
Alias=rc-local.service

重新加载文件

systemctl daemon-reload

新建/etc/rc.local文件,如果用户默认运行环境在 /bin/bash 下,则应修改#!bin/sh -e为 #!bin/bash -e 。自行添加的命令要在exit 0前面。

vim /etc/rc.local

#!/bin/bash -e
# rc.local
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
# In order to enable or disable this script just change the execution
# bits.
# By default this script does nothing.

export JAVA_HOME=/usr/local/jdk1.8.0_341

su - root -c "bash /data/flink/bin/start-cluster.sh"

exit 0

修改权限

chmod 755 /etc/rc.local

重启rc服务,并加入开机自启

systemctl restart rc-local.service
systemctl enable rc-local

5.4 访问确认

浏览器访问地址 http://localhost:8081 即可登录系统UI。(无账户密码)

6 问题处理

暂无

标签:1.16,bin,Flink,data,flink,usr,mysql,Apache,local
From: https://www.cnblogs.com/wangyuanguang/p/17057418.html

相关文章

  • FlinkSQL 时间类型转化使用小结
    https://blog.noname.cc/2023/01/16/20230116/FlinkSQL的时间类型在FlinkSQL中,存在两种时间类型,分别是TIMESTAMP和TIMESTAMP_LTZ.以下示例所用的字段:TIMESTAM......
  • 力扣每日一题2023.1.16---1813. 句子相似性 III
    一个句子是由一些单词与它们之间的单个空格组成,且句子的开头和结尾没有多余空格。比方说,"HelloWorld" ,"HELLO" ,"helloworldhelloworld" 都是句子。每个单词都只 ......
  • 01.16-01.22文献阅读总结
      本周是论文研读第三周,春节前最后一周,不知道能做到多少。零星的记录下来,以免遗忘。  还有一位非常尊敬的作者HartmutGeyer,其研究兴趣在腿部系统动力学,其方法中有部......
  • 2023.1.16[模板] 二次剩余
    2023.1.16二次剩余问题叙述给出N,p,求解方程$x^2\equivN$(\(modp\))且保证p是奇素数。算法流程解的数量首先,探究$x^2\equivN$这个方程解的数量,假设我们......
  • 2023.1.16周报
    本周总结:《算法竞赛》5.1、5.2,5.5、5.6,《算法竞赛进阶指南》0x53、0x54。大方向:动态规划小专题:区间DP、树形DP题目完成情况:div2、abc各一场。P2015(树形DP)、P1352......
  • 2023.1.16训练日志
    AtCoderBeginnerContest285成绩报告\(AC:T1,\T2,\T3,\T4\quad1000pts\)\(rk2122,\+59\)P1280尼克的任务这道题标签是\(DP\),但是按照标签写题显得没有挑战......
  • 2023.1.16周报
    本周总结这周琐事较多,忙着回老家各种,训练量较小,这周主要还是在写数据结构,外加一部分的数论基础知识,主要还是跟着牛客的专题推进。大专题数据结构小专题莫队,带修莫队,......
  • 1.16模拟赛题解
    T1对于区间\([1,i]\)的划分方案,划分长度一定是\(i\)的因数,因此考虑暴力枚举区间长度。问题转化为快速check一段区间是不是美丽的。首先,区间内的\(-1\)一定要么......
  • 【2023.01.16】PVE创建集群并实现外网互联
    首先要确保有两台公网ip的机器,或者两台在内网的机器,在有公网ip的机器上创建集群一公网一内网拷贝以下内容取消辅助说明,输入你的公网域名到这里失败了,私网机器的连不......
  • 算法--2023.1.16
    1.力扣200--岛屿数量classSolution{//深度优先遍历publicintcnt;publicchar[][]nums;publicint[]dx,dy;publicintm,n;publici......