Lorsque vous créez un grand nombre d'instances élastiques (pods), les ressources disponibles peuvent s'avérer insuffisantes. Dans ce cas, nous vous recommandons de spécifier plusieurs configurations. Le système tente de créer les pods selon l'ordre des configurations spécifiées, ce qui améliore le taux de réussite de la création.
Contexte
Si vous spécifiez plusieurs configurations lors de la création d'une instance élastique, le système essaie d'utiliser ces configurations dans l'ordre indiqué. Cette approche augmente les chances de succès de la création.
Pendant la tentative, l'instance reste dans l'état Pending.
Le mode multi-configuration s'applique au niveau de l'instance et n'affecte que la politique de création d'une seule instance.
Vous pouvez également spécifier plusieurs zones lorsque vous utilisez le mode multi-configuration. Cela améliore encore davantage le taux de réussite de la création.
Configurations prises en charge
Configurations vCPU et mémoire prises en charge par Elastic Container Instance
Familles d'instances ECS prises en charge par Elastic Container Instance
Description de la configuration
Vous pouvez ajouter l'annotation k8s.aliyun.com/eci-use-specs aux métadonnées du fichier de configuration d'un pod pour spécifier les configurations de l'instance.
-
Lorsque vous spécifiez plusieurs configurations, vous pouvez indiquer des configurations de vCPU et de mémoire ou des types d'instances ECS. Vous pouvez également combiner les deux.
ImportantUne fois le pod créé, vous pouvez vérifier les configurations réellement utilisées par le pod dans le champ
k8s.aliyun.com/eci-instance-specdu fichier YAML du pod. Si le pod utilise un type d'instance ECS, la facturation est basée sur ce type d'instance ECS. Si le pod utilise des configurations de vCPU et de mémoire, la facturation est basée sur le nombre de vCPU et la taille de la mémoire. Vous devez spécifier les configurations par ordre de priorité. Vous pouvez spécifier au maximum cinq configurations.
Si vous souhaitez créer des instances élastiques accélérées par GPU, des instances élastiques utilisant des disques locaux ou des instances élastiques basées sur Arm, vous ne pouvez spécifier que les configurations correspondantes. Les configurations ne prenant pas en charge les fonctionnalités précédentes ne peuvent pas être spécifiées.
Le code suivant fournit des exemples de configuration :
apiVersion: apps/v1
kind: Deployment
metadata:
name: test
labels:
app: test
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
name: nginx-test
labels:
app: nginx
alibabacloud.com/eci: "true"
annotations:
k8s.aliyun.com/eci-use-specs: 2-4Gi,ecs.c5.large,ecs.c6.large # Sets the specifications that you want to use to create the pod. Replace the value by using the actual specifications.
spec:
containers:
- name: nginx
image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
ports:
- containerPort: 80