создать-виртуальный-шлюз
Описание
Создаёт виртуальный шлюз.
Виртуальный шлюз позволяет ресурсам за пределами вашей сети взаимодействовать с ресурсами внутри вашей сети. Виртуальный шлюз представляет собой прокси-сервер Envoy, запущенный в задаче Amazon ECS, в службе Kubernetes или на экземпляре Amazon EC2. В отличие от виртуального узла, который представляет собой Envoy, работающий с приложением, виртуальный шлюз представляет собой Envoy, развернутый самостоятельно.
Дополнительную информацию о виртуальных шлюзах см. в разделе Виртуальные шлюзы.
См. также: Документация по API AWS
Синтаксис
create-virtual-gateway
[--client-token <value>]
--mesh-name <value>
[--mesh-owner <value>]
--spec <value>
[--tags <value>]
--virtual-gateway-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 (строка)
--mesh-name (строка)
--mesh-owner (строка)
--spec (структура)
Спецификация виртуального шлюза для применения.
backendDefaults -> (структура)
Ссылка на объект, представляющий значения по умолчанию для бэкэндов.
clientPolicy -> (структура)
Ссылка на объект, представляющий политику клиента.
tls -> (структура)
Ссылка на объект, представляющий политику клиента Transport Layer Security (TLS).
certificate -> (структура сопоставления тегов)
Ссылка на объект, представляющий сертификат Transport Layer Security (TLS) клиента виртуального шлюза.
Примечание
Это структура сопоставления тегов. Можно задать только один из следующих верхних ключей:file, sds.file -> (структура)
Объект, представляющий сертификат локального файла. Сертификат должен соответствовать определенным требованиям, и у вас должна быть включена авторизация прокси. Дополнительная информация приведена в разделе Transport Layer Security (TLS).
certificateChain -> (строка)
privateKey -> (строка)
sds -> (структура)
Ссылка на объект, представляющий сертификат Secret Discovery Service клиента виртуального шлюза.
secretName -> (строка)
enforce -> (булево)
True, если значение не указано.ports -> (список)
Один или несколько портов, для которых политика выполняется принудительно.
(целое число)
validation -> (структура)
Ссылка на объект, представляющий контекст проверки Transport Layer Security (TLS).
subjectAlternativeNames -> (структура)
Ссылка на объект, представляющий SAN для контекста проверки Transport Layer Security (TLS) слушателя виртуального шлюза.
match -> (структура)
Объект, представляющий критерии для определения соответствия SAN.
exact -> (список)
Отправляемые значения должны точно соответствовать указанным значениям.
(строка)
trust -> (структура сопоставления тегов)
Ссылка на место получения цепочки доверия при проверке сертификата Transport Layer Security (TLS) узла.
Примечание
Это структура сопоставления тегов. Можно задать только один из следующих верхних ключей:acm, file, sds.acm -> (структура)
Ссылка на объект, представляющий доверие контекста проверки Transport Layer Security (TLS) для сертификата Certificate Manager.
certificateAuthorityArns -> (список)
Один или несколько ARN Amazon Certificate Manager.
(строка)
file -> (структура)
Объект, представляющий доверие контекста проверки Transport Layer Security (TLS) для локального файла.
certificateChain -> (строка)
sds -> (структура)
Ссылка на объект, представляющий доверие контекста проверки Transport Layer Security (TLS) Secret Discovery Service виртуального шлюза.
secretName -> (строка)
listeners -> (список)
Слушатели, от которых узел сети ожидает получения входящего трафика. Можно указать одного слушателя.
(структура)
Объект, представляющий слушателя для виртуального шлюза.
connectionPool -> (структура сопоставления тегов)
Информация о пуле подключений для слушателя виртуального шлюза.
Примечание
Это структура сопоставления тегов. Можно задать только один из следующих верхних ключей:grpc, http, http2.grpc -> (структура)
Объект, представляющий тип пула подключений.
maxRequests -> (целое число)
http -> (структура)
Объект, представляющий тип пула подключений.
maxConnections -> (целое число)
maxPendingRequests -> (целое число)
max_connections, Envoy поместит в очередь в кластер вверх по потоку.http2 -> (структура)
Объект, представляющий тип пула подключений.
maxRequests -> (целое число)
healthCheck -> (структура)
Информация о проверке работоспособности для слушателя.
healthyThreshold -> (целое число)
intervalMillis -> (длинное целое)
path -> (строка)
port -> (целое число)
protocol -> (строка)
grpc, ваша служба должна соответствовать Протоколу проверки работоспособности GRPC.timeoutMillis -> (длинное целое)
unhealthyThreshold -> (целое число)
portMapping -> (структура)
Информация о сопоставлении портов для слушателя.
port -> (целое число)
protocol -> (строка)
tls -> (структура)
Ссылка на объект, представляющий свойства Transport Layer Security (TLS) для слушателя.
certificate -> (структура сопоставления тегов)
Объект, представляющий сертификат Transport Layer Security (TLS).
Примечание
Это структура сопоставления тегов. Можно задать только один из следующих верхних ключей:acm, file, sds.acm -> (структура)
Ссылка на объект, представляющий сертификат Certificate Manager.
certificateArn -> (строка)
file -> (структура)
Ссылка на объект, представляющий сертификат локального файла.
certificateChain -> (строка)
privateKey -> (строка)
sds -> (структура)
Ссылка на объект, представляющий сертификат Secret Discovery Service слушателя виртуального шлюза.
secretName -> (строка)
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 -> (строка)
logging -> (структура)
Объект, представляющий информацию о регистрации.
accessLog -> (структура помеченного объединения)
Настройка журнала доступа.
Примечание
Это структура помеченного объединения. Только один из следующих ключей верхнего уровня может быть задан:file.file -> (структура)
Объект файла, в который будут отправляться журналы доступа виртуального шлюза.
format -> (структура помеченного объединения)
Указанный формат журналов доступа виртуального шлюза. Он может быть либо json_format, либо text_format.
Примечание
Это структура помеченного объединения. Только один из следующих ключей верхнего уровня может быть задан:json, text.json -> (список)
(структура)
Объект, представляющий пары ключ-значение для JSON.
key -> (строка)
value -> (строка)
text -> (строка)
path -> (строка)
/dev/stdout для отправки журналов доступа в стандартный вывод и настроить ваш контейнер Envoy на использование драйвера логов, такого как awslogs, для экспорта журналов доступа в службу хранения логов, такую как Amazon CloudWatch Logs. Вы также можете указать путь в файловой системе контейнера Envoy для записи файлов на диск.Синтаксис 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"
}
}
}
}
}
},
"listeners": [
{
"connectionPool": {
"grpc": {
"maxRequests": integer
},
"http": {
"maxConnections": integer,
"maxPendingRequests": integer
},
"http2": {
"maxRequests": integer
}
},
"healthCheck": {
"healthyThreshold": integer,
"intervalMillis": long,
"path": "string",
"port": integer,
"protocol": "http"|"http2"|"grpc",
"timeoutMillis": long,
"unhealthyThreshold": integer
},
"portMapping": {
"port": integer,
"protocol": "http"|"http2"|"grpc"
},
"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"
}
}
}
}
--tags (список)
Дополнительные метаданные, которые вы можете применить к виртуальному шлюзу для помощи в категоризации и организации. Каждый тег состоит из ключа и необязательного значения, оба из которых вы определяете. Длина ключей тегов может составлять максимум 128 символов, а длина значений тегов — максимум 256 символов.
(структура)
Дополнительные метаданные, которые вы применяете к ресурсу для помощи в категоризации и организации. Каждый тег состоит из ключа и необязательного значения, оба из которых вы определяете. Длина ключей тегов может составлять максимум 128 символов, а длина значений тегов — максимум 256 символов.
key -> (строка)
key — это общее метко, которое действует как категория для более конкретных значений тегов.value -> (строка)
value выступает как описание в рамках категории тегов (ключ).Сокращенный синтаксис:
key=string,value=string ...
Синтаксис JSON:
[
{
"key": "string",
"value": "string"
}
...
]
--virtual-gateway-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
- text
- table
- yaml
- yaml-stream
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определенный профиль из файла учетных данных.
--region (строка)
Регион для использования. Переопределяет параметры конфигурации/среды.
--version (строка)
Отобразить версию этого инструмента.
--color (строка)
Включить/отключить цветной вывод.
- on
- off
- auto
--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-auto-prompt (булево)
Автоматически запрашивать параметры входных данных CLI.
--no-cli-auto-prompt (булево)
Отключить автоматическое запроса параметров входных данных CLI.
Примеры
Примечание
Для использования следующих примеров вам необходимо иметь установленный и настроенный AWS CLI. Дополнительную информацию см. в руководстве по началу работы в Руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования, характерные для Unix-подобных систем. Эти примеры необходимо адаптировать к правилам цитирования вашей терминальной среды. См. раздел Использование кавычек со строками в Руководстве пользователя AWS CLI.
Создание нового виртуального шлюза
Следующий create-virtual-gateway пример использует файл JSON-ввода для создания виртуального шлюза с прослушивателем HTTP с портом 9080.
aws appmesh create-virtual-gateway \
--mesh-name meshName \
--virtual-gateway-name virtualGatewayName \
--cli-input-json file://create-virtual-gateway.json
Содержимое create-virtual-gateway.json:
{
"spec": {
"listeners": [
{
"portMapping": {
"port": 9080,
"protocol": "http"
}
}
]
}
}
Вывод:
{
"virtualGateway": {
"meshName": "meshName",
"metadata": {
"arn": "arn:aws:appmesh:us-west-2:123456789012:mesh/meshName/virtualGateway/virtualGatewayName",
"createdAt": "2022-04-06T10:42:42.015000-05:00",
"lastUpdatedAt": "2022-04-06T10:42:42.015000-05:00",
"meshOwner": "123456789012",
"resourceOwner": "123456789012",
"uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE",
"version": 1
},
"spec": {
"listeners": [
{
"portMapping": {
"port": 9080,
"protocol": "http"
}
}
]
},
"status": {
"status": "ACTIVE"
},
"virtualGatewayName": "virtualGatewayName"
}
}
Дополнительную информацию см. в разделе Виртуальные шлюзы в Руководстве пользователя AWS App Mesh.
Вывод
virtualGateway -> (структура)
Полное описание вашего виртуального шлюза после вызова создания.
meshName -> (строка)
metadata -> (структура)
Объект, представляющий метаданные для ресурса.
arn -> (строка)
createdAt -> (отметка времени)
lastUpdatedAt -> (отметка времени)
meshOwner -> (строка)
resourceOwner -> (строка)
uid -> (строка)
version -> (длинное целое число)
spec -> (структура)
Спецификации виртуального шлюза.
backendDefaults -> (структура)
Ссылка на объект, представляющий значения по умолчанию для бэкендов.
clientPolicy -> (структура)
Ссылка на объект, представляющий политику клиента.
tls -> (структура)
Ссылка на объект, представляющий политику клиента Transport Layer Security (TLS).
certificate -> (структура помеченных объединений)
Ссылка на объект, представляющий сертификат Transport Layer Security (TLS) клиента виртуального шлюза.
Примечание
Это структура помеченных объединений. Может быть задан только один из следующих ключей верхнего уровня:file, sds.file -> (структура)
Объект, представляющий сертификат из локального файла. Сертификат должен соответствовать определенным требованиям, и необходимо включить авторизацию прокси. Дополнительную информацию см. в разделе Transport Layer Security (TLS).
certificateChain -> (строка)
privateKey -> (строка)
sds -> (структура)
Ссылка на объект, представляющий сертификат Secret Discovery Service клиента виртуального шлюза.
secretName -> (строка)
enforce -> (булево)
True, если значение не указано.ports -> (список)
Один или несколько портов, для которых применяется политика.
(целое число)
validation -> (структура)
Ссылка на объект, представляющий контекст проверки Transport Layer Security (TLS).
subjectAlternativeNames -> (структура)
Ссылка на объект, представляющий SAN для контекста проверки Transport Layer Security (TLS) слушателя виртуального шлюза.
match -> (структура)
Объект, представляющий критерии для определения соответствия SAN.
exact -> (список)
Передаваемые значения должны точно соответствовать указанным значениям.
(строка)
trust -> (структура помеченных объединений)
Ссылка на место получения цепочки доверия при проверке сертификата Transport Layer Security (TLS) удаленного узла.
Примечание
Это структура помеченных объединений. Может быть задан только один из следующих ключей верхнего уровня:acm, file, sds.acm -> (структура)
Ссылка на объект, представляющий доверие контексту проверки Transport Layer Security (TLS) сертификата Certificate Manager.
certificateAuthorityArns -> (список)
Один или несколько ACM Amazon Resource Name (ARN).
(строка)
file -> (структура)
Объект, представляющий доверие контекста проверки Transport Layer Security (TLS) для локального файла.
certificateChain -> (строка)
sds -> (структура)
Ссылка на объект, представляющий доверие контекста проверки Transport Layer Security (TLS) Secret Discovery Service виртуального шлюза.
secretName -> (строка)
listeners -> (список)
Слушатели, от которых ожидается получение входящего трафика узлом сетки. Можно указать одного слушателя.
(структура)
Объект, представляющий слушателя виртуального шлюза.
connectionPool -> (структура помеченных объединений)
Информация о пуле подключений для слушателя виртуального шлюза.
Примечание
Это структура помеченных объединений. Может быть задан только один из следующих ключей верхнего уровня:grpc, http, http2.grpc -> (структура)
Объект, представляющий тип пула подключений.
maxRequests -> (целое число)
http -> (структура)
Объект, представляющий тип пула подключений.
maxConnections -> (целое число)
maxPendingRequests -> (целое число)
max_connections, которые будут поставлены в очередь Envoy в кластер вверх по потоку.http2 -> (структура)
Объект, представляющий тип пула подключений.
maxRequests -> (целое число)
healthCheck -> (структура)
Информация о проверке работоспособности для слушателя.
healthyThreshold -> (целое число)
intervalMillis -> (длинное целое число)
path -> (строка)
port -> (целое число)
protocol -> (строка)
grpc, то ваша служба должна соответствовать протоколу проверки работоспособности GRPC.timeoutMillis -> (длинное целое число)
unhealthyThreshold -> (целое число)
portMapping -> (структура)
Информация о сопоставлении портов для слушателя.
port -> (целое число)
protocol -> (строка)
tls -> (структура)
Ссылка на объект, представляющий свойства Transport Layer Security (TLS) для слушателя.
certificate -> (структура помеченных объединений)
Объект, представляющий сертификат Transport Layer Security (TLS).
Примечание
Это структура помеченных объединений. Может быть задан только один из следующих ключей верхнего уровня:acm, file, sds.acm -> (структура)
Ссылка на объект, представляющий сертификат Certificate Manager.
certificateArn -> (строка)
file -> (структура)
Ссылка на объект, представляющий сертификат из локального файла.
certificateChain -> (строка)
privateKey -> (строка)
sds -> (структура)
Ссылка на объект, представляющий сертификат Secret Discovery Service слушателя виртуального шлюза.
secretName -> (строка)
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 -> (строка)
logging -> (структура)
Объект, представляющий информацию о регистрации.
accessLog -> (структура помеченных объединений)
Конфигурация журнала доступа.
Примечание
Это структура помеченных объединений. Можно установить только один из следующих ключей верхнего уровня:file.file -> (структура)
Объект файла, в который отправляются журналы доступа виртуального шлюза.
format -> (структура помеченных объединений)
Указанный формат журналов доступа виртуального шлюза. Он может быть либо json_format, либо text_format.
Примечание
Это структура помеченных объединений. Можно установить только один из следующих ключей верхнего уровня:json, text.json -> (список)
(структура)
Объект, представляющий пары ключ-значение для JSON.
key -> (строка)
value -> (строка)
text -> (строка)
path -> (строка)
/dev/stdout для отправки журналов доступа в стандартный вывод и настроить контейнер Envoy на использование драйвера журналов, такого как awslogs, для экспорта журналов доступа в службу хранения журналов, например Amazon CloudWatch Logs. Также можно указать путь в файловой системе контейнера Envoy для записи файлов на диск.status -> (структура)
Текущий статус виртуального шлюза.
status -> (строка)
virtualGatewayName -> (строка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.