This page defines the core terms used in Elastic Container Instance (ECI) and Kubernetes. Review these terms before you start using ECI.
ECI terms
ECI organizes containerized workloads around a few core objects. A container group holds one or more containers, each launched from an image. The group can mount volumes for shared storage. Tags help you organize and filter container groups. Virtual nodes connect ECI to Kubernetes clusters. Image cache reduces startup time by pre-caching images.
| Term | Description |
|---|---|
| container | A lightweight, standalone, executable software package. A container is the running instance of an image. |
| container group | A set of containers scheduled onto the same host. Containers in a group share the same network namespace and storage volumes, and their lifecycle is tied to the group. A container group is an elastic container instance and is similar to a pod in Kubernetes. |
| image | A layered file system that bundles the application code, runtime, libraries, and configuration needed to run a containerized application. Docker images are the standard packaging format. When you create a container group, specify an image from Docker Hub, Alibaba Cloud Container Registry, or a private image repository. |
| image cache | A feature that pre-caches images to speed up container group startup. Image pulls are the main bottleneck at startup because they depend on image size and network conditions. Caching images in advance reduces that delay. |
| volume | A shared storage resource attached to a container group. All containers in the group can access volumes declared on the group. Mount external volumes to persist data beyond the lifecycle of individual containers. |
| tag | A key-value pair that labels a container group for organization and filtering. Tags can be added only at creation time and cannot be added afterward. Each container group supports up to 10 tags, and each tag key must be unique within the group. Tags in ECI are equivalent to labels in Kubernetes. |
| virtual node | A name that is defined on a local instance to identify a particular remote instance. Virtual nodes use Virtual Kubelet, an open-source project from the Kubernetes community, to deploy virtual nodes to Kubernetes clusters and connect ECI to Kubernetes. Elastic container instances do not run on a dedicated physical node — they are scheduled across the Alibaba Cloud global resource pool. |
Kubernetes terms
If you use Kubernetes to manage your elastic container instances, familiarize yourself with the following terms.
| Term | Description |
|---|---|
| master | The control node in a Kubernetes cluster, responsible for managing and scheduling workloads across the cluster. |
| node | A worker node in a Kubernetes cluster where workloads run. If a node fails, the master reschedules its workloads onto another node. |
| pod | The smallest deployable unit in Kubernetes. A pod represents a running process in the cluster and wraps one or more tightly coupled containers. |
| Deployment | A controller for stateless workloads. A Deployment sits above the pod layer and declares the desired number of pod replicas and their versions. |
| StatefulSet | A controller for stateful workloads. Like a Deployment, a StatefulSet manages a group of pods, but it also provides stable persistent storage and persistent identifiers for each pod. |
| Service | An abstraction that exposes a set of pods as a stable network endpoint. A Service provides a single, consistent address for accessing pods regardless of which individual pods are running. |
| ConfigMap | An API object that stores non-confidential configuration data as key-value pairs. ConfigMap can be used to store a single attribute and configuration files. |
| namespace | A logical partition within a cluster used to group and isolate resource objects. |
| label | A key-value pair attached to a resource object. Labels let you organize resources into logical groups and select them with queries across multiple dimensions. |
| volume | A directory accessible to one or more containers in a pod, backed by various storage types. Mount a volume to one or more paths within the pod's containers. |
| PersistentVolume | A piece of storage provisioned by a cluster administrator, independent of any individual pod lifecycle. |
| PersistentVolumeClaim | A user's request for storage. A PersistentVolumeClaim binds to a PersistentVolume that satisfies the requested capacity and access mode. |
For more information, see Kubernetes documentation.