apache / apache/dubbo

[Bug] mesh proxyless communicate with istio generate cert failed.

Open
#15,180 2 comments 0 reactions 0 assignees View on GitHub
help wanted type/enhancement
Dominant language
Java
Stars
41.6k
Forks
26.4k
Avg merge
15h 13m
Merged PRs (30d)
4

Description

### Pre-check

- [x] I am sure that all the content I provide is in English.

### Search before asking

- [x] I had searched in the [issues](https://github.com/apache/dubbo/issues?q=is%3Aissue) and found no similar issues.

### Apache Dubbo Component

Java SDK (apache/dubbo)

### Dubbo Version

dubbo java 3.2.9、 java 17、 k8s 1.27.6、 istio 1.23.5 、spring boot 3.3.9

### Steps to reproduce this issue

proxless mesh,pod start fail :
ERROR org.apache.dubbo.registry.xds.istio.IstioCitadelCertificateSigner - [DUBBO] Receive error message from Istio Citadel grpc stub., dubbo version: 3.2.9, current host: 10.244.111.45, error code: 1-28. This may be caused by , go to https://dubbo.apache.org/faq/1/28 to find instructions.
io.grpc.StatusRuntimeException: UNAUTHENTICATED: request authenticate failure
at io.grpc.Status.asRuntimeException(Status.java:537) ~[grpc-api-1.59.0.jar!/:1.59.0]
at io.grpc.stub.ClientCalls$StreamObserverToCallListenerAdapter.onClose(ClientCalls.java:481) [grpc-stub-1.59.0.jar!/:1.59.0]
at io.grpc.internal.DelayedClientCall$DelayedListener$3.run(DelayedClientCall.java:489) [grpc-core-1.59.0.jar!/:1.59.0]
at io.grpc.internal.DelayedClientCall$DelayedListener.delayOrExecute(DelayedClientCall.java:453) [grpc-core-1.59.0.jar!/:1.59.0]
at io.grpc.internal.DelayedClientCall$DelayedListener.onClose(DelayedClientCall.java:486) [grpc-core-1.59.0.jar!/:1.59.0]
at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:574) [grpc-core-1.59.0.jar!/:1.59.0]
at io.grpc.internal.ClientCallImpl.access$300(ClientCallImpl.java:72) [grpc-core-1.59.0.jar!/:1.59.0]
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInternal(ClientCallImpl.java:742) [grpc-core-1.59.0.jar!/:1.59.0]
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:723) [grpc-core-1.59.0.jar!/:1.59.0]
at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) [grpc-core-1.59.0.jar!/:1.59.0]
at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133) [grpc-core-1.59.0.jar!/:1.59.0]
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?]
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?]
at java.base/java.lang.Thread.run(Thread.java:833) [?:?]

### What you expected to happen

app start successfully

### Anything else

_No response_

### Are you willing to submit a pull request to fix on your own?

- [ ] Yes I am willing to submit a pull request on my own!

### Code of Conduct

- [x] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the proxyless mesh deployment with Java 17, Dubbo 3.2.9, Kubernetes 1.27.6, Istio 1.23.5, and Spring Boot 3.3.9. Trace the IstioCitadelCertificateSigner gRPC call and its UNAUTHENTICATED response; done means the pod starts successfully and the certificate is generated.

Written by the indexing model from the issue text.

Assessment

Tech stack
grpc, java, kubernetes, spring-boot
Domain
backend, distributed-systems, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.