美文网首页
Flink on k8s

Flink on k8s

作者: john瀚 | 来源:发表于2020-07-01 17:27 被阅读0次

1 启动 Session

./bin/kubernetes-session.sh -Dkubernetes.cluster-id=k8s-session-1 -Dkubernetes.container.image=registry.aibee.cn/aibee/platform/flink  -Dkubernetes.container.image.pull-policy=Always -Djobmanager.heap.size=4096m -Dtaskmanager.memory.process.size=4096m -Dtaskmanager.numberOfTaskSlots=4 -Dkubernetes.jobmanager.cpu=1 -Dkubernetes.taskmanager.cpu=2

默认的namespace为default
可以使用下面的命令,查看创的pod

kubectl get pod | grep k8s-session-1

2 提交 job 到 Session

./bin/flink run -d -p 10 -e kubernetes-session -Dkubernetes.cluster-id=k8s-session-1 examples/streaming/WindowJoin.jar

3. 停止 Session

echo 'stop' | ./bin/kubernetes-session.sh -Dkubernetes.cluster-id=k8s-session-1 -Dexecution.attached=true

也可以手工删除资源:

kubectl delete service/k8s-session-1

默认情况下, JobManager 和 TaskManager 只会将 log 写到各自 pod 的 /opt/flink/log 。如果想通过 kubectl logs 看到日志,需要将 log 输出到控制台。要做如下修改 FLINK_HOME/conf 目录下的 log4j.properties 文件。

log4j.rootLogger=INFO, file, console

# Log all infos to the console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p %-60c %x - %m%n

然后启动 session cluster 的命令行需要带上参数:

-Dkubernetes.container-start-command-template="%java% %classpath% %jvmmem% %jvmopts% %logging% %class% %args%"

相关文章

网友评论

      本文标题:Flink on k8s

      本文链接:https://www.haomeiwen.com/subject/otjhqktx.html