google.cloud.gcp_sql_instance – Создаёт экземпляр GCP
Примечание
Этот плагин входит в коллекцию google.cloud (версия 1.0.2).
Для его установки используйте: 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). Дампы должны содержать координаты binlog, с которых должно начаться дублирование. Это можно сделать, установив --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 | Содержание файла JSON учетной записи службы, либо в словаре, либо в виде JSON-строки, которая его представляет. | ||||
| service_account_email строка | Необязательный электронный адрес учетной записи службы, если выбран machineaccount и пользователь не хочет использовать адрес по умолчанию. | ||||
| service_account_file путь | Путь к файлу 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 | Статус доступности резервного реплики. Значение false указывает, что резервный реплика не синхронизирован. Мастер может перейти на резервный реплика только при значении true. | |||
| 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-адреса. PRIMARY — адрес, принимающий входящие подключения. 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). Дампы должны содержать координаты binlog, с которых следует начинать репликацию. Это можно сделать, установив --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 | Значение флага. Булевы значения должны быть установлены в «вкл» для true и «выкл» для false. Этот параметр должен быть опущен, если флаг не принимает значение. | |||
| ipConfiguration complex | success | Настройки управления 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–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/google/cloud/gcp_sql_instance_module.html