---
id: "google-cloud-service-mesh"
type: "component"
kind: "service-mesh"
provider: "gcp"
category: "ops"
aliases: "ASM, Anthos Service Mesh"
docs: "https://cloud.google.com/service-mesh/docs/overview"
url: "https://localhost:3000/catalogue/components/google-cloud-service-mesh"
---

# Cloud Service Mesh

Managed xDS control plane for Envoy sidecars and proxyless gRPC clients.

| | |
|---|---|
| Provider | [gcp](https://localhost:3000/catalogue?provider=gcp) |
| Kind | [Service mesh](https://localhost:3000/catalogue/kinds/service-mesh) |
| Category | Operations |
| Official docs | [https://cloud.google.com/service-mesh/docs/overview](https://cloud.google.com/service-mesh/docs/overview) |
| Also known as | ASM, Anthos Service Mesh |

## Properties

| property | type | values | required | kind default | this component |
|---|---|---|---|---|---|
| `circuitBreaking` | boolean | — | no | false | **true** |
| `controlPlaneHosting` | enum | `managed`, `in-cluster` | no | "managed" | inherited |
| `controlPlanes` | integer | — | no | — | inherited |
| `dataPlane` | enum | `envoy-sidecar`, `proxyless-grpc` | no | "envoy-sidecar" | inherited |
| `managed` | boolean | — | no | false | **true** |
| `mtls` | boolean | — | no | false | **true** |
| `retries` | boolean | — | no | false | inherited |
| `sidecar` | boolean | — | no | true | **true** |

Bold values are the ones this component pins.

## Rules that apply · 0

No rule selects this kind or its category.

## Other products of the same kind · 11

- [AWS App Mesh](https://localhost:3000/catalogue/components/aws-app-mesh.md) `aws-app-mesh` — aws
- [Amazon VPC Lattice](https://localhost:3000/catalogue/components/aws-vpc-lattice.md) `aws-vpc-lattice` — aws
- [Cilium](https://localhost:3000/catalogue/components/cilium.md) `cilium` — default
- [Consul Connect](https://localhost:3000/catalogue/components/consul-connect.md) `consul-connect` — default
- [Dapr](https://localhost:3000/catalogue/components/dapr.md) `dapr` — default
- [Envoy sidecar](https://localhost:3000/catalogue/components/envoy-sidecar.md) `envoy-sidecar` — default
- [Istio](https://localhost:3000/catalogue/components/istio.md) `istio` — default
- [Kmesh](https://localhost:3000/catalogue/components/kmesh.md) `kmesh` — default
- [Kuma](https://localhost:3000/catalogue/components/kuma.md) `kuma` — default
- [Linkerd](https://localhost:3000/catalogue/components/linkerd.md) `linkerd` — default
- [Generic service mesh](https://localhost:3000/catalogue/components/service-mesh.md) `service-mesh` — default

## Use it in a design

```yaml
nodes:
  - { id: "google-cloud-service-mesh", component: "google-cloud-service-mesh" }
```

## Source (`component` YAML, verbatim)

```yaml
# yaml-language-server: $schema=../../schema/component.schema.json
# Cloud Service Mesh: Google-managed xDS control plane for Envoy sidecars or proxyless gRPC clients.
# Defaults from "Cloud Service Mesh overview": Google runs, upgrades and scales the control plane; peers authenticate with mTLS; traffic management includes circuit breakers and canary routing.
schemaVersion: "1"
type: "component"
id: "google-cloud-service-mesh"
kind: "service-mesh"
provider: "gcp"
docs: "https://cloud.google.com/service-mesh/docs/overview"
aliases: ["ASM", "Anthos Service Mesh"]
defaults:
  managed: true
  sidecar: true
  mtls: true
  circuitBreaking: true
properties:
  dataPlane:
    type: "enum"
    values: ["envoy-sidecar", "proxyless-grpc"]
    default: "envoy-sidecar"
  controlPlaneHosting:
    type: "enum"
    values: ["managed", "in-cluster"]
    default: "managed"
```

Human page: https://localhost:3000/catalogue/components/google-cloud-service-mesh
