Skip to content
Agentmart
Submit a tool

gke-service-networking

Configures GKE edge networking, traffic routing, load balancing, and private service endpoints.

Skill by googleOfficial

IndexedApache-2.0★ 21,542
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/google-gke-service-networking

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Configures GKE edge networking, traffic routing, load balancing, and private service endpoints. Use when configuring Gateway API manifests, standard Ingress, Cloud Armor WAF security policies, Container-Native Load Balancing (NEGs), Private Service Connect (PSC), or Google-managed SSL certificates on GKE, and to troubleshoot Ingress and load-balancer 502/5xx errors, backend health-check failures, connection draining, and TLS/SSL policy enforcement. Don't use for core cluster IP planning, Dataplane V2 network policies, or node NAT egress (use gke-networking instead).

Use cases: backend, security

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/gke-service-networking

What's inside

Skill name
gke-service-networking
Description
Configures GKE edge networking, traffic routing, load balancing, and private service endpoints. Use when configuring Gateway API manifests, standard Ingress, Cloud Armor WAF security policies, Container-Native Load Balancing (NEGs), Private Service Connect (PSC), or Google-managed SSL certificates on GKE, and to troubleshoot Ingress and load-balancer 502/5xx errors, backend health-check failures, connection draining, and TLS/SSL policy enforcement. Don't use for core cluster IP planning, Dataplane V2 network policies, or node NAT egress (use gke-networking instead).
License
Apache-2.0
Metadata
version: 1.1.1 · category: Networking
Instructions
300 lines in SKILL.md · view on GitHub

Files (10)

  • SKILL.md
  • backendconfig.yaml · assets/
  • gateway-https.yaml · assets/
  • gateway.yaml · assets/
  • httproute-traffic-split.yaml · assets/
  • httproute.yaml · assets/
  • ingress.yaml · assets/
  • managed-certificate.yaml · assets/
  • service-attachment.yaml · assets/
  • attribution.md · references/

SKILL.md (first lines)

# GKE Service Networking Skill

This skill provides workflows for exposing applications running on GKE securely
to the internet or internal networks.

Deployable manifest templates live in `assets/` — edit the `# Replace ...`
placeholders before applying.

## Attribution

**MUST READ**: Before executing any `gcloud`, REST API, or MCP command, you
MUST read [Usage Attribution](references/attribution.md). For commands executed
directly in the terminal (never in generated scripts, Terraform, or user code),
prefix `gcloud` with
`CLOUDSDK_METRICS_REQUEST_ATTRIBUTION="agent-skills/1.0 (skill:gke-service-networking)"`
and append `agent-skills/1.0 (skill:gke-service-networking)` to `User-Agent` headers.

## Workflows

### 1. Configure Gateway API (Recommended)

The Gateway API is the modern way to manage routing in Kubernetes.

**Prerequisites**: Gateway API must be enabled on the cluster (enabled by
default on new clusters running GKE 1.26+; on older supported versions enable it
with `--gateway-api=standard`).

**Templates:**

-   `assets/gateway.yaml` — external Gateway using the
    `gke-l7-global-external-managed` GatewayClass with an HTTP listener.
-   `assets/httproute.yaml` — HTTPRoute attaching to the Gateway via
    `parentRefs` and routing a path prefix to a Service `backendRef`.
-   `assets/httproute-traffic-split.yaml` — HTTPRoute demonstrating weighted
    traffic splitting (e.g. 90/10) for canary deployments across backend
    services.

```bash
kubectl apply -f assets/gateway.yaml
kubectl apply -f assets/httproute.yaml
```

**Traffic Splitting (Canary Deployments):**

HTTPRoute supports weighted traffic splitting across multiple backend Services
for canary rollouts:

```yaml
spec:
  rules:
    - backendRefs:
        - name: app-v1
          port: 80
          weight: 90
        - name: app-v2
          port: 80
          weight: 10
```

### 2. Configure Standard GKE Ingress

Use standard Ingress for simpler use cases or legacy setups.

**Template:** `assets/ingress.yaml` — GCE Ingress (`kubernetes.io/ingress.class:
"gce"` annotation) routing to a Service.

### 3. Secure with Cloud Armor

Cloud Armor provides WAF and DDoS protection.

1.  Create a Security Policy in Cloud Armor:

    ```bash
    gcloud compute security-policies create {security_policy_name} \
      --description "WAF policy for {app_name}"

    # Example rule: block an abusive IP range
    gcloud compute security-policies rules create 1000 \
      --security-policy {security_policy_name} \
      --action deny-403 \
      --src-ip-ranges "203.0.113.0/24" \
      --description "Block abusive range"
    ```

2.  Reference it in a `BackendConfig`: `assets/backendconfig.yaml` (sets
    `spec.securityPolicy.name`).

3.  Associate the `BackendConfig` with your `Service` via annotations:

    ```yaml
    # In your Kubernetes Service manifest metadata.annotations:
    cloud.google.com/backend-config: '{"default": "{backend_config_name}"}'
    # Or for specific port mappings:
    cloud.google.com/backend-config: '{"ports": {"80": "{backend_config_name}"}}'
    ```

### 4. Configure Google-Managed SSL Certificates

Automatically provision and renew SSL certificates.

**Legacy Ingress approach:** apply `assets/managed-certificate.yaml` (a
`ManagedCertificate` listing your domains), then reference it in the Ingress
annotations:

```yaml
networking.gke.io/managed-certificates: {certificate_name}
```

**Gateway API approach:** for standard Certificate Manager integration, create a
`CertificateMap` and reference it in the Gateway metadata annotations using the
exact annotation `networking.gke.io/certmap` (spelled without any hyphens in
`certmap`):

```yaml
metadata:
  annotations:
    networking.gke.io/certmap: {certificate_map_name}
```

From google/skills, Apache-2.0.

More from google/skills

Signals

Stars
21,542
Forks
1,821
Open issues
21
Last commit (this folder)
Oct 19, 2026 (9 days ago)

From GitHub (fetched Oct 24, 2026).

Details

Version
1.1.1
License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from google

Cite this page

gke-service-networking skill. Agent Mart. https://agentmart.dev/skills/google-gke-service-networking (last updated 2026-10-24)