модуль google.cloud.gcp_spanner_database — создание базы данных GCP
Примечание
Этот модуль входит в коллекцию google.cloud (версия 1.13.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install google.cloud. Для использования этого модуля необходимы дополнительные компоненты; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: google.cloud.gcp_spanner_database.
Краткое описание
- База данных Cloud Spanner, размещённая в экземпляре Spanner.
Требования
На хосте, выполняющем этот модуль, должны быть установлены следующие компоненты.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
Параметр | Комментарии |
|---|---|
access_token string | Токен доступа OAuth2, если в качестве типа учётных данных выбрано accesstoken. |
auth_kind string / обязательный | Тип используемых учётных данных. Варианты:
|
encryption_config dictionary | Конфигурация шифрования базы данных. |
|
kms_key_name string / обязательный |
Полное имя ключа KMS, используемого для шифрования этой базы данных. Этот ключ должен находиться в том же регионе, что и база данных Spanner. |
env_type string | Указывает, в какой среде Ansible выполняется этот модуль. Не задавайте это значение, если не знаете, что делаете. Это изменяет только строку User Agent для любых запросов API. |
extra_statements list / elements=string | Необязательный список операторов DDL для выполнения в только что созданной базе данных. Операторы могут создавать таблицы, индексы и т. д. Они выполняются атомарно вместе с созданием базы данных: если в любом операторе возникнет ошибка, база данных не будет создана. |
instance dictionary / обязательный | Экземпляр, в котором будет создана база данных. Это поле представляет ссылку на ресурс Instance в GCP. Его можно указать двумя способами. Во-первых, можно задать словарь с ключом ‘name’ и значением, равным имени ресурса. Либо можно добавить `register: name-of-resource` в задачу gcp_spanner_instance, а затем задать для этого поля instance значение “{{ name-of-resource }}” |
name string / обязательный | Уникальный идентификатор базы данных, который нельзя изменить после создания экземпляра. Значение должно иметь формат [a-z][-a-z0-9]*[a-z0-9]. |
project string | Проект Google Cloud Platform, который следует использовать. |
scopes list / elements=string | Массив используемых областей доступа |
service_account_contents jsonarg | Содержимое JSON-файла учётной записи службы: словарь или JSON-строка, представляющая это содержимое. |
service_account_email string | Необязательный адрес электронной почты учётной записи службы, если выбран machineaccount и пользователь не хочет использовать адрес по умолчанию. |
service_account_file path | Путь к JSON-файлу учётной записи службы, если в качестве типа выбрано serviceaccount. |
state string | Должен ли указанный объект существовать в GCP Варианты:
|
Примечания
Примечание
- Справочник API: https://cloud.google.com/spanner/docs/reference/rest/v1/projects.instances.databases
- Официальная документация: https://cloud.google.com/spanner/
- Для аутентификации можно задать service_account_file с помощью переменной окружения
GCP_SERVICE_ACCOUNT_FILE. - Для аутентификации можно задать service_account_contents с помощью переменной окружения
GCP_SERVICE_ACCOUNT_CONTENTS. - Для аутентификации можно задать service_account_email с помощью переменной окружения
GCP_SERVICE_ACCOUNT_EMAIL. - Для аутентификации можно задать access_token с помощью переменной окружения
GCP_ACCESS_TOKEN. - Для аутентификации можно задать auth_kind с помощью переменной окружения
GCP_AUTH_KIND. - Для аутентификации можно задать scopes с помощью переменной окружения
GCP_SCOPES. - Значения переменных окружения используются только в том случае, если значения не заданы в плейбуке.
- Параметры service_account_email и service_account_file являются взаимоисключающими.
Примеры
- name: create a instance
google.cloud.gcp_spanner_instance:
name: instance-database
display_name: My Spanner Instance
node_count: 2
labels:
cost_center: ti-1700004
config: regional-us-central1
project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}"
state: present
register: instance
- name: create a database
google.cloud.gcp_spanner_database:
name: webstore
instance: "{{ instance }}"
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
encryptionConfig complex | Конфигурация шифрования базы данных. Возвращается: при успехе |
|
kmsKeyName string |
Полное имя ключа KMS, используемого для шифрования этой базы данных. Этот ключ должен находиться в том же регионе, что и база данных Spanner. Возвращается: при успехе |
extraStatements list / elements=string | Необязательный список операторов DDL для выполнения в только что созданной базе данных. Операторы могут создавать таблицы, индексы и т. д. Они выполняются атомарно вместе с созданием базы данных: если в любом операторе возникнет ошибка, база данных не будет создана. Возвращается: при успехе |
instance dictionary | Экземпляр, в котором будет создана база данных. Возвращается: при успехе |
name string | Уникальный идентификатор базы данных, который нельзя изменить после создания экземпляра. Значение должно иметь формат [a-z][-a-z0-9]*[a-z0-9]. Возвращается: при успехе |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/google/cloud/gcp_spanner_database_module.html