在Flink是通用的框架,以混合和匹配的方式支持部署不同場景,而Standalone單機部署方便快速部署,記錄本地部署過程,方便備查。
環(huán)境要求
1)JDK1.8及以上
2)flink-1.14.3
3)CentOS7
Flink相關(guān)信息可到 Flink官網(wǎng)下載和查看相關(guān)信息。
第一步、下載并解壓
推薦使用 wget 方式,本次選擇的是版本 flink-1.14.3-bin-scala_2.12.tgz,下載并解壓,執(zhí)行以下命令。
// 下載
wget https://archive.apache.org/dist/flink/flink-1.14.3/flink-1.14.3-bin-scala_2.12.tgz
// opt下創(chuàng)建文件夾
mkdir /opt/flink
// 解壓到opt下目錄
tar -zxvf flink-1.14.3-bin-scala_2.12.tgz -C /opt/flink/
下載界面如下圖所示。
第二步、配置環(huán)境變量
進入環(huán)境變量配置文件profile, 即 vi /etc/profile,添加以下內(nèi)容。
#flink
export Flink_HOME=/opt/flink/flink-1.14.3/
# 將flink路徑添加到PATH路徑下
export PATH=$JMETER/bin/:$PATH:$Flink_HOME/bin
:wq 保存配置信息,主要要刷新環(huán)境變量。
// 刷新環(huán)境變量
source /etc/profile
// 查看安裝位置
which flink
// 進入到bin目錄下,啟動
start-cluster.sh
// 查看flink進程
ps -ef | grep flink
// 測試
jps
執(zhí)行以上步驟,則表示flink已經(jīng)啟動成功,執(zhí)行結(jié)果如下圖所示。
但此時在瀏覽器訪問 http://192.168.184.137:8081/#/overview,其中 192.168.184.137為虛擬機的IP地址,還無法進入flink控制臺。
第三步、修改虛擬機配置
此時仍需要修改連接的配置信息,首先關(guān)閉flink服務,并在 配置 flink-conf.yaml 放開默認8081端口和綁定的地址。
// 在bin目錄下,終止flink啟動
stop-cluster.sh
// 打開配置文件
vi /opt/flink/flink-1.14.3/conf/flink-conf.yaml
放開注釋信息,如下圖所示。
注意:必須將端口添加到防火墻的信任列表,并刷新。
// 添加防火墻
firewall-cmd --zone=public --add-port=8081/tcp --permanent
firewall-cmd --reload
此時瀏覽器再次訪問 http://192.168.184.137:8081/#/overview,即可進入控制臺,如下圖所示。
第四步、啟動作業(yè)流
數(shù)據(jù)輸入需要使用 nc 命令,可提前yum安裝。
// 安裝nc
yum install nc
一步步安裝即可。
打開兩個xshell連接
第一個連接
作用是發(fā)送流數(shù)據(jù)
// nc命令,端口9999
nc -l 9999
執(zhí)行完命令后,輸入要傳遞的數(shù)據(jù)。
第二個連接
作用是接收和處理數(shù)據(jù)
flink目錄下有example 測試demo,flink run 即可啟動,注意端口保持一致。
flink run /opt/flink/flink-1.14.3/examples/streaming//SocketWindowWordCount.jar --port 9999
將Job任務提交運行,可在控制臺查詢執(zhí)行結(jié)果。
以上即Flink的Standalone部署過程,有問題可留言交流!
異常處理
【1】錯誤信息
org.apache.flink.util.FlinkException: TaskExecutor akka.tcp://flink@192.168.184.137:34207/user/rpc/taskmanager_0 has no more allocated slots for job 8aa6239dce488f7b9a9bb237343871a6.
處理方案:
standalone模式,需要指定TaskManager主機的地址
【2】啟動提示輸入密碼
root@localhost’s password:
處理方案一、免密登錄
生成并上傳公鑰,可免密登錄。
// 生成密鑰,會在 .ssh 目錄下生成密鑰文件
ssh-keygen
// 上傳公鑰
ssh-copy-id -i /$USER/.ssh/id_rsa.pub $USER@本機ip
處理方案二,密碼登錄
如忘記密碼,可用root重置密碼,命令為 passwd 賬戶名文章來源:http://www.zghlxwxcb.cn/news/detail-662082.html
參考博客
【1】https://blog.csdn.net/zou79189747/article/details/107255299文章來源地址http://www.zghlxwxcb.cn/news/detail-662082.html
到了這里,關(guān)于Flink的Standalone部署實戰(zhàn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!