Este tema explica cómo crear un pod de ECI para la arquitectura Arm al especificar un tipo de instancia ECS Arm. El pod se ejecuta en un nodo virtual basado en la arquitectura Arm.
Requisitos previos
Debe haber creado un nodo virtual basado en Arm en su clúster. Para obtener más información, consulte Add an Arm-based virtual node.
Tipos de instancia
Para obtener más información sobre los tipos de instancia de ECS, consulte los siguientes temas:
Configuración
Para crear un pod con un tipo de instancia Arm, agregue la anotación k8s.aliyun.com/eci-use-specs a los metadatos del pod para especificar el tipo de instancia y establezca nodeSelector en kubernetes.io/arch: arm64 para programar el pod en un nodo con arquitectura Arm.
A continuación se muestran los pasos para configurar el pod.
-
Compruebe que existe un nodo virtual basado en Arm en el clúster.
kubectl get nodeSi la salida incluye un nombre de nodo que termina con el sufijo
linux-arm64, ese nodo es un nodo virtual basado en Arm.:~$ kubectl get node NAME STATUS ROLES AGE VERSION virtual-kubelet-cn-beijing-h Ready agent 169m v1.24.6-aliyun.1 virtual-kubelet-cn-beijing-i Ready agent 169m v1.24.6-aliyun.1 virtual-kubelet-cn-beijing-i-linux-arm64 Ready agent 75s v1.24.6-aliyun.1 virtual-kubelet-cn-beijing-k Ready agent 169m v1.24.6-aliyun.1NotaPara aprender a crear un nodo virtual basado en Arm, consulte Add an Arm-based virtual node.
-
Cree un pod y especifique un tipo de instancia Arm.
kubectl create -f arm-test.yamlEl siguiente es un ejemplo del archivo arm-test.yaml:
apiVersion: apps/v1 kind: Deployment metadata: name: test labels: app: test spec: replicas: 1 selector: matchLabels: app: nginx template: metadata: name: nginx-test labels: app: nginx alibabacloud.com/eci: "true" annotations: k8s.aliyun.com/eci-use-specs: "ecs.c8y.large,ecs.g8y.large" # Specifies the ECS Arm instance types. You can list up to five. spec: containers: - name: nginx image: arm64v8/centos:7.9.2009 # An image built for the Arm architecture. command: ["sleep"] args: ["999999"] nodeSelector: kubernetes.io/arch: arm64 # Schedules the pod to a node with the Arm architecture.