Spec-Zone.ru › Chef 16

Ресурс google_sql_database_instance

Синтаксис

Для проверки ресурса Google DatabaseInstance используется google_sql_database_instance

Примеры


describe google_sql_database_instance(project: 'chef-gcp-inspec', database: 'my-database') do
  it { should exist }
  its('state') { should eq 'RUNNABLE' }
  its('backend_type') { should eq 'SECOND_GEN' }
  its('database_version') { should eq 'MYSQL_5_7' }
end

Проверка, что экземпляр базы данных GCP Cloud SQL находится в ожидаемом состоянии

describe google_sql_database_instance(project: 'chef-inspec-gcp',  database: 'my-database') do
  its('state') { should eq 'RUNNABLE' }
end

Проверка типа поколения экземпляра базы данных GCP Cloud SQL

describe google_sql_database_instance(project: 'chef-inspec-gcp',  database: 'my-database') do
  its('backend_type') { should eq "SECOND_GEN" }
end

Проверка, что имя подключения к экземпляру базы данных GCP Cloud SQL соответствует ожиданиям

describe google_sql_database_instance(project: 'spaterson-project',  database: 'gcp-inspec-db-instance') do
  its('connection_name') { should eq "spaterson-project:europe-west2:gcp-inspec-db-instance" }
end

Подтверждение, что экземпляр базы данных GCP Cloud SQL имеет верную версию

describe google_sql_database_instance(project: 'spaterson-project',  database: 'gcp-inspec-db-instance') do
  its('database_version') { should eq "MYSQL_5_7" }
end

Проверка, что экземпляр базы данных GCP Cloud SQL работает в желаемой области и зоне

describe google_sql_database_instance(project: 'spaterson-project',  database: 'gcp-inspec-db-instance') do
  its('gce_zone') { should eq "europe-west2-a" }
  its('region') { should eq "europe-west2" }
end

Свойства

Свойства, к которым можно получить доступ из ресурса google_sql_database_instance:

backend_type
Возможные значения:
  • FIRST_GEN: Экземпляр первого поколения. Только MySQL.
  • SECOND_GEN: Экземпляр второго поколения или экземпляр PostgreSQL.
  • EXTERNAL: Сервер базы данных, не управляемый Google.
connection_name
Имя подключения к экземпляру Cloud SQL, используемое в строках подключения.
database_version
Тип и версия движка базы данных. Для экземпляров первого поколения — MYSQL_5_5 или MYSQL_5_6. Для экземпляров второго поколения — MYSQL_5_6 или MYSQL_5_7. По умолчанию — MYSQL_5_6. Для экземпляров PostgreSQL — POSTGRES_9_6. Свойство databaseVersion нельзя изменить после создания экземпляра.

Возможные значения:

  • MYSQL_5_5
  • MYSQL_5_6
  • MYSQL_5_7
  • POSTGRES_9_6
failover_replica
Имя и состояние резервного реплики. Это свойство применимо только к экземплярам второго поколения.
available
Статус доступности резервного реплики. Ложное значение указывает, что резервный реплика не синхронизирован. Мастер может выполнить резервное копирование только на резервный реплика, когда статус равен true.
name
Имя резервного реплики. Если указано при создании экземпляра, для экземпляра создается резервный реплика. Имя не включает идентификатор проекта. Это свойство применимо только к экземплярам второго поколения.
instance_type
Тип экземпляра. Может быть одним из следующих: _ CLOUD_SQL_INSTANCE: Экземпляр Cloud SQL, который не дублируется с мастера. _ ON_PREMISES_INSTANCE: Экземпляр, работающий на оборудовании клиента. _ READ_REPLICA_INSTANCE: Экземпляр Cloud SQL, настроенный как реплика для чтения.

Возможные значения:

  • CLOUD_SQL_INSTANCE
  • ON_PREMISES_INSTANCE
  • READ_REPLICA_INSTANCE
ip_addresses
Назначенные IP-адреса для экземпляра.
ip_address
Назначенный IP-адрес.
time_to_retire
Время, когда этот IP-адрес должен быть исключен в формате RFC 3339, например 2012-11-15T16:19:00.094Z. Это поле доступно только при запланированном исключении IP-адреса.
type
Тип этого IP-адреса. Адрес PRIMARY — это адрес, который может принимать входящие подключения. Адрес OUTGOING — это адрес источника подключений, исходящих от экземпляра, если поддерживается.

Возможные значения:

  • PRIMARY
  • OUTGOING
ipv6_address
Назначенный IPv6-адрес экземпляра. Это свойство применимо только к экземплярам первого поколения.
master_instance_name
Имя экземпляра, который будет действовать в качестве мастера в конфигурации дублирования.
max_disk_size
Максимальный размер диска экземпляра в байтах.
name
Имя экземпляра Cloud SQL. Не включает идентификатор проекта.
region
Географическая область. По умолчанию — us-central или us-central1 в зависимости от типа экземпляра (первого поколения или второго поколения/PostgreSQL).
replica_configuration
Конфигурация, специфичная для резервных и читаемых реплик.
failover_target
Указывает, является ли реплика целевым резервным экземпляром. Если поле установлено в значение true, реплика будет назначена резервной репликой. В случае сбоя мастера экземпляр реплики будет повышен до нового мастера. Только один реплика может быть указан в качестве целевого резервного экземпляра, и реплика должна находиться в другой зоне с мастером.
mysql_replica_configuration
Конфигурация MySQL, специфичная для дублирования с MySQL-мастером на локальном компьютере. Информация о конфигурации дублирования, такая как имя пользователя, пароль, сертификаты и ключи, не хранится в метаданных экземпляра. Информация о конфигурации используется только для настройки подключения к дублированию и хранится MySQL в файле master.info в каталоге данных.
ca_certificate
Представление PEM доверенного сертификата CA x509.
client_certificate
Представление PEM сертификата x509 раба.
client_key
Представление PEM закрытого ключа раба. Соответствующий открытый ключ закодирован в сертификате клиента.
connect_retry_interval
Время ожидания при повторных подключениях в секундах. По умолчанию в MySQL — 60 секунд.
dump_file_path
Путь к файлу дампов SQL в Google Cloud Storage, из которого должен создаваться экземпляр реплики. URI имеет вид gs://bucketName/fileName. Также поддерживаются сжатые gzip-файлы (.gz). Дампы должны содержать координаты бинарного журнала, с которого следует начинать дублирование. Это можно сделать, установив –master-data в значение 1 при использовании mysqldump.
master_heartbeat_period
Интервал в миллисекундах между сердечными ударами дублирования.
password
Пароль для подключения к дублированию.
ssl_cipher
Список допустимых шифров для использования в SSL-шифровании.
username
Имя пользователя для подключения к дублированию.
verify_server_certificate
Нужно ли проверять значение Common Name мастера в сертификате, который он отправляет во время рукопожатия SSL.
replica_names
Реплики экземпляра.
service_account_email_address
Адрес электронной почты учетной записи сервиса, назначенный экземпляру. Это свойство применимо только к экземплярам второго поколения.
settings
Настройки пользователя.
database_flags
Флаги базы данных, передаваемые экземпляру при запуске.
name
Имя флага. Эти флаги передаются при запуске экземпляра, поэтому включают как параметры сервера, так и переменные системы для MySQL. Флаги должны быть указаны с подчеркиванием, а не с дефисами.
value
Значение флага. Булевы значения должны устанавливаться в on для true и off для false. Это поле должно быть опущено, если флаг не принимает значение.
ip_configuration
Настройки управления IP-адресами. Это позволяет включить или отключить IP-адрес экземпляра и управлять внешними сетями, которые могут подключаться к экземпляру. IPv4-адрес нельзя отключить для экземпляров второго поколения.
ipv4_enabled
Должен ли экземпляру быть назначен IP-адрес.
authorized_networks
Список внешних сетей, которым разрешен доступ к экземпляру с использованием IP-адреса. В формате CIDR, также известном как «формат с косой чертой» (например, 192.168.100.0/24).
expiration_time
Время истечения действия этой записи управления доступом в формате RFC 3339, например 2012-11-15T16:19:00.094Z.
name
Необязательная метка для идентификации этой записи.
value
Разрешённое значение для списка управления доступом. Например, для предоставления доступа клиенту с внешним IP-адресом (IPv4 или IPv6) или подсетью, используйте этот адрес или подсеть здесь.
require_ssl
Должен ли mysqld по умолчанию устанавливать «REQUIRE X509» для пользователей, подключающихся через IP.
tier
Уровень или тип машины для этого экземпляра, например db-n1-standard-1. Для экземпляров MySQL это поле определяет, является ли экземпляр второго поколения (рекомендуется) или первого поколения.
availability_type
AvailabilityType определяет, работает ли экземпляр PostgreSQL в зональной или региональной модели. Возможные значения:
  • ZONAL
  • REGIONAL
backup_configuration
Конфигурация ежедневного резервного копирования для экземпляра.
enabled
Включить автоматическое резервное копирование для вашего экземпляра.
binary_log_enabled
Включен ли бинарный журнал. Если конфигурация резервного копирования отключена, бинарный журнал также должен быть отключен. Только MySQL.
start_time
Укажите время начала резервного копирования в формате UTC (ЧЧ:ММ).
settings_version
Версия настроек экземпляра. Это обязательное поле для метода обновления, чтобы убедиться в правильной обработке одновременных обновлений. При обновлении используйте последнее значение settingsVersion для этого экземпляра и не пытайтесь обновить это значение.
user_labels
Метки, предоставленные пользователем, представленные в виде словаря, где каждая метка — это пара ключ-значение.
gce_zone
Зона Compute Engine, из которой в настоящее время обслуживается экземпляр. Это значение может отличаться от зоны, указанной при создании экземпляра, если экземпляр переключился на вторичную зону.
state
Текущее состояние обслуживания экземпляра базы данных.

Возможные значения:

  • SQL_INSTANCE_STATE_UNSPECIFIED
  • RUNNABLE
  • SUSPENDED
  • PENDING_DELETE
  • PENDING_CREATE
  • MAINTENANCE
  • FAILED

Разрешения GCP

Убедитесь, что для текущего проекта включен API Cloud SQL Admin по адресу https://console.cloud.google.com/apis/library/sqladmin.googleapis.com/.

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

Spec-Zone.ru

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