[Bug] mesh proxyless communicate with istio generate cert failed.
- 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
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