Flink on k8s 环境搭建(三) 待完善

 flink on k8s 实践

Flink on k8s 环境搭建(二)_wangqiaowq的博客-CSDN博客

Flink 需要考虑3个问题

1、Flink需要添加部分依赖包到flink/lib下,所以需要通过dockfile的方式自定义制作flink image
2、flink 日志持久化

3、flink checkpoint 的存储 和 NFS的安装

1)安装 nfs

1、所有节点安装 nfs

yum -y install  nfs-utils rpcbind

2、在 master 节点创建共享目录并授权

mkdir /opt/nfsdata

#授权共享目录

chmod 666 /opt/nfsdata/

扫描二维码关注公众号,回复: 16489804 查看本文章

3、配置 exports 文件

cat > /etc/exports<<EOF
/opt/nfsdata *(rw,no_root_squash,no_all_squash,sync)
EOF

exportfs -r
systemctl start rpcbind
systemctl start nfs-server
systemctl enable rpcbind
systemctl enable nfs-server
Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.

 showmount -e

  • -e 显示 NFS 服务器的共享列表
  • -a 显示本机挂载的文件资源的情况 NFS 资源的情况
  • -v 显示版本号

客户端 (找1个节点作为客户端)

#安装

yum -y install  nfs-utils rpcbind

 #启动rpc服务

systemctl start rpcbind

systemctl enable rpcbind

#创建挂载目录

mkdir /mnt/nfsdata
#挂载

echo "192.168.4.100:/opt/nfsdata /mnt/nfsdata     nfs    defaults  0 1">> /etc/fstab

192.168.4.100 为虚拟IP  暂未成功?

成功:

mount -t nfs 192.168.1.247:/opt/nfsdata /mnt/nfsdata

2)配置keeplived 

yum -y install keepalived

cp /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf_bak

cat > /etc/keepalived/keepalived.conf<<EOF
global_defs { 
    router_id master                         #id可以随便设
}
vrrp_script chk_nfs {
    script "/etc/keepalived/nfs_check.sh"    #监控脚本
    interval 2
    weight -20          #keepalived部署了两台,所以设为20,如果三台就设为30
}
vrrp_instance VI_1 {
    state BACKUP                            #两台主机都设为backup非抢占模式
    interface ens192                         #网卡名写自己的,不要照抄
    virtual_router_id 51
    priority 100          #服务启动优先级,值越大,优先级越高,BACKUP 不能大于MASTER
    advert_int 1
    nopreempt             #设置为非抢占模式必须要该参数
    authentication {
        auth_type PASS
        auth_pass Kibo
    }  
    track_script {
        chk_nfs
    }
    virtual_ipaddress {
        192.168.4.100     #虚拟ip
    }

EOF

Slave 节点

global_defs {
    router_id master  
}
vrrp_script chk_nfs {
    script "/etc/keepalived/nfs_check.sh"   
    interval 2
    weight -20  
}
vrrp_instance VI_1 {
    state BACKUP   
    interface ens192
    virtual_router_id 51
    priority 80  
    advert_int 1
    nopreempt      
    authentication {
        auth_type PASS
        auth_pass 1111
    }  
    track_script {
        chk_nfs
    }
    virtual_ipaddress {
        192.168.4.100
    }
}

vim /etc/keepalived/nfs_check.sh

#!/bin/bash
A=`ps -C nfsd --no-header | wc -l`
if [ $A -eq 0 ];then
        systemctl restart nfs-server.service
        sleep 2
        if [ `ps -C nfsd --no-header| wc -l` -eq 0 ];then
            pkill keepalived
        fi
fi

chmod 755 /etc/keepalived/nfs_check.sh

# 输入定时任务
* * * * *  /etc/keepalived/nfs_check.sh &> /dev/null

3)构建持久化


 

猜你喜欢

转载自blog.csdn.net/wangqiaowq/article/details/131913568