File tree Expand file tree Collapse file tree 2 files changed +21
-2
lines changed
examples/features/csm_observability Expand file tree Collapse file tree 2 files changed +21
-2
lines changed Original file line number Diff line number Diff line change @@ -29,6 +29,7 @@ import (
2929
3030 "google.golang.org/grpc"
3131 "google.golang.org/grpc/credentials/insecure"
32+ xdscreds "google.golang.org/grpc/credentials/xds"
3233 "google.golang.org/grpc/examples/features/proto/echo"
3334 "google.golang.org/grpc/stats/opentelemetry"
3435 "google.golang.org/grpc/stats/opentelemetry/csm"
@@ -56,7 +57,13 @@ func main() {
5657 cleanup := csm .EnableObservability (context .Background (), opentelemetry.Options {MetricsOptions : opentelemetry.MetricsOptions {MeterProvider : provider }})
5758 defer cleanup ()
5859
59- cc , err := grpc .NewClient (* target , grpc .WithTransportCredentials (insecure .NewCredentials ()))
60+ // Set up xds credentials that fall back to insecure as described in:
61+ // https://cloud.google.com/service-mesh/docs/service-routing/security-proxyless-setup#workloads_are_unable_to_communicate_in_the_security_setup.
62+ creds , err := xdscreds .NewClientCredentials (xdscreds.ClientOptions {FallbackCreds : insecure .NewCredentials ()})
63+ if err != nil {
64+ log .Fatalf ("Failed to create xDS credentials: %v" , err )
65+ }
66+ cc , err := grpc .NewClient (* target , grpc .WithTransportCredentials (creds ))
6067 if err != nil {
6168 log .Fatalf ("Failed to start NewClient: %v" , err )
6269 }
Original file line number Diff line number Diff line change @@ -28,9 +28,12 @@ import (
2828 "net/http"
2929
3030 "google.golang.org/grpc"
31+ "google.golang.org/grpc/credentials/insecure"
32+ xdscreds "google.golang.org/grpc/credentials/xds"
3133 pb "google.golang.org/grpc/examples/features/proto/echo"
3234 "google.golang.org/grpc/stats/opentelemetry"
3335 "google.golang.org/grpc/stats/opentelemetry/csm"
36+ "google.golang.org/grpc/xds"
3437
3538 "github.com/prometheus/client_golang/prometheus/promhttp"
3639 "go.opentelemetry.io/otel/exporters/prometheus"
@@ -67,7 +70,16 @@ func main() {
6770 if err != nil {
6871 log .Fatalf ("Failed to listen: %v" , err )
6972 }
70- s := grpc .NewServer ()
73+ // Set up xds credentials that fall back to insecure as described in:
74+ // https://cloud.google.com/service-mesh/docs/service-routing/security-proxyless-setup#workloads_are_unable_to_communicate_in_the_security_setup.
75+ creds , err := xdscreds .NewServerCredentials (xdscreds.ServerOptions {FallbackCreds : insecure .NewCredentials ()})
76+ if err != nil {
77+ log .Fatalf ("Failed to create xDS credentials: %v" , err )
78+ }
79+ s , err := xds .NewGRPCServer (grpc .Creds (creds ))
80+ if err != nil {
81+ log .Fatalf ("Failed to start xDS Server: %v" , err )
82+ }
7183 pb .RegisterEchoServer (s , & echoServer {addr : ":" + * port })
7284
7385 log .Printf ("Serving on %s\n " , * port )
You can’t perform that action at this time.
0 commit comments