Модуль google.cloud.gcp_spanner_database — Создаёт базу данных GCP
Примечание
Этот модуль входит в коллекцию google.cloud (версия 1.4.1).
Эта коллекция может быть уже установлена, если вы используете пакет 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 строка | Токен доступа OAuth2, если тип аутентификации accesstoken. |
auth_kind строка / обязательно | Тип используемых учетных данных. Варианты:
|
encryption_config словарь | Настройка шифрования для базы данных. |
|
kms_key_name строка / обязательно |
Полное имя ключа KMS, используемого для шифрования базы данных. Этот ключ должен существовать в том же регионе, что и база данных Spanner. |
env_type строка | Указывает, в какой среде Ansible выполняется этот модуль. Не устанавливайте это поле, если вы не знаете, что делаете. Это поле влияет только на строку User Agent при запросах к API. |
extra_statements список / элементы=строка | Необязательный список DDL-команд для выполнения внутри новой базы данных. Команды могут создавать таблицы, индексы и т. д. Эти команды выполняются атомарно с созданием базы данных: если в любой команде произойдёт ошибка, база данных не будет создана. |
instance словарь / обязательно | Экземпляр, на котором нужно создать базу данных. Это поле представляет ссылку на ресурс Instance в GCP. Можно указать двумя способами. Во-первых, можно указать словарь с ключом «name» и значением имени ресурса. Во-вторых, можно добавить `register: имя-ресурса` в задачу gcp_spanner_instance, а затем установить это поле instance в «{{ имя-ресурса }}» |
name строка / обязательно | Уникальный идентификатор базы данных, который нельзя изменить после создания экземпляра. Значения имеют вид [a-z][-a-z0-9]*[a-z0-9]. |
project строка | Проект Google Cloud Platform, который нужно использовать. |
scopes список / элементы=строка | Массив используемых областей |
service_account_contents jsonarg | Содержание JSON-файла учетной записи сервиса, либо в виде словаря, либо как JSON-строка, представляющая его. |
service_account_email строка | Необязательный адрес электронной почты учетной записи сервиса, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию. |
service_account_file путь | Путь к файлу JSON-учетных данных сервиса, если serviceaccount выбран как тип. |
state строка | Указывает, должен ли данный объект существовать в 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 сложный | Настройка шифрования для базы данных. Возвращаемое значение: успех |
|
kmsKeyName строка |
Полное имя KMS-ключа, используемого для шифрования базы данных. Этот ключ должен существовать в той же области, что и база данных Spanner. Возвращаемое значение: успех |
extraStatements список / элементы=строка | Необязательный список инструкций DDL, которые следует выполнить внутри новой созданной базы данных. Инструкции могут создавать таблицы, индексы и т. д. Эти инструкции выполняются атомарно с созданием базы данных: если в какой-либо инструкции возникает ошибка, база данных не создается. Возвращаемое значение: успех |
instance словарь | Экземпляр, на котором создается база данных. Возвращаемое значение: успех |
name строка | Уникальный идентификатор базы данных, который нельзя изменить после создания экземпляра. Значения имеют вид [a-z][-a-z0-9]*[a-z0-9]. Возвращаемое значение: успех |
Ссылки на коллекции
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/google/cloud/gcp_spanner_database_module.html