google.cloud.gcp_sql_instance – Создаёт экземпляр GCP
Примечание
Этот плагин входит в коллекцию google.cloud (версия 1.0.1).
Для его установки используйте: ansible-galaxy collection install google.cloud.
Для использования в плейбуке укажите: google.cloud.gcp_sql_instance.
Обзор
- Представляет экземпляр Cloud SQL. Экземпляры Cloud SQL — это SQL-базы данных, размещённые в облаке Google. Ресурс Instances предоставляет методы для выполнения общих задач конфигурации и управления.
Требования
Ниже приведены требования, необходимые на хосте, который выполняет этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |||
|---|---|---|---|---|---|
| auth_kind строка / обязательно |
| Тип используемых учетных данных. | |||
| backend_type строка | * FIRST_GEN: Экземпляр первого поколения. Только MySQL. * SECOND_GEN: Экземпляр второго поколения или экземпляр PostgreSQL. * EXTERNAL: Сервер базы данных, не управляемый Google. Некоторые допустимые значения: "FIRST_GEN", "SECOND_GEN", "EXTERNAL" | ||||
| 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" | ||||
| disk_encryption_configuration словарь | Настройки шифрования диска. | ||||
| kms_key_name строка | Ключ KMS, используемый для шифрования экземпляра Cloud SQL. | ||||
| disk_encryption_status словарь | Статус шифрования диска. | ||||
| kms_key_version_name строка | Версия ключа KMS, используемая для шифрования экземпляра Cloud SQL. | ||||
| env_type строка | Указывает, в какой среде Ansible вы выполняете этот модуль. Не следует устанавливать, если вы не знаете, что делаете. Это изменяет только строку User Agent для всех запросов API. | ||||
| failover_replica словарь | Имя и статус резервного реплики. Это свойство применимо только к экземплярам второго поколения. | ||||
| 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" | ||||
| ipv6_address строка | Адрес IPv6, назначенный экземпляру. Это свойство применимо только к экземплярам первого поколения. | ||||
| master_instance_name строка | Имя экземпляра, который будет выполнять роль главного в настройке репликации. | ||||
| max_disk_size целое число | Максимальный размер диска экземпляра в байтах. | ||||
| name строка / обязательно | Имя экземпляра Cloud SQL. Не включает идентификатор проекта. | ||||
| project строка | Проект Google Cloud Platform для использования. | ||||
| 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 строка | Адрес электронной почты учетной записи сервиса, назначенной экземпляру. Это свойство применимо только к экземплярам второго поколения. | ||||
| scopes список / элементы=строка | Массив используемых областей. | ||||
| service_account_contents jsonarg | Содержание файла Service Account JSON, либо в словаре, либо как строка JSON, которая его представляет. | ||||
| service_account_email строка | Необязательный адрес электронной почты учетной записи сервиса, если выбрано machineaccount, и пользователь не хочет использовать адрес по умолчанию. | ||||
| service_account_file путь | Путь к файлу Service Account JSON, если в качестве типа выбран serviceaccount. | ||||
| settings словарь | Настройки пользователя. | ||||
| availability_type строка | availabilityType определяет, работает ли ваш экземпляр PostgreSQL в зональном или региональном режиме. Некоторые допустимые значения: "ZONAL", "REGIONAL" | ||||
| backup_configuration словарь | Ежедневная конфигурация резервного копирования для экземпляра. | ||||
| binary_log_enabled логическое значение |
| Включен ли двоичный журнал. Если конфигурация резервного копирования отключена, двоичный журнал также должен быть отключен. Только MySQL. | |||
| enabled логическое значение |
| Включить автоматическое резервное копирование для вашего экземпляра. | |||
| Время начала резервного копирования строка | Определяет время начала резервного копирования в UTC (ЧЧ:ММ). | ||||
| Флаги базы данных список / элементы=словарь | Флаги базы данных, переданные экземпляру при запуске. | ||||
| Имя строка | Имя флага. Эти флаги передаются при запуске экземпляра, поэтому включают как параметры сервера, так и системные переменные для MySQL. Флаги должны быть указаны с помощью нижнего подчеркивания, а не дефиса. | ||||
| Значение строка | Значение флага. Булевы значения должны быть установлены на «вкл» для истинного и «выкл» для ложного. Этот поле должно быть опущено, если флаг не принимает значение. | ||||
| Настройка IP словарь | Настройки управления IP. Это позволяет включить или отключить IP экземпляра и управлять тем, какие внешние сети могут подключаться к экземпляру. IPv4-адрес нельзя отключить для экземпляров второго поколения. | ||||
| Разрешённые сети список / элементы=словарь | Список внешних сетей, которым разрешено подключаться к экземпляру с использованием IP. В формате CIDR, также известном как «формат с косой чертой» (например, 192.168.100.0/24). | ||||
| Время истечения срока действия строка | Время истечения срока действия этого элемента управления доступом в формате RFC 3339, например 2012-11-15T16:19:00.094Z. | ||||
| Имя строка | Необязательная метка для идентификации этого элемента. | ||||
| Значение строка | Разрешённое значение для списка управления доступом. Например, для предоставления доступа к клиенту из внешнего IP (IPv4 или IPv6) адреса или подсети, укажите этот адрес или подсеть здесь. | ||||
| ipv4_enabled булево |
| Следует ли назначать IP-адрес экземпляру? | |||
| require_ssl булево |
| Должен ли mysqld по умолчанию использовать «REQUIRE X509» для пользователей, подключающихся по IP? | |||
| Уровень строка | Уровень или тип машины для этого экземпляра, например db-n1-standard-1. Для экземпляров MySQL это поле определяет, является ли экземпляр второго поколения (рекомендуется) или первого поколения. | ||||
| Метки пользователя словарь | Метки, предоставленные пользователем, представленные в виде словаря, где каждая метка представляет собой пару ключ-значение. | ||||
| Состояние строка |
| Должен ли данный объект существовать в GCP | |||
Примеры
- name: create a instance
google.cloud.gcp_sql_instance:
name: "{{resource_name}}-2"
settings:
ip_configuration:
authorized_networks:
- name: google dns server
value: 8.8.8.8/32
tier: db-n1-standard-1
region: us-central1
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
Значения возврата
Общие значения возврата документированы здесь, следующие являются полями, уникальными для этого модуля:
| Ключ | Возвращаемое значение | Описание | |||
|---|---|---|---|---|---|
| backendType строка | success | * FIRST_GEN: Экземпляр первого поколения. Только MySQL. * SECOND_GEN: Экземпляр второго поколения или PostgreSQL. * EXTERNAL: Сервер базы данных, не управляемый Google. | |||
| connectionName строка | success | Имя подключения экземпляра Cloud SQL, используемого в строках подключения. | |||
| databaseVersion строка | success | Тип и версия движка базы данных. Для экземпляров первого поколения может быть MYSQL_5_5 или MYSQL_5_6. Для экземпляров второго поколения может быть MYSQL_5_6 или MYSQL_5_7. По умолчанию MYSQL_5_6. Для PostgreSQL-экземпляров: POSTGRES_9_6. Свойство databaseVersion нельзя изменить после создания экземпляра. | |||
| diskEncryptionConfiguration сложная структура | success | Настройки шифрования диска. | |||
| kmsKeyName строка | success | Ключ KMS, используемый для шифрования экземпляра Cloud SQL. | |||
| diskEncryptionStatus сложная структура | success | Статус шифрования диска. | |||
| kmsKeyVersionName строка | success | Версия ключа KMS, используемая для шифрования экземпляра Cloud SQL. | |||
| failoverReplica сложная структура | success | Имя и статус резервного реплики. Это свойство применимо только к экземплярам второго поколения. | |||
| available булево | success | Статус доступности резервного реплики. Ложное значение указывает на то, что резервный реплика не синхронизирован. Мастер может переключиться только на резервный реплика, когда статус истинный. | |||
| name строка | success | Имя резервного реплики. Если указано при создании экземпляра, для экземпляра создается резервный реплика. Имя не включает идентификатор проекта. Это свойство применимо только к экземплярам второго поколения. | |||
| gceZone строка | success | Зона Compute Engine, из которой в настоящее время обслуживается экземпляр. Это значение может отличаться от зоны, указанной при создании экземпляра, если экземпляр переключился на свою вторичную зону. | |||
| instanceType строка | success | Тип экземпляра. Может быть одним из следующих. * CLOUD_SQL_INSTANCE: Экземпляр Cloud SQL, который не реплицируется с мастера. * ON_PREMISES_INSTANCE: Экземпляр, работающий на оборудовании клиента. * READ_REPLICA_INSTANCE: Экземпляр Cloud SQL, настроенный как реплика чтения. | |||
| ipAddresses сложная структура | success | Назначенные IP-адреса для экземпляра. | |||
| ipAddress строка | success | Назначенный IP-адрес. | |||
| timeToRetire строка | success | Время окончания действия этого IP-адреса в формате RFC 3339, например, 2012-11-15T16:19:00.094Z. Это поле доступно только при запланированном выводе IP-адреса из эксплуатации. | |||
| type строка | success | Тип этого IP-адреса. IP-адрес PRIMARY — это адрес, который может принимать входящие подключения. IP-адрес OUTGOING — это адрес источника подключений, исходящих из экземпляра, если поддерживается. | |||
| ipv6Address строка | success | Назначенный IPv6-адрес экземпляра. Это свойство применимо только к экземплярам первого поколения. | |||
| masterInstanceName строка | success | Имя экземпляра, который будет выступать в качестве мастера в настройках репликации. | |||
| maxDiskSize целое число | success | Максимальный размер диска экземпляра в байтах. | |||
| name строка | success | Имя экземпляра Cloud SQL. Не включает идентификатор проекта. | |||
| region строка | success | Географический регион. По умолчанию us-central или us-central1 в зависимости от типа экземпляра (первое поколение или второе поколение/PostgreSQL). | |||
| replicaConfiguration сложная структура | success | Настройки, специфичные для резервных и реплик чтения. | |||
| failoverTarget булево | success | Указывает, является ли реплика целевой репликой. Если поле установлено в значение true, реплика будет назначена в качестве резервной реплики. В случае сбоя экземпляра-мастера, экземпляр-реплика будет повышен до нового экземпляра-мастера. Только одна реплика может быть назначена в качестве целевой реплики, и реплика должна находиться в другой зоне, чем экземпляр-мастер. | |||
| mysqlReplicaConfiguration сложная структура | success | Настройки, специфичные для MySQL, при репликации с MySQL-мастером на стороне клиента. Сведения о конфигурации репликации, такие как имя пользователя, пароль, сертификаты и ключи, не хранятся в метаданных экземпляра. Сведения о конфигурации используются только для настройки подключения репликации и хранятся MySQL в файле master.info в каталоге данных. | |||
| caCertificate строка | success | Представление PEM доверенного сертификата CA x509. | |||
| clientCertificate строка | success | Представление PEM сертификата x509 ведомого. | |||
| clientKey строка | success | Представление PEM закрытого ключа ведомого. Соответствующий открытый ключ закодирован в сертификате ведомого. | |||
| connectRetryInterval целое число | success | Секунды ожидания между повторами подключения. По умолчанию в MySQL 60 секунд. | |||
| dumpFilePath строка | success | Путь к файлу дампа SQL в Google Cloud Storage, из которого должен быть создан экземпляр-ведомый. URI имеет вид gs://bucketName/fileName. Также поддерживаются сжатые gzip-файлы (.gz). Дампы должны содержать координаты журнала бинарных логов, с которых должна начаться репликация. Этого можно добиться, установив --master-data в 1 при использовании mysqldump. | |||
| masterHeartbeatPeriod целое число | success | Интервал в миллисекундах между ударами сердца репликации. | |||
| password строка | success | Пароль для подключения репликации. | |||
| sslCipher строка | success | Список допустимых шифров для шифрования SSL. | |||
| username строка | success | Имя пользователя для подключения репликации. | |||
| verifyServerCertificate булево | success | Требовать проверку значения имени общего домена (Common Name) в сертификате, отправляемом мастером во время рукопожатия SSL. | |||
| replicaNames список / элементы=строка | success | Реплики экземпляра. | |||
| serviceAccountEmailAddress строка | success | Электронный адрес учетной записи службы, назначенной экземпляру. Это свойство применимо только к экземплярам второго поколения. | |||
| serverCaCert сложная структура | success | Настройки SSL. | |||
| cert строка | success | Представление PEM сертификата X.509. | |||
| certSerialNumber строка | success | Серийный номер, извлеченный из сертификата. | |||
| commonName строка | success | Имя, предоставленное пользователем. Ограничено до [a-zA-Z.-_ ]+. | |||
| createTime строка | success | Время создания сертификата в формате RFC 3339, например, 2012-11-15T16:19:00.094Z. | |||
| expirationTime string | success | Время истечения срока действия сертификата в формате RFC 3339, например 2012-11-15T16:19:00.094Z. | |||
| sha1Fingerprint string | success | Отпечаток SHA-1 сертификата. | |||
| settings complex | success | Настройки пользователя. | |||
| availabilityType string | success | Тип доступности определяет, работает ли ваш экземпляр PostgreSQL в зональном или региональном режиме. | |||
| backupConfiguration complex | success | Ежедневная конфигурация резервного копирования для экземпляра. | |||
| binaryLogEnabled boolean | success | Включено ли двоичное протоколирование. Если конфигурация резервного копирования отключена, двоичное протоколирование также должно быть отключено. Только MySQL. | |||
| enabled boolean | success | Включить автоматическое резервное копирование для вашего экземпляра. | |||
| startTime string | success | Укажите время начала резервного копирования в UTC (ЧЧ:ММ). | |||
| databaseFlags complex | success | Флаги базы данных, передаваемые экземпляру при запуске. | |||
| name string | success | Имя флага. Эти флаги передаются при запуске экземпляра, поэтому включают как параметры сервера, так и системные переменные для MySQL. Флаги должны быть указаны с подчеркиванием, а не дефисом. | |||
| value string | success | Значение флага. Булевы значения должны быть установлены на «вкл» для истинного и «выкл» для ложного. Если флаг не принимает значение, этот параметр следует опустить. | |||
| ipConfiguration complex | success | Настройки управления IP-адресами. Это позволяет включить или отключить IP-адрес экземпляра и управлять внешними сетями, которые могут подключаться к экземпляру. IP-адрес IPv4 не может быть отключен для экземпляров второго поколения. | |||
| authorizedNetworks complex | success | Список внешних сетей, которым разрешен доступ к экземпляру с использованием IP-адреса. В нотации CIDR, также известной как нотация «с косой чертой» (например, 192.168.100.0/24). | |||
| expirationTime string | success | Время истечения срока действия этого элемента управления доступом в формате RFC 3339, например 2012-11-15T16:19:00.094Z. | |||
| name string | success | Необязательная метка для идентификации этого элемента. | |||
| value string | success | Разрешённое значение для списка управления доступом. Например, чтобы предоставить доступ клиенту из внешнего IP-адреса (IPv4 или IPv6) или подсети, используйте этот адрес или подсеть здесь. | |||
| ipv4Enabled boolean | success | Должен ли экземпляру быть назначен IP-адрес. | |||
| requireSsl boolean | success | Должен ли mysqld по умолчанию использовать «REQUIRE X509» для пользователей, подключающихся по IP. | |||
| settingsVersion integer | success | Версия настроек экземпляра. Это обязательное поле для метода обновления, чтобы правильно обработать одновременные обновления. Во время обновления используйте последнее значение settingsVersion для этого экземпляра и не пытайтесь обновить это значение. | |||
| tier string | success | Уровень или тип машины для этого экземпляра, например db-n1-standard-1. Для экземпляров MySQL это поле определяет, является ли экземпляр второго поколения (рекомендуется) или первого поколения. | |||
| userLabels dictionary | success | Метки, предоставленные пользователем, представленные как словарь, где каждая метка — это пара «ключ-значение». | |||
| state string | success | Текущее состояние работы экземпляра базы данных. | |||
Авторы
- Google Inc. (@googlecloudplatform)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/google/cloud/gcp_sql_instance_module.html