gcp_sql_instance – Создаёт экземпляр GCP
Новая версия с 2.7.
Описание
- Представляет экземпляр 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. | |||
| 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 не может быть изменено после создания экземпляра. | |||
| failover_replica - | Имя и статус резервного реплики. Это свойство применимо только к экземплярам второго поколения. | ||||
| name - | Имя резервного реплики. Если указано при создании экземпляра, для экземпляра создаётся резервный реплика. Имя не включает идентификатор проекта. Это свойство применимо только к экземплярам второго поколения. | ||||
| instance_type - |
| Тип экземпляра. Может быть одним из следующих. * CLOUD_SQL_INSTANCE: Экземпляр Cloud SQL, который не дублирует данные с главного. * ON_PREMISES_INSTANCE: Экземпляр, работающий на оборудовании клиента. * READ_REPLICA_INSTANCE: Экземпляр Cloud SQL, настроенный как реплика для чтения. | |||
| 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 строка | Строка, представляющая содержимое файла JSON сервисного аккаунта. Не нужно передавать это как словарь, а строку с точным содержимым файла JSON сервисного аккаунта (валидный JSON). | ||||
| service_account_email строка | Дополнительный адрес электронной почты сервисного аккаунта, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию. | ||||
| service_account_file путь | Путь к файлу JSON сервисного аккаунта, если в качестве типа выбран serviceaccount. | ||||
| settings - | Настройки пользователя. | ||||
| availability_type - |
| availabilityType определяет, запущен ли ваш экземпляр PostgreSQL в зональном или региональном режиме. | |||
| backup_configuration - | Ежедневная конфигурация резервного копирования для экземпляра. | ||||
| binary_log_enabled boolean |
| Включено ли двоичное протоколирование. Если конфигурация резервного копирования отключена, двоичное протоколирование также должно быть отключено. Только MySQL. | |||
| enabled boolean |
| Включить Авторезервное копирование для вашего экземпляра. | |||
| start_time - | Укажите время начала резервного копирования в UTC (ЧЧ:ММ). | ||||
| ip_configuration - | Настройки управления IP. Это позволяет включить или отключить IP экземпляра и управлять тем, какие внешние сети могут подключаться к экземпляру. IP-адрес IPv4 нельзя отключить для экземпляров второго поколения. | ||||
| authorized_networks - | Список внешних сетей, которым разрешено подключаться к экземпляру с помощью IP. В формате CIDR, также известном как «формат с косой чертой» (например, 192.168.100.0/24). | ||||
| expiration_time - | Время истечения срока действия этого элемента управления доступом в формате RFC 3339, например 2012-11-15T16:19:00.094Z. | ||||
| name - | Необязательная метка для идентификации этого элемента. | ||||
| value - | Разрешённое значение для списка управления доступом. Например, чтобы предоставить доступ клиенту с внешнего IP-адреса (IPv4 или IPv6) или подсети, используйте этот адрес или подсеть здесь. | ||||
| ipv4_enabled boolean |
| Должен ли экземпляру быть назначен IP-адрес? | |||
| require_ssl boolean |
| Должен ли mysqld по умолчанию использовать 'REQUIRE X509' для пользователей, подключающихся по IP? | |||
| tier - | Уровень или тип машины для этого экземпляра, например db-n1-standard-1. Для экземпляров MySQL это поле определяет, является ли экземпляр второго поколения (рекомендуется) или первого поколения. | ||||
| state - |
| Должен ли данный объект существовать в GCP? | |||
Примечания
Примечание
- Для аутентификации можно установить service_account_file с использованием переменной окружения
GCP_SERVICE_ACCOUNT_FILE. - Для аутентификации можно установить service_account_email с использованием переменной окружения
GCP_SERVICE_ACCOUNT_EMAIL. - Для аутентификации можно установить service_account_contents с использованием переменной окружения
GCP_SERVICE_ACCOUNT_CONTENTS. - Для аутентификации можно установить auth_kind с использованием переменной окружения
GCP_AUTH_KIND. - Для аутентификации можно установить scopes с использованием переменной окружения
GCP_SCOPES. - Значения переменных окружения будут использоваться только в том случае, если значения в плейбуке не заданы.
- Параметры service_account_email и service_account_file взаимоисключающие.
Примеры
- name: create a instance
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 строка | успех | * FIRST_GEN: Экземпляр первого поколения. Только MySQL. * SECOND_GEN: Экземпляр второго поколения или экземпляр PostgreSQL. * EXTERNAL: Сервер базы данных, не управляемый Google. | |||
| connectionName строка | успех | Имя подключения к экземпляру Cloud SQL, используемому в строках подключения. | |||
| databaseVersion строка | успех | Тип и версия движка базы данных. Для экземпляров первого поколения может быть MYSQL_5_5 или MYSQL_5_6. Для экземпляров второго поколения — MYSQL_5_6 или MYSQL_5_7. По умолчанию — MYSQL_5_6. Для экземпляров PostgreSQL: POSTGRES_9_6 Свойство databaseVersion нельзя изменить после создания экземпляра. | |||
| failoverReplica сложный тип | успех | Имя и состояние резервного реплики. Это свойство применимо только к экземплярам второго поколения. | |||
| available логическое | успех | Статус доступности резервного реплики. Логическое значение false указывает, что резервный реплика не синхронизирован. Мастер может выполнить сбой только на резервный реплика, когда статус равен true. | |||
| name строка | успех | Имя резервного реплики. Если указано при создании экземпляра, для экземпляра создается резервный реплика. Имя не включает идентификатор проекта. Это свойство применимо только к экземплярам второго поколения. | |||
| instanceType строка | успех | Тип экземпляра. Может быть одним из следующих. * CLOUD_SQL_INSTANCE: Экземпляр Cloud SQL, который не дублирует данные с мастера. * ON_PREMISES_INSTANCE: Экземпляр, работающий на оборудовании клиента. * READ_REPLICA_INSTANCE: Экземпляр Cloud SQL, настроенный как реплика чтения. | |||
| ipAddresses сложный тип | успех | Назначенные IP-адреса для экземпляра. | |||
| ipAddress строка | успех | Назначенный IP-адрес. | |||
| timeToRetire строка | успех | Время, к которому этот IP-адрес должен быть исключен в формате RFC 3339, например, 2012-11-15T16:19:00.094Z. Это поле доступно только при запланированном исключении IP-адреса. | |||
| type строка | успех | Тип этого IP-адреса. Адрес PRIMARY — это адрес, который может принимать входящие подключения. Адрес OUTGOING — это адрес источника подключений, исходящих из экземпляра, если это поддерживается. | |||
| ipv6Address строка | успех | Назначенный IPv6-адрес для экземпляра. Это свойство применимо только к экземплярам первого поколения. | |||
| masterInstanceName строка | успех | Имя экземпляра, который будет выполнять роль мастера в настройке репликации. | |||
| maxDiskSize целое число | успех | Максимальный размер диска экземпляра в байтах. | |||
| name строка | успех | Имя экземпляра Cloud SQL. Не включает идентификатор проекта. | |||
| region строка | успех | Географический регион. По умолчанию — us-central или us-central1 в зависимости от типа экземпляра (первое поколение или второе поколение/PostgreSQL). | |||
| replicaConfiguration сложный тип | успех | Настройка, специфичная для резервных и реплик чтения. | |||
| failoverTarget логическое | успех | Указывает, является ли реплика целевым экземпляром для отказа. Если поле установлено в true, реплика будет назначена как резервный реплика. В случае отказа экземпляра-мастера реплика будет повышена до нового экземпляра-мастера. Только одна реплика может быть назначена как целевой экземпляр отказа, и реплика должна находиться в другой зоне, чем экземпляр-мастер. | |||
| mysqlReplicaConfiguration сложный тип | успех | Настройка, специфичная для MySQL, при дублировании с MySQL-мастером на локальном оборудовании. Информация о настройке репликации, такая как имя пользователя, пароль, сертификаты и ключи, не хранится в метаданных экземпляра. Данная информация используется только для настройки подключения к репликации и хранится MySQL в файле master.info в каталоге данных. | |||
| caCertificate строка | успех | Представление сертификата x509 доверенной ЦС в формате PEM. | |||
| clientCertificate строка | успех | Представление сертификата x509 реплики в формате PEM. | |||
| clientKey строка | успех | Представление закрытого ключа реплики в формате PEM. Соответствующий открытый ключ закодирован в сертификате реплики. | |||
| connectRetryInterval целое число | успех | Время ожидания между повторными попытками подключения в секундах. По умолчанию в MySQL — 60 секунд. | |||
| dumpFilePath строка | успех | Путь к файлу дампов SQL в Google Cloud Storage, из которого должен быть создан экземпляр реплики. URI имеет вид gs://bucketName/fileName. Также поддерживаются сжатые файлы (.gz). Дампы должны содержать координаты бинарного журнала, с которых должна начаться репликация. Этого можно достичь, установив --master-data в 1 при использовании mysqldump. | |||
| masterHeartbeatPeriod целое число | успех | Интервал в миллисекундах между сердечными ударами репликации. | |||
| password строка | успех | Пароль для подключения к репликации. | |||
| sslCipher строка | успех | Список разрешенных шифров для шифрования SSL. | |||
| username строка | успех | Имя пользователя для подключения к репликации. | |||
| verifyServerCertificate логическое | успех | Проверять или нет значение Common Name в сертификате, которое мастер отправляет во время рукопожатия SSL. | |||
| replicaNames список | успех | Реплики экземпляра. | |||
| serviceAccountEmailAddress строка | успех | Адрес электронной почты учетной записи сервиса, назначенной экземпляру. Это свойство применимо только к экземплярам второго поколения. | |||
| settings сложный тип | успех | Настройки пользователя. | |||
| availabilityType строка | успех | Свойство availabilityType определяет, работает ли экземпляр postgres в зоновой или региональной среде. | |||
| backupConfiguration сложный тип | успех | Ежедневная настройка резервного копирования для экземпляра. | |||
| binaryLogEnabled логическое | успех | Включена ли бинарная регистрация. Если настройка резервного копирования отключена, бинарная регистрация также должна быть отключена. Только MySQL. | |||
| enabled логическое | успех | Включить автоматическое резервное копирование для вашего экземпляра. | |||
| startTime строка | успех | Установите время начала резервного копирования в формате UTC (ЧЧ:ММ). | |||
| 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 это поле определяет, является ли экземпляр второго поколения (рекомендуется) или первого поколения. | |||
Статус
- Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- 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.8/modules/gcp_sql_instance_module.html