Este tópico descreve como especificar tipos de instância do Elastic Compute Service (ECS) com disco local para criar um pod do Elastic Container Instance (ECI).
Famílias de tipos de instância compatíveis
O disco local é uma unidade física na máquina onde a instância reside. Esses discos oferecem baixa latência, alto número de operações de entrada e saída por segundo (IOPS), alto throughput e excelente custo-benefício. Contudo, como o disco local integra uma única máquina física, ele está sujeito a pontos únicos de falha. Para mais informações, consulte Local disks.
Discos locais pertencem a uma única máquina física. Portanto, a confiabilidade dos dados depende diretamente da confiabilidade dessa máquina, o que gera risco de pontos únicos de falha. Para mais informações, consulte Notes on local disks.
As seguintes famílias de instâncias ECS com disco local são compatíveis:
|
Categoria |
Família de instâncias |
|
SSD local |
i4, i4g, i3, i3g, i2, i2g |
|
Big data |
d1 |
|
Big data com rede aprimorada |
d1ne |
|
Computação otimizada com aceleração por GPU |
gn5 |
A família gn5 é um tipo de instância acelerada por GPU. Ao selecionar essa família, especifique também os parâmetros relacionados à GPU, além dos parâmetros do disco local.
Para obter mais detalhes sobre os tipos de instância ECS, consulte os tópicos a seguir:
Configurações
Adicione a anotação Kubernetes. aliyun.com/eci-use-specs aos metadados do pod para especificar os tipos de instância ECS com disco local. Ao montar o disco local, defina o parâmetro medium como LocalRaid0 em EmptyDir para utilizar o disco em uma configuração RAID 0 e montá-lo no caminho desejado.
Exemplo:
-
Execute o comando a seguir para criar um pod com tipos de instância ECS com disco local.
kubectl create -f localdisk-test.yamlO código abaixo apresenta um exemplo em formato YAML.
apiVersion: apps/v1 kind: Deployment metadata: name: localdisk-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.i2g.2xlarge,ecs.i2.xlarge" # Specify the supported ECS instance types with a local disk. You can specify up to five instance types. spec: containers: - name: nginx image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2 ports: - containerPort: 80 volumeMounts: - name: localdisk mountPath: /localdisk-test volumes: # Mount the local disk - name: localdisk emptyDir: medium: LocalRaid0 -
Visualize as informações do disco local montado.
Após criar o pod, visualize suas informações. Uma configuração RAID 0 (
/dev/md0) será gerada para o disco local, e o disco estará montado no caminho especificado (neste exemplo,/localdisk-test).xxx:~$ kubectl get pod NAME READY STATUS RESTARTS AGE localdisk-test-5f8c979c48-j4bkj 1/1 Running 0 76s xxx:~$ kubectl exec -it localdisk-test-5f8c979c48-j4bkj -- bash root@localdisk-test-5f8c979c48-j4bkj:/# df -h Filesystem Size Used Avail Use% Mounted on overlay 30G 4.1G 26G 14% / tmpfs 64M 0 64M 0% /dev tmpfs 16G 0 16G 0% /sys/fs/cgroup /dev/md0 879G 77M 835G 1% /localdisk-test /dev/vda4 30G 4.1G 26G 14% /etc/hosts overlay 8.8G 4.9G 3.5G 59% /etc/hostname shm 64M 0 64M 0% /dev/shm tmpfs 32G 12K 32G 1% /run/secrets/kubernetes.io/serviceaccount tmpfs 16G 0 16G 0% /proc/acpi tmpfs 16G 0 16G 0% /sys/firmware