У меня есть скрипт, написанный на boto3, который создаст группу автоматического масштабирования с 50% экземпляров по требованию и 50% экземпляров спот. Если по какой-либо причине экземпляр спот не запускается, может быть, он не загружен или цена слишком высока, каков наилучший способ обеспечить запуск экземпляра по требованию в месте спот?
Например, если у меня есть эта настройка:
- asg с именем test-env-date
- требуемая емкость 2, мин 2, max 2
- 50% по требованию, что означает, что 1 экземпляр будет по требованию, а другой будет спот
- , спот не может быть найден из-за отсутствия доступности в моем az
Теперь, как убедиться, что моя группа автоматического масштабирования действительно запускает 2 экземпляра по требованию, так как место недоступно?
РЕДАКТИРОВАТЬ : вот мой звонок. Передача шаблона запуска, который я создал ранее. Как вы можете видеть в создании группы автоматического масштабирования, я могу указать тип экземпляра пятна и общий размер для группы автоматического масштабирования. Так как это смешанная группа автоматического масштабирования, я указываю% по требованию с помощью 'OnDemandPercentageAboveBaseCapacity': on_demand_percentage Если не хватает спотовой емкости, и это значение установлено на 50, это будет означать, что мой asg останется на 1 даже если мой желаемый объем составляет 2?
response = client.create_auto_scaling_group(
AutoScalingGroupName=auto_scaling_group_name,
MixedInstancesPolicy={
'LaunchTemplate':{
'LaunchTemplateSpecification': {
'LaunchTemplateName': auto_scaling_group_name
},
'Overrides':[
{
'InstanceType': spot_instance_type_1
},
{
'InstanceType': spot_instance_type_2
},
{
'InstanceType': spot_instance_type_3
}
],
},
'InstancesDistribution': {
'OnDemandAllocationStrategy': 'prioritized',
'OnDemandBaseCapacity': 0,
'OnDemandPercentageAboveBaseCapacity': on_demand_percentage,
'SpotAllocationStrategy': 'lowest-price',
}
},
MinSize=min_size,
MaxSize=max_size,
DesiredCapacity=desired_capacity,