Spec-Zone.ru › Chef 16

Ресурс aws_launch_configuration

[править на GitHub]

Используйте ресурс проверки InSpec для тестирования свойств отдельной конфигурации запуска AWS.

Синтаксис

# Ensure that a launch configuration exists and has the correct key name
describe aws_launch_configuration('my-config') do
  it              { should exist }
  its('key_name') { should be 'my-key-name' }
end

# You may also use hash syntax to pass the launch configuration name
describe aws_launch_configuration(launch_configuration_name: 'my-config') do
  it              { should exist }
end

Параметры

launch_configuration_name (обязательно)

Этот ресурс ожидает один параметр, launch_configuration_name, который однозначно идентифицирует конфигурацию запуска.

См. также документацию AWS по конфигурациям запуска.

Свойства

Свойство Описание
arn Строка, представляющая ARN конфигурации запуска
image_id Строка, представляющая AMI конфигурации запуска
instance_type Строка, представляющая тип экземпляра конфигурации запуска
iam_instance_profile Строка, представляющая профиль IAM для конфигурации запуска
key_name Строка, представляющая пару ключей AWS для конфигурации запуска
security_groups Массив строк идентификаторов групп безопасности, связанных с конфигурацией запуска
associate_public_ip_address Булево значение, указывающее, настроена ли конфигурация запуска на установку публичного IP-адреса
user_data Строка, содержащая данные пользователя, настроенные для конфигурации запуска
ebs_optimized Булево значение, указывающее, оптимизирована ли конфигурация запуска для Amazon EBS
instance_monitoring Строка, указывающая, установлено ли мониторинг экземпляра в detailed или basic
spot_price Число с плавающей точкой, обозначающее настроенную цену spot

Примеры

Убедитесь, что конфигурация запуска использует правильный AMI

describe aws_launch_configuration('my-config') do
  its('image_id') { should eq 'ami-012345'}
end

Проверьте тип экземпляра, используемого в конфигурации запуска

describe aws_launch_configuration('my-config') do
  its('instance_type') { should eq 't3.micro'}
end

Убедитесь, что конфигурация запуска связана с правильным профилем IAM

describe aws_launch_configuration('my-config') do
  its('iam_instance_profile') { should eq 'iam-profile' }
end

Убедитесь, что конфигурация запуска не устанавливает публичный IP-адрес

describe aws_launch_configuration('my-config') do
  its('associate_public_ip_address') { should be false }
end

Убедитесь, что правильные данные пользователя установлены на запущенных экземплярах

describe aws_launch_configuration('my-config') do
  its('user_data') { should include 'user-data' }
end

Сопоставители

Этот ресурс проверки InSpec имеет следующие специальные сопоставители. Полный список доступных сопоставителей можно найти на нашей странице сопоставителей.

exist

Управление пройдет, если describe вернёт хотя бы один результат.

Используйте should_not для проверки, что сущность не должна существовать.

describe aws_launch_configuration('AnExistingLC') do
  it { should exist }
end

describe aws_launch_configuration('ANonExistentLC') do
  it { should_not exist }
end

Разрешения AWS

Вашему принципалу потребуется действие autoscaling:Describe* с эффектом Allow. Подробную документацию можно найти по адресу Действия, ресурсы и ключи условия для групп Amazon Auto Scaling и конфигураций запуска.

© 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_launch_configuration/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API