Flink 1.7.2 standalone HA模式安装和部署

文章目录

    • Flink standalone 模式安装和部署
      • 1.环境说明
        • 1.1 机器配置和角色说明
        • 1.2 免密钥配置
      • 2.zookeeper安装和部署
        • 2.1 下载zookeeper
        • 2.2 解压
        • 2.3 修改配置文件
        • 2.4 配置myid
        • 2.5 同步文件
        • 2.6 启动zookeeper
      • 3.Flink 安装和部署
        • 3.1 下载
        • 3.2 解压
        • 3.3 修改配置文件
          • 3.3.1 修改flink-conf.yaml
          • 3.3.2 修改masters
          • 3.3.3 修改slaves
          • 3.3.4 修改log4j.properties
        • 3.4 同步文件
        • 3.5 启动Flink集群
        • 3.6 启动Flink任务

Flink standalone 模式安装和部署

1.环境说明

1.1 机器配置和角色说明

moapi-o-flink-01和moapi-o-flink-02配置了HA

hostname 配置 角色
moapi-o-flink-01 16c,32G zookeeper,master,slave,HistoryServer
moapi-o-flink-02 16c,32G zookeeper,master,slave
moapi-o-flink-03 16c,32G zookeeper,slave

1.2 免密钥配置

在使用scp和启动flink集群时需要配置免密钥ssh登录
具体配置方法如下:

1.A服务器上生成秘钥对:ssh-keygen
2.拷贝公钥到B服务器:ssh-copy-id root@hostB

2.zookeeper安装和部署

2.1 下载zookeeper

执行下面脚本即可:

wget  'http://archive.apache.org/dist/zookeeper/zookeeper-3.4.5/zookeeper-3.4.5.tar.gz'

如果没有安装wget,可以直接使用curl 代替

curl -O 'http://archive.apache.org/dist/zookeeper/zookeeper-3.4.5/zookeeper-3.4.5.tar.gz'

2.2 解压

解压到指定的目录

tar -zxf zookeeper-3.4.5.tar.gz -C /data/app_install/

2.3 修改配置文件

进入到配置文件的目录

cd /data/app_install/zookeeper-3.4.5/conf
cp zoo-sample.cfg zoo.cfg
vim zoo.cfg

修改以下几个配置项:

dataDir=/data/data/zookeeper-3.4.5
clientPort=2181

在zoo.cfg 的最后面添加以下几个配置:

server.1=moapi-o-flink-01:2888:3888
server.2=moapi-o-flink-02:2888:3888
server.3=moapi-o-flink-03:2888:3888

注意:
1.moapi-o-flink-0* 是要部署的zookeeper 这几台机器的主机名,具体位置是 /etc/sysconfig/network#HOSTNAME
2.2888原子广播端口,3888选举端口,zookeeper有几个节点,就配置几个server

2.4 配置myid

到zoo.cfg 中配置好的dataDir文件夹中生成一个文件叫myid,其中写上一个数字表明当前机器是哪一个编号的机器.例如在moapi-o-flink-01上配置myid,步骤如下:

cd /data/data/zookeeper-3.4.5
echo 1 > myid

注意:文件名称必须是myid,文件内容只需要一个数字即服务器列表中当前服务器的编号。

2.5 同步文件

提前在moapi-o-flink-02、moapi-o-flink-03上创建文件夹/data/app_install/zookeeper-3.4.5/

scp -r /data/app_install/zookeeper-3.4.5/ dev@moapi-o-flink-02:/data/app_install/zookeeper-3.4.5/ 

scp -r /data/app_install/zookeeper-3.4.5/ dev@moapi-o-flink-03:/data/app_install/zookeeper-3.4.5/ 

2.6 启动zookeeper

在moapi-o-flink-01,moapi-o-flink-02,moapi-o-flink-03上都启动zookeeper

cd /data/app_install/zookeeper-3.4.5
bin/zkServer.sh start 

其他命令:

#启动ZK服务: bin/zkServer.sh start 
#停止ZK服务: bin/zkServer.sh stop 
#重启ZK服务: bin/zkServer.sh restart 
#查看ZK服务状态: bin/zkServer.sh status

使用jps查看是否有zookeeper进程:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vwztuH1X-1581046246127)(evernotecid://F4957800-1AA8-4E97-8F99-7B44D39F27C6/appyinxiangcom/3271105/ENResource/p97)]

再用bin/zkServer.sh status 查看是否有正常:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7scYboPW-1581046246129)(evernotecid://F4957800-1AA8-4E97-8F99-7B44D39F27C6/appyinxiangcom/3271105/ENResource/p95)]

3.Flink 安装和部署

3.1 下载

执行下面脚本即可:

wget  'http://apache.crihan.fr/dist/flink/flink-1.7.2/flink-1.7.2-bin-hadoop26-scala_2.11.tgz'

如果没有安装wget,可以直接使用curl 代替

curl -O 'http://apache.crihan.fr/dist/flink/flink-1.7.2/flink-1.7.2-bin-hadoop26-scala_2.11.tgz'

3.2 解压

解压到指定的目录

tar -zxf flink-1.7.2-bin-hadoop26-scala_2.11.tgz -C /data/app_install/

3.3 修改配置文件

3.3.1 修改flink-conf.yaml

修改/data/app_install/flink-1.7.2/conf中flink-conf.yaml 文件

cd /data/app_install/flink-1.7.2/conf
vim flink-conf.yaml

修改以下配置项:

jobmanager.rpc.address: moapi-o-flink-01
jobmanager.rpc.port: 6123
jobmanager.heap.size: 4096m
taskmanager.heap.size: 16384m
taskmanager.numberOfTaskSlots: 12
parallelism.default: 1
high-availability: zookeeper
high-availability.storageDir: hdfs://10.29.180.177:8020/flink-1.7.2/ha/
high-availability.zookeeper.quorum: moapi-o-flink-01:2181,moapi-o-flink-02:2181,moapi-o-flink-03:2181
state.backend: rocksdb
state.checkpoints.dir: hdfs://10.29.180.177:8020/flink-1.7.2/flink-checkpoints
state.savepoints.dir: hdfs://10.29.180.177:8020/flink-1.7.2/flink-savepoints
state.backend.incremental: true
rest.port: 8081
# The address under which the web-based HistoryServer listens.
historyserver.web.address: moapi-o-flink-01

# The port under which the web-based HistoryServer listens.
historyserver.web.port: 8082

# Comma separated list of directories to monitor for completed jobs.
historyserver.archive.fs.dir: hdfs://10.29.180.177:8020/flink-1.7.2/completed-jobs

# Interval in milliseconds for refreshing the monitored directories.
historyserver.archive.fs.refresh-interval: 10000
3.3.2 修改masters
cd /data/app_install/flink-1.7.2/conf
vim masters

添加以下两行配置:

moapi-o-flink-01:8081
moapi-o-flink-02:8081
3.3.3 修改slaves
cd /data/app_install/flink-1.7.2/conf
vim slaves

添加以下两行配置:

moapi-o-flink-01
moapi-o-flink-02
moapi-o-flink-03
3.3.4 修改log4j.properties
cd /data/app_install/flink-1.7.2/conf
vim log4j.properties

修改以下配置:

log4j.appender.file.file=/data/logs/flink-1.7.2/log/global.log

3.4 同步文件

提前在moapi-o-flink-02、moapi-o-flink-03上创建文件夹/data/app_install/flink-1.7.2

scp -r /data/app_install/flink-1.7.2/ dev@moapi-o-flink-02:/data/app_install/flink-1.7.2 

scp -r /data/app_install/flink-1.7.2/ dev@moapi-o-flink-03:/data/app_install/flink-1.7.2/ 

3.5 启动Flink集群

在moapi-o-flink-01启动flink集群

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

注意:
1.其中moapi-o-flink-01和moapi-o-flink-02配置了HA,所以它们两个都是master节点
2.moapi-o-flink-01上启动 history web ui进程
3.moapi-o-flink-01、moapi-o-flink-02和moapi-o-flink-03都是slaves节点

在moapi-o-flink-01上使用jps查看当前进程:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3h6nTJTk-1581046246139)(evernotecid://F4957800-1AA8-4E97-8F99-7B44D39F27C6/appyinxiangcom/3271105/ENResource/p102)]

10850 StandaloneSessionClusterEntrypoint该进程是flink的master进程
11358 TaskManagerRunner 该进程是负责flink任务管理的进程
9529 HistoryServer 该进程是负责查看flink提交任务历史的web ui进程

在moapi-o-flink-02上使用jps查看当前进程:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yiWEBj5u-1581046246140)(evernotecid://F4957800-1AA8-4E97-8F99-7B44D39F27C6/appyinxiangcom/3271105/ENResource/p100)]
在moapi-o-flink-03上使用jps查看当前进程:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iz4Z6Yxq-1581046246141)(evernotecid://F4957800-1AA8-4E97-8F99-7B44D39F27C6/appyinxiangcom/3271105/ENResource/p101)]

如果上述几台机器进程都正常,说明flink standalone 模式集群已经可用

3.6 启动Flink任务

bin/flink run -d -c com.tcl.flink.FlinkReadKafkaPvUv job_jars/flink_study-1.0-SNAPSHOT-jar-with-dependencies.jar

说明:
1.参数 -d 表示后台运行
2.参数 -c 表示要执行的类,com.tcl.flink.FlinkReadKafkaPvUv
3.job_jars/flink_study-1.0-SNAPSHOT-jar-with-dependencies.jar 任务jar包

你可能感兴趣的:(Flink)