Я думаю, что использование инструмента Kops подойдет для вашего случая.Kops предоставляет множество функций управления кластером AWS Kubernetes, и в основном его также можно использовать для поддержки AutoScalingGroup (ASG)
в AWS.Изначально Kops обслуживает группу Instance как эквивалент ASG и поэтому может обрабатывать все операции с реальными группами автомасштабирования в кластере.
Вы можете создать InstanceGroup
и сопоставить nodeLabels:
apiVersion: kops/v1alpha2
kind: InstanceGroup
metadata:
creationTimestamp: 2017-11-12T07:25:23Z
labels:
kops.k8s.io/cluster: cluster.k8s.local
name: p2
spec:
image: kope.io/k8s-1.7-debian-jessie-amd64-hvm-ebs-2017-07-28
machineType: p2.xlarge
maxSize: 2
minSize: 2
nodeLabels:
type: p2-ig
role: Node
subnets:
- us-east-1d
- us-east-1e
И расписание Pod для ранее созданных InstanceGroup
:
apiVersion: v1
kind: Pod
metadata:
name: nginx
labels:
env: test
spec:
containers:
- name: nginx
image: nginx
imagePullPolicy: IfNotPresent
nodeSelector:
type: p2-ig
Более подробную информацию об использовании групп экземпляров Kops можно найти здесь .