Arm-based elastic container instances run on the Arm architecture, where each vCPU maps directly to a physical processor core. This delivers stable, predictable performance with dedicated resources, making Arm instances well suited for containers, microservices, website and application servers, high-performance computing, and CPU-based machine learning workloads.
Arm-based ECS instance families
For more information about ECS instance types, see the following topics:
Considerations
Billing: An Arm-based elastic container instance is billed based on the corresponding Arm-based ECS instance type, not the vCPU and memory specifications.
Container images: We recommend that you use Arm-compatible container images, such as
arm64v8/centos:7.9.2009. If you use container images that do not support the Arm architecture, the containers may fail to start.Region and zone support: Arm-based instances are available only in regions and zones that support the Arm architecture. When you create an instance in the console, the Specify Instance Type tab displays Arm-based options only if the selected region and zone support them.
After you create the elastic container instance, you can call the DescribeContainerGroups API operation to query the instance details. The InstanceType response parameter indicates the Arm-based ECS instance type on which the elastic container instance runs.
Create an instance
You can create an Arm-based elastic container instance by using the API or the Elastic Container Instance console.
API mode
When you call the CreateContainerGroup API operation, you can specify the Arm architecture of the instance by using one of the following methods:
Method 1: Use the
InstanceTypeparameter to specify Arm-based ECS instance types directly.Method 2: Specify the vCPU and memory specifications and set the
CpuArchitectureparameter toARM64. The system automatically selects a supported Arm-based ECS instance type that meets the vCPU and memory requirements.
You can use one of the following methods to specify the vCPU and memory specifications:
Specify the vCPU and memory specifications of only containers. The system automatically aggregates the vCPU and memory specifications of containers to the vCPU and memory specifications of the instance.
Specify the vCPU and memory specifications of the instance, and then specify the vCPU and memory specifications of each container.
Use the
InstanceTypeparameter to specify the vCPU and memory specifications of the elastic container instance.
Parameters
The following table describes the parameters that you can use to specify the Arm architecture and resource specifications of the instance. For more information, see CreateContainerGroup.
Parameter | Type | Example | Description |
Cpu | number | 2.0 | The number of vCPUs that you want to allocate to the elastic container instance. |
Memory | number | 4.0 | The memory size that you want to allocate to the elastic container instance. Unit: GiB. |
Container.N.Cpu | number | 0.5 | The number of vCPUs that you want to allocate to container N. |
Container.N.Memory | number | 1.0 | The memory size of container N. Unit: GiB. |
InstanceType | String | 2-4Gi | The specifications for the instance. You can specify up to five specifications at a time. Separate multiple specifications with commas (,). You can specify vCPU and memory specifications. You can also specify ECS instance types. |
CpuArchitecture | String | ARM64 | The CPU architecture of the instance. Default value: AMD64. Valid values: AMD64, ARM64. |
Sample configurations
Example 1: Specify Arm-based ECS instance types
ContainerGroupName=test-arm # Specify multiple Arm-based ECS instance types InstanceType=ecs.c8y.large,ecs.g8y.large # Create an elastic IP address (EIP) and associate the EIP with the instance to pull images over the Internet. AutoCreateEip=true # Configure containers to use an Arm-based container image. Container.1.Name=centos Container.1.Image=arm64v8/centos:7.9.2009 Container.1.command.1=sleep Container.1.Arg.1=999999Example 2: Specify vCPU and memory specifications and a CPU architecture
ContainerGroupName=test-arm # Specify the vCPU and memory specifications for the instance. Cpu=2.0 Memory=4.0 # Specify the CPU architecture. CpuArchitecture=ARM64 # Create an EIP and associate the EIP with the instance to pull images over the Internet. AutoCreateEip=true # Configure containers to use an Arm-based container image. Container.1.Name=centos Container.1.Image=arm64v8/centos:7.9.2009 Container.1.command.1=sleep Container.1.Arg.1=999999
Console mode
To create an Arm-based elastic container instance in the Elastic Container Instance console, perform the following steps:
Select a region and zone that support the Arm architecture.
In the Container Group Configurations section, click the Specify Instance Type tab.
Select Arm-based ECS instance types from the list.
