Hey Jonas,
you could also try to use the ´s3p://´ scheme to directly specify that
presto should be used. Also check if your user that executes the process is
able to read the jars.

Am Mi., 25. Aug. 2021 um 10:01 Uhr schrieb jonas eyob <jonas.e...@gmail.com
>:

> Thanks David for the quick response!
>
> *face palm* - Thanks a lot, that seems to have addressed the
> NullPointerException issue.
> May I also suggest that this [1] page be updated, since it says the key is
> "high-availability.cluster-id"
>
> This led me to another issue however: 
> "org.apache.flink.core.fs.UnsupportedFileSystemSchemeException:
> Could not find a file system implementation for scheme 's3'"
>
> The section [2] describe how I can either use environment variables e.g.
> ENABLE_BUILT_IN_PLUGINS or bake that in to the image by copying the
> provided plugins in opt/ under /plugins
>
> Dockerfile (snippet)
> # Configure flink provided plugin for S3 access
> RUN mkdir -p $FLINK_HOME/plugins/s3-fs-presto
> RUN cp $FLINK_HOME/opt/flink-s3-fs-presto-*.jar
> $FLINK_HOME/plugins/s3-fs-presto/
>
> When bashing into the image:
>
> flink@dd86717a92a0:~/plugins/s3-fs-presto$ ls
> flink-s3-fs-presto-1.12.5.jar
>
> Any idea?
>
> [1]
> https://ci.apache.org/projects/flink/flink-docs-release-1.13/docs/deployment/config/#high-availability
> [2]
> https://ci.apache.org/projects/flink/flink-docs-master/docs/deployment/filesystems/s3/#hadooppresto-s3-file-systems-plugins
>
>
> Den ons 25 aug. 2021 kl 08:00 skrev David Morávek <d...@apache.org>:
>
>> Hi Jonas,
>>
>> this exception is raised because "kubernetes.cluster-id" [1] is not set.
>> I'd also recommend setting "kubernetes.namespace" option, unless you're
>> using "default" namespace.
>>
>> I've filled FLINK-23961 [2] so we provide more descriptive warning for
>> this issue next time ;)
>>
>> [1]
>> https://ci.apache.org/projects/flink/flink-docs-master/docs/deployment/ha/kubernetes_ha/#example-configuration
>> [2] https://issues.apache.org/jira/browse/FLINK-23961
>>
>> Best,
>> D.
>>
>> On Wed, Aug 25, 2021 at 8:48 AM jonas eyob <jonas.e...@gmail.com> wrote:
>>
>>> Hey, I've been struggling with this problem now for some days - driving
>>> me crazy.
>>>
>>> I have a standalone kubernetes Flink (1.12.5) using an application
>>> cluster mode approach.
>>>
>>> *The problem*
>>> I am getting a NullPointerException when specifying the FQN of the
>>> Kubernetes HA Service Factory class
>>> i.e.
>>> *org.apache.flink.kubernetes.highavailability.KubernetesHaServicesFactory*
>>>
>>> What other configurations besides the ones specified (here
>>> <https://ci.apache.org/projects/flink/flink-docs-release-1.13/docs/deployment/resource-providers/standalone/kubernetes/#common-cluster-resource-definitions>)
>>> may I be missing?
>>>
>>> Details:
>>> * we are using a custom image using the flink: 1.12
>>> <https://hub.docker.com/layers/flink/library/flink/1.12/images/sha256-4b4290888e30d27a28517bac3b1678674cd4b17aa7b8329969d1d12fcdf68f02?context=explore>
>>> as base image
>>>
>>> flink-conf.yaml -- thought this may be useful?
>>> flink-conf.yaml: |+
>>> jobmanager.rpc.address: {{ $fullName }}-jobmanager
>>> jobmanager.rpc.port: 6123
>>> jobmanager.memory.process.size: 1600m
>>> taskmanager.numberOfTaskSlots: 2
>>> taskmanager.rpc.port: 6122
>>> taskmanager.memory.process.size: 1728m
>>> blob.server.port: 6124
>>> queryable-state.proxy.ports: 6125
>>> parallelism.default: 2
>>> scheduler-mode: reactive
>>> execution.checkpointing.interval: 10s
>>> restart-strategy: fixed-delay
>>> restart-strategy.fixed-delay.attempts: 10
>>> high-availability:
>>> org.apache.flink.kubernetes.highavailability.KubernetesHaServicesFactory
>>> high-availability.cluster-id: /{{ $fullName }}
>>> high-availability.storageDir: s3://redacted-flink-dev/recovery
>>>
>>> *Snippet of Job Manager pod log*
>>> 2021-08-25 06:14:20,652 INFO
>>>  org.apache.flink.runtime.entrypoint.ClusterEntrypoint        [] - Shutting
>>> StandaloneApplicationClusterEntryPoint down with application status FAILED.
>>> Diagnostics org.apache.flink.util.FlinkException: Could not create the ha
>>> services from the instantiated HighAvailabilityServicesFactory
>>> org.apache.flink.kubernetes.highavailability.KubernetesHaServicesFactory.
>>> at
>>> org.apache.flink.runtime.highavailability.HighAvailabilityServicesUtils.createCustomHAServices(HighAvailabilityServicesUtils.java:268)
>>> at
>>> org.apache.flink.runtime.highavailability.HighAvailabilityServicesUtils.createHighAvailabilityServices(HighAvailabilityServicesUtils.java:124)
>>> at
>>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint.createHaServices(ClusterEntrypoint.java:338)
>>> at
>>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint.initializeServices(ClusterEntrypoint.java:296)
>>> at
>>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint.runCluster(ClusterEntrypoint.java:224)
>>> at
>>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint.lambda$startCluster$1(ClusterEntrypoint.java:178)
>>> at
>>> org.apache.flink.runtime.security.contexts.NoOpSecurityContext.runSecured(NoOpSecurityContext.java:28)
>>> at
>>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint.startCluster(ClusterEntrypoint.java:175)
>>> at
>>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint.runClusterEntrypoint(ClusterEntrypoint.java:585)
>>> at
>>> org.apache.flink.container.entrypoint.StandaloneApplicationClusterEntryPoint.main(StandaloneApplicationClusterEntryPoint.java:85)
>>> Caused by: java.lang.NullPointerException
>>> at
>>> org.apache.flink.util.Preconditions.checkNotNull(Preconditions.java:59)
>>> at
>>> org.apache.flink.kubernetes.kubeclient.Fabric8FlinkKubeClient.<init>(Fabric8FlinkKubeClient.java:85)
>>> at
>>> org.apache.flink.kubernetes.kubeclient.FlinkKubeClientFactory.fromConfiguration(FlinkKubeClientFactory.java:106)
>>> at
>>> org.apache.flink.kubernetes.highavailability.KubernetesHaServicesFactory.createHAServices(KubernetesHaServicesFactory.java:37)
>>> at
>>> org.apache.flink.runtime.highavailability.HighAvailabilityServicesUtils.createCustomHAServices(HighAvailabilityServicesUtils.java:265)
>>> ... 9 more
>>> .
>>>
>>> --
>>> Many thanks,
>>> Jonas
>>>
>>
>
> --
> *Med Vänliga Hälsningar*
> *Jonas Eyob*
>

Reply via email to