【极数系列】Flink环境搭建(02)

【极数系列】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: flinkexpose:- "6123"ports:- "8081:8081"command: jobmanagerenvironment:- JOB_MANAGER_RPC_ADDRESS=jobmanagertaskmanager:image: flinkexpose:- "6121"- "6122"depends_on:- jobmanagercommand: taskmanagerlinks:- "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
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/643696.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

每日一题——LeetCode1309.解码字母到整数映射

方法一 个人方法&#xff1a; 由题意可得&#xff1a; 1、1-26对应a-z&#xff0c;只不过从10开始&#xff0c;后面要加#才能表示字母 2、10# - 26# 都是三位数&#xff0c;开头<2&#xff0c;结尾都为# 3、某个数后面两位如果不为#那么该数为1-9对应a-i&#xff0c;如果…

SQL 注入漏洞原理以及修复方法

漏洞名称 &#xff1a;SQL注入 、SQL盲注 漏洞描述&#xff1a;所谓SQL注入&#xff0c;就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串&#xff0c;最终达到欺骗服务器执行恶意的SQL命令。具体来说&#xff0c;它是利用现有应用程序&#xff0c;将&…

华为设备配置简单流分类

实验需求&#xff1a;10.1.1.0/24网段的PC访问PC3&#xff0c;流量进入AR1时&#xff0c;DSCP字段优先级为0&#xff0c;在AR1进行配置&#xff0c;将10.1.1.0/24网段流量的优先级映射为内部优先级46。 实验步骤&#xff1a; 步骤1&#xff1a;配置IP地址 [AR1]interface g0/…

Pygame之纯Python实现你好2024效果

Pygame之纯Python实现你好2024效果 前言&#xff1a; 对于某些指JavaScript与前端实现为Python实现你好2024效果的营销号实在看不下去了。无底线营销&#xff0c;还要私信拿源码&#xff0c;hhh 于是就有了以下代码&#xff1a; 运行前安装pygame pip install pygame运行效果…

k8s-基础知识(Service,NodePort,CusterIP,NameSpace,资源限制)

Node Node 是 Pod 真正运行的主机&#xff0c;可以是物理机&#xff0c;也可以是虚拟机。 Annotations 原文链接 Annotations 是 key/value 形式附加于对象的注解。不同于 Labels 用于标志和选择对象&#xff0c;Annotations 则是用来记录一些附加信息&#xff0c;用来辅助应…

Linux mesg命令教程:如何控制终端的消息接收(附案例详解和注意事项)

Linux mesg命令介绍 mesg是一个用户用来控制其他用户是否可以向其关联到标准错误输出的终端设备写入访问权的实用程序。如果允许写入访问&#xff0c;那么像talk(1)和write(1)这样的程序可能会在终端上显示消息。在优先考虑各种安全风险的用户日益增多的情况下&#xff0c;正确…

HTML 入门手册(一)

目录 HTML介绍 1-基础语法 单标签 双标签 整体结构 2-标题和水平线 标题 水平线 3-段落和换行 段落 换行 4-列表 无序列表 有序列表 嵌套列表 5-div和span div span 6-格式化标签 粗体 斜体 下划线中划线 上标和下标 7-超链接(a标签) 链接到URL 链接…

openharmony应用开发HDC 常用命令

HDC 常用命令 1.查看hdc版本&#xff1a; hdc --version 2.查看设备sn号&#xff1a; hdc list targets 3.进入shell: hdc shell 4.重启设备 hdc shell reboot 5.设置RK开发板根目录的读写权限 hdc shell mount -o rw,remount / # 此命令用于解决推包时提示只读路径&…

GitHub无法完成推送 的设置选项

GitHub无法完成推送 的设置选项 系统设置 VS中控制台设置【指令】 控制台调出方法 以下为VS控制台指令 git config --global --unset http.proxy git config --global --unset https.proxygit config --global http.proxy 127.0.0.1:7890 git config --global https.proxy …

如何在Nginx中配置防盗链?

如何在Nginx中配置防盗链? 防盗链是一种保护网站资源不被非法下载的技术。在Web服务器中&#xff0c;我们可以使用Shell脚本来实现防盗链的配置。本文将介绍如何在Linux系统中的Nginx Web服务器中使用Shell脚本实现防盗链。 一、什么是防盗链&#xff1f; 防盗链是一种防止…

网站安全每日话题——网页内容被篡改怎么办

大家好&#xff0c;今天我们要聊一个网站安全的话题——网页内容被篡改。这可不是小事&#xff0c;可能会给我们的网站和用户带来很大的危害。咱们一起来看看吧&#xff01; 网页内容被篡改的危害 信任丧失 用户信任是网站成功的基石。一旦网页内容被篡改&#xff0c;用户可…

docker - compose 部署 Tomcat

目录 下面用 docker-compose 方法部署 Tomcat 1、准备工作 2、部署容器 启动容器 查看新启动的容器 3、总结 下面用 docker-compose 方法部署 Tomcat 1、准备工作 先在主机创建工作文件夹&#xff0c;为了放置 Tomcat 的配置文件等。创建文件夹的方法&#xff0c;自己搞…

【从浅到深的算法技巧】链表 补

3.8 队列的实现 基于链表数据结构实现Queue API也很简单&#xff0c;如下面算法所述。它将队列表示为一条从最早插入的元索到最近插入的元素的链表&#xff0c;实例变量first指向队列的开头&#xff0c;实例变量last指向队列的结尾。这样&#xff0c;要将一个元素 入列( enqueu…

React类组件中super()和super(props)有什么区别?

React中super&#xff08;&#xff09;和super&#xff08;props&#xff09;有什么区别&#xff1f; 回答思路&#xff1a;说说ES6类的继承-->说说类组件的继承-->总结区别ES6类的继承类组件的继承总结区别 回答思路&#xff1a;说说ES6类的继承–>说说类组件的继承–…

【操作系统】实验三 编译 Linux 内核

&#x1f57a;作者&#xff1a; 主页 我的专栏C语言从0到1探秘C数据结构从0到1探秘Linux &#x1f618;欢迎关注&#xff1a;&#x1f44d;点赞&#x1f64c;收藏✍️留言 &#x1f3c7;码字不易&#xff0c;你的&#x1f44d;点赞&#x1f64c;收藏❤️关注对我真的很重要&…

基于springboot+vue的在线商城系统(前后端分离)

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

git的使用(idea中)

文章目录 Git分布式版本控制工具1、目标2、概述2.1、开发中的实际场景2.2、版本控制器的方式2.3、SVM2.4、Git2.5、Git工作流程 3、Git安装与常用命令3.1、Git环境配置3.1.1 下载与安装3.1.2基本配置3.1.3为常用指令配置别名(可选)3.1.4解决GitBash乱码问题 3.2、获取本地仓库3…

Ubuntu20.04安装cuda12.11

显卡驱动 首先就是安装显卡驱动&#xff0c;我是双3090&#xff0c;不知道为什么&#xff0c;官网死活安不上&#xff0c;最后从软件更新那里直接安装上了&#xff0c;绷不住了 cuda 首先从官网下载runfile文件 安装的时候记得驱动和Kernel Objects 和 nvidia-fs不选 然后…

第11次修改了可删除可持久保存的前端html备忘录:将样式分离,可以自由秒添加秒删除样式

第11次修改了可删除可持久保存的前端html备忘录&#xff1a;将样式分离&#xff0c;可以自由秒添加秒删除样式 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"…

蜜雪冰城、古茗组团上市,打响新一轮供应链攻防战

2024年首个工作日&#xff0c;新式茶饮品牌古茗、蜜雪冰城不约而同地向港交所提交上市申请书&#xff0c;“上市”替代“万店”成为新式茶饮行业的热词。 1月2日&#xff0c;古茗控股有限公司向港交所提交上市申请书&#xff0c;联席保荐人为高盛和瑞银集团&#xff0c;计划部…