Модуль google.cloud.gcp_vertexai_index_endpoint_deployed_index — создает ресурс GCP VertexAI.IndexEndpointDeployedIndex
Примечание
Этот модуль входит в коллекцию google.cloud (версия 1.13.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в состав ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install google.cloud. Для использования этого модуля необходимы дополнительные требования; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: google.cloud.gcp_vertexai_index_endpoint_deployed_index.
Общие сведения
- Конечная точка, в которую развертываются индексы. Одна конечная точка индекса может содержать несколько развернутых индексов.
Требования
На узле, на котором выполняется этот модуль, должны быть установлены следующие компоненты.
- python >= 3.8
- requests >= 2.18.4
- google-auth >= 2.25.1
Параметры
Параметр | Комментарии |
|---|---|
access_token string | Токен доступа, используемый для аутентификации. |
auth_kind string / обязательный | Тип используемых учетных данных. Варианты:
|
automatic_resources dictionary | Описание ресурсов, используемых DeployedIndex. В значительной степени их определяет Vertex AI; при необходимости допускается лишь незначительная дополнительная настройка. |
|
max_replica_count integer |
Максимальное количество реплик, на которых может быть развернута эта модель DeployedModel при увеличении нагрузки. Если maxReplicaCount не задано, по умолчанию используется значение minReplicaCount. Максимально допустимое количество реплик — 1000. Максимальное количество реплик, на которых может быть развернута эта модель DeployedModel при увеличении нагрузки. Если запрошенное значение слишком велико, развертывание завершится ошибкой. Если же развертывание будет успешным, возможность масштабирования модели до указанного количества реплик гарантируется (за исключением перебоев в работе службы). Если нагрузка на DeployedModel превысит возможности максимального количества реплик, часть запросов будет отброшена. Если это значение не задано, предполагается отсутствие верхнего предела масштабирования при высокой нагрузке, однако Vertex AI может оказаться не в состоянии масштабировать количество реплик выше определенного значения. |
|
min_replica_count integer |
Минимальное количество реплик, на которых всегда будет развернута эта модель DeployedModel. Если minReplicaCount не задано, по умолчанию используется значение 2 (мы не предоставляем SLA при minReplicaCount=1). При увеличении нагрузки модель может динамически развертываться на дополнительных репликах вплоть до значения [maxReplicaCount](https://cloud.google.com/vertex-ai/docs/reference/rest/v1/AutomaticResources#FIELDS.max_replica_count), а при снижении нагрузки некоторые из этих дополнительных реплик могут быть освобождены. Если запрошенное значение слишком велико, развертывание завершится ошибкой. |
dedicated_resources dictionary | Описание ресурсов, выделенных для DeployedIndex и требующих более тщательной ручной настройки. Полю minReplicaCount необходимо присвоить значение строго больше 0, иначе проверка завершится ошибкой. Мы не предоставляем SLA при minReplicaCount=1. Если maxReplicaCount не задано, по умолчанию используется значение minReplicaCount. Максимально допустимое количество реплик — 1000. Для сегмента SMALL доступны типы машин e2-standard-2 и все типы машин, доступные для сегментов MEDIUM и LARGE. Для сегмента MEDIUM доступны типы машин e2-standard-16 и все типы машин, доступные для сегмента LARGE. Для сегмента LARGE доступны типы машин e2-highmem-16 и n2d-standard-32. Типы n1-standard-16 и n1-standard-32 по-прежнему доступны, однако для экономии средств мы рекомендуем e2-standard-16 и e2-highmem-16. |
|
machine_spec dictionary / обязательный |
Минимальное количество реплик, на которых всегда будет развернута эта модель DeployedModel. |
|
machine_type string |
Тип машины. См. [список типов машин, поддерживаемых для прогнозирования](https://cloud.google.com/vertex-ai/docs/predictions/configure-compute#machine-types) и [список типов машин, поддерживаемых для пользовательского обучения](https://cloud.google.com/vertex-ai/docs/training/configure-compute#machine-types). Для [DeployedModel](https://cloud.google.com/vertex-ai/docs/reference/rest/v1/projects.locations.endpoints#DeployedModel) это поле необязательное; по умолчанию используется значение n1-standard-2. Для [BatchPredictionJob](https://cloud.google.com/vertex-ai/docs/reference/rest/v1/projects.locations.batchPredictionJobs#BatchPredictionJob) или в составе [WorkerPoolSpec](https://cloud.google.com/vertex-ai/docs/reference/rest/v1/CustomJobSpec#WorkerPoolSpec) это поле обязательно. |
|
max_replica_count integer |
Максимальное количество реплик, на которых может быть развернута эта модель DeployedModel при увеличении нагрузки. Если maxReplicaCount не задано, по умолчанию используется значение minReplicaCount. |
|
min_replica_count integer / обязательный |
Минимальное количество машинных реплик, на которых всегда будет развернута эта модель DeployedModel. Это значение должно быть не меньше 1. |
deployed_index_auth_config dictionary | Если задано, для частной конечной точки включается аутентификация. |
|
auth_provider dictionary |
Определяет поставщика аутентификации, используемого DeployedIndex. |
|
allowed_issuers list / elements=string |
Список разрешенных издателей JWT. Каждая запись должна представлять собой действительную учетную запись службы Google в следующем формате: service-account-name@project-id.iam.gserviceaccount.com. |
|
audiences list / elements=string |
Список аудиторий JWT. которым разрешен доступ. Будет принят JWT, содержащий любую из этих аудиторий. |
deployed_index_id string / обязательный | Заданный пользователем идентификатор DeployedIndex. Длина идентификатора не должна превышать 128 символов. Он должен начинаться с буквы и содержать только буквы, цифры и символы подчеркивания. Идентификатор должен быть уникальным в проекте, в котором он создается. |
deployment_group string | Длина имени группы развертывания не должна превышать 64 символов (например, ‘test’, ‘prod’). Если значение не задано, будет использоваться группа развертывания ‘default’. Рекомендуется создавать группы deployment_groups с reserved_ip_ranges, если в одноранговой сети настроено несколько диапазонов пиринга. Это позволяет создавать развертывания в предсказуемых диапазонах IP-адресов, упрощая управление трафиком. Кроме того, одну группу deployment_group (за исключением ‘default’) можно использовать только с теми же значениями reserved_ip_ranges. Например, если для группы deployment_group использовалось reserved_ip_ranges: [a, b, c], ее нельзя использовать со значениями [a, b] или [d, e]. [См. официальную документацию](https://cloud.google.com/vertex-ai/docs/reference/rest/v1/projects.locations.indexEndpoints#DeployedIndex.FIELDS.deployment_group). Примечание: поддерживается не более 5 групп развертывания (не считая ‘default’). По умолчанию: |
display_name string | Отображаемое имя индекса. Длина имени не должна превышать 128 символов; оно может содержать любые символы UTF-8. |
enable_access_logging boolean | Если значение равно true, журналы доступа к частной конечной точке отправляются в Cloud Logging. Варианты:
|
env_type string | Указывает, в какой среде Ansible выполняется этот модуль. Не задавайте это значение, если вы не знаете, что делаете. Оно изменяет только строку User Agent для запросов к API. |
index string / обязательный | Имя индекса, для которого выполняется развертывание. |
index_endpoint dictionary / обязательный | Идентифицирует конечную точку индекса. Значение должно иметь формат ‘projects/{{project}}/locations/{{region}}/indexEndpoints/{{indexEndpoint}}’. Это поле является ссылкой на ресурс IndexEndpoint в GCP. Указать его можно двумя способами. Во-первых, можно задать словарь с ключом ‘name’, соответствующим вашему ресурсу. Также можно добавить `register: name-of-resource` в задачу IndexEndpoint, а затем присвоить этому полю значение `{{ name-of-resource }}`. |
project string | Проект Google Cloud Platform, который следует использовать. |
region string / обязательный | Регион индекса. Например, us-central1. |
reserved_ip_ranges list / elements=string | Список зарезервированных диапазонов IP-адресов в сети VPC, которые можно использовать для этого DeployedIndex. Если значение задано, индекс будет развернут в указанных диапазонах IP-адресов. В противном случае индекс может быть развернут в любом диапазоне IP-адресов указанной сети VPC. Значением должно быть имя адреса (https://cloud.google.com/compute/docs/reference/rest/v1/addresses). Пример: [‘vertex-ai-ip-range’]. Дополнительную информацию о подсетях и диапазонах IP-адресов сети см. в разделе https://cloud.google.com/vpc/docs/subnets#manually_created_subnet_ip_ranges. |
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/vertex-ai/docs/reference/rest/v1/projects.locations.indexEndpoints#DeployedIndex
- Для аутентификации можно задать auth_kind с помощью переменной окружения
GCP_AUTH_KIND. - Для аутентификации можно задать 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. - Для аутентификации можно задать scopes с помощью переменной окружения
GCP_SCOPES. - Значения переменных окружения используются только в том случае, если значения не заданы в плейбуке.
- Параметры
service_account_email,service_account_file,service_account_fileиaccess_tokenявляются взаимоисключающими.
Примеры
- name: Create basic index endpoint deployed index
google.cloud.gcp_vertexai_index_endpoint_deployed_index:
state: present
display_name: "{{ resource_name }}"
deployed_index_id: "{{ resource_name | regex_replace('-', '_') }}"
region: us-central1
index: "{{ _myidx.name }}"
index_endpoint: "{{ _myidxep.name }}"
enable_access_logging: false
deployed_index_auth_config:
auth_provider:
audiences:
- 123-myapp
allowed_issuers:
- mysa@myproject.iam.gserviceaccount.com
project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}"
################################################################################
- name: Create index endpoint deployed index with dedicated resources
google.cloud.gcp_vertexai_index_endpoint_deployed_index:
state: present
display_name: "{{ resource_name }}"
deployed_index_id: "{{ resource_name | regex_replace('-', '_') }}"
region: us-central1
index: "{{ _myidx.name }}"
index_endpoint: "{{ _myidxep.name }}"
enable_access_logging: false
deployed_index_auth_config:
auth_provider:
audiences:
- 123-myapp
allowed_issuers:
- mysa@myproject.iam.gserviceaccount.com
dedicated_resources:
min_replica_count: 1
max_replica_count: 3
machine_spec:
machine_type: e2-standard-2
project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}"
################################################################################
- name: Create index endpoint deployed index with automatic resources
google.cloud.gcp_vertexai_index_endpoint_deployed_index:
state: present
display_name: "{{ resource_name }}"
deployed_index_id: "{{ resource_name | regex_replace('-', '_') }}"
region: us-central1
index: "{{ _myidx.name }}"
index_endpoint: "{{ _myidxep.name }}"
enable_access_logging: false
deployed_index_auth_config:
auth_provider:
audiences:
- 123-myapp
allowed_issuers:
- mysa@myproject.iam.gserviceaccount.com
automatic_resources:
max_replica_count: 3
project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}"
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже приведены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
changed boolean | Был ли изменён ресурс. Возвращается: всегда |
createTime string | Время создания Index в формате RFC3339 UTC «Zulu» с точностью до наносекунд и не более чем девятью цифрами дробной части. Возвращается: success |
indexSyncTime string | DeployedIndex может зависеть от различных данных исходного Index. Кроме того, при внесении определённых изменений в исходный Index (например, при изменении содержимого Index) DeployedIndex может асинхронно обновляться в фоновом режиме, чтобы отразить эти изменения. Если значение этой временной метки не меньше [Index.update_time](https://cloud.google.com/vertex-ai/docs/reference/rest/v1/projects.locations.indexes#Index.FIELDS.update_time) исходного Index, это означает, что данный DeployedIndex синхронизирован с исходным Index. Если эта временная метка более ранняя, чтобы узнать, какие обновления уже содержит этот DeployedIndex, а какие нет, необходимо получить список [операций](https://cloud.google.com/vertex-ai/docs/reference/rest/v1beta1/projects.locations.operations/list#google.longrunning.Operations.ListOperations), выполняющихся для исходного Index. Этот DeployedIndex содержит только успешно завершённые операции, время updateTime которых совпадает со временем синхронизации или предшествует ему. Временная метка в формате RFC3339 UTC «Zulu» с точностью до наносекунд и не более чем девятью цифрами дробной части. Примеры: «2014-10-02T15:01:23Z» и «2014-10-02T15:01:23.045123456Z». Возвращается: success |
name string | Имя ресурса DeployedIndex. Возвращается: success |
privateEndpoints dictionary | Предоставляет пути, по которым пользователи могут напрямую отправлять запросы к службам развёрнутого индекса, работающим в Cloud, через доступ к частным службам. Это поле заполняется, если настроен параметр [network](https://cloud.google.com/vertex-ai/docs/reference/rest/v1/projects.locations.indexEndpoints#IndexEndpoint.FIELDS.network). Возвращается: success |
|
matchGrpcAddress string |
IP-адрес, используемый для отправки запросов на сопоставление по gRPC. Возвращается: success |
|
pscAutomatedEndpoints list / elements=dictionary |
PscAutomatedEndpoints заполняется, если включён Private Service Connect и задан PscAutomatedConfig. Возвращается: success |
|
matchAddress string |
IP-адрес, созданный автоматическим правилом переадресации. Возвращается: success |
|
network string |
Соответствующая сеть в pscAutomationConfigs. Возвращается: success |
|
projectId string |
Соответствующий projectId в pscAutomationConfigs. Возвращается: success |
|
serviceAttachment string |
Имя ресурса подключения службы. Заполняется, если включён Private Service Connect. Возвращается: success |
state string | Текущее состояние ресурса. Возвращается: всегда |
Ссылки на коллекцию
© 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_vertexai_index_endpoint_deployed_index_module.html