It works now. Job manager is able to start. But now, I have run into
another issue.

It seems job manager is trying to create configmap in default namespace and
namespace/service account where I run job manager does not have access to
configmap

GET at:
https://X.X.X.X/api/v1/namespaces/default/configmaps/dev-cluster-restserver-leader.
Message: Forbidden!Configured service account doesn't have access. Service
account may have been revoked. configmaps "dev-cluster-restserver-leader"
is forbidden: User "system:serviceaccount:apps-dev:apps" cannot get
resource "configmaps" in API group "" in the namespace "default".

Is there a workaround apart from adding permission? Can leader configmap be
created in the same namespace as Job Manager?

On Wed, Jan 20, 2021 at 7:42 PM Yang Wang <danrtsey...@gmail.com> wrote:

> You do not need to put flink-kubernetes_2.12-1.12.1.jar under the plugin
> directory. Only the S3 fs jar
> needs to be put there.
>
> I think I found the root cause. It seems your flink-dist is still 1.11.
> Do you want to use the image 1.11 and enable the K8s HA at the same time?
> I think it could not work. Because the HA related codes have been
> refactored from release 1.12.
> Even though you copy the flink-kubernetes_2.12-1.12.1.jar to
> /opt/flink/lib and make the KubernetesHaServicesFactory class
> could be resolved. It will encounter other issues after then.
>
> Could you please try with the latest Flink 1.12 image?
> docker pull apache/flink:1.12.1
>
> Best,
> Yang
>
> Ashish Nigam <ashnigamt...@gmail.com> 于2021年1月21日周四 上午8:05写道:
>
>> I did move to 1.12.1 version and also ensured that docker has kubernetes
>> jar file in the right location, i.e.
>> /opt/flink/plugins/s3-fs-presto/flink-kubernetes_2.12-1.12.1.jar
>>
>> But job manager is still not able to find the class
>>
>> 2021-01-21 00:00:49,376 ERROR
>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint        [] - Could not
>> start cluster entrypoint StandaloneApplicationClusterEntryPoint.
>> org.apache.flink.runtime.entrypoint.ClusterEntrypointException: Failed to
>> initialize the cluster entrypoint StandaloneApplicationClusterEntryPoint.
>> at
>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint.startCluster(ClusterEntrypoint.java:190)
>> ~[flink-dist_2.12-1.11.2.jar:1.11.2]
>> at
>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint.runClusterEntrypoint(ClusterEntrypoint.java:520)
>> [flink-dist_2.12-1.11.2.jar:1.11.2]
>> at
>> org.apache.flink.container.entrypoint.StandaloneApplicationClusterEntryPoint.main(StandaloneApplicationClusterEntryPoint.java:94)
>> [flink-dist_2.12-1.11.2.jar:1.11.2]
>> Caused by: org.apache.flink.util.FlinkException: Could not instantiate
>> class
>> 'org.apache.flink.kubernetes.highavailability.KubernetesHaServicesFactory'
>> of type
>> 'org.apache.flink.runtime.highavailability.HighAvailabilityServicesFactory'.
>> Please make sure that this class is on your class path.
>> at
>> org.apache.flink.util.InstantiationUtil.instantiate(InstantiationUtil.java:352)
>> ~[flink-dist_2.12-1.11.2.jar:1.11.2]
>> at
>> org.apache.flink.runtime.highavailability.HighAvailabilityServicesUtils.loadCustomHighAvailabilityServicesFactory(HighAvailabilityServicesUtils.java:263)
>> ~[flink-dist_2.12-1.11.2.jar:1.11.2]
>> at
>> org.apache.flink.runtime.highavailability.HighAvailabilityServicesUtils.createCustomHAServices(HighAvailabilityServicesUtils.java:246)
>> ~[flink-dist_2.12-1.11.2.jar:1.11.2]
>> at
>> org.apache.flink.runtime.highavailability.HighAvailabilityServicesUtils.createHighAvailabilityServices(HighAvailabilityServicesUtils.java:126)
>> ~[flink-dist_2.12-1.11.2.jar:1.11.2]
>> at
>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint.createHaServices(ClusterEntrypoint.java:306)
>> ~[flink-dist_2.12-1.11.2.jar:1.11.2]
>> at
>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint.initializeServices(ClusterEntrypoint.java:269)
>> ~[flink-dist_2.12-1.11.2.jar:1.11.2]
>> at
>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint.runCluster(ClusterEntrypoint.java:211)
>> ~[flink-dist_2.12-1.11.2.jar:1.11.2]
>> at
>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint.lambda$startCluster$0(ClusterEntrypoint.java:172)
>> ~[flink-dist_2.12-1.11.2.jar:1.11.2]
>> at
>> org.apache.flink.runtime.security.contexts.NoOpSecurityContext.runSecured(NoOpSecurityContext.java:30)
>> ~[flink-dist_2.12-1.11.2.jar:1.11.2]
>> at
>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint.startCluster(ClusterEntrypoint.java:171)
>> ~[flink-dist_2.12-1.11.2.jar:1.11.2]
>> ... 2 more
>> Caused by: java.lang.ClassNotFoundException:
>> org.apache.flink.kubernetes.highavailability.KubernetesHaServicesFactory
>> at jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source) ~[?:?]
>> at jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown
>> Source) ~[?:?]
>> at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:?]
>>
>> On Mon, Jan 18, 2021 at 7:52 PM Yang Wang <danrtsey...@gmail.com> wrote:
>>
>>> Class
>>> "org.apache.flink.kubernetes.highavailability.KubernetesHaServicesFactory"
>>> is introduced from 1.12.0 version.
>>> You could try with the latest version 1.12.1[1].
>>>
>>> Will that jar file need to be copied under
>>>> /opt/flink/plugins/s3-fs-presto folder?
>>>
>>> Yes, you need to copy the s3 fs implementation to plugin directory.
>>> An alternative is you could set the environment to enable the plugin[1].
>>>
>>> [1].
>>> https://hub.docker.com/r/apache/flink/tags?page=1&ordering=last_updated&name=1.12.1
>>> [2].
>>> https://ci.apache.org/projects/flink/flink-docs-master/deployment/resource-providers/standalone/docker.html#using-filesystem-plugins
>>>
>>> Best,
>>> Yang
>>>
>>> Ashish Nigam <ashnigamt...@gmail.com> 于2021年1月18日周一 下午11:15写道:
>>>
>>>> Hi,
>>>> I am not able to identify maven artifact that will have
>>>> implementation for this class
>>>>
>>>> org.apache.flink.kubernetes.highavailability.KubernetesHaServicesFactory
>>>>
>>>>
>>>> I am using info in this link to test out HA implementation
>>>>
>>>> https://ci.apache.org/projects/flink/flink-docs-release-1.12/deployment/ha/kubernetes_ha.html
>>>>
>>>> Please point me to the right artifact. Also, I plan to use S3 bucket as
>>>> storageDir. So, will that jar file need to be copied under
>>>> /opt/flink/plugins/s3-fs-presto folder?
>>>>
>>>> Thanks
>>>> Ashish
>>>>
>>>

Reply via email to