ресурс aws_rds_cluster
Используйте ресурс аудита InSpec aws_rds_cluster для проверки подробных свойств отдельного кластера RDS.
RDS предоставляет вам доступ к возможностям сервера базы данных MySQL, MariaDB, PostgreSQL, Microsoft SQL Server, Oracle или Amazon Aurora.
Синтаксис
Блок ресурса aws_rds_cluster использует параметры ресурса для поиска кластера RDS и последующей проверки этого кластера. Если кластеры RDS не соответствуют заданным параметрам, ошибка не генерируется, но exists matcher вернёт false и все свойства будут nil. Если параметрам соответствуют более одного кластера RDS (из-за нечетких параметров поиска), генерируется ошибка.
describe aws_rds_cluster('test-cluster-id') do
it { should exist }
end
# Can also use hash syntax
describe aws_rds_cluster(db_cluster_identifier: 'test-cluster-id') do
it { should exist }
end
Параметры
db_cluster_identifier (обязательный)
Этот ресурс принимает единственный параметр — идентификатор кластера, предоставленный пользователем. Этот параметр не чувствителен к регистру. Его можно передать как строку или как db_cluster_identifier: 'value' элемент в виде пары «ключ-значение» в хеше.
См. также документацию AWS по кластерам RDS.
Свойства
Для получения полного списка свойств, доступных для проверки в кластере RDS, см. AWS Response Object.
Примеры
Проверка используемого движка с кластером RDS
describe aws_rds_cluster(db_cluster_identifier: 'awsrds123') do
its('engine') { should eq 'mysql' }
its('engine_version') { should eq '5.6.37' }
end
Проверка выделенного хранилища для кластера RDS
describe aws_rds_cluster(db_cluster_identifier: 'awsrds123') do
its('storage_encrypted') { should eq true }
its('allocated_storage') { should eq 10 }
end
Проверка состояния кластера и имени пользователя мастера
describe aws_rds_cluster(db_cluster_identifier: 'awsrds123') do
its('master_username') { should eq 'db-maintain' }
its('status') { should eq 'available' }
end
Проверка максимальной и минимальной емкости серверного кластера RDS
describe aws_rds_cluster(db_cluster_identifier: 'awsrds123') do
its('scaling_configuration_info.min_capacity') { should eq 2 }
its('scaling_configuration_info.max_capacity') { should eq 64 }
end
Matcher'ы
Этот ресурс аудита InSpec имеет следующие специальные matcher'ы. Для получения полного списка доступных matcher'ов, пожалуйста, посетите нашу страницу matcher'ов.
exist
Контроль пройдет, если describe вернёт по крайней мере один результат.
Используйте should_not для проверки того, что сущность не должна существовать.
describe aws_rds_cluster(db_cluster_identifier: 'AnExistingRDS') do
it { should exist }
end
describe aws_rds_cluster(db_cluster_identifier: 'ANonExistentRDS') do
it { should_not exist }
end
Разрешения AWS
Ваш принципал потребует rds:DescribeDBclusters действие с эффектом Allow.
Вы можете найти подробную документацию по действиям, ресурсам и ключам условий для Amazon RDS.
© 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_rds_cluster/