Cloud Native 11 min read

Edge Container Application Management Scenarios and the ServiceGroup Feature in TKE@edge

This article examines common edge container deployment patterns, identifies their challenges, and introduces TKE@edge's ServiceGroup feature—including DeploymentGrid and ServiceGrid resources—to simplify multi‑site microservice management and traffic isolation across edge nodes.

Cloud Native Technology Community
Cloud Native Technology Community
Cloud Native Technology Community
Edge Container Application Management Scenarios and the ServiceGroup Feature in TKE@edge

The author, a Tencent TKE edge engineer, introduces three typical edge deployment scenarios: a simple daemonset‑based service, a single‑site microservice suite, and a multi‑site microservice suite, highlighting their specific requirements and limitations.

For simple services, a DaemonSet is recommended to run identical pods on every node, but this approach restricts each service to a single pod per node and requires hostNetwork usage.

In single‑site microservice deployments, users typically employ Deployments and Services, yet edge autonomy—such as limiting inter‑service traffic to the local site—remains a challenge.

Multi‑site deployments exacerbate issues: managing numerous Deployments and Services across many regions leads to massive YAML duplication, difficulty in service discovery, and insufficient public IP resources.

To address these pain points, TKE@edge introduces the ServiceGroup abstraction, which enables concise deployment of hundreds of services across many edge locations without application changes.

Key concepts:

NodeUnit – a set of nodes within the same edge site with internal network connectivity.

NodeGroup – a collection of NodeUnits; services in a ServiceGroup are deployed to every NodeUnit in the group.

ServiceGroup – a logical grouping of business services that can be deployed uniformly across NodeUnits, ensuring pod count and intra‑NodeUnit traffic isolation.

Resource types:

DeploymentGrid – similar to a standard Deployment but adds a gridUniqKey label to select NodeUnits.

ServiceGrid – similar to a Service with a gridUniqKey for node grouping.

Usage example (deploying Nginx across edge nodes):

1. Define a unique ServiceGroup identifier (e.g., zone).

2. Label edge nodes with the chosen key (e.g., zone=NodeUnit1, zone=NodeUnit2).

3. Create a DeploymentGrid:

apiVersion: tkeedge.io/v1
kind: DeploymentGrid
metadata:
  name: deploymentgrid-demo
  namespace: default
spec:
  gridUniqKey: zone
  template:
    selector:
      matchLabels:
        appGrid: nginx
    replicas: 2
    template:
      metadata:
        labels:
          appGrid: nginx
      spec:
        containers:
        - name: nginx
          image: nginx:1.7.9
          ports:
          - containerPort: 80

4. Create a ServiceGrid:

apiVersion: tkeedge.io/v1
kind: ServiceGrid
metadata:
  name: servicegrid-demo
  namespace: default
spec:
  gridUniqKey: zone
  template:
    selector:
      appGrid: nginx
    ports:
    - protocol: TCP
      port: 80
      targetPort: 80
    sessionAffinity: ClientIP

After applying these resources, TKE@edge automatically deploys the specified pods and services to each labeled NodeUnit, ensuring traffic stays within the local site. New node groups added later will also receive the appropriate deployments without additional configuration.

Future work includes providing a graphical interface for ServiceGroup configuration to further lower the operational barrier.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

KubernetesServiceGroupDeploymentGridServiceGridTKE@edge
Cloud Native Technology Community
Written by

Cloud Native Technology Community

The Cloud Native Technology Community, part of the CNBPA Cloud Native Technology Practice Alliance, focuses on evangelizing cutting‑edge cloud‑native technologies and practical implementations. It shares in‑depth content, case studies, and event/meetup information on containers, Kubernetes, DevOps, Service Mesh, and other cloud‑native tech, along with updates from the CNBPA alliance.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.