Ресурс aws_ecs_clusters
Используйте ресурс проверки InSpec для аудита свойств некоторых или всех кластеров AWS ECS.
Синтаксис
Блок ресурса aws_ecs_clusters возвращает все кластеры ECS и позволяет проверить эту группу кластеров.
describe aws_ecs_clusters do
its('cluster_names') { should include 'cluster-root' }
end
Параметры
Этот ресурс не ожидает никаких параметров.
См. также документацию AWS по кластерам ECS.
Свойства
| Свойство | Описание |
|---|---|
| cluster_arn | Amazon Resource Name (ARN), идентифицирующий кластер. |
| cluster_name | Сгенерированная пользователем строка, используемая для идентификации кластера. |
| status | Состояние кластера. |
| running_tasks_count | Количество задач в кластере в состоянии RUNNING. |
| pending_tasks_count | Количество задач в кластере в состоянии PENDING. |
| active_services_count | Количество сервисов, работающих в кластере в состоянии ACTIVE. |
| registered_container_instances_count | Количество зарегистрированных контейнерных экземпляров в кластере. Включает контейнерные экземпляры в состояниях ACTIVE и DRAINING. |
| statistics | Дополнительная информация о кластерах, разделенных по типу запуска. |
| entries | Предоставляет доступ к исходным результатам запроса, который может рассматриваться как массив хешей. |
Примеры
Убедиться, что нет кластеров в нежелательном состоянии.
describe aws_ecs_clusters do
it { should exist }
its('statuses') { should_not include 'UNDESIRED-STATUS'}
its('cluster_names') { should include 'SQL-cluster' }
end
Матчеры
Полный список доступных матчеров вы найдете на нашей странице матчеров.
exist
Управление пройдет, если описание вернет как минимум один результат.
Используйте should_not для проверки, что сущность не должна существовать.
describe aws_ecs_clusters.where( <property>: <value>) do
it { should exist }
end
describe aws_ecs_clusters.where( <property>: <value>) do
it { should_not exist }
end
Разрешения AWS
Вашему Принципалу потребуются разрешения на выполнение действий ecs:ListClusters и ecs:DescribeClusters.
© 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_ecs_clusters/