Ресурс aws_auto_scaling_group
Используйте ресурс аудита InSpec aws_auto_scaling_group для проверки свойств отдельной группы автоматического масштабирования AWS.
Синтаксис
Убедитесь, что группа автоматического масштабирования существует и имеет правильные размеры масштабирования
describe aws_auto_scaling_group('MyAutoScalingGroup') do
it { should exist }
its('min_size') { should be 1}
its('max_size') { should be 4}
end
Вы также можете использовать синтаксис хеша для передачи имени группы автоматического масштабирования
describe aws_auto_scaling_group(name: 'MyAutoScalingGroup') do
it { should exist }
end
Параметры
name (обязательно)
Этот ресурс принимает один параметр — имя группы автоматического масштабирования, которое однозначно идентифицирует группу автоматического масштабирования. Его можно передать как строку или как name: 'value' пару ключ-значение в хеше.
См. также документацию AWS по группам автоматического масштабирования.
Свойства
| Свойство | Описание |
|---|---|
| min_size | Целое число, указывающее минимальное количество экземпляров в группе автоматического масштабирования |
| maximum_size | Целое число, указывающее максимальное количество экземпляров в группе автоматического масштабирования |
| desired_capacity | Целое число, указывающее желаемое количество экземпляров в группе автоматического масштабирования |
| launch_configuration_name | Имя конфигурации запуска автоматического масштабирования, связанной с группой автоматического масштабирования |
| vpc_zone_identifier | Массив строк, соответствующих идентификаторам подсетей, связанных с группой автоматического масштабирования |
| tags | Хеш с каждой парой ключ-значение, соответствующей тегу, связанному с объектом |
Примеры
Убедитесь, что группа автоматического масштабирования имеет правильную целевую емкость
describe aws_auto_scaling_group('MyAutoScalingGroup') do
it { should exist }
its('desired_capacity') { should be 2 }
end
Убедитесь, что группа автоматического масштабирования имеет правильное имя конфигурации запуска и идентификатор VPC
describe aws_auto_scaling_group('MyAutoScalingGroup') do
it { should exist }
its('launch_configuration_name') { should eq 'MyLaunchConfiguration'}
its('vpc_zone_identifier') { should include 'subnet-1234'}
end
Сопоставители
Этот ресурс аудита InSpec имеет следующие специальные сопоставители. Полный список доступных сопоставителей см. на нашей странице сопоставителей.
exist
Контроль пройдет, если describe вернет как минимум один результат.
Используйте should_not для проверки, что объект не должен существовать.
describe aws_auto_scaling_group('AnExistingASG') do
it { should exist }
end
describe aws_auto_scaling_group('ANonExistentASG') do
it { should_not exist }
end
Разрешения AWS
Вашему субъекту потребуются autoscaling:Describe* действия с эффектом, установленным на Разрешено. Подробную документацию можно найти по адресу Действия, ресурсы и ключи условий для групп автоматического масштабирования Amazon.
© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/aws_auto_scaling_group/