flink安装与配置-脚本一键安装(超简单)

news2025/1/21 7:20:00

文章目录

  • 前言
  • 使用shell脚本一键安装
    • 1. 复制脚本
    • 2. 增加执行权限
    • 3. 执行脚本
    • 4. 加载用户环境变量
    • 5. 浏览器访问
  • 总结


前言

本文介绍了使用shell脚本一键安装和配置Apache Flink单机版的方法。通过复制并执行提供的安装脚本,可以自动下载、安装和配置Flink。脚本会检查系统环境和依赖,并进行相应的安装和配置操作。安装完成后,可以通过浏览器访问Flink的用户界面。


使用shell脚本一键安装

1. 复制脚本

首先,将以下脚本内容复制并保存为/tmp/install_flink.sh文件。

#!/bin/bash

installDir="/opt/module/flink"
flink_version="1.9.2"
scala_version="2.11"

if [ -z $(command -v wget) ]; then
  sudo yum install -y wget
  echo "wget安装完成"
fi
if [ -z "$JAVA_HOME" ]; then
  echo "JAVA_HOME未设置,请安装jdk1.8,设置Java环境变量再来执行此脚本"
  exit 1
fi
if [ ! -d "${installDir}" ]; then
  sudo mkdir -p "${installDir}"
  if [ $? -eq 0 ]; then
    echo "安装目录${installDir}已创建"
  else
    echo "请确保您有足够的权限来创建目录,请增加权限后再次执行"
    exit 1
  fi
fi
if [ ! -f /tmp/flink-$flink_version-bin-scala_$scala_version.tgz ]; then
  wget https://archive.apache.org/dist/flink/flink-$flink_version/flink-$flink_version-bin-scala_$scala_version.tgz -P /tmp
  if [ $? -eq 0 ]; then
    echo "/tmp/flink-$flink_version-bin-scala_$scala_version.tgz下载成功"
  else
    echo "/tmp/flink-$flink_version-bin-scala_$scala_version.tgz下载失败,请重试或手动下载到/tmp目录下再次执行"
    echo "下载地址:https://archive.apache.org/dist/flink/flink-$flink_version/flink-$flink_version-bin-scala_$scala_version.tgz"
    exit 1
  fi
fi

if [ -d $installDir/flink-$flink_version ]; then
  echo "$installDir/flink-$flink_version 已存在,正在删除..."
  sudo rm -rf $installDir/flink-$flink_version
fi
tar -zxvf /tmp/flink-$flink_version-bin-scala_$scala_version.tgz -C $installDir
if [ $? -eq 0 ]; then
  echo "/tmp/flink-$flink_version-bin-scala_$scala_version.tgz解压成功"
else
  echo "/tmp/flink-$flink_version-bin-scala_$scala_version.tgz解压失败,请查看异常信息后重试"
  exit 1
fi

sed -i "s|^jobmanager.rpc.address:.*|jobmanager.rpc.address: $(hostname)|" "$installDir/flink-$flink_version/conf/flink-conf.yaml"
# 设置flink用户环境变量
echo >> ~/.bashrc
echo '#FLINK_HOME' >> ~/.bashrc
echo "export FLINK_HOME=$installDir/flink-$flink_version" >> ~/.bashrc
echo 'export PATH=$PATH:$FLINK_HOME/bin' >> ~/.bashrc

if [[ $($installDir/flink-$flink_version/bin/flink --version | awk '{ print $1 }') == 'Version:' ]]; then
  echo "flink下载、安装、配置完成"
else
  echo "安装出现异常,请查看异常信息后重试"
  exit 1
fi
$installDir/flink-$flink_version/bin/start-cluster.sh
if [ $? -eq 0 ]; then
  echo "flink启动成功"
  ip_addr=$(ip addr | grep 'inet ' | awk '{print $2}'| tail -n 1 | grep -oP '\d+\.\d+\.\d+\.\d+')
  echo "浏览器访问flink的UI界面:http://$ip_addr:8081/"
else
  echo "flink启动失败,请查看异常信息解决后再次尝试启动"
  exit 1
fi

exit 0

2. 增加执行权限

在终端中执行以下命令,为脚本添加执行权限。

chmod a+x /tmp/install_flink.sh

3. 执行脚本

执行以下命令,运行脚本开始下载、安装和配置Flink。

/tmp/install_flink.sh

请等待安装完成,如有异常会有提示。

成功如下图所示:

在这里插入图片描述

4. 加载用户环境变量

source ~/.bashrc

5. 浏览器访问

根据成功后的提示复制网址到浏览器访问,如下图所示:

在这里插入图片描述


总结

回顾整个安装和配置过程。通过执行脚本,我们成功地完成了Flink的安装和配置,并可以通过浏览器访问Flink的用户界面。这种自动化的安装和配置方法可以减少手动操作的工作量,提高部署的一致性和可靠性。

希望本教程对您有所帮助!如有任何疑问或问题,请随时在评论区留言。感谢阅读!

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

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

相关文章

Raft 算法

Raft 算法 1 背景 当今的数据中心和应用程序在高度动态的环境中运行,为了应对高度动态的环境,它们通过额外的服务器进行横向扩展,并且根据需求进行扩展和收缩。同时,服务器和网络故障也很常见。 因此,系统必须在正常…

JavaScript递归

前端面试大全JavaScript递归 🌟经典真题 🌟递归 🌟真题解答 🌟总结 🌟经典真题 使用递归完成 1 到 100 的累加 🌟递归 A recursive method is a method that calls itself. 递归调用是一种特殊的调…

Linux系统-----进程通讯

前言 本期我们来学习进程间的通讯 一、信号机制 1、信号的基本概念 每个信号都对应一个正整数常量(称为signal number,即信号编号。定义在系统头文件<signal.h>中)&#xff0c;代表同一用户的诸进程之间传送事先约定的信息的类型&#xff0c;用于通知某进程发生了某异常…

思维模型 同体效应

本系列文章 主要是 分享 思维模型&#xff0c;涉及各个领域&#xff0c;重在提升认知。我们是自己人。 1 同体效应的应用 1.1 同体效应在市场营销上的应用-耐克的“Just Do It”营销活动 耐克是一家全球知名的运动品牌&#xff0c;其“Just Do It”营销活动是市场营销领域的经…

王炸cpu-龙芯3A6000

国产 CPU 性能媲美 Intel 酷睿这事儿&#xff0c;可能真的已经实现了。 没错&#xff0c;那颗有着多次爆料拉满大家期待值的龙芯 3A6000&#xff0c;终于正式发布。 就在今天上午&#xff0c;龙芯中科在 2023 年龙芯产品发布暨用户大会上正式带来了这颗 CPU。 整场发布会 PPT …

Pycharm调用Conda虚拟环境

参考这个链接的评论区回答&#xff1a;Pycharm调用Conda虚拟环境 笑死&#xff0c;我之前也是这样的&#xff0c;不过好像也能用&#xff0c;搞不懂~

30岁左右的简历模板精选7篇

30岁左右是职业发展的关键时期&#xff0c;一份出色的简历能带来更多机会。本文精选了7篇适合30岁左右求职者的专业简历案例&#xff0c;无论您是寻找晋升、转行还是新的职业挑战&#xff0c;都能从中借鉴灵感&#xff0c;打造一份令人印象深刻的简历。 30岁左右的简历模板下载…

Kubernetes入门学习(下)

Kubernetes入门学习&#xff08;下&#xff09; 文章目录 Kubernetes入门学习&#xff08;下&#xff09;运行有状态的应用ConfigMap与SecretConfigMapSecret 卷(Volume)StatefulSet(有状态应用集)Headless Service(无头服务)Mysql主从复制Port-forward端口转发Helm参考 运行有…

2023年多元统计分析期末试题

一、简答题 1、试述距离判别法、Fisher判别法和贝叶斯判别法的异同。 二、 2、设 X {X} X~ N 2 {N_2} N2​(μ&#xff0c;Σ)&#xff0c;其中 X {X} X ~ ( X 1 {X_1} X1​, X 2 {X_2} X2​, X 3 {X_3} X3​)&#xff0c;μ ( μ 1 {μ_1} μ1​&#xff0c; μ 2 {μ_2} …

跨境独立站和传统外贸的差异

跨境独立站和传统外贸主要在以下几个方面存在区别&#xff1a; 交易形式&#xff1a;传统外贸主要涉及线下交易&#xff0c;买卖双方需要经过面谈、磋商、签订合同等环节。而跨境独立站则主要通过线上平台进行交易&#xff0c;买卖双方可以通过平台发布产品、协商价格、完成支…

linux安装镜像cento7

点击创建新的虚拟机 点击典型&#xff0c;下一步 浏览&#xff0c;centos7下载文件的位置 找到位置后&#xff0c;效果如下图所示 下一步&#xff0c;填写用户名和密码&#xff0c;再点击下一步 给虚拟机起名字&#xff0c;默认就行&#xff1b;虚拟机安装路径&#xff0c;默认…

高光谱遥感影像分类项目开源

热烈欢迎大家在git上star&#xff01;&#xff01;&#xff01;冲鸭&#xff01;&#xff01;&#xff01; 我研究生期间主要是做高光谱遥感影像分类的&#xff0c;毕业论文也是基于深度学习的高光谱遥感影像分类课题&#xff0c;转眼间已经毕业四年了&#xff0c;如今把这块材…

nextjs入门

创建项目 npx create-next-app 项目名 体验文件路由 nextjs提供了文件路由的功能, 根据文件系统的目录结构, 可以识别为对应的页面路由 创建页面 首先, 在src下创建pages目录, 然后创建一个about文件(对应about页面)和main/index.js文件(对应首页) pages/main/index con…

统计3个点的6种结构在三角形内的占比

平面内的3个点只可能有6种结构 1 - - - - 4 - - - - - - - - - - - - - - - - - - - - - - - 1 - - - 1 - - 1 1 - 1 1 - 2 - - - - 5 - - - - - - - - - - - - - - - 1 - - - 1 - - - 1 - - 1 - …

docker部署jupyter

文章目录 1.搜索镜像2.拉取镜像3.创建挂载4.运行容器4.查看容器运行运行状态5.token查看6.访问jupyter 1.搜索镜像 docker search jupyter: 命令用于在 Docker Hub 上搜索名为 “jupyter” 的镜像。搜索结果显示了一个名为 “jupyter/datascience-notebook” 的镜像&#xff0…

二叉树在线OJ

二叉树的构建及遍历 本题目的要求是&#xff1a; 输入一个数组&#xff0c;里面存放了若干个字符&#xff0c;#代表了空指针&#xff0c;数组中的顺序是 是先序遍历&#xff0c;然后要求你用中序输出 首先我们要做的就是构造结构体&#xff1a; typedef struct TreeNode {char…

游泳馆会员服务预约管理系统预约小程序效果如何

游泳馆在各地每天都有大量用户前往&#xff0c;夏季室外、冬季室内也是学习游泳技术和休闲娱乐的好地方&#xff0c;而消费者大多是年轻人和家长带的孩子&#xff0c;这部分群体更显年轻化&#xff0c;因此在如今互联网环境下&#xff0c;传统商家需要进一步赋能客户消费路径。…

《凤凰项目》读书笔记

文章目录 一、书名和作者二、书籍概览2.1 主要论点和结构2.2 目标读者和应用场景 三、核心观点与主题3.1 DevOps的核心原则与文化变革3.2 持续交付与自动化3.3 变更管理与风险控制3.4 关键绩效指标与持续改进 四、亮点与启发4.1 最有影响的观点4.2 对个人专业发展的启示 五、批…

Mover Creator 用户界面

1 “开始”对话框 首次打开 Mover Creator 时&#xff0c;出现的第一个页面是“开始”对话框&#xff0c;如下所示。从这里开始&#xff0c;用户可以选择开始设计飞机、武器或发动机。在上述每种情况下&#xff0c;用户都可以创建新模型或编辑现有模型。 1.1 新建模型 如果用…

【选择题】校招笔试选择题第一辑

题目 以下程序的运行结果是&#xff08; &#xff09; #include <stdio.h> int main(void) {printf("%s , %5.3s\n", "computer", "computer");return 0; }A. computer , puter B. computer , com C. computer , computer D. computer…