Spec-Zone.ru › AWS CLI v2

[ aws . appmesh ]

create-virtual-node

Описание

Создаёт виртуальный узел в рамках сервисной сетки.

Виртуальный узел выступает в качестве логической ссылки на определённую группу задач, например, сервис Amazon ECS или развертывание Kubernetes. При создании виртуального узла вы можете указать информацию о обнаружении сервиса для вашей группы задач и то, будет ли прокси, запущенный в группе задач, взаимодействовать с другими прокси с использованием Transport Layer Security (TLS).

Вы определяете listener для любого входящего трафика, который ожидает ваш виртуальный узел. Любой виртуальный сервис, с которым должен взаимодействовать ваш виртуальный узел, указывается как backend.

Метаданные ответа для вашего нового виртуального узла содержат arn, связанную с виртуальным узлом. Установите это значение в полном ARN; например, arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp) в качестве переменной среды APPMESH_RESOURCE_ARN для контейнера прокси Envoy вашей группы задач в вашем определении задачи или спецификации под. Это затем сопоставляется с параметрами Envoy node.id и node.cluster.

Примечание

По умолчанию App Mesh использует имя ресурса, указанного в APPMESH_RESOURCE_ARN, когда Envoy ссылается на себя в метриках и трассировках. Вы можете переопределить это поведение, установив переменную среды APPMESH_RESOURCE_CLUSTER со своим именем.

Для получения дополнительной информации о виртуальных узлах см. Виртуальные узлы . Вам необходимо использовать 1.15.0 или более позднюю версию образа Envoy при установке этих переменных. Дополнительную информацию о переменных Envoy в App Mesh см. в руководстве пользователя App Mesh в разделе Образ Envoy.

См. также: Документацию API AWS

Синтаксис

  create-virtual-node
[--client-token <value>]
--mesh-name <value>
[--mesh-owner <value>]
--spec <value>
[--tags <value>]
--virtual-node-name <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]

Параметры

--client-token (строка)

Уникальный, чувствительный к регистру идентификатор, который вы предоставляете для обеспечения идемпотентности запроса. Разрешается до 36 букв, цифр, дефисов и подчеркиваний.

--mesh-name (строка)

Имя сервисной сетки для создания виртуального узла.

--mesh-owner (строка)

Идентификатор учётной записи AWS IAM владельца сервисной сетки. Если идентификатор учётной записи не ваш, то учётная запись, которую вы указываете, должна поделиться сеткой с вашей учётной записью, прежде чем вы сможете создать ресурс в сервисной сетке. Дополнительную информацию о совместном использовании сеток см. в разделе Работа с совместными сетками.

--spec (структура)

Спецификация виртуального узла для применения.

backendDefaults -> (структура)

Ссылка на объект, представляющий значения по умолчанию для бэкендов.

clientPolicy -> (структура)

Ссылка на объект, представляющий политику клиента.

tls -> (структура)

Ссылка на объект, представляющий политику клиента Transport Layer Security (TLS).

certificate -> (структура помеченного объединения)

Ссылка на объект, представляющий сертификат TLS клиента.

Примечание

Это структура помеченного объединения. Только один из следующих верхнеуровневых ключей может быть установлен: file, sds.

file -> (структура)

Объект, представляющий локальный сертификат файла. Сертификат должен удовлетворять определённым требованиям, и вам необходимо включить авторизацию прокси. Дополнительную информацию см. в разделе Transport Layer Security (TLS).

certificateChain -> (строка)

Цепочка сертификатов для сертификата.

privateKey -> (строка)

Приватный ключ сертификата, хранящегося в файловой системе виртуального узла, на котором запущен прокси.

sds -> (структура)

Ссылка на объект, представляющий сертификат TLS службы обнаружения секретов клиента.

secretName -> (строка)

Ссылка на объект, представляющий имя секрета, запрошенного от поставщика службы обнаружения секретов, представляющего материалы Transport Layer Security (TLS), такие как сертификат или цепочка сертификатов.

enforce -> (булево)

Применяется ли политика. По умолчанию это True, если значение не указано.

ports -> (список)

Один или несколько портов, для которых применяется политика.

(целое число)

validation -> (структура)

Ссылка на объект, представляющий контекст проверки TLS.

subjectAlternativeNames -> (структура)

Ссылка на объект, представляющий SAN для контекста проверки Transport Layer Security (TLS). Если вы не указываете SAN на завершающем узле сетки, прокси Envoy для этого узла не проверяет SAN в сертификате клиента-партнёра. Если вы не указываете SAN на исходном узле сетки, SAN в сертификате, предоставленном завершающим узлом, должен соответствовать конфигурации обнаружения сервиса узла сетки. Поскольку сертификаты SPIRE предоставляют SPIFFE ID в качестве имени, вам необходимо установить SAN, так как имя не соответствует имени обнаружения сервиса.

match -> (структура)

Объект, представляющий критерии для определения соответствия SAN.

exact -> (список)

Передаваемые значения должны точно совпадать со значениями, указанными.

(строка)

trust -> (структура помеченного объединения)

Ссылка на место получения цепочки доверия при проверке сертификата Transport Layer Security (TLS) партнёра.

Примечание

Это структура помеченного объединения. Только один из следующих верхнеуровневых ключей может быть установлен: acm, file, sds.

acm -> (структура)

Ссылка на объект, представляющий доверие контекста проверки Transport Layer Security (TLS) для сертификата Certificate Manager.

certificateAuthorityArns -> (список)

Один или несколько ARN ACM.

(строка)

file -> (структура)

Объект, представляющий доверие контекста проверки Transport Layer Security (TLS) для локального файла.

certificateChain -> (строка)

Цепочка доверия сертификатов для сертификата, хранящегося в файловой системе виртуального узла, на котором запущен прокси.

sds -> (структура)

Ссылка на объект, представляющий доверие контекста проверки Transport Layer Security (TLS) службы обнаружения секретов.

secretName -> (строка)

Ссылка на объект, представляющий имя секрета для доверия контекста проверки Transport Layer Security (TLS) службы обнаружения секретов.

backends -> (список)

Бэкенды, которым виртуальный узел должен отправлять исходящий трафик.

(структура помеченного объединения)

Объект, представляющий бэкенды, которым виртуальный узел должен отправлять исходящий трафик.

Примечание

Это структура помеченного объединения. Только один из следующих верхнеуровневых ключей может быть установлен: virtualService.

virtualService -> (структура)

Указывает виртуальный сервис для использования в качестве бэкенда.

clientPolicy -> (структура)

Ссылка на объект, представляющий политику клиента для бэкенда.

tls -> (структура)

Ссылка на объект, представляющий политику клиента Transport Layer Security (TLS).

certificate -> (структура помеченного объединения)

Ссылка на объект, представляющий сертификат TLS клиента.

Примечание

Это структура помеченного объединения. Только один из следующих верхнеуровневых ключей может быть установлен: file, sds.

file -> (структура)

Объект, представляющий локальный сертификат файла. Сертификат должен удовлетворять определённым требованиям, и вам необходимо включить авторизацию прокси. Дополнительную информацию см. в разделе Transport Layer Security (TLS).

certificateChain -> (строка)

Цепочка сертификатов для сертификата.

privateKey -> (строка)

Приватный ключ сертификата, хранящегося в файловой системе виртуального узла, на котором запущен прокси.

sds -> (структура)

Ссылка на объект, представляющий сертификат TLS службы обнаружения секретов клиента.

secretName -> (строка)

Ссылка на объект, представляющий имя секрета, запрошенного от поставщика службы обнаружения секретов, представляющего материалы Transport Layer Security (TLS), такие как сертификат или цепочка сертификатов.

enforce -> (булево)

Применяется ли политика. По умолчанию это True, если значение не указано.

ports -> (список)

Один или несколько портов, для которых применяется политика.

(целое число)

validation -> (структура)

Ссылка на объект, представляющий контекст проверки TLS.

subjectAlternativeNames -> (структура)

Ссылка на объект, представляющий SAN для контекста проверки Transport Layer Security (TLS). Если вы не указываете SAN на завершающем узле сетки, прокси Envoy для этого узла не проверяет SAN в сертификате клиента-партнёра. Если вы не указываете SAN на исходном узле сетки, SAN в сертификате, предоставленном завершающим узлом, должен соответствовать конфигурации обнаружения сервиса узла сетки. Поскольку сертификаты SPIRE предоставляют SPIFFE ID в качестве имени, вам необходимо установить SAN, так как имя не соответствует имени обнаружения сервиса.

match -> (структура)

Объект, представляющий критерии для определения соответствия SAN.

exact -> (список)

Передаваемые значения должны точно совпадать со значениями, указанными.

(строка)

trust -> (структура помеченного объединения)

Ссылка на место получения цепочки доверия при проверке сертификата Transport Layer Security (TLS) партнёра.

Примечание

Это структура помеченного объединения. Только один из следующих верхнеуровневых ключей может быть установлен: acm, file, sds.

acm -> (структура)

Ссылка на объект, представляющий доверие контекста проверки Transport Layer Security (TLS) для сертификата Certificate Manager.

certificateAuthorityArns -> (список)

Один или несколько ARN ACM.

(строка)

file -> (структура)

Объект, представляющий доверие контекста проверки Transport Layer Security (TLS) для локального файла.

certificateChain -> (строка)

Цепочка доверия сертификатов для сертификата, хранящегося в файловой системе виртуального узла, на котором запущен прокси.

sds -> (структура)

Ссылка на объект, представляющий доверие контекста проверки Transport Layer Security (TLS) службы обнаружения секретов.

secretName -> (строка)

Ссылка на объект, представляющий имя секрета для доверия контекста проверки Transport Layer Security (TLS) службы обнаружения секретов.

virtualServiceName -> (строка)

Имя виртуального сервиса, действующего как бэкенд виртуального узла.

listeners -> (список)

Слушатель, от которого виртуальный узел ожидает получения входящего трафика. Можно указать одного слушателя.

(структура)

Объект, представляющий слушателя для виртуального узла.

connectionPool -> (структура помеченного объединения)

Информация о пуле подключений для слушателя.

Примечание

Это структура помеченного объединения. Можно задать только один из следующих ключевых элементов верхнего уровня: grpc, http, http2, tcp.

grpc -> (структура)

Объект, представляющий тип пула подключений.

maxRequests -> (целое число)

Максимальное количество активных запросов, которые Envoy может одновременно поддерживать для узлов в кластере по потоку.

http -> (структура)

Объект, представляющий тип пула подключений.

maxConnections -> (целое число)

Максимальное количество исходящих TCP-соединений, которые Envoy может одновременно установить со всеми узлами в кластере по потоку.

maxPendingRequests -> (целое число)

Количество переполненных запросов, которые Envoy будет ставить в очередь в кластере по потоку после max_connections.

http2 -> (структура)

Объект, представляющий тип пула подключений.

maxRequests -> (целое число)

Максимальное количество активных запросов, которые Envoy может одновременно поддерживать для узлов в кластере по потоку.

tcp -> (структура)

Объект, представляющий тип пула подключений.

maxConnections -> (целое число)

Максимальное количество исходящих TCP-соединений, которые Envoy может одновременно установить со всеми узлами в кластере по потоку.

healthCheck -> (структура)

Информация о проверке работоспособности для слушателя.

healthyThreshold -> (целое число)

Количество последовательных успешных проверок работоспособности, необходимых для признания слушателя работоспособным.

intervalMillis -> (длинное целое число)

Период времени в миллисекундах между каждым выполнением проверки работоспособности.

path -> (строка)

Путь назначения для запроса проверки работоспособности. Это значение используется только если указан протокол HTTP или HTTP/2. Для других протоколов это значение игнорируется.

port -> (целое число)

Порт назначения для запроса проверки работоспособности. Этот порт должен соответствовать порту, определенному в PortMapping для слушателя.

protocol -> (строка)

Протокол для запроса проверки работоспособности. Если вы укажете grpc, то ваш сервис должен соответствовать протоколу проверки работоспособности GRPC.

timeoutMillis -> (длинное целое число)

Время ожидания ответа от проверки работоспособности в миллисекундах.

unhealthyThreshold -> (целое число)

Количество последовательных неудачных проверок работоспособности, необходимых для признания виртуального узла неработоспособным.

outlierDetection -> (структура)

Информация о выявлении выбросов для слушателя.

baseEjectionDuration -> (структура)

Основное время, на которое узел исключается.

unit -> (строка)

Единица измерения времени.

value -> (длинное целое число)

Количество единиц времени.

interval -> (структура)

Интервал времени между анализом исключения.

unit -> (строка)

Единица измерения времени.

value -> (длинное целое число)

Количество единиц времени.

maxEjectionPercent -> (целое число)

Максимальный процент узлов в пуле балансировки нагрузки для upstream-сервиса, которые могут быть исключены. Будет исключен по крайней мере один узел независимо от значения.

maxServerErrors -> (длинное целое число)

Количество последовательных ошибок 5xx, необходимых для исключения.

portMapping -> (структура)

Информация о сопоставлении портов для слушателя.

port -> (целое число)

Порт, используемый для сопоставления портов.

protocol -> (строка)

Протокол, используемый для сопоставления портов. Укажите один протокол.

timeout -> (структура помеченного объединения)

Объект, представляющий таймауты для различных протоколов.

Примечание

Это структура помеченного объединения. Можно задать только один из следующих ключевых элементов верхнего уровня: grpc, http, http2, tcp.

grpc -> (структура)

Объект, представляющий типы таймаутов.

idle -> (структура)

Объект, представляющий таймаут бездействия. Таймаут бездействия ограничивает время, в течение которого подключение может быть бездействующим. Значение по умолчанию — none.

unit -> (строка)

Единица измерения времени.

value -> (длинное целое число)

Количество единиц времени.

perRequest -> (структура)

Объект, представляющий таймаут на запрос. Значение по умолчанию — 15 секунд. Если вы устанавливаете больший таймаут, убедитесь, что большее значение установлено для каждого ресурса App Mesh в разговоре. Например, если backend виртуального узла использует поставщика виртуального маршрутизатора для маршрутизации к другому виртуальному узлу, таймаут должен быть больше 15 секунд для исходного и целевого виртуального узла и маршрута.

unit -> (строка)

Единица измерения времени.

value -> (длинное целое число)

Количество единиц времени.

http -> (структура)

Объект, представляющий типы таймаутов.

idle -> (структура)

Объект, представляющий таймаут бездействия. Таймаут бездействия ограничивает время, в течение которого подключение может быть бездействующим. Значение по умолчанию — none.

unit -> (строка)

Единица измерения времени.

value -> (длинное целое число)

Количество единиц времени.

perRequest -> (структура)

Объект, представляющий таймаут на запрос. Значение по умолчанию — 15 секунд. Если вы устанавливаете больший таймаут, убедитесь, что большее значение установлено для каждого ресурса App Mesh в разговоре. Например, если backend виртуального узла использует поставщика виртуального маршрутизатора для маршрутизации к другому виртуальному узлу, таймаут должен быть больше 15 секунд для исходного и целевого виртуального узла и маршрута.

unit -> (строка)

Единица измерения времени.

value -> (длинное целое число)

Количество единиц времени.

http2 -> (структура)

Объект, представляющий типы таймаутов.

idle -> (структура)

Объект, представляющий таймаут бездействия. Таймаут бездействия ограничивает время, в течение которого подключение может быть бездействующим. Значение по умолчанию — none.

unit -> (строка)

Единица измерения времени.

value -> (длинное целое число)

Количество единиц времени.

perRequest -> (структура)

Объект, представляющий таймаут на запрос. Значение по умолчанию — 15 секунд. Если вы устанавливаете больший таймаут, убедитесь, что большее значение установлено для каждого ресурса App Mesh в разговоре. Например, если backend виртуального узла использует поставщика виртуального маршрутизатора для маршрутизации к другому виртуальному узлу, таймаут должен быть больше 15 секунд для исходного и целевого виртуального узла и маршрута.

unit -> (строка)

Единица измерения времени.

value -> (длинное целое число)

Количество единиц времени.

tcp -> (структура)

Объект, представляющий типы таймаутов.

idle -> (структура)

Объект, представляющий таймаут бездействия. Таймаут бездействия ограничивает время, в течение которого подключение может быть бездействующим. Значение по умолчанию — none.

unit -> (строка)

Единица измерения времени.

value -> (длинное целое число)

Количество единиц времени.

tls -> (структура)

Ссылка на объект, представляющий свойства Transport Layer Security (TLS) для слушателя.

certificate -> (структура помеченного объединения)

Ссылка на объект, представляющий сертификат Transport Layer Security (TLS) слушателя.

Примечание

Это структура помеченного объединения. Можно задать только один из следующих ключевых элементов верхнего уровня: acm, file, sds.

acm -> (структура)

Ссылка на объект, представляющий сертификат Certificate Manager.

certificateArn -> (строка)

Amazon Resource Name (ARN) сертификата. Сертификат должен соответствовать определенным требованиям, и для вас должна быть включена авторизация прокси. Дополнительную информацию см. в разделе Transport Layer Security (TLS).

file -> (структура)

Ссылка на объект, представляющий локальный сертификат файла.

certificateChain -> (строка)

Цепочка сертификатов для сертификата.

privateKey -> (строка)

Приватный ключ сертификата, хранящегося в файловой системе виртуального узла, на котором работает прокси.

sds -> (структура)

Ссылка на объект, представляющий сертификат Secret Discovery Service слушателя.

secretName -> (строка)

Ссылка на объект, представляющий имя секрета, запрашиваемого от поставщика Secret Discovery Service, представляющего материалы Transport Layer Security (TLS), такие как сертификат или цепочка сертификатов.

mode -> (строка)

Укажите один из следующих режимов.

  • STRICT – Слушатель принимает только подключения с включенным TLS.
  • PERMISSIVE – Слушатель принимает подключения с включенным или выключенным TLS.
  • DISABLED – Слушатель принимает только подключения без TLS.

validation -> (структура)

Ссылка на объект, представляющий контекст валидации Transport Layer Security (TLS) слушателя.

subjectAlternativeNames -> (структура)

Ссылка на объект, представляющий SAN для контекста валидации Transport Layer Security (TLS) слушателя.

match -> (структура)

Объект, представляющий критерии для определения соответствия SAN.

exact -> (список)

Переданные значения должны точно соответствовать указанным значениям.

(строка)

trust -> (структура помеченного объединения)

Ссылка на место получения цепочки доверия при проверке сертификата Transport Layer Security (TLS) партнера.

Примечание

Это структура помеченного объединения. Можно задать только один из следующих ключевых элементов верхнего уровня: file, sds.

file -> (структура)

Объект, представляющий контекст доверия валидации Transport Layer Security (TLS) для локального файла.

certificateChain -> (строка)

Цепочка доверия сертификатов для сертификата, хранящегося в файловой системе виртуального узла, на котором работает прокси.

sds -> (структура)

Ссылка на объект, представляющий контекст валидации Transport Layer Security (TLS) Secret Discovery Service слушателя.

secretName -> (строка)

Ссылка на объект, представляющий имя секрета для контекста доверия валидации Transport Layer Security (TLS) Secret Discovery Service.

logging -> (структура)

Информация о входящих и исходящих журналах доступа для виртуального узла.

accessLog -> (структура помеченного объединения)

Настройка журнала доступа для виртуального узла.

Примечание

Это структура помеченного объединения. Только один из следующих верхних ключей может быть установлен: file.

file -> (структура)

Объект файла, в который будут отправляться журналы доступа виртуального узла.

format -> (структура помеченного объединения)

Указанный формат журналов. Формат может быть json_format или text_format.

Примечание

Это структура помеченного объединения. Только один из следующих верхних ключей может быть установлен: json, text.

json -> (список)

(структура)

Объект, представляющий пары ключ-значение для JSON.

key -> (строка)

Указанный ключ для JSON.

value -> (строка)

Указанное значение для JSON.

text -> (строка)

path -> (строка)

Путь к файлу для записи журналов доступа. Вы можете использовать /dev/stdout, чтобы отправлять журналы доступа в стандартный вывод и настроить контейнер Envoy на использование драйвера журналов, такого как awslogs, для экспорта журналов доступа в службу хранения журналов, например, Amazon CloudWatch Logs. Также можно указать путь в файловой системе контейнера Envoy для записи файлов на диск.

Примечание

Процесс Envoy должен иметь права записи в указанный путь. В противном случае Envoy не запустится должным образом.

serviceDiscovery -> (структура помеченного объединения)

Информация о службе обнаружения для виртуального узла. Если ваш виртуальный узел не ожидает трафика входа, вы можете опустить этот параметр. Если вы укажете listener, то вы должны указать информацию об обнаружении службы.

Примечание

Это структура помеченного объединения. Только один из следующих верхних ключей может быть установлен: awsCloudMap, dns.

awsCloudMap -> (структура)

Указывает любую информацию Cloud Map для виртуального узла.

attributes -> (список)

Карта строк, содержащая атрибуты со значениями, которые можно использовать для фильтрации экземпляров по любым настраиваемым атрибутам, которые вы указали при регистрации экземпляра. Будут возвращены только экземпляры, соответствующие всем указанным парам ключ/значение.

(структура)

Объект, представляющий информацию об атрибутах Cloud Map для вашего виртуального узла.

Примечание

Cloud Map недоступен в регионе eu-south-1.

key -> (строка)

Имя ключа атрибута экземпляра службы Cloud Map. Возвращаются все экземпляры службы Cloud Map, содержащие указанный ключ и значение.

value -> (строка)

Значение ключа атрибута экземпляра службы Cloud Map. Возвращаются все экземпляры службы Cloud Map, содержащие указанный ключ и значение.

ipPreference -> (строка)

Предпочтительная версия IP, используемая этим виртуальным узлом. Установка предпочтения IP на виртуальном узле переопределяет только предпочтение IP, установленное для меша на этом конкретном узле.

namespaceName -> (строка)

Имя пространства Cloud Map для использования.

serviceName -> (строка)

Имя службы Cloud Map для использования.

dns -> (структура)

Указывает информацию DNS для виртуального узла.

hostname -> (строка)

Указывает имя хоста DNS-службы обнаружения для виртуального узла.

ipPreference -> (строка)

Предпочтительная версия IP, используемая этим виртуальным узлом. Установка предпочтения IP на виртуальном узле переопределяет только предпочтение IP, установленное для меша на этом конкретном узле.

responseType -> (строка)

Указывает тип ответа DNS для виртуального узла.

Синтаксис JSON:

{
  "backendDefaults": {
    "clientPolicy": {
      "tls": {
        "certificate": {
          "file": {
            "certificateChain": "string",
            "privateKey": "string"
          },
          "sds": {
            "secretName": "string"
          }
        },
        "enforce": true|false,
        "ports": [integer, ...],
        "validation": {
          "subjectAlternativeNames": {
            "match": {
              "exact": ["string", ...]
            }
          },
          "trust": {
            "acm": {
              "certificateAuthorityArns": ["string", ...]
            },
            "file": {
              "certificateChain": "string"
            },
            "sds": {
              "secretName": "string"
            }
          }
        }
      }
    }
  },
  "backends": [
    {
      "virtualService": {
        "clientPolicy": {
          "tls": {
            "certificate": {
              "file": {
                "certificateChain": "string",
                "privateKey": "string"
              },
              "sds": {
                "secretName": "string"
              }
            },
            "enforce": true|false,
            "ports": [integer, ...],
            "validation": {
              "subjectAlternativeNames": {
                "match": {
                  "exact": ["string", ...]
                }
              },
              "trust": {
                "acm": {
                  "certificateAuthorityArns": ["string", ...]
                },
                "file": {
                  "certificateChain": "string"
                },
                "sds": {
                  "secretName": "string"
                }
              }
            }
          }
        },
        "virtualServiceName": "string"
      }
    }
    ...
  ],
  "listeners": [
    {
      "connectionPool": {
        "grpc": {
          "maxRequests": integer
        },
        "http": {
          "maxConnections": integer,
          "maxPendingRequests": integer
        },
        "http2": {
          "maxRequests": integer
        },
        "tcp": {
          "maxConnections": integer
        }
      },
      "healthCheck": {
        "healthyThreshold": integer,
        "intervalMillis": long,
        "path": "string",
        "port": integer,
        "protocol": "http"|"tcp"|"http2"|"grpc",
        "timeoutMillis": long,
        "unhealthyThreshold": integer
      },
      "outlierDetection": {
        "baseEjectionDuration": {
          "unit": "s"|"ms",
          "value": long
        },
        "interval": {
          "unit": "s"|"ms",
          "value": long
        },
        "maxEjectionPercent": integer,
        "maxServerErrors": long
      },
      "portMapping": {
        "port": integer,
        "protocol": "http"|"tcp"|"http2"|"grpc"
      },
      "timeout": {
        "grpc": {
          "idle": {
            "unit": "s"|"ms",
            "value": long
          },
          "perRequest": {
            "unit": "s"|"ms",
            "value": long
          }
        },
        "http": {
          "idle": {
            "unit": "s"|"ms",
            "value": long
          },
          "perRequest": {
            "unit": "s"|"ms",
            "value": long
          }
        },
        "http2": {
          "idle": {
            "unit": "s"|"ms",
            "value": long
          },
          "perRequest": {
            "unit": "s"|"ms",
            "value": long
          }
        },
        "tcp": {
          "idle": {
            "unit": "s"|"ms",
            "value": long
          }
        }
      },
      "tls": {
        "certificate": {
          "acm": {
            "certificateArn": "string"
          },
          "file": {
            "certificateChain": "string",
            "privateKey": "string"
          },
          "sds": {
            "secretName": "string"
          }
        },
        "mode": "STRICT"|"PERMISSIVE"|"DISABLED",
        "validation": {
          "subjectAlternativeNames": {
            "match": {
              "exact": ["string", ...]
            }
          },
          "trust": {
            "file": {
              "certificateChain": "string"
            },
            "sds": {
              "secretName": "string"
            }
          }
        }
      }
    }
    ...
  ],
  "logging": {
    "accessLog": {
      "file": {
        "format": {
          "json": [
            {
              "key": "string",
              "value": "string"
            }
            ...
          ],
          "text": "string"
        },
        "path": "string"
      }
    }
  },
  "serviceDiscovery": {
    "awsCloudMap": {
      "attributes": [
        {
          "key": "string",
          "value": "string"
        }
        ...
      ],
      "ipPreference": "IPv6_PREFERRED"|"IPv4_PREFERRED"|"IPv4_ONLY"|"IPv6_ONLY",
      "namespaceName": "string",
      "serviceName": "string"
    },
    "dns": {
      "hostname": "string",
      "ipPreference": "IPv6_PREFERRED"|"IPv4_PREFERRED"|"IPv4_ONLY"|"IPv6_ONLY",
      "responseType": "LOADBALANCER"|"ENDPOINTS"
    }
  }
}

--tags (список)

Необязательные метаданные, которые можно применить к виртуальному узлу для помощи в категоризации и организации. Каждый тег состоит из ключа и необязательного значения, оба из которых вы определяете. Ключи тегов могут иметь максимальную длину 128 символов, а значения тегов — максимальную длину 256 символов.

(структура)

Необязательные метаданные, которые вы применяете к ресурсу для помощи в категоризации и организации. Каждый тег состоит из ключа и необязательного значения, оба из которых вы определяете. Ключи тегов могут иметь максимальную длину 128 символов, а значения тегов — максимальную длину 256 символов.

key -> (строка)

Одна часть пары ключ-значение, составляющей тег. key — это общее метка, которая действует как категория для более конкретных значений тегов.

value -> (строка)

Необязательная часть пары ключ-значение, составляющей тег. value служит описателем в категории тега (ключ).

Сокращённый синтаксис:

key=string,value=string ...

Синтаксис JSON:

[
  {
    "key": "string",
    "value": "string"
  }
  ...
]

--virtual-node-name (строка)

Имя, используемое для виртуального узла.

--cli-input-json | --cli-input-yaml (строка) Читает аргументы из предоставленной JSON-строки. JSON-строка следует формату, предоставленному --generate-cli-skeleton. Если другие аргументы предоставляются в командной строке, эти значения переопределяют значения, предоставленные JSON. Невозможно передавать произвольные двоичные значения с помощью значения, предоставленного JSON, так как строка будет взята буквально. Это может не быть указано вместе с --cli-input-yaml.

--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод, не отправляя запрос к API. Если предоставлено значение без значения или значение input, выводит пример входного JSON, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если предоставлено yaml-input, выводится пример входного YAML, который можно использовать с --cli-input-yaml. Если предоставлено значение output, оно проверяет входные данные команд и возвращает пример выходного JSON для этой команды. Сгенерированный JSON-скелет не стабилен между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.

Глобальные параметры

--debug (логическое значение)

Включить отладку журналов.

--endpoint-url (строка)

Переопределить стандартный URL команды заданным URL.

--no-verify-ssl (логическое значение)

По умолчанию AWS CLI использует SSL при общении с AWS-сервисами. Для каждого SSL-соединения AWS CLI проверяет сертификаты SSL. Этот параметр переопределяет стандартное поведение проверки SSL-сертификатов.

--no-paginate (логическое значение)

Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI выполнит только один вызов для первой страницы результатов.

--output (строка)

Стиль форматирования для вывода команд.

  • json
  • текст
  • таблица
  • yaml
  • yaml-поток

--query (строка)

Запрос JMESPath для использования при фильтрации данных ответа.

--profile (строка)

Использовать определенный профиль из файла учетных данных.

--region (строка)

Регион для использования. Переопределяет настройки конфигурации/среды.

--version (строка)

Отобразить версию этого инструмента.

--color (строка)

Включить/выключить цветной вывод.

  • включено
  • выключено
  • автоматически

--no-sign-request (логическое значение)

Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.

--ca-bundle (строка)

Файл сертификата CA для проверки SSL-сертификатов. Переопределяет настройки конфигурации/среды.

--cli-read-timeout (целое число)

Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет блокирующим и без таймаута. Значение по умолчанию — 60 секунд.

--cli-connect-timeout (целое число)

Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет блокирующим и без таймаута. Значение по умолчанию — 60 секунд.

--cli-binary-format (строка)

Стиль форматирования для двоичных блоков. Формат по умолчанию — base64. Формат base64 ожидает, что двоичные блоки будут предоставлены в виде закодированной строкой base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны передаваться буквально. При предоставлении содержимого файла, соответствующего двоичному блоку, fileb:// всегда будет обрабатываться как двоичный и будет использовать содержимое файла непосредственно независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть правильно отформатировано для настроенного cli-binary-format.

  • base64
  • raw-in-base64-out

--no-cli-pager (логическое значение)

Отключить пагинатор CLI для вывода.

--cli-auto-prompt (логическое значение)

Автоматически запросить параметры ввода CLI.

--no-cli-auto-prompt (логическое значение)

Отключить автоматический запрос параметров ввода CLI.

Примеры

Примечание

Для использования следующих примеров вам необходимо установить и настроить AWS CLI. Дополнительную информацию см. в руководстве по началу работы в руководстве пользователя AWS CLI.

Если не указано иное, все примеры используют правила цитирования Unix-подобных оболочек. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. См. раздел Использование кавычек со строками в руководстве пользователя AWS CLI .

Пример 1: Создание нового виртуального узла с использованием DNS для обнаружения

Следующий create-virtual-node пример использует файл входных данных JSON для создания виртуального узла, использующего DNS для обнаружения службы.

aws appmesh create-virtual-node \
    --cli-input-json file://create-virtual-node-dns.json

Содержимое create-virtual-node-dns.json:

{
    "meshName": "app1",
    "spec": {
        "listeners": [
            {
                "portMapping": {
                    "port": 80,
                    "protocol": "http"
                }
            }
        ],
        "serviceDiscovery": {
            "dns": {
                "hostname": "serviceBv1.svc.cluster.local"
            }
        }
    },
    "virtualNodeName": "vnServiceBv1"
}

Вывод:

{
    "virtualNode": {
        "meshName": "app1",
        "metadata": {
            "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualNode/vnServiceBv1",
            "createdAt": 1563810019.874,
            "lastUpdatedAt": 1563810019.874,
            "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE",
            "version": 1
        },
        "spec": {
            "listeners": [
                {
                    "portMapping": {
                        "port": 80,
                        "protocol": "http"
                    }
                }
            ],
            "serviceDiscovery": {
                "dns": {
                    "hostname": "serviceBv1.svc.cluster.local"
                }
            }
        },
        "status": {
            "status": "ACTIVE"
        },
        "virtualNodeName": "vnServiceBv1"
    }
}

Пример 2: Создание нового виртуального узла с использованием AWS Cloud Map для обнаружения

Следующий create-virtual-node пример использует файл входных данных JSON для создания виртуального узла, использующего AWS Cloud Map для обнаружения службы.

aws appmesh create-virtual-node \
    --cli-input-json file://create-virtual-node-cloud-map.json

Содержимое create-virtual-node-cloud-map.json:

{
    "meshName": "app1",
    "spec": {
        "backends": [
            {
                "virtualService": {
                    "virtualServiceName": "serviceA.svc.cluster.local"
                }
            }
        ],
        "listeners": [
            {
                "portMapping": {
                    "port": 80,
                    "protocol": "http"
                }
            }
        ],
        "serviceDiscovery": {
            "awsCloudMap": {
                "attributes": [
                    {
                        "key": "Environment",
                        "value": "Testing"
                    }
                ],
                "namespaceName": "namespace1",
                "serviceName": "serviceA"
            }
        }
    },
    "virtualNodeName": "vnServiceA"
}

Вывод:

{
    "virtualNode": {
        "meshName": "app1",
        "metadata": {
            "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualNode/vnServiceA",
            "createdAt": 1563810859.465,
            "lastUpdatedAt": 1563810859.465,
            "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE",
            "version": 1
        },
        "spec": {
            "backends": [
                {
                    "virtualService": {
                        "virtualServiceName": "serviceA.svc.cluster.local"
                    }
                }
            ],
            "listeners": [
                {
                    "portMapping": {
                        "port": 80,
                        "protocol": "http"
                    }
                }
            ],
            "serviceDiscovery": {
                "awsCloudMap": {
                    "attributes": [
                        {
                            "key": "Environment",
                            "value": "Testing"
                        }
                    ],
                    "namespaceName": "namespace1",
                    "serviceName": "serviceA"
                }
            }
        },
        "status": {
            "status": "ACTIVE"
        },
        "virtualNodeName": "vnServiceA"
    }
}

Дополнительную информацию см. в разделе Виртуальные узлы в руководстве пользователя AWS App Mesh.

Вывод

virtualNode -> (структура)

Полное описание вашего виртуального узла после вызова create.

meshName -> (строка)

Имя сервисной сетки, в которой находится виртуальный узел.

metadata -> (структура)

Сопутствующие метаданные для виртуального узла.

arn -> (строка)

Полное имя Amazon Resource Name (ARN) ресурса.

createdAt -> (временная метка)

Временная метка Unix в секундах, когда был создан ресурс.

lastUpdatedAt -> (временная метка)

Временная метка Unix в секундах, когда ресурс был в последний раз обновлён.

meshOwner -> (строка)

Идентификатор учётной записи Amazon Web Services IAM владельца сервисной сетки. Если идентификатор учётной записи не ваш, это идентификатор учётной записи, которая поделилась сеткой с вашей. Дополнительную информацию о совместном использовании сеток см. в разделе Работа с совместными сетками.

resourceOwner -> (строка)

Идентификатор учётной записи Amazon Web Services IAM владельца ресурса. Если идентификатор учётной записи не ваш, это идентификатор владельца сетки или другой учётной записи, с которой сетка была разделена. Дополнительную информацию о совместном использовании сеток см. в разделе Работа с совместными сетками.

uid -> (строка)

Уникальный идентификатор ресурса.

version -> (длинное целое)

Версия ресурса. Ресурсы создаются с версией 1, и эта версия увеличивается каждый раз при обновлении.

spec -> (структура)

Характеристики виртуального узла.

backendDefaults -> (структура)

Ссылка на объект, представляющий значения по умолчанию для бэкендов.

clientPolicy -> (структура)

Ссылка на объект, представляющий политику клиента.

tls -> (структура)

Ссылка на объект, представляющий политику клиента Transport Layer Security (TLS).

certificate -> (структура помеченных объединений)

Ссылка на объект, представляющий сертификат TLS клиента.

Примечание

Это структура помеченных объединений. Только один из следующих ключей верхнего уровня может быть установлен: file, sds.

file -> (структура)

Объект, представляющий сертификат локального файла. Сертификат должен соответствовать определённым требованиям, и у вас должна быть включена авторизация прокси. Дополнительную информацию см. в разделе Transport Layer Security (TLS).

certificateChain -> (строка)

Цепочка сертификатов для сертификата.

privateKey -> (строка)

Закрытый ключ сертификата, хранящегося в файловой системе виртуального узла, на котором работает прокси.

sds -> (структура)

Ссылка на объект, представляющий сертификат TLS службы обнаружения секретов клиента.

secretName -> (строка)

Ссылка на объект, представляющий имя секрета, запрашиваемого у поставщика службы обнаружения секретов, представляющего материалы Transport Layer Security (TLS), такие как сертификат или цепочка сертификатов.

enforce -> (булево)

Применяется ли политика. По умолчанию True, если значение не указано.

ports -> (список)

Один или несколько портов, для которых применяется политика.

(целое число)

validation -> (структура)

Ссылка на объект, представляющий контекст проверки TLS.

subjectAlternativeNames -> (структура)

Ссылка на объект, представляющий SAN для контекста проверки Transport Layer Security (TLS). Если вы не указываете SAN на завершающем узле сетки, прокси Envoy для этого узла не проверяет SAN в сертификате клиента-партнёра. Если вы не указываете SAN на исходном узле сетки, SAN в сертификате, предоставленном завершающим узлом, должен соответствовать конфигурации обнаружения служб узла сетки. Поскольку SPIRE выдаёт сертификаты с SPIFFE ID в качестве имени, вам необходимо установить SAN, поскольку имя не совпадает с именем службы обнаружения.

match -> (структура)

Объект, представляющий критерии для определения соответствия SAN.

exact -> (список)

Отправленные значения должны точно совпадать с указанными значениями.

(строка)

trust -> (структура помеченных объединений)

Ссылка на место получения цепочки доверия при проверке сертификата Transport Layer Security (TLS) партнёра.

Примечание

Это структура помеченных объединений. Только один из следующих ключей верхнего уровня может быть установлен: acm, file, sds.

acm -> (структура)

Ссылка на объект, представляющий доверие для контекста проверки TLS для сертификата Certificate Manager.

certificateAuthorityArns -> (список)

Один или несколько ACM Amazon Resource Name (ARN).

(строка)

file -> (структура)

Объект, представляющий доверие для контекста проверки TLS для локального файла.

certificateChain -> (строка)

Цепочка доверия сертификатов для сертификата, хранящегося в файловой системе виртуального узла, на котором работает прокси.

sds -> (структура)

Ссылка на объект, представляющий доверие для контекста проверки TLS службы обнаружения секретов.

secretName -> (строка)

Ссылка на объект, представляющий имя секрета для контекста доверия проверки TLS службы обнаружения секретов.

backends -> (список)

Бэкенды, к которым виртуальный узел, как ожидается, будет отправлять исходящий трафик.

(структура помеченных объединений)

Объект, представляющий бэкенды, к которым виртуальный узел, как ожидается, будет отправлять исходящий трафик.

Примечание

Это структура помеченных объединений. Только один из следующих ключей верхнего уровня может быть установлен: virtualService.

virtualService -> (структура)

Указывает виртуальную службу, используемую в качестве бэкенда.

clientPolicy -> (структура)

Ссылка на объект, представляющий политику клиента для бэкенда.

tls -> (структура)

Ссылка на объект, представляющий политику клиента Transport Layer Security (TLS).

certificate -> (структура помеченных объединений)

Ссылка на объект, представляющий сертификат TLS клиента.

Примечание

Это структура помеченных объединений. Только один из следующих ключей верхнего уровня может быть установлен: file, sds.

file -> (структура)

Объект, представляющий сертификат локального файла. Сертификат должен соответствовать определённым требованиям, и у вас должна быть включена авторизация прокси. Дополнительную информацию см. в разделе Transport Layer Security (TLS).

certificateChain -> (строка)

Цепочка сертификатов для сертификата.

privateKey -> (строка)

Закрытый ключ сертификата, хранящегося в файловой системе виртуального узла, на котором работает прокси.

sds -> (структура)

Ссылка на объект, представляющий сертификат TLS службы обнаружения секретов клиента.

secretName -> (строка)

Ссылка на объект, представляющий имя секрета, запрашиваемого у поставщика службы обнаружения секретов, представляющего материалы Transport Layer Security (TLS), такие как сертификат или цепочка сертификатов.

enforce -> (булево)

Применяется ли политика. По умолчанию True, если значение не указано.

ports -> (список)

Один или несколько портов, для которых применяется политика.

(целое число)

validation -> (структура)

Ссылка на объект, представляющий контекст проверки TLS.

subjectAlternativeNames -> (структура)

Ссылка на объект, представляющий SAN для контекста проверки Transport Layer Security (TLS). Если вы не указываете SAN на завершающем узле сетки, прокси Envoy для этого узла не проверяет SAN в сертификате клиента-партнёра. Если вы не указываете SAN на исходном узле сетки, SAN в сертификате, предоставленном завершающим узлом, должен соответствовать конфигурации обнаружения служб узла сетки. Поскольку SPIRE выдаёт сертификаты с SPIFFE ID в качестве имени, вам необходимо установить SAN, поскольку имя не совпадает с именем службы обнаружения.

match -> (структура)

Объект, представляющий критерии для определения соответствия SAN.

exact -> (список)

Отправленные значения должны точно совпадать с указанными значениями.

(строка)

trust -> (структура помеченных объединений)

Ссылка на место получения цепочки доверия при проверке сертификата Transport Layer Security (TLS) партнёра.

Примечание

Это структура помеченных объединений. Только один из следующих ключей верхнего уровня может быть установлен: acm, file, sds.

acm -> (структура)

Ссылка на объект, представляющий доверие для контекста проверки TLS для сертификата Certificate Manager.

certificateAuthorityArns -> (список)

Один или несколько ACM Amazon Resource Name (ARN).

(строка)

file -> (структура)

Объект, представляющий доверие для контекста проверки TLS для локального файла.

certificateChain -> (строка)

Цепочка доверия сертификатов для сертификата, хранящегося в файловой системе виртуального узла, на котором работает прокси.

sds -> (структура)

Ссылка на объект, представляющий доверие для контекста проверки TLS службы обнаружения секретов.

secretName -> (строка)

Ссылка на объект, представляющий имя секрета для контекста доверия проверки TLS службы обнаружения секретов.

virtualServiceName -> (строка)

Имя виртуальной службы, действующей как бэкенд виртуального узла.

listeners -> (список)

Слушатель, от которого виртуальный узел ожидает получения входящего трафика. Вы можете указать одного слушателя.

(структура)

Объект, представляющий слушателя виртуального узла.

connectionPool -> (структура помеченного объединения)

Информация о пуле подключений для слушателя.

Примечание

Это структура помеченного объединения. Можно установить только один из следующих ключей верхнего уровня: grpc, http, http2, tcp.

grpc -> (структура)

Объект, представляющий тип пула подключений.

maxRequests -> (целое число)

Максимальное количество запросов в обработке, которые Envoy может одновременно поддерживать для хостов в кластере вверх по потоку.

http -> (структура)

Объект, представляющий тип пула подключений.

maxConnections -> (целое число)

Максимальное количество исходящих TCP-соединений, которые Envoy может установить одновременно со всеми хостами в кластере вверх по потоку.

maxPendingRequests -> (целое число)

Количество запросов, превышающих max_connections, которые Envoy будет помещать в очередь для кластера вверх по потоку.

http2 -> (структура)

Объект, представляющий тип пула подключений.

maxRequests -> (целое число)

Максимальное количество запросов в обработке, которые Envoy может одновременно поддерживать для хостов в кластере вверх по потоку.

tcp -> (структура)

Объект, представляющий тип пула подключений.

maxConnections -> (целое число)

Максимальное количество исходящих TCP-соединений, которые Envoy может установить одновременно со всеми хостами в кластере вверх по потоку.

healthCheck -> (структура)

Информация о проверке работоспособности для слушателя.

healthyThreshold -> (целое число)

Количество последовательных успешных проверок работоспособности, которое должно произойти, прежде чем объявить слушатель работоспособным.

intervalMillis -> (длинное целое)

Период времени в миллисекундах между каждым выполнением проверки работоспособности.

path -> (строка)

Путь назначения для запроса проверки работоспособности. Это значение используется только в том случае, если указанный протокол — HTTP или HTTP/2. Для любого другого протокола это значение игнорируется.

port -> (целое число)

Порт назначения для запроса проверки работоспособности. Этот порт должен соответствовать порту, определенному в PortMapping для слушателя.

protocol -> (строка)

Протокол для запроса проверки работоспособности. Если вы укажете grpc, то ваш сервис должен соответствовать протоколу проверки работоспособности GRPC.

timeoutMillis -> (длинное целое)

Время ожидания получения ответа от проверки работоспособности в миллисекундах.

unhealthyThreshold -> (целое число)

Количество последовательных неудачных проверок работоспособности, которое должно произойти, прежде чем объявить виртуальный узел неработоспособным.

outlierDetection -> (структура)

Информация об обнаружении выбросов для слушателя.

baseEjectionDuration -> (структура)

Базовая продолжительность вывода хоста из работы.

unit -> (строка)

Единица времени.

value -> (длинное целое)

Количество единиц времени.

interval -> (структура)

Интервал времени между анализом вывода из работы.

unit -> (строка)

Единица времени.

value -> (длинное целое)

Количество единиц времени.

maxEjectionPercent -> (целое число)

Максимальный процент хостов в пуле балансировки нагрузки для услуги вверх по потоку, которые могут быть выведены из работы. Будет выведен как минимум один хост независимо от значения.

maxServerErrors -> (длинное целое)

Количество последовательных 5xx ошибок, необходимых для вывода из работы.

portMapping -> (структура)

Информация о сопоставлении портов для слушателя.

port -> (целое число)

Порт, используемый для сопоставления портов.

protocol -> (строка)

Протокол, используемый для сопоставления портов. Укажите один протокол.

timeout -> (структура помеченного объединения)

Объект, представляющий таймауты для различных протоколов.

Примечание

Это структура помеченного объединения. Можно установить только один из следующих ключей верхнего уровня: grpc, http, http2, tcp.

grpc -> (структура)

Объект, представляющий типы таймаутов.

idle -> (структура)

Объект, представляющий таймаут бездействия. Таймаут бездействия ограничивает время, в течение которого подключение может быть бездействующим. Значение по умолчанию — none.

unit -> (строка)

Единица времени.

value -> (длинное целое)

Количество единиц времени.

perRequest -> (структура)

Объект, представляющий таймаут на запрос. Значение по умолчанию — 15 секунд. Если вы установите больший таймаут, убедитесь, что это значение установлено для каждого ресурса App Mesh в диалоге. Например, если бэкенд виртуального узла использует виртуальный маршрутизатор для маршрутизации к другому виртуальному узлу, то таймаут должен быть больше 15 секунд для исходного и целевого виртуального узла и маршрута.

unit -> (строка)

Единица времени.

value -> (длинное целое)

Количество единиц времени.

http -> (структура)

Объект, представляющий типы таймаутов.

idle -> (структура)

Объект, представляющий таймаут бездействия. Таймаут бездействия ограничивает время, в течение которого подключение может быть бездействующим. Значение по умолчанию — none.

unit -> (строка)

Единица времени.

value -> (длинное целое)

Количество единиц времени.

perRequest -> (структура)

Объект, представляющий таймаут на запрос. Значение по умолчанию — 15 секунд. Если вы установите больший таймаут, убедитесь, что это значение установлено для каждого ресурса App Mesh в диалоге. Например, если бэкенд виртуального узла использует виртуальный маршрутизатор для маршрутизации к другому виртуальному узлу, то таймаут должен быть больше 15 секунд для исходного и целевого виртуального узла и маршрута.

unit -> (строка)

Единица времени.

value -> (длинное целое)

Количество единиц времени.

http2 -> (структура)

Объект, представляющий типы таймаутов.

idle -> (структура)

Объект, представляющий таймаут бездействия. Таймаут бездействия ограничивает время, в течение которого подключение может быть бездействующим. Значение по умолчанию — none.

unit -> (строка)

Единица времени.

value -> (длинное целое)

Количество единиц времени.

perRequest -> (структура)

Объект, представляющий таймаут на запрос. Значение по умолчанию — 15 секунд. Если вы установите больший таймаут, убедитесь, что это значение установлено для каждого ресурса App Mesh в диалоге. Например, если бэкенд виртуального узла использует виртуальный маршрутизатор для маршрутизации к другому виртуальному узлу, то таймаут должен быть больше 15 секунд для исходного и целевого виртуального узла и маршрута.

unit -> (строка)

Единица времени.

value -> (длинное целое)

Количество единиц времени.

tcp -> (структура)

Объект, представляющий типы таймаутов.

idle -> (структура)

Объект, представляющий таймаут бездействия. Таймаут бездействия ограничивает время, в течение которого подключение может быть бездействующим. Значение по умолчанию — none.

unit -> (строка)

Единица времени.

value -> (длинное целое)

Количество единиц времени.

tls -> (структура)

Ссылка на объект, представляющий свойства Transport Layer Security (TLS) для слушателя.

certificate -> (структура помеченного объединения)

Ссылка на объект, представляющий сертификат Transport Layer Security (TLS) слушателя.

Примечание

Это структура помеченного объединения. Можно установить только один из следующих ключей верхнего уровня: acm, file, sds.

acm -> (структура)

Ссылка на объект, представляющий сертификат Certificate Manager.

certificateArn -> (строка)

Amazon Resource Name (ARN) для сертификата. Сертификат должен соответствовать определенным требованиям, и вы должны иметь разрешения на доступ к прокси. Дополнительную информацию см. в разделе Transport Layer Security (TLS).

file -> (структура)

Ссылка на объект, представляющий локальный сертификат файла.

certificateChain -> (строка)

Цепочка сертификатов для сертификата.

privateKey -> (строка)

Приватный ключ для сертификата, хранящегося в файловой системе виртуального узла, на котором работает прокси.

sds -> (структура)

Ссылка на объект, представляющий сертификат Secret Discovery Service слушателя.

secretName -> (строка)

Ссылка на объект, представляющий имя секрета, запрашиваемого у поставщика Secret Discovery Service, представляющего материалы Transport Layer Security (TLS), такие как сертификат или цепочка сертификатов.

mode -> (строка)

Укажите один из следующих режимов.

  • STRICT – Слушатель принимает только подключения с включенным TLS.
  • PERMISSIVE – Слушатель принимает подключения с включенным или выключенным TLS.
  • DISABLED – Слушатель принимает только подключения без TLS.

validation -> (структура)

Ссылка на объект, представляющий контекст проверки валидации Transport Layer Security (TLS) слушателя.

subjectAlternativeNames -> (структура)

Ссылка на объект, представляющий SAN для контекста проверки валидации Transport Layer Security (TLS) слушателя.

match -> (структура)

Объект, представляющий критерии определения совпадения SAN.

exact -> (список)

Передаваемые значения должны точно совпадать с указанными значениями.

(строка)

trust -> (структура помеченного объединения)

Ссылка на место получения цепочки доверия при проверке сертификата Transport Layer Security (TLS) удаленного узла.

Примечание

Это структура помеченного объединения. Можно установить только один из следующих ключей верхнего уровня: file, sds.

file -> (структура)

Объект, представляющий контекст доверия Transport Layer Security (TLS) валидации для локального файла.

certificateChain -> (строка)

Цепочка сертификатов доверия для сертификата, хранящегося в файловой системе виртуального узла, на котором работает прокси.

sds -> (структура)

Ссылка на объект, представляющий контекст проверки валидации Transport Layer Security (TLS) Secret Discovery Service слушателя.

secretName -> (строка)

Ссылка на объект, представляющий имя секрета для контекста проверки валидации Transport Layer Security (TLS) Secret Discovery Service.

logging -> (структура)

Информация о входящих и исходящих журналах доступа для виртуального узла.

accessLog -> (структура помеченного объединения)

Конфигурация журнала доступа для виртуального узла.

Примечание

Это структура помеченного объединения. Только один из следующих верхнеуровневых ключей может быть установлен: file.

file -> (структура)

Объект файла для отправки журналов доступа виртуального узла.

format -> (структура помеченного объединения)

Указанный формат журналов. Формат может быть json_format или text_format.

Примечание

Это структура помеченного объединения. Только один из следующих верхнеуровневых ключей может быть установлен: json, text.

json -> (список)

(структура)

Объект, представляющий пары ключ-значение для JSON.

key -> (строка)

Указанный ключ для JSON.

value -> (строка)

Указанное значение для JSON.

text -> (строка)

path -> (строка)

Путь к файлу для записи журналов доступа. Вы можете использовать /dev/stdout для отправки журналов доступа в стандартный вывод и настроить ваш контейнер Envoy на использование драйвера журналов, например, awslogs, для экспорта журналов доступа в службу хранения журналов, такую как Amazon CloudWatch Logs. Вы также можете указать путь в файловой системе контейнера Envoy для записи файлов на диск.

Примечание

Процесс Envoy должен иметь права записи в указанный здесь путь. В противном случае Envoy не может корректно запуститься.

serviceDiscovery -> (структура помеченного объединения)

Информация о службе обнаружения для виртуального узла. Если ваш виртуальный узел не ожидает входящего трафика, вы можете опустить этот параметр. Если вы указываете listener, то вы должны указать информацию о службе обнаружения.

Примечание

Это структура помеченного объединения. Только один из следующих верхнеуровневых ключей может быть установлен: awsCloudMap, dns.

awsCloudMap -> (структура)

Указывает информацию Cloud Map для виртуального узла.

attributes -> (список)

Массив строк, содержащий атрибуты со значениями, которые можно использовать для фильтрации экземпляров по любым настраиваемым атрибутам, указанным при регистрации экземпляра. Будут возвращены только экземпляры, соответствующие всем указанным парам ключ/значение.

(структура)

Объект, представляющий информацию об атрибутах Cloud Map для вашего виртуального узла.

Примечание

Cloud Map недоступен в регионе eu-south-1.

key -> (строка)

Имя ключа атрибута экземпляра службы Cloud Map. Возвращается любой экземпляр службы Cloud Map, содержащий указанный ключ и значение.

value -> (строка)

Значение ключа атрибута экземпляра службы Cloud Map. Возвращается любой экземпляр службы Cloud Map, содержащий указанный ключ и значение.

ipPreference -> (строка)

Предпочтительная версия IP, используемая этим виртуальным узлом. Установка предпочтения IP на виртуальном узле переопределяет только предпочтение IP, установленное для меша на этом узле.

namespaceName -> (строка)

Имя пространства Cloud Map для использования.

serviceName -> (строка)

Имя службы Cloud Map для использования.

dns -> (структура)

Указывает информацию DNS для виртуального узла.

hostname -> (строка)

Указывает имя хоста службы DNS для обнаружения виртуального узла.

ipPreference -> (строка)

Предпочтительная версия IP, используемая этим виртуальным узлом. Установка предпочтения IP на виртуальном узле переопределяет только предпочтение IP, установленное для меша на этом узле.

responseType -> (строка)

Указывает тип ответа DNS для виртуального узла.

status -> (структура)

Текущий статус виртуального узла.

status -> (строка)

Текущий статус виртуального узла.

virtualNodeName -> (строка)

Имя виртуального узла.

© Copyright 2025, Amazon Web Services. Created using Sphinx.

END_OF_DOCUMENT_MARKER

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API