Since the fabric8 Kubernetes client does not build "org.bouncycastle"
dependencies in the main
jar, maybe we need to have the them in the classpath. Could you also put
the bcpkix-jdk15on-1.67.jar
in the client image, not only container(aka application) image?

I think you need to build you own Flink image, not directly using
the flink:1.11-scala_2.12-java8.


Best,
Yang




Kevin Kwon <fsw0...@gmail.com> 于2020年11月14日周六 上午5:26写道:

> Hi guys, I'm trying out the native K8s cluster and having trouble with SSL
> I think.
>
> I use *k3d* as my local cluster for experiment
>
> here's how I launch my cluster
>
> k3d cluster create
>
> docker run \
> -u flink:flink \
> -v /Users/user/.kube:/opt/flink/.kube \
> --network host \
>  --entry-point /bin/bash \
>  flink:1.11-scala_2.12-java8 \
> /opt/flink/bin/flink run-application \
> -p 8 \
> -t kubernetes-application \
> -Dkubernetes.cluster-id=k3d-k3s-default \
> -Dkubernetes.container.image=local.registry:5000/mycompany/app:0.0.1 \
> -Dkubernetes.namespace=mycompany \
> -Dkubernetes.rest-service.exposed.type=NodeType \
> -Dkubernetes.taskmanager.cpu=1 \
> -Dresourcemanager.taskmanager-timeout=360000 \
> -Dtaskmanager.memory.process.size=2048m \
> -Dtaskmanager.numberOfTaskSlots=1 \
> local://opt/flink/usrlib/app.jar
>
>
> however I get the following error
>
> io.fabric8.kubernetes.client.KubernetesClientException: JcaPEMKeyConverter
> is provided by BouncyCastle, an optional dependency. To use support for EC
> Keys you must explicitly add this dependency to classpath.
>
>         at
> io.fabric8.kubernetes.client.internal.CertUtils.handleECKey(CertUtils.java:161)
>
>         at
> io.fabric8.kubernetes.client.internal.CertUtils.loadKey(CertUtils.java:131)
>
>         at
> io.fabric8.kubernetes.client.internal.CertUtils.createKeyStore(CertUtils.java:111)
>
>         at
> io.fabric8.kubernetes.client.internal.CertUtils.createKeyStore(CertUtils.java:243)
>
>         at
> io.fabric8.kubernetes.client.internal.SSLUtils.keyManagers(SSLUtils.java:128)
>
>         at
> io.fabric8.kubernetes.client.internal.SSLUtils.keyManagers(SSLUtils.java:122)
>
>         at
> io.fabric8.kubernetes.client.utils.HttpClientUtils.createHttpClient(HttpClientUtils.java:82)
>
>         at
> io.fabric8.kubernetes.client.utils.HttpClientUtils.createHttpClient(HttpClientUtils.java:62)
>
>         at
> io.fabric8.kubernetes.client.BaseClient.<init>(BaseClient.java:51)
>
>         at
> io.fabric8.kubernetes.client.DefaultKubernetesClient.<init>(DefaultKubernetesClient.java:105)
>
>         at
> org.apache.flink.kubernetes.kubeclient.KubeClientFactory.fromConfiguration(KubeClientFactory.java:72)
>
>         at
> org.apache.flink.kubernetes.KubernetesClusterClientFactory.createClusterDescriptor(KubernetesClusterClientFactory.java:58)
>
>         at
> org.apache.flink.kubernetes.KubernetesClusterClientFactory.createClusterDescriptor(KubernetesClusterClientFactory.java:39)
>
>         at
> org.apache.flink.client.deployment.application.cli.ApplicationClusterDeployer.run(ApplicationClusterDeployer.java:61)
>
>         at
> org.apache.flink.client.cli.CliFrontend.runApplication(CliFrontend.java:197)
>
>         at
> org.apache.flink.client.cli.CliFrontend.parseParameters(CliFrontend.java:919)
>
>         at
> org.apache.flink.client.cli.CliFrontend.lambda$main$10(CliFrontend.java:992)
>
>         at
> org.apache.flink.runtime.security.contexts.NoOpSecurityContext.runSecured(NoOpSecurityContext.java:30)
>
>         at
> org.apache.flink.client.cli.CliFrontend.main(CliFrontend.java:992)
>
>
> I've tried copying *bcpkix-jdk15on-1.67.jar *binary in to the app image
> in /opt/flink/lib directory, but no luck
>
>

Reply via email to