【极数系列】Flink环境搭建(02)
引言
1.linux
直接在linux上使用jdk11+flink1.18.0版本部署
2.docker
使用容器部署比较方便,一键启动停止,方便参数调整
3.windows
搭建Flink 1.18.0版本需要使用Cygwin或wsl工具模拟unix环境+编写对应bat脚本以及路径存在转义符问题,暂时还没搭建成功,小伙伴要是有成功的可以评论区留言下,新版本在windows搭建已经搞得我汗流浃背了!!
一.Linux部署Flink
(1) 部署Linux版本JDK
1.下载Linux版本的JDK11
版本:jdk-11.0.2_linux-x64_bin.tar.gz
https://repo.huaweicloud.com/java/jdk/
2.创建目录
mkdir /usr/java
3.上传并解压
cd /usr/java
rz jdk-11.0.2_linux-x64_bin.tar.gz
tar -xzvf jdk-11.0.2_linux-x64_bin.tar.gz
解压后目录:/usr/java/jdk-11.0.2
4.配置环境变量
vi /etc/profile
#把下面三行加到文件末尾
export JAVA_HOME=/usr/java/jdk-11.0.2
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH
5.刷新环境变量
source /etc/profile
6.检查jdk安装是否成功
看到版本即可 java -version
(2) 部署Flink1.18.0
1.下载Flink1.18.0版本包
地址:https://www.apache.org/dyn/closer.lua/flink/flink-1.18.0/flink-1.18.0-bin-scala_2.12.tgz
2.上传压缩包到服务器
cd /www
rz flink-1.18.0-bin-scala_2.12.tgz
tar -xvf flink-1.18.0-bin-scala_2.12.tgz
3.修改flink-config.yaml配置
tips:修改这个配置主要是为了外部网络可以访问,否则只能本地访问
vi /www/flink-1.18.0/conf/flink-config.yaml
把这个配置#rest.bind-address: 0.0.0.0前面的#去掉,如果value是localhost则改为0.0.0.0
4.启动服务
cd /www/flink-1.18.0
./bin/start-cluster.sh
5.浏览器访问
flinkUI地址:http://127.0.0.1:8081
注意云服务器可能需要关闭对应的防火墙或者是开发端口
#通过命令查看防火墙策略
sudo iptables -L | more
#如果输出内容为Chain INPUT (policy DROP),再执行修改策略
sudo iptables -P INPUT ACCEPT
#直到确认输出为Chain INPUT (policy ACCEPT),才可清除所有规则停止防火墙
sudo iptables -F
#关闭防火墙
systemctl stop firewalld.service
6.停止服务
cd /www/flink-1.18.0
./bin/stop-cluster.sh
二.docker部署Flink
1.安装yum-utils软件包
tips:提供yum-config-manager 实用程序,配置加速源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
2.安装docker
yum install -y docker-ce docker-ce-cli containerd.io
3.启动docker
systemctl start docker
4.设置docker自启动
systemctl enable docker
5.配置Docker使用systemd作为默认Cgroup驱动
cat <<EOF > /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"]
}
EOF
6.重启docker
systemctl restart docker
7.拉取最新镜像
tips:目前最新镜像默认是:flink 1.18.0
docker pull flink
8.检查镜像
docker images
9.编写dockerFile文件
docker-compose.yaml文件内容如下
version: "1.0"
services:
jobmanager:
image: flink
expose:
- "6123"
ports:
- "8081:8081"
command: jobmanager
environment:
- JOB_MANAGER_RPC_ADDRESS=jobmanager
taskmanager:
image: flink
expose:
- "6121"
- "6122"
depends_on:
- jobmanager
command: taskmanager
links:
- "jobmanager:jobmanager"
environment:
- JOB_MANAGER_RPC_ADDRESS=jobmanager
10.执行dockerFile
tips:在docker-compose.yaml文件同级目录执行
docker-compose up -d
11.检查flink是否启动成功
docker ps |grep flink
12.检查日志是否正常
docker logs --tail="500" root-jobmanager-1
docker logs -f root-taskmanager-1
13.查看端口是否存在
netstat -anltp|grep 8081
14.浏览器访问
tips:查看FLink页面web UI页面,云服务器查看防火墙是否开启
http://ip:port/8081
三.本地开发安装JDK11
1.下载jdk11版本包
tips:下载地址https://repo.huaweicloud.com/java/jdk/
2.安装jdk11服务
双击解压后jdk的exe运行文件
3.路径选择
tips:一般不安装在C盘,修改路径,接着直接next
#使用管理员身份打开cmd命令,进入刚才安装的jdk目录
E:
cd E:\java_11\
#生成jre目录文件
bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre
4.设置环境变量
此电脑–属性–高级系统设置–环境变量–找到系统变量path–选择新建–把jdk与jre目录均加上
5.多版本JDK共存
进入oracle目录,如我的是C:\ProgramData\Oracle\Java\javapath,删除该目录下的所有 java.exe,javaw.exe 文件,后续就会按照环境变量的顺序默认选择jdk11,如果想切换回jdk8,只需要把jdk8的环境变量移动到jdk11环境变量之前即可
6.验证安装成功与否
打开cmd命令行,执行java -version,出现对应版本表示安装成功
四.idea配置JDK11
1.修改JDK编译版本
tips:或者在编译打包插件也可
idea--->Settings-->Build,Execution,Deployment--->Java Compiler
2.调整JDK开发版本
tips: 在 idea 的左上角找到 File 选择 Peoject Structure