Skip to content

Migrate Exploring Kubernetes Services tutorial from Meshery docs#1020

Merged
simihablo merged 1 commit into
masterfrom
claude/migrate-k8s-tutorial-Rc5G2
May 14, 2026
Merged

Migrate Exploring Kubernetes Services tutorial from Meshery docs#1020
simihablo merged 1 commit into
masterfrom
claude/migrate-k8s-tutorial-Rc5G2

Conversation

@leecalcote
Copy link
Copy Markdown
Member

Summary

Migrates the Exploring Kubernetes Services with Meshery tutorial from meshery/meshery (docs/content/en/guides/tutorials/kubernetes/kubernetes-services.md) into layer5io/docs under content/en/kanvas/tutorials/kubernetes/.

  • Adds content/en/kanvas/tutorials/kubernetes/_index.md to introduce a Kubernetes section under the Kanvas tutorials.
  • Adds content/en/kanvas/tutorials/kubernetes/kubernetes-services.md, the migrated tutorial walking through ClusterIP, NodePort, and LoadBalancer service types in Meshery Playground.
  • Updates image references from /guides/tutorials/images/... to /kanvas/tutorials/images/... to match the existing Kanvas tutorial image convention.
  • Updates internal cross-tutorial links (kubernetes-pods, kubernetes-deployments) to the anticipated /kanvas/tutorials/kubernetes/... paths so they resolve once the sister tutorials migrate over.
  • Preserves backward compatibility by aliasing the legacy URLs:
    • /guides/tutorials/kubernetes-services
    • /guides/tutorials/kubernetes/kubernetes-services
    • /kanvas/tutorials/kubernetes-services

Companion change

The source file is removed from meshery/meshery on the matching branch (claude/migrate-k8s-tutorial-Rc5G2).

Follow-ups

  • Image assets currently referenced under /kanvas/tutorials/images/kubernetes-services/ and /kanvas/tutorials/images/kubernetes-deployments/ need to be copied from meshery/meshery (docs/static/guides/tutorials/images/kubernetes-services/, docs/static/guides/tutorials/images/kubernetes-deployments/) into this repo's static path before the page renders fully.
  • Sibling tutorials (kubernetes-pods, kubernetes-deployments, etc.) referenced from this page will continue to 404 on the Layer5 site until they are migrated similarly.

Test plan

  • hugo --quiet builds without errors
  • /kanvas/tutorials/kubernetes/kubernetes-services/ renders end-to-end
  • Legacy /guides/tutorials/kubernetes-services and /guides/tutorials/kubernetes/kubernetes-services redirect to the new page
  • Image bundle is uploaded under static/kanvas/tutorials/images/kubernetes-services/

Generated by Claude Code

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a new Kubernetes tutorial section and a detailed hands-on guide for exploring Kubernetes Services using Meshery Playground and Kanvas. The tutorial covers the creation and management of ClusterIP, NodePort, and LoadBalancer services. The review feedback identifies several minor grammatical and clarity issues, including a redundant phrase in the description, unnecessary articles, missing prepositions, and incorrect hyphenation of 'pop-up'.

Comment thread content/en/kanvas/tutorials/kubernetes/kubernetes-services.md Outdated

### Introduction

In this tutorial, we'll learn to implement Kubernetes **Services**, the resources responsible for exposing applications inside and outside the cluster. Using Meshery Playground, an interactive live cluster environment, we'll perform hands-on labs to gain practical experience with the Kubernetes Services, without writing any YAML.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Minor grammatical improvement: "the Kubernetes Services" can be simplified to "Kubernetes Services" for better flow.

Suggested change
In this tutorial, we'll learn to implement Kubernetes **Services**, the resources responsible for exposing applications inside and outside the cluster. Using Meshery Playground, an interactive live cluster environment, we'll perform hands-on labs to gain practical experience with the Kubernetes Services, without writing any YAML.
In this tutorial, we'll learn to implement Kubernetes **Services**, the resources responsible for exposing applications inside and outside the cluster. Using Meshery Playground, an interactive live cluster environment, we'll perform hands-on labs to gain practical experience with Kubernetes Services, without writing any YAML.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed — the article was removed; now reads 'Kubernetes Services' without 'the'.

Comment thread content/en/kanvas/tutorials/kubernetes/kubernetes-services.md Outdated
Now switch to Operator mode, click on any component to view details(like type or selector) about the Service or the Pod.
![](/kanvas/tutorials/images/kubernetes-services/2025-12-13_4.png)

Note that this service is mapped NodePort and is accessible on the **Node’s IP address**.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

"mapped NodePort" is missing a preposition. It should be "mapped to a NodePort" for better readability.

Suggested change
Note that this service is mapped NodePort and is accessible on the **Node’s IP address**.
Note that this service is mapped to a NodePort and is accessible on the **Node’s IP address**.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed — updated to 'mapped to a NodePort'.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 8, 2026

PR Preview Action v1.6.3
Preview removed because the pull request was closed.
2026-05-14 19:21 UTC

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR migrates the “Exploring Kubernetes Services with Meshery” tutorial into the Layer5 Docs Kanvas tutorial section, introducing a new Kubernetes tutorials subsection and adding URL aliases intended to preserve legacy links.

Changes:

  • Added a new Kanvas Kubernetes tutorials section index page.
  • Added the migrated Kubernetes Services tutorial page (ClusterIP, NodePort, LoadBalancer) with updated paths/aliases.
  • Updated screenshot paths to the /kanvas/tutorials/images/... convention.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 9 comments.

File Description
content/en/kanvas/tutorials/kubernetes/_index.md Introduces the Kubernetes subsection under Kanvas tutorials.
content/en/kanvas/tutorials/kubernetes/kubernetes-services.md Adds the migrated Services tutorial content, including aliases and updated image/link references.

Comment thread content/en/kanvas/tutorials/kubernetes/kubernetes-services.md Outdated

In this tutorial, we'll learn to implement Kubernetes **Services**, the resources responsible for exposing applications inside and outside the cluster. Using Meshery Playground, an interactive live cluster environment, we'll perform hands-on labs to gain practical experience with Kubernetes Services, without writing any YAML.

> **NOTE:** If this is your first time working with Meshery Playground, consider starting with the [Exploring Kubernetes Pods with Meshery Playground](/kanvas/tutorials/kubernetes/kubernetes-pods) tutorial first or [Exploring Kubernetes Deployments with Meshery](/kanvas/tutorials/kubernetes/kubernetes-deployments).
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed — the links now point to the existing tutorial pages on docs.meshery.io rather than non-existent local paths.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed — the links now point to existing tutorial pages on docs.meshery.io rather than non-existent local paths.

Comment on lines +40 to +43
- Click **Kanvas** from the left menu to navigate to the [_Kanvas_ design](https://kanvas.new/extension/meshmap) page.

![](/kanvas/tutorials/images/kubernetes-deployments/2025-02-27_16-59.png)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed — all image URLs were updated to reference existing assets on docs.meshery.io instead of a non-existent local path.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed — all image URLs now reference existing assets on docs.meshery.io.

Comment thread content/en/kanvas/tutorials/kubernetes/kubernetes-services.md Outdated
Comment on lines +15 to +36
### Introduction

In this tutorial, we'll learn to implement Kubernetes **Services**, the resources responsible for exposing applications inside and outside the cluster. Using Meshery Playground, an interactive live cluster environment, we'll perform hands-on labs to gain practical experience with Kubernetes Services, without writing any YAML.

> **NOTE:** If this is your first time working with Meshery Playground, consider starting with the [Exploring Kubernetes Pods with Meshery Playground](/kanvas/tutorials/kubernetes/kubernetes-pods) tutorial first or [Exploring Kubernetes Deployments with Meshery](/kanvas/tutorials/kubernetes/kubernetes-deployments).


### Prerequisites

- Basic understanding of containerization and Kubernetes concepts.
- Access to the _Meshery Playground_. If you don't have an account, sign up at [Meshery Playground](https://playground.meshery.io/).

### Lab Scenario

Deploy a simple application or a simple Pod and expose it using ClusterIP, NodePort, and LoadBalancer services. Each service will route traffic to the pods via a common label selector. We’ll inspect the service details in Operator mode to confirm their types and behavior.

### Objective

Learn how to create, manage, and explore _Kubernetes Services_ to expose applications within the context of a microservices architecture.

### Steps

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed — top-level section headings were promoted to ## and sub-steps use ###, matching the existing Kanvas tutorial convention.

Comment on lines +71 to +74
- **Image**: `meshery/meshery-milestone:latest`
- **Name**: `meshery-milestone`
![](/kanvas/tutorials/images/kubernetes-services/2025-09-04_06.png)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed — the sub-bullets and screenshot are now indented under step 7.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed — the sub-bullets and screenshot are now indented under step 7.

Comment thread content/en/kanvas/tutorials/kubernetes/kubernetes-services.md Outdated
Comment on lines +130 to +133
- **Port**: `80`
- **TargetPort**: `80`
- **NodePort**: `30091` (or leave blank to auto-assign).
![](/kanvas/tutorials/images/kubernetes-services/2025-09-06_15.png)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed — the Port/TargetPort/NodePort bullets and screenshot are now indented under step 4.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed — the Port/TargetPort/NodePort bullets and screenshot are now indented under step 4.

Comment thread content/en/kanvas/tutorials/kubernetes/kubernetes-services.md Outdated
@leecalcote
Copy link
Copy Markdown
Member Author

@copilot resolve the merge conflicts in this pull request

Copy link
Copy Markdown
Contributor

Copilot AI commented May 14, 2026

@copilot resolve the merge conflicts in this pull request

Resolved in e030df9 by merging the latest master into this branch and keeping the newer reviewed Kubernetes tutorial content in the two conflicted files. I also rebuilt the docs successfully after the merge. Screenshot: not applicable for this update because it only resolves merge conflicts and does not change the rendered UI.

Migrate the Exploring Kubernetes Services with Meshery tutorial to
content/en/kanvas/tutorials/kubernetes/kubernetes-services.md.

- Add hands-on tutorial covering ClusterIP, NodePort, and LoadBalancer
  service types using Meshery Playground and Kanvas
- Preserve legacy URL aliases (/guides/tutorials/kubernetes-services,
  /kanvas/tutorials/kubernetes-services)
- Use ## / ### heading hierarchy matching existing Kanvas tutorials
- Add descriptive alt text on every screenshot for accessibility
- Link screenshots to existing assets on docs.meshery.io
- Add intro content to kubernetes/_index.md

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Yi Nuo <218099172+yi-nuo426@users.noreply.github.com>
@yi-nuo426 yi-nuo426 force-pushed the claude/migrate-k8s-tutorial-Rc5G2 branch from e030df9 to 0d2025f Compare May 14, 2026 19:14
@simihablo simihablo merged commit 116c3d8 into master May 14, 2026
4 checks passed
@simihablo simihablo deleted the claude/migrate-k8s-tutorial-Rc5G2 branch May 14, 2026 19:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants