Using fabric8 java library : getting error while copying the file from one pod to another pod

75 Views Asked by At

I am building springboot application using fabric8 java client library. I have use case to copy a file from this spring service pod to another pod running in the same namespace. This is working fine when I run it in my local, but facing below issue while execute in the kubernetes. Please note that, I am create jobs and list pods but only facing issue while copying the files

 cluster`2023-10-17T05:35:36.844Z ERROR 1 --- [//10.96.0.1/...] i.f.k.c.d.i.ExecWebSocketListener        : Exec Failure

io.fabric8.kubernetes.client.http.WebSocketHandshakeException: null
    at io.fabric8.kubernetes.client.http.StandardHttpClient.lambda$buildWebSocket$17(StandardHttpClient.java:240) ~[kubernetes-client-api-6.8.1.jar!/:na]
    at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:863) ~[na:na]
    at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:841) ~[na:na]
    at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510) ~[na:na]
    at java.base/java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:2147) ~[na:na]
    at io.fabric8.kubernetes.client.utils.AsyncUtils.lambda$retryWithExponentialBackoff$3(AsyncUtils.java:90) ~[kubernetes-client-api-6.8.1.jar!/:na]
    at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:863) ~[na:na]
    at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:841) ~[na:na]
    at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510) ~[na:na]
    at java.base/java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:2147) ~[na:na]
    at io.fabric8.kubernetes.client.okhttp.OkHttpWebSocketImpl$1.onFailure(OkHttpWebSocketImpl.java:88) ~[kubernetes-httpclient-okhttp-6.8.1.jar!/:na]
    at okhttp3.internal.ws.RealWebSocket.failWebSocket(RealWebSocket.kt:592) ~[okhttp-4.10.0.jar!/:na]
    at okhttp3.internal.ws.RealWebSocket$connect$1.onResponse(RealWebSocket.kt:174) ~[okhttp-4.10.0.jar!/:na]
    at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:519) ~[okhttp-4.10.0.jar!/:na]
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[na:na]
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[na:na]
    at java.base/java.lang.Thread.run(Thread.java:833) ~[na:na]
    Suppressed: java.lang.Throwable: waiting here
        at io.fabric8.kubernetes.client.utils.Utils.waitUntilReady(Utils.java:174) ~[kubernetes-client-api-6.8.1.jar!/:na]
        at io.fabric8.kubernetes.client.utils.Utils.waitUntilReadyOrFail(Utils.java:185) ~[kubernetes-client-api-6.8.1.jar!/:na]
        at io.fabric8.kubernetes.client.dsl.internal.core.v1.PodOperationsImpl.setupConnectionToPod(PodOperationsImpl.java:382) ~[kubernetes-client-6.8.1.jar!/:na]
        at io.fabric8.kubernetes.client.dsl.internal.core.v1.PodOperationsImpl.exec(PodOperationsImpl.java:288) ~[kubernetes-client-6.8.1.jar!/:na]
        at io.fabric8.kubernetes.client.dsl.internal.uploadable.PodUpload.upload(PodUpload.java:90) ~[kubernetes-client-6.8.1.jar!/:na]
        at io.fabric8.kubernetes.client.dsl.internal.uploadable.PodUpload.uploadTar(PodUpload.java:141) ~[kubernetes-client-6.8.1.jar!/:na]
        at io.fabric8.kubernetes.client.dsl.internal.uploadable.PodUpload.upload(PodUpload.java:55) ~[kubernetes-client-6.8.1.jar!/:na]
        at io.fabric8.kubernetes.client.dsl.internal.core.v1.PodOperationsImpl.lambda$upload$4(PodOperationsImpl.java:427) ~[kubernetes-client-6.8.1.jar!/:na]
        at io.fabric8.kubernetes.client.utils.internal.OptionalDependencyWrapper.wrapRunWithOptionalDependency(OptionalDependencyWrapper.java:39) ~[kubernetes-client-6.8.1.jar!/:na]
        at io.fabric8.kubernetes.client.dsl.internal.core.v1.PodOperationsImpl.upload(PodOperationsImpl.java:425) ~[kubernetes-client-6.8.1.jar!/:na]`

I have tried creating the required roles on pod/exec

0

There are 0 best solutions below