GoogleCloudPlatform / microservices-demo

Sample cloud-first application with 10 microservices showcasing Kubernetes, Istio, and gRPC.
https://cymbal-shops.retail.cymbal.dev
Apache License 2.0
16.69k stars 7.1k forks source link

grpc probes component missing #1891

Closed yogeek closed 1 year ago

yogeek commented 1 year ago

Describe the bug

GRPC probes are enabled by default the kustomize README mentions a component to enable GRPC probes but it is missing

To Reproduce

deploy the 0.8.0 on a 1.23 k8s cluster => pod probes are GRPC but incompatible with a <1.24 cluster

NimJay commented 1 year ago

Hi @yogeek,

Thanks for reporting this issue! :) Unfortunately, Online Boutique (as of v0.8.0) no longer includes the grpc-health-probe binary. Online Boutique's gRPC microservices rely on the gRPC health-check probes that are built into Kubernetes.

I will correct the docs via https://github.com/GoogleCloudPlatform/microservices-demo/pull/1893. We made this decision because:

Sorry for the inconvenience! If you really need to use Kubernetes 1.23 or lower, you might be able to use Online Boutique v0.7.0 or lower. But I discourage using older versions of Online Boutique, because we don't provide active support for older versions.

git fetch --all --tags
git checkout tags/v0.7.0

Note: That "native-grpc-health-check" Kustomize component is not what you need. That component removes the grpc-health-probe binary and uses built-in Kubernetes probes. What you're looking for is the default (base) deployment of 0.7.0 or older.

Hope this helps. Thanks again!

yogeek commented 1 year ago

Thank you for your help @NimJay 👍 I am going to use 0.7.0 for now and if I have time, see if I can patch the 0.8.0 probes with kustomize to make it compatible with K8s 1.23 until we upgrade to 1.24.