Spec-Zone.ru › Chef 16

Ресурс aws_subnets

[edit on GitHub]

Используйте ресурс проверки aws_subnets InSpec для тестирования свойств некоторых или всех подсетей.

Подсети — это сети внутри VPC, которые могут иметь свой собственный блок IP-адресов и ACL. VPC охватывают все доступные зоны в AWS, в то время как подсеть в VPC может охватывать только одну доступную зону. Разделение IP-адресов позволяет защититься в случае сбоя в одной доступной зоне.

Синтаксис

Блок ресурса aws_subnets использует необязательный фильтр для выбора группы подсетей и затем тестирует эту группу.

# Test all subnets within a single vpc
describe aws_subnets.where(vpc_id: 'vpc-12345678') do
  its('subnet_ids') { should include 'subnet-12345678' }
  its('subnet_ids') { should include 'subnet-98765432' }
end

Параметры

Этот ресурс не ожидает никаких параметров.

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

Свойства

Свойство Описание
subnet_ids Имя конфигурации запуска автоматического масштабирования, связанной с группой автоматического масштабирования
vpc_ids Целое число, указывающее максимальное количество экземпляров в группе автоматического масштабирования
cidr_blocks Целое число, указывающее минимальное количество экземпляров в группе автоматического масштабирования
availability_zone Доступная зона, к которой принадлежит эта подсеть.
map_public_ip_on_launch Логическое значение, указывающее, будет ли общедоступный IP-адрес автоматически назначаться экземплярам, запущенным в этой подсети.
states Массив строк, соответствующих идентификаторам подсетей, связанных с группой автоматического масштабирования
entries Предоставляет доступ к необработанным результатам запроса, которые могут обрабатываться как массив хешей.

Примеры

Поиск всех подсетей в VPC

describe aws_subnets.where( vpc_id: 'vpc-12345678') do
  its('subnet_ids') { should include 'subnet-12345678' }
  its('subnet_ids') { should include 'subnet-98765432' }
end

Просмотр определенной подсети

describe aws_subnets.where(subnet_id: 'subnet-12345678') do
  its('cidr_blocks') { should eq ['10.0.1.0/24'] }
end

Просмотр идентификаторов подсетей определенной VPC

describe aws_subnets.where( vpc_id: 'vpc-12345678') do
  its('states') { should_not include 'pending' }
end

Просмотр идентификаторов VPC определенной подсети

describe aws_subnets.where( subnet_id: 'subnet-12345678') do
  its('vpc_ids') { should include 'vpc-12345678' }
end

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

Полный список доступных сопоставителей см. на нашей странице сопоставителей.

exist

Управление будет передано, если описание вернет по меньшей мере один результат.

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

describe aws_subnets.where( <property>: <value>) do
  it { should exist }
end

describe aws_subnets.where( <property>: <value>) do
  it { should_not exist }
end

Разрешения AWS

Вашему принципалу потребуется действие ec2:DescribeSubnets с установленным значением Effect в Allow.

Подробную документацию можно найти по адресу Действия, ресурсы и ключи условий для Amazon EC2.

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

Spec-Zone.ru

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