官网例子[1]没有改动之前,是可以正常启动的
原来的配置文件内容如下
...
"volumes": [
{
"name": "flink-config-volume",
"configMap": {
"name": "flink-config",
"items": [
{
"key": "flink-conf.yaml",
"path": "flink-conf.yaml"
},
{
"key": "log4j-console.properties",
"path": "log4j-console.properties"
}
],
"defaultMode": 420
}
}
],
...
"volumeMounts": [
{
"name": "flink-config-volume",
"mountPath": "/opt/flink/conf"
}
],
...
后面在k8s上修改了yaml文件,就是增加了其他volumes
然后增加uploadjar, completed-jobs和lib的挂载,如下
...
"volumes": [
{
"name": "flink-config-volume",
"configMap": {
"name": "flink-config",
"items": [
{
"key": "flink-conf.yaml",
"path": "flink-conf.yaml"
},
{
"key": "log4j-console.properties",
"path": "log4j-console.properties"
}
],
"defaultMode": 420
}
},
{
"name": "flink-uploadjar-volume",
"hostPath": {
"path": "/data/volumes/flink/jobmanager/uploadjar",
"type": ""
}
},
{
"name": "flink-completejobs-volume",
"hostPath": {
"path": "/data/volumes/flink/jobmanager/completed-jobs/",
"type": ""
}
},
{
"name": "libs-volume",
"hostPath": {
"path": "/data/volumes/flink/jobmanager/lib",
"type": ""
}
}
],
...
"volumeMounts": [
{
"name": "flink-config-volume",
"mountPath": "/opt/flink/conf"
},
{
"name": "flink-uploadjar-volume",
"mountPath": "/opt/flink/flink-uploadjar"
},
{
"name": "flink-completejobs-volume",
"mountPath": "/opt/flink/completed-jobs/"
},
{
"name": "libs-volume",
"mountPath": "/opt/flink/lib"
}
],
...
增加了volume之后就报了错误
2020-09-29T12:09:33.055804861Z Starting Job Manager
2020-09-29T12:09:33.061359237Z sed: couldn't open temporary file
/opt/flink/conf/sedVef7YR: Read-only file system
2020-09-29T12:09:33.06561576Z sed: couldn't open temporary file
/opt/flink/conf/sed4a7zGR: Read-only file system
2020-09-29T12:09:33.068683501Z /docker-entrypoint.sh: 72:
/docker-entrypoint.sh: cannot create /opt/flink/conf/flink-conf.yaml:
Permission denied
2020-09-29T12:09:33.068700999Z /docker-entrypoint.sh: 91:
/docker-entrypoint.sh: cannot create /opt/flink/conf/flink-conf.yaml.tmp:
Read-only file system
2020-09-29T12:09:33.919147511Z Starting standalonesession as a console
application on host flink-jobmanager-6d5bc45dbb-jjs4f.
2020-09-29T12:09:34.154740531Z log4j:WARN No appenders could be found for
logger (org.apache.flink.runtime.entrypoint.ClusterEntrypoint).
2020-09-29T12:09:34.154769537Z log4j:WARN Please initialize the log4j system
properly.
2020-09-29T12:09:34.154776198Z log4j:WARN See
http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
经过排查,发现是在挂载了/opt/flink/lib之后就会出错,挂载其他目录是可以正常运行的/opt/flink/flink-uploadjar,/opt/flink/completed-jobs/
就是增加了下面这个配置出现的错误
"volumeMounts": [
...
{
"name": "libs-volume",
"mountPath": "/opt/flink/lib"
}
...
],
[1]:https://ci.apache.org/projects/flink/flink-docs-release-1.11/ops/deployment/kubernetes.html#session-cluster-resource-definitions
--
Sent from: http://apache-flink.147419.n8.nabble.com/