kubesphere-network-extension-operations

Install, configure, and troubleshoot the KubeSphere network extension, Calico IPPools, and NetworkPolicy resources.

17.0k|2.8k|Updated Apr 21, 2018
One-click install
npx skills add https://github.com/kubesphere/kubesphere --skill kubesphere-network-extension-operations
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: kubesphere-network-extension-operations
Source: https://github.com/kubesphere/kubesphere/tree/main/skills/kubesphere-network-extension-operations
Command: npx skills add https://github.com/kubesphere/kubesphere --skill kubesphere-network-extension-operations

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Operating the KubeSphere network extension requires coordinating InstallPlan manifests, Calico IPPool CRDs, namespace bindings, and network isolation APIs, where stale image tags or wrong annotation keys can silently break upgrades and isolation behavior.

Core Features & Use Cases

  • Extension Lifecycle Management: Create and update InstallPlan manifests for the network extension with exact versions, Manual upgrade strategy, and optional feature toggles for IPPool and NetworkPolicy.
  • Calico IPPool Operations: Manage Calico IPPools as the source of truth, including namespace binding, occupancy inspection, and IPPool migration flows via KubeSphere APIs.
  • Network Isolation & NetworkPolicy: Configure workspace and project network isolation annotations and manage namespace-level isolation policies with the exact required KubeSphere labels.
  • Use Case: When upgrading the network extension from 1.2.0 to 1.3.0, follow the guided kubectl workflow to inspect the current InstallPlan, verify the target extensionversion, and remove stale pinned image tags before applying the change.

Quick Start

Ask the agent to create an InstallPlan manifest for the KubeSphere network extension version 1.3.0 with default configuration.

Frequently Asked Questions about kubesphere-network-extension-operations

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I install the KubeSphere network extension with an InstallPlan?

Create an InstallPlan manifest with metadata.name and spec.extension.name both set to network, the exact extension version, enabled: true, and upgradeStrategy: Manual. Omit spec.config unless you need non-default IPPool or NetworkPolicy settings.

How do I upgrade the KubeSphere network extension safely?

First inspect the current extension and InstallPlan with kubectl, verify the target extensionversion exists, then update spec.extension.version. Remove or update any pinned old image tags in the config, since stale tags can block new images from being deployed.

Does the KubeSphere network extension support non-Calico IPPool backends?

No, the extension values currently support only Calico via global.ippool.type=calico. Calico IPPools (ippools.crd.projectcalico.org) are the CRUD source of truth, and the deprecated network.kubesphere.io IPPool CRDs should not be recreated.

How do I enable network isolation for a namespace in KubeSphere?

Inspect the live namespace annotations first, then patch the namespace with the annotation kubesphere.io/network-isolate: enabled. If the live cluster uses a different key, preserve the live object shape instead of assuming the documented example.

Why is my network extension install stuck and how do I diagnose it?

Describe the extension and InstallPlan objects, read the InstallPlan status.targetNamespace, then inspect pods, services, and Helm upgrade jobs in that namespace. Check the Helm job pod logs and kubesphere-system controller pods before changing manifests again.