All Documents
Cloud Container EngineCloud Container Engine
- What's New
- Function Overview
-
Product Bulletin
- Latest Announcements
- CCE Security Guide
- Kubernetes Version Support Mechanism
- OS Version Synchronization Mechanism
- Kubernetes Release Notes
-
Vulnerability Notice
- Vulnerability Fixing Policies
- Notice on the Non-Security Handling Vulnerability of Containerd Image Volumes (CVE-2022-23648)
- Linux Kernel Integer Overflow Vulnerability (CVE-2022-0185)
- Linux Polkit Privilege Escalation Vulnerability (CVE-2021-4034)
- Notice on the Vulnerability of Kubernetes subPath Symlink Exchange (CVE-2021-25741)
- Notice on runc Vulnerability that Allows a Container Filesystem Breakout via Directory Traversal (CVE-2021-30465)
- Notice on the Docker Resource Management Vulnerability (CVE-2021-21285)
- Notice on the NVIDIA GPU Driver Vulnerability (CVE-2021-1056)
- Notice on the Sudo Buffer Vulnerability (CVE-2021-3156)
- Notice on the Kubernetes Security Vulnerability (CVE-2020-8554)
- Notice on the Apache containerd Security Vulnerability (CVE-2020-15257)
- Notice on the Docker Engine Input Verification Vulnerability (CVE-2020-13401)
- Notice on the Kubernetes kube-apiserver Input Verification Vulnerability (CVE-2020-8559)
- Notice on the Kubernetes kubelet Resource Management Vulnerability (CVE-2020-8557)
- Notice on the Kubernetes kubelet and kube-proxy Authorization Vulnerability (CVE-2020-8558)
- Notice on Fixing Kubernetes HTTP/2 Vulnerability
- Notice on Fixing Linux Kernel SACK Vulnerabilities
- Notice on Fixing the Docker Command Injection Vulnerability (CVE-2019-5736)
- Notice on Fixing the Kubernetes Permission and Access Control Vulnerability (CVE-2018-1002105)
- Notice on Fixing the Kubernetes Dashboard Security Vulnerability (CVE-2018-18264)
- Problems Caused by conn_reuse_mode Settings in the IPVS Forwarding Mode of CCE Clusters
- Service Overview
- Kubernetes Basics
- Getting Started
-
User Guide
-
New Console
- What Is Cloud Container Engine?
- High-Risk Operations and Solutions
- Clusters
-
Nodes
- Node Overview
- Creating a Node
- Adding Nodes for Management
- Removing a Node
- Resetting a Node
- Logging In to a Node
- Managing Node Labels
- Managing Node Taints
- Synchronizing Data with Cloud Servers
- Deleting a Node
- Stopping a Node
- Performing Rolling Upgrade for Nodes
- Formula for Calculating the Reserved Resources of a Node
- Creating a Linux LVM Disk Partition for Docker
- Data Disk Space Allocation
- Configuring NIC Multi-Queue for BMS Nodes in the CCE Turbo Shared Resource Pool
- Changing Process ID Limits (kernel.pid_max)
- Node Pools
-
Workloads
- Overview
- Creating a Deployment
- Creating a StatefulSet
- Creating a DaemonSet
- Creating a Job
- Creating a Cron Job
-
Configuring a Container
- Setting Basic Container Information
- Using a Third-Party Image
- Setting Container Specifications
- Setting Container Lifecycle Parameters
- Setting Health Check for a Container
- Setting an Environment Variable
- Configuring APM Settings for Performance Bottleneck Analysis
- Enabling ICMP Security Group Rules
- Configuring an Image Pull Policy
- Configuring Time Zone Synchronization
- Configuring the Workload Upgrade Policy
- Scheduling Policy (Affinity/Anti-affinity)
- DNS Configuration
- Pod Scale-in Priorities
- GPU Scheduling
- NPU Scheduling
- Accessing a Container
- Configuring QoS Rate Limiting for Inter-Pod Access
- Adding Pod Annotations
- Hybrid Deployment of Online and Offline Jobs
- Networking
-
Storage (CSI)
- Overview
- Using Local Disks as Storage Volumes
- PersistentVolumes (PVs)
- PersistentVolumeClaims (PVCs)
- StorageClass
- Snapshots and Backups
- Using a Custom AK/SK to Mount an OBS Volume
- Setting Mount Options
- Using OBS Buckets Across Regions
-
YAML Examples
- Creating a Pod Mounted with an EVS Volume
- Creating a Deployment Mounted with an SFS Turbo Volume
- Creating a StatefulSet Mounted with an SFS Turbo Volume
- Creating a Deployment Mounted with an OBS Volume
- Creating a StatefulSet Mounted with an OBS Volume
- Creating a Deployment Mounted with an SFS Volume
- Creating a StatefulSet Mounted with an SFS Volume
- Monitoring, Logs, and Alarms
- Namespaces
- Configuration Center
- Auto Scaling
-
Add-ons
- Overview
- coredns (System Resource Add-on, Mandatory)
- storage-driver (System Resource Add-on, Mandatory)
- everest (System Resource Add-on, Mandatory)
- npd
- dashboard
- autoscaler
- nginx-ingress
- metrics-server
- cce-hpa-controller
- prometheus
- web-terminal
- gpu-beta
- huawei-npu
- volcano
- spark-operator
- tf-operator
- p2paddon
- rc-recycler
- dew-provider
- dolphin
- e-backup
- Helms
- Permissions Management
- Cloud Trace Service (CTS)
- Storage (FlexVolume)
-
Old Console
- What Is Cloud Container Engine?
- High-Risk Operations and Solutions
-
Clusters
- Cluster Overview
- CCE Turbo Clusters and CCE Clusters
- Buying a CCE Turbo Cluster
- Buying a CCE Cluster
- Buying a Kunpeng Cluster
- Using kubectl to Run a Cluster
- Setting Cluster Auto Scaling
- Upgrading a Cluster
- Managing a Cluster
- Obtaining a Cluster Certificate
- Changing Cluster Scale
- Controlling Cluster Permissions
- Cluster Parameters
-
Nodes
- Overview
- Buying a Node
- Buying a Node in a CCE Turbo Cluster
- Accepting ECSs/BMSs as Nodes into a Cluster
- Removing a Node
- Logging In to a Node
- Managing Node Labels
- Synchronizing Node Data
- Configuring Node Scheduling (Tainting)
- Resetting a Node
- Deleting a Node
- Stopping a Node
- Performing Rolling Upgrade for Nodes
- Formula for Calculating the Reserved Resources of a Node
- Creating a Linux LVM Disk Partition for Docker
- Data Disk Space Allocation
- Adding a Second Data Disk to a Node in a CCE Cluster
- Configuring NIC Multi-Queue for BMS Nodes in the CCE Turbo Shared Resource Pool
- Node Pools
-
Workloads
- Overview
- Creating a Deployment
- Creating a StatefulSet
- Creating a DaemonSet
- Creating a Job
- Creating a Cron Job
- Managing Pods
- GPU Scheduling
- NPU Scheduling
- Managing Workloads and Jobs
- Scaling a Workload
-
Configuring a Container
- Using a Third-Party Image
- Setting Container Specifications
- Setting Container Lifecycle Parameters
- Setting Container Startup Commands
- Setting Health Check for a Container
- Setting an Environment Variable
- Configuring APM Settings for Performance Bottleneck Analysis
- Enabling ICMP Security Group Rules
- Configuring an Image Pull Policy
- Configuring Time Zone Synchronization
- DNS Configuration
- Pod Scale-in Priorities
- Configuring QoS Rate Limiting for Inter-Pod Access
- Adding Pod Annotations
- Affinity and Anti-Affinity Scheduling
- Hybrid Deployment of Online and Offline Jobs
- Networking
- Storage (CSI)
- Storage (FlexVolume)
- Monitoring, Alarms, and Logs
- Namespaces
- Configuration Center
- Charts (Helm)
-
Add-ons
- Overview
- coredns (System Resource Add-on, Mandatory)
- storage-driver (System Resource Add-on, Mandatory)
- everest (System Resource Add-on, Mandatory)
- npd
- dashboard
- autoscaler
- nginx-ingress
- metrics-server
- cce-hpa-controller
- prometheus
- web-terminal
- gpu-beta
- huawei-npu
- volcano
- spark-operator
- tf-operator
- p2paddon
- rc-recycler
- dew-provider
- Auto Scaling
- Permissions Management
- System Steward
- Cloud Trace Service (CTS)
-
New Console
-
Best Practices
- Checklist for Deploying Containerized Applications in the Cloud
- Containerization
- Migration
- DevOps
- Disaster Recovery
- Security
- Auto Scaling
- Cluster
-
Networking
- Planning CIDR Blocks for a CCE Cluster
- Allowing Containers and IDCs to Communicate with Each Other Through VPC and Direct Connect
- Enabling a CCE Cluster to Resolve Domain Names on Both On-Premises IDCs and HUAWEI CLOUD
- Implementing Sticky Session Through Load Balancing
- Obtaining the Client Source IP Address for a Container
- Increasing the Listening Queue Length by Configuring Container Kernel Parameters
- Configuring NIC Multi-Queue for BMS Nodes in the CCE Turbo Shared Resource Pool
- Using Multiple ENIs on a Node in a CCE Cluster
- Enabling Passthrough Networking for LoadBalancer Services
- Selecting a Network Model When Creating a Cluster on CCE
-
Storage
- Expanding the Disk Capacity of a Node in a CCE Cluster
- Mounting an Object Storage Bucket of a Third-Party Tenant
- Dynamically Creating and Mounting Subdirectories of an SFS Turbo File System
- How Do I Change the Storage Class Used by a Cluster of v1.15 from FlexVolume to CSI Everest?
- Using OBS Parallel File Systems
- Custom Storage Classes
- Realizing Automatic Topology for EVS Disks When Cluster Nodes Are Deployed Across AZs (csi-disk-topology)
-
Container
- Properly Allocating Container Computing Resources
- Upgrading Pods Without Interrupting Services
- Modifying Kernel Parameters Using a Privileged Container
- Initializing a Container
- Setting Time Zone Synchronization
- Performing Graceful Deletion
- Setting the Container Network Bandwidth Limit
- Using hostAliases to Configure /etc/hosts in a Pod
- Configuring Domain Name Resolution for CCE Containers
- How Do I Select a Container Runtime?
- Using Dual-Architecture Images (x86 and Arm) in CCE
- Configuring Core Dumps
- Permission
- Release
- Batch Computing
-
API Reference
- Before You Start
- API Overview
- Calling APIs
- Examples
- APIs
-
Kubernetes APIs
- Description of Kubernetes APIs
- Node
- Namespace
- Resource Quotas
- Pod
-
Deployment
- Creating a Deployment
- Rolling Back a Deployment
- Deleting a Deployment
- Deleting All Deployments
- Reading a Specified Deployment
- Reading the Status of a Specified Deployment
- Reading the Scaling Operation of a Specified Deployment
- Replacing a Specified Deployment
- Replacing the Status of a Specified Deployment
- Replacing the Scaling Operation of a Specified Deployment
- Listing Deployments in a Specified Namespace
- Listing All Deployments
- Updating a Specified Deployment
- Updating the Status of a Specified Deployment
- Updating the Scaling Operation of a Specified Deployment
-
StatefulSet
- Creating a StatefulSet
- Deleting a Specified StatefulSet
- Delete All StatefulSets
- Reading a Specified StatefulSet
- Reading the Status of a Specified StatefulSet
- Replacing a Specified StatefulSet
- Replacing the Status of a Specified StatefulSet
- Listing a StatefulSet in a Specified Namespace
- Listing All StatefulSets
- Updating a Specified StatefulSet
- Updating the Status of a Specified StatefulSet
-
DaemonSet
- Creating a DaemonSet
- Deleting a Specified DaemonSet
- Delete All DaemonSets
- Reading a Specified DaemonSet
- Reading the Status of a Specified DaemonSet
- Updating a Specified DaemonSet
- Updating the Status of a Specified DaemonSet
- Listing All DaemonSets
- Listing a DaemonSet in a Specified Namespace
- Replacing a Specified DaemonSet
- Replacing the Status of a Specified DaemonSet
- Job
-
CronJob
- Creating a Cron Job
- Deleting a Cron Job
- Deleting All Cron Jobs
- Reading a Specified Cron Job
- Reading a Specified Cron Job
- Replacing a Specified Cron Job
- Replacing the Status of a Specified Cron Job
- Listing Cron Jobs Under a Specified Namespace
- Listing Cron Jobs
- Updating the Status of a Specified Cron Job
- Updating a Specified Cron Job
- ReplicaSet
-
ReplicationController
- Creating a ReplicationController
- Deleting a ReplicationController
- Deleting All ReplicationControllers
- Reading a ReplicationController Under a Specified Namespace
- Replacing a ReplicationController Under a Specified Namespace
- Replacing the Status of a ReplicationController Under a Specified Namespace
- Listing ReplicationControllers in a Specified Namespace
- Listing ReplicationControllers
- Updating a Specified ReplicationController
- Endpoints
- Service
-
Ingress
- Creating an Ingress
- Updating a Specified Ingress
- Replacing a Specified Ingress
- Deleting an Ingress
- Deleting All Ingresses
- Obtaining a Specified Ingress
- Listing Ingresses in a Specified Namespace
- Obtaining an Ingresses List
- Obtaining the Status of an Ingress in a Specified Namespace
- Replacing the Status of an Ingress in a Specified Namespace
- Updating the Status of an Ingress in a Specified Namespace
- NetworkPolicy
- PersistentVolume
-
PersistentVolumeClaim
- Creating a PersistentVolumeClaim
- Deleting a Specified PersistentVolumeClaim
- Deleting All PersistentVolumeClaims
- Reading a Specified PersistentVolumeClaim
- Replacing a Specified PersistentVolumeClaim
- Replacing the Status of a Specified PersistentVolumeClaim
- Listing PersistentVolumeClaims in a Specified Namespace
- Listing All PersistentVolumeClaims
- Updating a Specified PersistentVolumeClaim
- ConfigMap
- Secret
- RBAC
-
API Groups
- Listing APIVersions
- Listing APIGroups
- Listing APIResources of GroupVersion apiregistration.k8s.io
- Listing APIResources of GroupVersion extensions/v1beta1
- Listing APIResources of GroupVersion apps
- Listing APIResources of GroupVersion authentication.k8s.io
- Listing APIResources of GroupVersion authorization.k8s.io
- Listing APIResources of GroupVersion autoscaling
- Listing APIResources of GroupVersion batch
- Listing APIResources of GroupVersion certificates.k8s.io
- Listing APIResources of GroupVersion networking.k8s.io
- Listing APIResources of GroupVersion policy
- Listing APIResources of GroupVersion rbac.authorization.k8s.io
- Listing APIResources of GroupVersion storage.k8s.io
- Listing APIResources of GroupVersion apiextensions.k8s.io
- Listing APIResources of GroupVersion v1
- Event
- Out-of-Date APIs
- Data Structure
- Permissions Policies and Supported Actions
-
Appendix
- Patch Request Method Operation Description
- Patch Request Examples
- Status Code
- Error Codes
- Obtaining a Project ID
- Obtaining the Account ID
- Specifying Add-ons to Be Installed During Cluster Creation
- How to Obtain Parameters in the API URI
- Creating a VPC and Subnet
- Creating a Key Pair
- Node Flavor Description
- Adding a Salt in the password Field When Creating a Node
- Maximum Number of Pods That Can Be Created on a Node
- Node OS Description
- Change History
- SDK Reference
-
FAQs
- Common Questions
-
Billing
- How Is CCE Billed/Charged?
- How Do I Change the Billing Mode of a CCE Cluster from Pay-per-Use to Yearly/Monthly?
- Can I Change the Billing Mode of CCE Nodes from Pay-per-Use to Yearly/Monthly?
- Which Resource Quotas Should I Pay Attention To When Using CCE?
- Which Invoice Modes Are Supported by HUAWEI CLOUD?
- Will I Be Notified When My Balance Is Insufficient?
- Will I Be Notified When My Account Balance Changes?
- Can I Delete a Yearly/Monthly-Billed CCE Cluster Directly When It Expires?
- How Do I Unsubscribe From CCE?
- Is Refund for CCE Supported?
-
Cluster
- Cluster Creation
-
Cluster Running
- How Do I Rectify the Fault When the Cluster Status Is Unavailable?
- How Do I Reset or Reinstall a CCE Cluster?
- How Do I Check Whether a Cluster Is in Multi-Master Mode?
- Where Do I Find the CPU and Memory Specifications of a Master Node?
- Can I Directly Connect to the Master Node of a Cluster?
- How Do I Retrieve Data After a Cluster Is Deleted?
- How Do I Update a Namespace in Terminating State?
- Why Does CCE Display Node Disk Usage Inconsistently with Cloud Eye?
- What Should I Do If a Cluster Fails to Be Deleted?
-
Node
- Node Creation
-
Node Running
- What Should I Do If a Cluster Is Available But Some Nodes Are Unavailable?
- How Do I Troubleshoot the Failure to Remotely Log In to a Node in a CCE Cluster?
- How Do I Log In to a Node Using a Password and Reset the Password?
- How Do I Collect Logs of Nodes in a CCE Cluster?
- What Can I Do If the Container Network Becomes Unavailable After yum update Is Used to Upgrade the OS?
- What Should I Do If the vdb Disk of a Node Is Damaged and the Node Cannot Be Recovered After Reset?
- Which Ports Are Used to Install kubelet on CCE Cluster Nodes?
- How Do I Configure a Pod to Use the Acceleration Capability of a GPU Node?
- What Should I Do If I/O Suspension Occasionally Occurs When SCSI EVS Disks Are Used?
- What Should I Do If Excessive Docker Audit Logs Affect the Disk I/O?
- How Do I Fix an Abnormal Container or Node Due to No Thin Pool Disk Space?
- Specification Change
- Node Pool
-
Workload
-
Workload Abnormalities
- How Do I Use Events to Fix Abnormal Workloads?
- What Should I Do If Pod Scheduling Fails?
- What Should I Do If a Pod Fails to Pull the Image?
- What Should I Do If Container Startup Fails?
- What Should I Do If a Pod Fails to Be Evicted?
- What Should I Do If a Storage Volume Cannot Be Mounted or the Mounting Times Out?
- What Should I Do If a Workload Remains in the Creating State?
- What Should I Do If Pods in the Terminating State Cannot Be Deleted?
- What Should I Do If a Workload Is Stopped Caused by Pod Deletion?
- What Should I Do If an Error Occurs When Deploying a Service on the GPU Node?
- What Should I Do If Sandbox-Related Errors Are Reported When the Pod Remains in the Creating State?
- Why Does Pod Fail to Write Data?
- Why Do Pods Start Slowly on a CCE Turbo BMS Node?
- Why Is Pod Creation or Deletion Suspended on a Node Where File Storage Is Mounted?
-
Container Configuration
- When Is Pre-stop Processing Used?
- How Do I Set an FQDN for Accessing a Specified Container in the Same Namespace?
- What Should I Do If Health Check Probes Occasionally Fail?
- How Do I Change the Permission of the Secret Mounted to a Container from 644 to 444?
- How Do I Set the umask Value for a Container?
- What Can I Do If an Error Is Reported When a Deployed Container Is Started After the JVM Startup Heap Memory Parameter Is Specified for ENTRYPOINT in Dockerfile?
- What Is the Retry Mechanism When CCE Fails to Start a Pod?
- Alarm Monitoring
- Scheduling Policies
-
Others
- What Should I Do If a Scheduled Task Cannot Be Restarted After Being Stopped for a Period of Time?
- What Is a Headless Service When I Create a StatefulSet?
- What Should I Do If Error Message "Auth is empty" Is Displayed When a Private Image Is Pulled?
- Why Cannot a Pod Be Scheduled to a Node?
- What Is the Image Pull Policy for Containers in a CCE Cluster?
- Why Is "Error from server (Forbidden)" Displayed When I Use kubectl?
- Why Is the Mount Point of a Docker Container in the Kunpeng Cluster of v1.13 Uninstalled?
- Why Are Pods Evicted by kubelet Due to Abnormal cgroup Statistics?
- What Can I Do If a Layer Is Missing During Image Pull?
-
Workload Abnormalities
-
Networking
- Network Planning
-
Network Fault
- How Do I Locate a Workload Networking Fault?
- Why the ELB Address Cannot Be used to Access Workloads in a Cluster?
- What Should I Do If an Ingress Fails to Be Added or Cannot Be Accessed
- Why Does the Browser Return Error Code 404 When I Access a Deployed Application?
- What Should I Do If a Container Fails to Connect to the Internet?
- What Can I Do If a VPC Subnet Cannot Be Deleted?
- How Do I Restore a Faulty Container NIC?
- What Should I Do If a Node Fails to Connect to the Internet (Public Network)?
- How Do I Resolve a Conflict Between the VPC CIDR Block and the Container CIDR Block?
- What Should I Do If the Java Error "Connection reset by peer" Is Reported During Layer-4 ELB Health Check
- How Do I Locate the Service Event Indicating That No Node Is Available for Binding?
- Why Does "Dead loop on virtual device gw_11cbf51a, fix it urgently" Intermittently Occur When I Log In to a VM using VNC?
- Why Does a Panic Occasionally Occur When I Use Network Policies on a Cluster Node?
- Why Are Lots of source ip_type Logs Generated on the VNC?
- Security Hardening
- Network Configuration
-
Others
- How Do I Obtain an Ingress TLS Certificate?
- Can Multiple NICs Be Bound to a Node in a CCE Cluster?
- Why Is the Backend Server Group of an ELB Automatically Deleted After a Service Is Published to the ELB?
- Can the Container CIDR Block Be Modified After a Cluster Is Created?
- Why Cannot an Ingress Be Created After the Namespace Is Changed?
- How Do I Obtain the Actual Source IP Address of a Client After a Service Is Added into Istio?
-
Storage
- What Are the Differences Among CCE Storage Classes in Terms of Persistent Storage and Multi-node Mounting?
- Can I Add a Node Without a 100 GB Data Disk?
- Can I Restore an EVS Disk Used as a Persistent Volume in a CCE Cluster After the Disk Is Deleted or Expires?
- What Should I Do If the Host Cannot Be Found When Files Need to Be Uploaded to OBS During the Access to the CCE Service from a Public Network?
- How Many Nodes (ECSs) Can an SFS File System Be Mounted to?
- How Can I Achieve Compatibility Between ExtendPathMode and Kubernetes client-go?
- What Should I Do If a Storage Volume Fails to be Created?
- Can CCE PVCs Detect Underlying Storage Faults?
-
Chart and Add-on
- What Should I Do If the nginx-ingress Add-on Fails to Be Installed on a Cluster and Remains in the Creating State?
- How Do I Rectify Failures When the NVIDIA Driver Is Used to Start Containers on GPU Nodes?
- What Should I Do If Residual Process Resources Exist Due to an Earlier npd Add-on Version?
- What Should I Do If a Chart Release Cannot Be Deleted Because the Chart Format Is Incorrect?
- Does CCE Support nginx-ingress?
- API & kubectl FAQs
-
DNS FAQs
- What Should I Do If Domain Name Resolution Fails?
- Why Does a Container in a CCE Cluster Fail to Perform DNS Resolution?
- Why Cannot the Domain Name of the Tenant Zone Be Resolved After the Subnet DNS Configuration Is Modified?
- How Do I Optimize the Configuration If the External Domain Name Resolution Is Slow or Times Out?
- How Do I Configure a DNS Policy for a Container?
- Image Repository FAQs
-
Reference
- How Do I Expand the Storage Capacity of a Container?
- How Can Container IP Addresses Survive a Container Restart?
- How Do I Back Up Data in CCE Container Storage?
- Can On-premises Kubernetes Clusters Interconnect with HUAWEI CLOUD Storage Services?
- What Are the Differences Between CCE and ServiceStage?
- Videos
-
More Documents
-
User Guide (ME-Abu Dhabi Region)
- What Is Cloud Container Engine?
- High-Risk Operations and Solutions
- Getting Started
- Cluster Management
-
Node Management
- Node Overview
- Creating a Node
- Accepting Existing Nodes into a Cluster
- Logging In to a Node
- Monitoring Nodes
- Managing Node Labels
- Synchronizing Node Data
- Resetting a Node
- Deleting a Node
- Stopping a Node
- Formula for Calculating the Reserved Resources of a Node
- Creating a Linux LVM Disk Partition for Docker
- Node Pool Management
-
Workload Management
- Overview
- Creating a Deployment
- Creating a StatefulSet
- Creating a DaemonSet
- Creating a Job
- Creating a Cron Job
- Managing Pods
- Managing Workloads and Jobs
- Scaling a Workload
-
Configuring a Container
- Using a Third-Party Image
- Setting Container Specifications
- Setting Container Lifecycle Parameters
- Setting Container Startup Commands
- Setting Health Check for a Container
- Setting an Environment Variable
- Collecting Standard Output Logs of Containers
- Collecting Container Logs from Specified Paths
- Working with Prometheus for Custom Monitoring
- Configuring APM Settings for Performance Bottleneck Analysis
- Enabling ICMP Security Group Rules
- Using Kubernetes In-Cluster DNS
- Affinity and Anti-Affinity Scheduling
- Network Management
- Storage Management
- Configuration Center
- Charts
- Add-on-management
- Permissions Management
- Related Services
-
Best Practices
-
Containerizing an Enterprise Application (ERP)
- Overview
- Containerizing an Entire Application
- Process of Containerizing an Application
- Step 1: Analyzing the Application
- Step 2: Preparing the Application Runtime Environment
- Step 3: Compiling a Startup Script
- Step 4: Writing a Dockerfile
- Step 5: Creating and Uploading an Image
- Step 6: Creating a Containerized Workload
-
Containerizing an Enterprise Application (ERP)
-
FAQs
- Frequently Asked Questions
- How Do I Add a Second Data Disk to a Node in a CCE Cluster?
- How Do I Select a Network Model When Creating a CCE Cluster? What Are the Differences Between These Models?
- Planning CIDR Blocks for a CCE Cluster
- How Do I Troubleshoot Insufficient EIPs When a Node Is Added?
- How Can I Achieve Compatibility Between ExtendPathMode and Kubernetes client-go?
- How Can I Achieve Compatibility Between Ingress's property and Kubernetes client-go?
- How Do I Clean Up CCE Resources on a Deleted Node?
- What Should I Do If My Cluster Status Is Available but the Node Status Is Unavailable?
- How Do I Rectify the Fault When the Cluster Status Is Unavailable?
- How Do I Use kubectl to Set the Workload Access Type to LoadBalancer (ELB)?
-
Workload Abnormalities
- Fault Locating and Troubleshooting for Abnormal Workloads
- What Should I Do If Pod Scheduling Fails?
- What Should I Do If Image Re-pull Fails?
- What Should I Do If Container Restart Fails?
- What Should I Do If An Evicted Pod Exists?
- What Should I Do If a Pod Fails to be Evicted?
- What Should I Do If Pods in the Terminating State Cannot Be Deleted?
- What Should I Do If a Workload Is Stopped Caused by Pod Deletion?
- What Should I Do If GPU Node Exceptions Occur?
- What Should I Do If Sandbox-Related Errors Are Reported When the Pod Remains in the Creating State?
- What Should I Do If a Pod Is in the Evicted State?
- Properly Allocating Container Computing Resources
- What Should I Do If a Service Released in a Workload Cannot Be Accessed from Public Networks?
- How Do I Harden the VPC Security Group Rules for CCE Cluster Nodes?
- How Do I Change the Mode of the Docker Device Mapper?
- Change History
-
API Reference (ME-Abu Dhabi Region)
- Before You Start
- API Overview
- Calling APIs
-
APIs
-
Cluster Management
- Creating a Cluster
- Reading a Specified Cluster
- Listing Clusters in a Specified Project
- Updating a Specified Cluster
- Deleting a Specified Cluster
- Obtaining Cluster Certificates
- Creating a Node
- Reading a Specified Node
- Listing All Nodes in a Cluster
- Updating a Specified Node
- Deleting a Node
- Creating a Node Pool
- Reading a Specified Node Pool
- Listing All Node Pools in a Specified Cluster
- Updating a Specified Node Pool
- Deleting a Node Pool
- Obtaining Job Information
- Storage Management
- Add-on Management
-
Cluster Management
-
Kubernetes API
- Node
- Namespace
- Resource Quotas
- Pod
-
Deployment
- Creating a Deployment
- Rolling Back a Deployment
- Deleting a Deployment
- Deleting All Deployments
- Reading a Specified Deployment
- Reading the Status of a Specified Deployment
- Reading the Scaling Operation of a Specified Deployment
- Replacing a Specified Deployment
- Replacing the Status of a Specified Deployment
- Replacing the Scaling Operation of a Specified Deployment
- Listing Deployments in a Specified Namespace
- Listing a Specified Deployment
- Updating a Specified Deployment
- Updating the Status of a Specified Deployment
- Updating the Scaling Operation of a Specified Deployment
-
StatefulSet
- Creating a StatefulSet
- Deleting a StatefulSet
- Delete All StatefulSets
- Reading a Specified StatefulSet
- Reading the Status of a Specified StatefulSet
- Replacing a Specified StatefulSet
- Replacing the Status of a Specified StatefulSet
- Listing a StatefulSet in a Specified Namespace
- Listing a Specified StatefulSet
- Updating a Specified StatefulSet
- Updating the Status of a Specified StatefulSet
-
DaemonSet
- Creating a DaemonSet
- Deleting a DaemonSet
- Delete All DaemonSets
- Reading a Specified DaemonSet
- Reading the Status of a Specified DaemonSet
- Updating a Specified DaemonSet
- Updating the Status of a Specified DaemonSet
- Listing DaemonSets
- Listing a DaemonSet in a Specified Namespace
- Replacing a Specified DaemonSet
- Replacing the Status of a Specified DaemonSet
- Job
-
CronJob
- Creating a Cron Job
- Deleting a Cron Job
- Deleting All Cron Jobs
- Reading a Specified Cron Job
- Reading a Specified Cron Job
- Replacing a Specified Cron Job
- Replacing the Status of a Specified Cron Job
- Listing Cron Jobs Under a Specified Namespace
- Listing Cron Jobs
- Updating the Status of a Specified Cron Job
- Updating a Specified Cron Job
- ReplicaSet
-
ReplicationController
- Creating a ReplicationController
- Deleting a ReplicationController
- Deleting All ReplicationControllers
- Reading a ReplicationController Under a Specified Namespace
- Replacing a ReplicationController Under a Specified Namespace
- Replacing the Status of a ReplicationController Under a Specified Namespace
- Listing ReplicationControllers in a Specified Namespace
- Listing ReplicationControllers
- Updating a Specified ReplicationController
- Endpoints
- Service
-
Ingress
- Creating an Ingress
- Updating a Specified Ingress
- Replacing a Specified Ingress
- Deleting an Ingress
- Deleting All Ingresses
- Obtaining a Specified Ingress
- Listing Ingresses in a Specified Namespace
- Obtaining an Ingresses List
- Obtaining the Status of an Ingress in a Specified Namespace
- Replacing the Status of an Ingress in a Specified Namespace
- Updating the Status of an Ingress in a Specified Namespace
- NetworkPolicy
- PersistentVolume
-
PersistentVolumeClaim
- Creating a PersistentVolumeClaim
- Deleting a Specified PersistentVolumeClaim
- Deleting All PersistentVolumeClaims
- Reading a Specified PersistentVolumeClaim
- Replacing a Specified PersistentVolumeClaim
- Replacing the Status of a Specified PersistentVolumeClaim
- Listing PersistentVolumeClaims in a Specified Namespace
- Listing All PersistentVolumeClaims
- Updating a Specified PersistentVolumeClaim
- ConfigMap
- Secret
- RBAC
-
API Groups
- Listing APIVersions
- Listing APIGroups
- Listing APIResources of GroupVersion apiregistration.k8s.io/v1beta1
- Listing APIResources of GroupVersion extensions/v1beta1
- Listing APIResources of GroupVersion apps/v1beta1
- Listing APIResources of GroupVersion authentication.k8s.io/v1
- Listing APIResources of GroupVersion authentication.k8s.io/v1beta1
- Listing APIResources of GroupVersion authorization.k8s.io/v1
- Listing APIResources of GroupVersion authorization.k8s.io/v1beta1
- Listing APIResources of GroupVersion autoscaling/v1
- Listing APIResources of GroupVersion batch/v1
- Listing APIResources of GroupVersion certificates.k8s.io/v1beta1
- Listing APIResources of GroupVersion networking.k8s.io/v1
- Listing APIResources of GroupVersion policy/v1beta1
- Listing APIResources of GroupVersion rbac.authorization.k8s.io/v1beta1
- Listing APIResources of GroupVersion storage.k8s.io/v1
- Listing APIResources of GroupVersion storage.k8s.io/v1beta1
- Listing APIResources of GroupVersion apiextensions.k8s.io/v1beta1
- Listing APIResources of GroupVersion v1
- Event
- Data Structure
- Permissions Policies and Supported Actions
- Appendixes
- Change History
-
User Guide (Paris Region)
- What Is Cloud Container Engine?
- Product Bulletin
- Service Overview
- Kubernetes Basics
- Getting Started
- Cluster Management
- Node Management
- Node Pool Management
- Workload Management
- Advanced Container Settings
- Affinity and Anti-Affinity Scheduling
- Network Management
- Storage Management
- Namespace
- Chart Management
- Auto Scaling
- Permissions Management
- Configuration Center
- Related Services
- Using kubectl to Perform Operations on Clusters
-
FAQs
- Checklist for Migrating Containerized Applications to the Cloud
-
Cluster
- How Do I Rectify the Fault When the Cluster Status Is Unavailable?
- How Do I Select a Network Model When Creating a CCE Cluster? What Are the Differences Between These Models?
- How Do I Use heapster in Clusters of v1.13.10?
- Is Management Scale of a Cluster Related to the Number of Master Nodes?
- How Do I Retrieve Data After a Cluster Is Deleted?
-
Node
- How Do I Troubleshoot Insufficient EIPs When a Node Is Added?
- Can I Do If My Cluster Status Is Available but the Node Status Is Unavailable?
- How Do I Change the Mode of the Docker Device Mapper?
- How Do I Add a Second Data Disk to a Node in a CCE Cluster?
- Can I Change the IP Address of a Node in a CCE Cluster?
- How Do I Reset the Password for a Node in a CCE Cluster?
-
Workload
-
Workload Abnormalities
- Fault Locating and Troubleshooting for Abnormal Workloads
- Failed to Schedule an Instance
- What Should I Do If Image Re-pull Fails?
- What Should I Do If Container Restart Fails?
- What Should I Do If An Evicted Pod Exists?
- What Should I Do If a Pod Fails to be Evicted?
- What Should I Do If Pods in the Terminating State Cannot Be Deleted?
- What Should I Do If a Workload Is Stopped Caused by Pod Deletion?
- What Should I Do If Sandbox-Related Errors Are Reported When the Pod Remains in the Creating State?
- What Should I Do If a Pod Is in the Evicted State?
- What Should I Do If the OOM Killer Is Triggered When a Container Uses Memory Resources More Than Limited?
- What Should I Do If a Service Released in a Workload Cannot Be Accessed from Public Networks?
- How Do I Set the Number of Pods for a Workload?
- Why Does a Pod Fail to Be Scheduled to a Node?
-
Workload Abnormalities
-
Networking
- Using Kubernetes In-Cluster DNS
- What Is the Relationship Between Clusters, VPCs, and Subnets?
- Planning CIDR Blocks for a CCE Cluster
- How Do I Enable ICMP Security Group Rules?
- How Do I Use kubectl to Set the Workload Access Type to LoadBalancer (ELB)?
- What Should I Do If a VPC Subnet Cannot Be Deleted?
- What Should I Do If a Node Fails to Connect to the Internet (Public Network)?
- How Do I Harden the VPC Security Group Rules for CCE Cluster Nodes?
-
Storage
- How Do I Format a Data Disk Using Command Line Injection?
- How Do I Change the Storage Class Used by a Cluster of v1.15 from FlexVolume to CSI Everest?
- How Many Nodes (ECSs) Can an SFS File System Be Mounted to?
- Can I Restore an EVS Disk Used as a Persistent Volume in a CCE Cluster After the Disk Is Deleted or Expires?
- Migrating Data from CCE 1.0 to CCE 2.0
-
API Reference (Paris Region)
- Before You Start
- API Overview
- Calling APIs
-
APIs
- API URL
-
Cluster Management
- Creating a Cluster
- Reading a Specified Cluster
- Listing Clusters in a Specified Project
- Updating a Specified Cluster
- Deleting a Specified Cluster
- Hibernating a Cluster
- Waking Up a Cluster
- Obtaining Cluster Certificates
- Creating a Node
- Reading a Specified Node
- Listing All Nodes in a Cluster
- Updating a Specified Node
- Deleting a Node
- Reading Job Progress
- Creating a Node Pool
- Querying a Specified Node Pool
- Updating a Specified Node Pool
- Listing All Node Pools in a Specified Cluster
- Deleting a Node Pool
- Add-on Management
-
Kubernetes APIs
- Node
- Namespace
- Resource Quota
- Pod
-
Deployment
- Creating a Deployment
- Rolling Back a Deployment
- Deleting a Deployment
- Deleting All Deployments
- Reading a Specified Deployment
- Reading the Status of a Specified Deployment
- Reading the Scaling Operation of a Specified Deployment
- Replacing a Specified Deployment
- Replacing the Status of a Specified Deployment
- Replacing the Scaling Operation of a Specified Deployment
- Listing Deployments in a Specified Namespace
- Listing a Specified Deployment
- Updating a Specified Deployment
- Updating the Status of a Specified Deployment
- Updating the Scaling Operation of a Specified Deployment
-
StatefulSet
- Creating a StatefulSet
- Deleting a StatefulSet
- Deleting All StatefulSets
- Reading a Specified StatefulSet
- Reading the Status of a Specified StatefulSet
- Replacing a Specified StatefulSet
- Replacing the Status of a Specified StatefulSet
- Listing a StatefulSet in a Specified Namespace
- Listing a Specified StatefulSet
- Updating a Specified StatefulSet
- Updating the Status of a Specified StatefulSet
-
DaemonSet
- Creating a DaemonSet
- Deleting a DaemonSet
- Deleting All DaemonSets
- Reading a Specified DaemonSet
- Reading the Status of a Specified DaemonSet
- Updating a Specified DaemonSet
- Updating the Status of a Specified DaemonSet
- Listing DaemonSets
- Listing DaemonSets in a Specified Namespace
- Replacing a Specified DaemonSet
- Replacing the Status of a Specified DaemonSet
- Job
-
CronJob
- Creating a CronJob
- Deleting a CronJob
- Deleting All CronJobs
- Reading a Specified CronJob
- Reading the Status of a Specified CronJob
- Replacing a Specified CronJob
- Replacing the Status of a Specified CronJob
- Listing CronJobs Under a Specified Namespace
- Listing CronJobs
- Updating the Status of a Specified CronJob
- Updating a Specified CronJob
- ReplicaSet
-
ReplicationController
- Creating a ReplicationController
- Deleting a ReplicationController
- Deleting All ReplicationControllers
- Reading a ReplicationController Under a Specified Namespace
- Replacing a ReplicationController Under a Specified Namespace
- Replacing the Status of a ReplicationController Under a Specified Namespace
- Listing ReplicationControllers in a Specified Namespace
- Listing ReplicationControllers
- Updating a Specified ReplicationController
- Endpoint
- Service
-
Ingress
- Creating an Ingress
- Updating a Specified Ingress
- Replacing a Specified Ingress
- Deleting an Ingress
- Deleting All Ingresses
- Obtaining a Specified Ingress
- Listing Ingresses in a Specified Namespace
- Obtaining an Ingress List
- Obtaining the Status of an Ingress in a Specified Namespace
- Replacing the Status of an Ingress in a Specified Namespace
- Updating the Status of an Ingress in a Specified Namespace
- NetworkPolicy
- PersistentVolume
-
PersistentVolumeClaim
- Creating a PersistentVolumeClaim
- Deleting a Specified PersistentVolumeClaim
- Deleting All PersistentVolumeClaims
- Reading a Specified PersistentVolumeClaim
- Replacing a Specified PersistentVolumeClaim
- Replacing the Status of a Specified PersistentVolumeClaim
- Listing PersistentVolumeClaims in a Specified Namespace
- Listing All PersistentVolumeClaims
- Updating a Specified PersistentVolumeClaim
- ConfigMap
- Secret
- RBAC
-
API Group
- Listing APIVersions
- Listing APIGroups
- Listing APIResources of GroupVersion apiregistration.k8s.io/v1beta1
- Listing APIResources of GroupVersion apiregistration.k8s.io/v1
- Listing APIResources of GroupVersion extensions/v1beta1
- Listing APIResources of GroupVersion apps/v1beta1
- Listing APIResources of GroupVersion apps/v1
- Listing APIResources of GroupVersion authentication.k8s.io/v1
- Listing APIResources of GroupVersion authentication.k8s.io/v1beta1
- Listing APIResources of GroupVersion authorization.k8s.io/v1
- Listing APIResources of GroupVersion authorization.k8s.io/v1beta1
- Listing APIResources of GroupVersion autoscaling/v1
- Listing APIResources of GroupVersion batch/v1
- Listing APIResources of GroupVersion certificates.k8s.io/v1beta1
- Listing APIResources of GroupVersion networking.k8s.io/v1
- Listing APIResources of GroupVersion policy/v1beta1
- Listing APIResources of GroupVersion rbac.authorization.k8s.io/v1beta1
- Listing APIResources of GroupVersion storage.k8s.io/v1
- Listing APIResources of GroupVersion storage.k8s.io/v1beta1
- Listing APIResources of GroupVersion apiextensions.k8s.io/v1beta1
- Listing APIResources of GroupVersion apiextensions.k8s.io/v1
- Listing APIResources of GroupVersion v1
- Event
- Data Structure
- Permissions Policies and Supported Actions
- Appendix
-
User Guide (ME-Abu Dhabi Region)
Cloud Container Engine
Cloud Container Engine (CCE) provides highly scalable, high-performance, enterprise-class Kubernetes clusters and supports Docker containers. With CCE, you can easily deploy, manage, and scale containerized applications on HUAWEI CLOUD.
Progressive Knowledge
CCE knowledge for users from beginner level to expert level
01

Understand
CCE application scenarios and advantages are provided to help you quickly select your desired type to match services. This facilitates rapid service migration to HUAWEI CLOUD.
Service Overview
Basic Concepts
Basic Concepts
03

Start
After buying CCE clusters and nodes, you can create workloads for service operations.
Basic
Advanced
05

Best Practice
CCE supports the deployment and migration of websites and applications to meet your service requirements.