Hi,Yang Wang! 很开心可以收到你的回复,你的回复帮助很大,让我知道了问题的方向。我再补充些信息,希望可以帮我进一步判断一下问题根源。
在JM报错的地方,No hostname could be resolved for ip address xxxxx ,报出来的ip是k8s分配给flink pod的内网ip,不是宿主机的ip。请问这个问题是出在哪里呢 Best! | | a511955993 | | 邮箱:a511955...@163.com | 签名由 网易邮箱大师 定制 在2020年07月22日 18:18,Yang Wang 写道: 抱歉回复晚了 我这边也验证了一下,在你所说的地方确实是ip:port,但是提交任务都是正常的 如果你的日志里面一直在刷No hostname could be resolved for the IP address,应该是集群的coredns 有问题,由ip地址反查hostname查不到。你可以起一个busybox验证一下是不是这个ip就解析不了,有 可能是coredns有问题 Flink里面用的是InetAddress#getHostFromNameService来跟进IP地址获取FQDN的 Best, Yang SmileSmile <a511955...@163.com> 于2020年7月10日周五 下午1:10写道: > hi Yang > > 在1.10版本,running的作业点击拓普图中随便一个operation,有detail subtasks taskmanagers xxx x > 这行,taskmanagers这栏里的host,显示的是 podname:端口 > > 在1.11变成ip:端口 > > 目前我这边遇到的情况是,构建了一个有120slot的集群,作业并行度是120。 提交到jm后jm就失联了,jm timeout。观察jm日志,疯狂在刷 > > > No hostname could be resolved for the IP address 10.35.160.5, using IP > address as host name. Local input split assignment (such as for HDFS files) > may be impacted > > > 目前观察到的改变主要是这块podname和ip的区别,其他不确定 > > > | | > a511955993 > | > | > 邮箱:a511955...@163.com > | > > 签名由 网易邮箱大师 定制 > > 在2020年07月10日 12:13,Yang Wang 写道: > 我记得1.11里面对host这个地方应该是没有改动,taskmanager.network.bind-policy的 > 默认值一会都是ip。所以你说的UI上是podname,这个是哪里的?正常TM列表akka地址 > 都是ip地址的 > > > Best, > Yang > > SmileSmile <a511955...@163.com> 于2020年7月10日周五 上午10:42写道: > > > hi yang wang > > > > 1.11版本的on kubernetes在hostname上有做什么变化吗? > > > > 作业运行的时候 flink ui上 tm变成ip:端口 > > ,在1.10版本,ui上是 podname:端口。 > > > > 作业启动的时候,jm日志一直在刷 > > > > No hostname could be resolved for the IP address 10.35.160.5, using IP > > address as host name. Local input split assignment (such as for HDFS > files) > > may be impacted > > > > > > > > > > | | > > a511955993 > > | > > | > > 邮箱:a511955...@163.com > > | > > > > 签名由 网易邮箱大师 定制 > > > > 在2020年07月09日 20:02,Yang Wang 写道: > > sed替换报错应该不是Pod启动失败的根本原因,因为目前的docker-entrypoint.sh做了修改 > > 才会这样[1] > > > > 你这个报错看着是执行bash-java-utils.jar报的错,确认你用的是社区的yaml文件[2],我运行是没有问题的。 > > 如果不是,需要你把你的yaml发出来 > > > > > > [1]. > > > https://github.com/apache/flink-docker/blob/dev-master/docker-entrypoint.sh > > [2]. > > > > > https://ci.apache.org/projects/flink/flink-docs-master/ops/deployment/kubernetes.html > > > > > > Best, > > Yang > > > > SmileSmile <a511955...@163.com> 于2020年7月9日周四 下午1:40写道: > > > > > hi > > > > > > 按照新版本的部署文件[1],会部署失败.如果将部署文件改用1.10版本,只是修改镜像文件和log4j文件,可以成功构建[2]。 > > > > > > > > > 目前看差别在于1.11启动jm和tm是通过args: > > > > > > ["jobmanager"]的方法,通过docker-entrypoint.sh[3]看到调用set_common_options方法的时候会sed > > > 本地挂载的flink-configuration-configmap.yaml导致失败。 > > > > > > > > > 1.10 版本是通过$FLINK_HOME/bin/jobmanager.sh启动。 > > > > > > command: ["/bin/bash", "-c", "$FLINK_HOME/bin/jobmanager.sh start;\ > > > while :; > > > do > > > if [[ -f $(find log -name '*jobmanager*.log' -print -quit) > ]]; > > > then tail -f -n +1 log/*jobmanager*.log; > > > fi; > > > done"] > > > > > > > > > 如果遇到该问题的,沿用1.10版本的部署方式部署1.11镜像可以成功。 1.11 版本的部署方式如果有大佬可以走通的,求分享。 > > > > > > > > > > > > [1] > > > > > > https://ci.apache.org/projects/flink/flink-docs-release-1.11/ops/deployment/kubernetes.html#session-cluster-resource-definitions > > > [2] > > > > > > https://ci.apache.org/projects/flink/flink-docs-release-1.10/ops/deployment/kubernetes.html#session-cluster-resource-definitions > > > [3] > > > > > > https://github.com/apache/flink-docker/blob/master/1.11/scala_2.11-debian/docker-entrypoint.sh > > > > > > > > > > > > | | > > > a511955993 > > > | > > > | > > > 邮箱:a511955...@163.com > > > | > > > > > > 签名由 网易邮箱大师 定制 > > > > > > 在2020年07月08日 16:38,SmileSmile 写道: > > > hi yun tang! > > > > > > 没有对 /opt/flink/config 目录下的文件做写操作。 只是按照官网上的配置文件进行部署,镜像用的也是社区的镜像。 > > > best! > > > > > > > > > > > > > > > | | > > > a511955993 > > > | > > > | > > > 邮箱:a511955...@163.com > > > | > > > > > > 签名由 网易邮箱大师 定制 > > > > > > 在2020年07月08日 16:29,Yun Tang 写道: > > > Hi > > > > > > 你是不是对 /opt/flink/conf > > > 目录下的文件进行了sed相关写操作?社区文档中使用的方法是将configmap挂载成本地的flink-conf.yaml > > > 等文件,而这个挂载的目录其实是不可写的。 > > > 直接修改configmap里面的内容,这样挂载时候就会自动更新了。 > > > > > > 祝好 > > > 唐云 > > > ________________________________ > > > From: SmileSmile <a511955...@163.com> > > > Sent: Wednesday, July 8, 2020 13:03 > > > To: Flink user-zh mailing list <user-zh@flink.apache.org> > > > Subject: flink 1.11 on kubernetes 构建失败 > > > > > > hi > > > > > > 按照文档[1]的方法部署session cluster on kubernetes,集群构建的时候出现了如下报错 > > > > > > > > > Starting Task Manager > > > sed: couldn't open temporary file /opt/flink/conf/sedVdyy6Q: Read-only > > > file system > > > sed: couldn't open temporary file /opt/flink/conf/sedcj5VKQ: Read-only > > > file system > > > /docker-entrypoint.sh: 72: /docker-entrypoint.sh: cannot create > > > /opt/flink/conf/flink-conf.yaml: Permission denied > > > sed: couldn't open temporary file /opt/flink/conf/sedB5eynR: Read-only > > > file system > > > /docker-entrypoint.sh: 120: /docker-entrypoint.sh: cannot create > > > /opt/flink/conf/flink-conf.yaml.tmp: Read-only file system > > > [ERROR] The execution result is empty. > > > [ERROR] Could not get JVM parameters and dynamic configurations > properly. > > > > > > > > > 是否有遇到同样的问题,支个招 > > > > > > > > > > > > [1] > > > > > > https://ci.apache.org/projects/flink/flink-docs-release-1.11/ops/deployment/kubernetes.html#session-cluster-resource-definitions > > > > > > > > > | | > > > a511955993 > > > | > > > | > > > 邮箱:a511955...@163.com > > > | > > > > > > 签名由 网易邮箱大师 定制 > > > > > >