Модуль vmware.vmware_rest.content_subscribedlibrary — создает новую библиотеку с подпиской
Примечание
Этот модуль входит в коллекцию vmware.vmware_rest (версия 4.10.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить ее, используйте: ansible-galaxy collection install vmware.vmware_rest. Для использования этого модуля требуются дополнительные компоненты; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: vmware.vmware_rest.content_subscribedlibrary.
Добавлено в vmware.vmware_rest 2.0.0
УСТАРЕЛО
- Удалено в:
-
версии 5.0.0
- Причина:
-
Этот модуль перенесен в новую коллекцию vmware.vmware
- Альтернатива:
-
Вместо этого используйте vmware.vmware.subscribed_content_library.
Краткое описание
- Создает новую библиотеку с подпиской.
Требования
Следующие компоненты должны быть установлены на хосте, на котором выполняется этот модуль.
- vSphere 7.0.3 или новее
- python >= 3.6
- aiohttp
Параметры
Параметр | Комментарии |
|---|---|
client_token string | Уникальный токен, создаваемый клиентом для каждого запроса на создание. Токен должен быть универсальным уникальным идентификатором (UUID), например: b8a2a2e3-2314-43cd-a871-6ede0f429751. Этот токен можно использовать для обеспечения идемпотентного создания. Если токен не указан, создание не является идемпотентным. |
creation_time string | Дата и время создания этой библиотеки. Это поле не используется при выполнении операции создания. Оно всегда присутствует в результатах операций получения или перечисления. Оно не используется при выполнении операции обновления. |
description string | Понятное человеку описание этой библиотеки. Это поле необязательно для операции создания. Если не задавать его при создании, его значение будет пустой строкой. Оно всегда присутствует в результатах операции получения или перечисления. Для операции обновления поле необязательно. Если не задавать его при обновлении, описание останется без изменений. |
id string | Идентификатор, однозначно определяющий этот LibraryModel. Это поле не используется при выполнении операции создания. Оно не будет присутствовать в результатах операций получения или перечисления. Оно не используется при выполнении операции обновления. Если клиенты передают значение этой структуры в качестве параметра, поле должно содержать идентификатор ресурса, возвращенного методом vmware.vmware_rest.content_library_info. |
last_modified_time string | Дата и время последнего обновления этой библиотеки. Это поле обновляется автоматически при изменении свойств библиотеки. На него не влияет добавление, удаление или изменение элемента библиотеки либо его содержимого. Добавление тегов к библиотеке или синхронизация подписанной библиотеки не изменяют это поле. Это поле не используется при выполнении операции создания. Оно всегда присутствует в результатах операций получения или перечисления. Оно не используется при выполнении операции обновления. |
last_sync_time string | Дата и время последней синхронизации этой библиотеки. Это поле применяется только к подписанным библиотекам. Оно обновляется при каждом запуске синхронизации библиотеки. Для локальной библиотеки значение не задано. Это поле не используется при выполнении операции создания. В результатах операций получения или перечисления оно является необязательным. Оно не используется при выполнении операции обновления. |
library_id string | Идентификатор подписанной библиотеки, содержимое которой следует удалить из кэша. Параметр должен содержать идентификатор ресурса, возвращенного методом vmware.vmware_rest.content_library_info. Обязателен при state=[‘absent’, ‘evict’, ‘present’, ‘sync’] |
name string | Имя библиотеки. Библиотека определяется по понятному человеку имени. Имя библиотеки не может быть неопределенным или пустым. Имена не должны быть уникальными. Это поле необходимо указать для операции создания. Оно всегда присутствует в результатах операций получения или перечисления. Для операции обновления оно необязательно. |
optimization_info dictionary | Определяет различные оптимизации и параметры оптимизации, применяемые к этой библиотеке. Это поле необязательно для операции создания. В результатах операций получения или перечисления оно является необязательным. Для операции обновления оно также необязательно. Допустимые атрибуты: - Включите этот параметр, если удаленная публикация является основным сценарием использования этой библиотеки. Под удаленной публикацией здесь подразумевается, что издатель и подписчики не входят в один домен Vcenter SSO. В результате включения этой оптимизации при создании библиотеки могут быть выполнены различные оптимизации. Например, содержимое библиотеки может храниться в другом формате, однако оптимизации не ограничиваются только форматом хранения. Обратите внимание, что значение этого параметра можно задать только при создании библиотеки. Если потребуется изменить это значение (оптимизировать библиотеку для другого сценария использования), библиотеку необходимо будет перенести. Это поле необязательно для операции создания. Если при создании оно не указано, библиотека по умолчанию не оптимизируется для определенного сценария использования. Оно не используется при выполнении операции обновления. ([‘present’]) |
publish_info dictionary | Определяет способ публикации этой библиотеки, чтобы на нее могла подписаться удаленная подписанная библиотека. PublishInfo определяет, где и каким образом доступны метаданные этой локальной библиотеки. Локальная библиотека публикуется для общего доступа только в том случае, если PublishInfo.published имеет значение true. Это поле необязательно для операций создания и обновления. Если при создании оно не указано, библиотека по умолчанию не публикуется. Если при обновлении оно не указано, значение поля остается без изменений. Допустимые атрибуты: - - Допустимые значения: - BASIC - NONE - Это поле необходимо для операции LocalLibrary.create. Для операции LocalLibrary.update оно необязательно; если значение не задано, оно не изменится. Если для существующего метода аутентификации задано значение BASIC и локальная библиотека опубликована, перед отключением публикации необходимо указать поле PublishInfo.current-password. Это поле всегда присутствует в результатах операции LocalLibrary.get. ([‘present’]) - Это значение можно использовать для задания свойства SubscriptionInfo.subscription-url при создании подписанной библиотеки. Это поле не используется при выполнении операции создания. Оно всегда присутствует в результатах операций получения или перечисления. Оно не используется при выполнении операции обновления. ([‘present’]) - Это поле необязательно для операций LocalLibrary.create и LocalLibrary.update. Если выбран метод аутентификации NONE, имя пользователя можно не задавать. Если выбран метод аутентификации BASIC, в текущем выпуске имя пользователя игнорируется. По умолчанию используется значение “vcsp”. Предпочтительно не задавать это поле. Если оно указано, его значение должно быть “vcsp”. ([‘present’]) - Это поле необязательно для операции LocalLibrary.create. Если выбран метод аутентификации NONE, пароль можно не задавать. Если выбран метод аутентификации BASIC, пароль должен быть непустой строкой. Для операции LocalLibrary.update это поле необязательно. Если не задавать его при обновлении, пароль останется без изменений. При изменении пароля необходимо указать поле PublishInfo.current-password. Это поле не используется при выполнении операции LocalLibrary.get. ([‘present’]) - Это поле не используется при выполнении операции LocalLibrary.create. Для операции LocalLibrary.update оно необязательно. Если для существующего метода аутентификации задано значение NONE, текущий пароль можно не указывать. Если для существующего метода аутентификации задано значение BASIC, перед применением нового значения PublishInfo.password, отключением аутентификации или отменой публикации библиотеки выполняется проверка текущего пароля. Это поле не используется при выполнении операции LocalLibrary.get. ([‘present’]) - Включение сохранения в формате JSON позволяет синхронизировать подписанную библиотеку вручную, а не по протоколу HTTP. Скопируйте содержимое и метаданные локальной библиотеки в другое хранилище вручную, а затем создайте подписанную библиотеку, указав в SubscriptionInfo.subscription-url расположение файла JSON библиотеки. Если хранилище подписанной библиотеки совпадает с URL-адресом подписки, копировать файлы в подписанную библиотеку не требуется. Для библиотеки, размещенной в хранилище данных, файл JSON библиотеки будет сохранен по пути contentlib-{library_id}/lib.json в хранилище данных. Для библиотеки, размещенной в удаленной файловой системе, файл JSON библиотеки будет сохранен по пути {library_id}/lib.json в удаленной файловой системе. Это поле необязательно для операции создания. Оно всегда присутствует в результатах операций получения или перечисления. Для операции обновления оно необязательно. ([‘present’]) |
security_policy_id string | Представляет политику безопасности, применяемую к этой библиотеке. Задание этого поля обеспечивает защиту библиотеки. Это поле игнорируется при выполнении операции обновления, если для LibraryModel.unset-security-policy-id задано значение true. Это поле необязательно для операций создания и обновления. Если оно не задано при создании, библиотека не будет защищена. Если оно не задано при обновлении, значение поля остается без изменений. Если клиенты передают значение этой структуры в качестве параметра, поле должно содержать идентификатор ресурса, возвращенного методом vmware.vmware_rest.content_library_info. |
server_guid string | Уникальный идентификатор сервера vCenter, на котором находится библиотека. Это поле необязательно для операции создания. Оно всегда присутствует в результатах операций получения или перечисления. Оно не используется при выполнении операции обновления. Если клиенты передают значение этой структуры в качестве параметра, поле должно содержать идентификатор ресурса, возвращенного методом vmware.vmware_rest.vcenter_cluster_info. |
session_timeout float добавлено в vmware.vmware_rest 2.1.0 | Параметры времени ожидания для сеанса клиента. Максимальное количество секунд для всей операции, включая установление соединения, отправку запроса и получение ответа. Значение по умолчанию — 300 с. |
state string | Варианты:
|
storage_backings list / elements=dictionary | Список хранилищ по умолчанию, доступных для этой библиотеки. StorageBacking определяет расположение хранилища по умолчанию, которое можно использовать для файлов элементов этой библиотеки. Некоторые элементы библиотеки, например шаблоны виртуальных машин, поддерживают файлы, распределенные по различным хранилищам. Один или несколько файлов элемента могут находиться или не находиться в хранилище по умолчанию. В настоящее время поддержка нескольких расположений хранилища по умолчанию отсутствует, но может появиться в будущих выпусках. Это поле необходимо указать для операции создания. Оно всегда присутствует в результатах операций получения или перечисления. Оно не используется при выполнении операции обновления. Допустимые атрибуты: - - Допустимые значения: - DATASTORE - OTHER - Это поле необязательно и имеет значение только в том случае, если значение StorageBacking.type равно DATASTORE. Если клиенты передают значение этой структуры в качестве параметра, поле должно содержать идентификатор ресурса, возвращенного методом vmware.vmware_rest.vcenter_datastore_info. ([‘present’]) - Поддерживаются следующие форматы URI: vSphere 6.5 - nfs://server/path?version=4 (только для vCenter Server Appliance) — указывает сервер NFS версии 4. - nfs://server/path (только для vCenter Server Appliance) — указывает сервер NFS версии 3. Также поддерживается формат nfs://server:/path. - smb://server/path — указывает сервер SMB или общий ресурс Windows. vSphere 6.0 Update 1 - nfs://server:/path (только для vCenter Server Appliance) - file://unc-server/path (только для vCenter Server для Windows) - file:///mount/point (только для vCenter Server Appliance) — локальные URI файлов поддерживаются только в том случае, если путь является локальной точкой подключения файловой системы NFS. Использовать URI файлов настоятельно не рекомендуется. Вместо этого укажите удаленную файловую систему с помощью URI NFS. vSphere 6.0 - nfs://server:/path (только для vCenter Server Appliance) - file://unc-server/path (только для vCenter Server для Windows) - file:///path — локальные URI файлов поддерживаются, но их использование настоятельно не рекомендуется, поскольку они могут отрицательно повлиять на производительность vCenter Server. Это поле необязательно и имеет значение только в том случае, если значение StorageBacking.type равно OTHER. ([‘present’]) |
subscription_info dictionary | Определяет поведение подписки для этой библиотеки. SubscriptionInfo определяет, как эта подписанная библиотека синхронизируется с удаленным источником. Заданное значение определяет удаленный источник, с которым синхронизируется библиотека, и способ синхронизации. Изменение подписки приведет к синхронизации с новым источником. Если новый источник отличается от прежнего, старые элементы библиотеки и данные будут потеряны. Если задать для SubscriptionInfo.automatic-sync-enabled значение false, подписка будет приостановлена, но существующие кэшированные данные не будут удалены. Это поле необязательно для операций создания и обновления. Если при создании оно не указано, будет создана библиотека без активной подписки. Если при обновлении оно не указано, значение поля остается без изменений. Допустимые атрибуты: - - Допустимые значения: - BASIC - NONE - Это поле необходимо указать для операции создания. Оно всегда присутствует в результатах операций получения или перечисления. Для операции обновления оно необязательно. ([‘present’, ‘probe’]) - Если задано значение true, метаданные элемента библиотеки будут синхронизированы, но его содержимое (файлы) синхронизироваться не будет. Служба Content Library будет синхронизировать содержимое только по запросу. Из-за этого при первом использовании содержимого может возникнуть заметная задержка. Элементы без синхронизированного содержимого можно принудительно синхронизировать заранее, вызвав SubscribedItem.sync со значением true для forceSyncContent. После синхронизации содержимое можно удалить с помощью вызова SubscribedItem.evict. Если задано значение false, все содержимое будет синхронизировано заранее. Это поле необходимо указать для операции создания. Оно всегда присутствует в результатах операций получения или перечисления. Для операции обновления оно необязательно. ([‘present’, ‘probe’]) - При использовании метода аутентификации на основе пароля пароль необходимо задать; пустые строки не допускаются. Это поле необязательно для операции создания. Оно не будет присутствовать в результатах операций получения или перечисления. Для операции обновления оно необязательно. ([‘present’, ‘probe’]) - Если это значение задано, SSL-сертификат будет проверен путем сравнения с отпечатком SSL. SSL-сертификат должен соответствовать отпечатку. Если значение указано, стандартная проверка цепочки сертификатов не выполняется. Если значение не задано, цепочка сертификатов проверяется обычным образом. Указанное значение sslThumbprint не будет проверяться при проверке SSL-сертификата, если также задано значение {SubscriptionInfo#sslCertificate}. Это поле необязательно для операции создания. Оно не будет присутствовать в результатах операций получения или перечисления. Для операции обновления оно необязательно. ([‘present’, ‘probe’]) - Это может быть значение PublishInfo.publish-url опубликованной библиотеки (например, https://server/path/lib.json). Если исходное содержимое поступает из опубликованной библиотеки со значением true для PublishInfo.persist-json-enabled, URL-адрес подписки может указывать на файл JSON библиотеки в хранилище данных или удаленной файловой системе. Поддерживаются следующие форматы: vSphere 6.5 - ds:///vmfs/volumes/{uuid}/mylibrary/lib.json (для хранилища данных) - nfs://server/path/mylibrary/lib.json (для сервера NFSv3 на vCenter Server Appliance) - nfs://server/path/mylibrary/lib.json?version=4 (для сервера NFSv4 на vCenter Server Appliance) - smb://server/path/mylibrary/lib.json (для сервера SMB) vSphere 6.0 - file://server/mylibrary/lib.json (для сервера UNC на vCenter Server для Windows) - file:///path/mylibrary/lib.json (для локальной файловой системы) Если указать URL-адрес подписки DS, хранилище данных должно находиться на том же сервере vCenter, что и подписанная библиотека. Если указать URL-адрес подписки NFS или SMB, значение StorageBacking.storage-uri подписанной библиотеки должно указывать на тот же удаленный файловый сервер и иметь общий родительский путь с URL-адресом подписки. Это поле необходимо указать для операции создания. Оно всегда присутствует в результатах операций получения или перечисления. Для операции обновления оно необязательно. ([‘present’, ‘probe’]) - При использовании метода аутентификации на основе пароля имя пользователя необходимо задать. Пустые строки в качестве имени пользователя допускаются. Это поле необязательно для операции создания. В результатах операций получения или перечисления оно является необязательным. Для операции обновления оно необязательно. ([‘present’, ‘probe’]) - Это поле необязательно для операции создания. В результатах операций получения или перечисления оно является необязательным. Для операции обновления оно необязательно. ([‘present’, ‘probe’]) - Допустимые ключи: - source_library (string): Идентификатор опубликованной библиотеки. Это поле необходимо указать для операции создания. Оно всегда присутствует в результатах операций получения или перечисления. Для операции обновления оно необязательно. Если клиенты передают значение этой структуры в качестве параметра, поле должно содержать идентификатор ресурса, возвращенного методом vmware.vmware_rest.content_library_info. - subscription (string): Идентификатор подписки, связанной с подписанной библиотекой. Это поле необходимо указать для операции создания. Оно всегда присутствует в результатах операций получения или перечисления. Для операции обновления оно необязательно. Если клиенты передают значение этой структуры в качестве параметра, поле должно содержать идентификатор ресурса, возвращенного методом vmware.vmware_rest.content_library_subscriptions_info. |
type string | Перечисляемый тип library_type определяет тип LibraryModel. Тип библиотеки можно использовать для определения дополнительных служб, которые можно выполнять с библиотекой. Варианты:
|
unset_security_policy_id boolean | Это поле указывает на предполагаемое изменение LibraryModel.security-policy-id при выполнении операции обновления. Если для этого поля задано значение true, все примененные к библиотеке политики безопасности будут удалены. Если для этого поля задано значение false, все примененные к библиотеке политики безопасности будут заменены значением LibraryModel.security-policy-id, если оно задано. Это поле необязательно для операции обновления. Если оно не задано, все существующие политики безопасности будут заменены значением LibraryModel.security-policy-id, если оно задано. Варианты:
|
vcenter_hostname string / обязательный | Имя хоста или IP-адрес vSphere vCenter Если значение не указано в задаче, вместо него будет использоваться значение переменной среды |
vcenter_password string / обязательный | Пароль vSphere vCenter Если значение не указано в задаче, вместо него будет использоваться значение переменной среды |
vcenter_rest_log_file string | Этот необязательный параметр позволяет указать расположение файла журнала. Этот файл будет использоваться для записи взаимодействия по протоколу HTTP REST. Файл будет сохранён на узле, на котором выполняется модуль. Если значение не указано в задаче, вместо него будет использовано значение переменной среды |
vcenter_username string / обязательно | Имя пользователя vSphere vCenter Если значение не указано в задаче, вместо него будет использовано значение переменной среды |
vcenter_validate_certs boolean | Разрешает подключение, если SSL-сертификаты недействительны. Установите значение Если значение не указано в задаче, вместо него будет использовано значение переменной среды Варианты:
|
version string | Номер версии, который обновляется при изменении метаданных. Это значение позволяет клиентам обнаруживать параллельные обновления и предотвращать случайную перезапись данных. Это значение представляет собой число, которое увеличивается при каждом изменении свойств библиотеки, например её имени или описания. Оно не увеличивается при изменении элементов библиотеки, включая добавление и удаление элементов. Добавление тегов к библиотеке также не влияет на это значение. Это поле не используется при создании. Оно всегда присутствует в результате операции получения или перечисления. При обновлении оно является необязательным. Если не указывать его при обновлении, это означает, что обнаруживать параллельные обновления не требуется. |
Примечания
Примечание
- Проверено на vSphere 7.0.3
Примеры
- name: Create a content library pointing on a NFS share
vmware.vmware_rest.content_locallibrary:
name: my_library_on_nfs
description: automated
publish_info:
published: true
authentication_method: NONE
storage_backings:
- storage_uri: nfs://datastore.test/srv/share/content-library
type: OTHER
state: present
register: nfs_lib
- name: Create subscribed library
vmware.vmware_rest.content_subscribedlibrary:
name: sub_lib
subscription_info:
subscription_url: '{{ nfs_lib.value.publish_info.publish_url }}'
authentication_method: NONE
automatic_sync_enabled: false
on_demand: true
storage_backings:
- datastore_id: "{{ lookup('vmware.vmware_rest.datastore_moid', '/my_dc/datastore/rw_datastore') }}"
type: DATASTORE
register: sub_lib
- name: Create subscribed library (again)
vmware.vmware_rest.content_subscribedlibrary:
name: sub_lib
subscription_info:
subscription_url: '{{ nfs_lib.value.publish_info.publish_url }}'
authentication_method: NONE
automatic_sync_enabled: false
on_demand: true
storage_backings:
- datastore_id: "{{ lookup('vmware.vmware_rest.datastore_moid', '/my_dc/datastore/rw_datastore') }}"
type: DATASTORE
register: result
- name: Clean up the cache
vmware.vmware_rest.content_subscribedlibrary:
name: sub_lib
library_id: '{{ sub_lib.id }}'
state: evict
- name: Trigger a library sync
vmware.vmware_rest.content_subscribedlibrary:
name: sub_lib
library_id: '{{ sub_lib.id }}'
state: sync
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже приведены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
msg string | Удаление всех подписанных библиотек Возвращается: При успешном выполнении Пример: |
results list / элементы=string | Удаление всех подписанных библиотек Возвращается: При успешном выполнении Пример: |
Статус
- Этот модуль будет удалён в версии 5.0.0. [устаревший]
- Дополнительную информацию см. в разделе УСТАРЕВШИЙ.
Ссылки на коллекцию
© 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/vmware/vmware_rest/content_subscribedlibrary_module.html