Creación de un canal de VPC
Función
Esta API se utiliza para crear un canal de VPC desde APIG a sus recursos de VPC privados. Después, al crear una API, puede configurar su servicio de backend para usar este canal de VPC para que APIG pueda acceder directamente a sus recursos privados de VPC.
Puede crear un máximo de 30 canales de VPC.
URI
La siguiente tabla muestra el método de solicitud HTTP/HTTPS y el URI de la API.
| Método de solicitud | URI |
|---|---|
| POST | /v1.0/apigw/vpc-channels |
Solicitud
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| name | Sí | String | Nombre del canal de VPC Un nombre de canal de VPC consta de 3 a 64 caracteres, comenzando con una letra. Solo se permiten letras, dígitos, guiones (-) y guiones bajos (_). |
| type | Sí | Integer | Tipo de canal VPC, que puede ser:
|
| member_type | Obligatorio si type es 2 | String | Tipo de miembro del canal VPC, que puede ser:
Este parámetro es válido sólo cuando el tipo de canal de VPC se establece en 2. El valor predeterminado es instance. |
| port | Obligatorio si type es 2 | Integer | Puerto de host del canal de VPC Este parámetro es válido sólo cuando el tipo de canal de VPC se establece en 2. El intervalo de valores es de 1 a 65535. |
| balance_strategy | Obligatorio si type es 2 | Integer | Algoritmo de distribución, que puede ser:
Este parámetro es válido sólo cuando el tipo de canal de VPC se establece en 2. El valor predeterminado es 1. |
| vpc_health_config | Obligatorio si type es 2 | Dictionary | Detalles de la comprabación de salud. Este parámetro es válido sólo cuando el tipo de canal de VPC se establece en 2. |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| protocol | Sí | String | Protocolo para realizar comprobaciones de estado en servidores en la nube en el canal VPC. El valor puede ser:
|
| path | Requerido cuando protocol se establece en http. | String | Ruta de destino para las comprobaciones de estado NOTA: El valor de este parámetro debe cumplir con las especificaciones de URI. |
| port | No | Integer | Puerto de destino para las comprobaciones de estado. De forma predeterminada, se utiliza el puerto de host del canal VPC. Alcance: 1 a 65535 |
| threshold_normal | Sí | Integer | Umbral de control de buen funcionamiento Se refiere al número (x) de comprobaciones consecutivas correctas necesarias para que un servidor en la nube se marque como saludable. Alcance: 2 a 10 |
| threshold_abnormal | Sí | Integer | Umbral de control de mal funcionamiento Se refiere al número (x) de comprobaciones consecutivas fallidas necesarias para que un servidor en la nube se marque como no saludable. Alcance: 2 a 10 |
| time_out | Sí | Integer | Tiempo de espera para determinar si una comprobación de estado falla. Unidad: s. El valor debe ser menor que el valor de time_interval. Alcance: 2 a 30 |
| time_interval | Sí | Integer | Intervalo entre comprobaciones consecutivas. Unidad: s. El valor debe ser mayor que el valor de time_out. Alcance: 5 a 300 |
| http_code | Requerido cuando protocol se establece en http. | String | Códigos de respuesta de HTTP para determinar una respuesta de HTTP correcta El valor puede ser cualquier entero dentro de 100 a 599 en uno de los siguientes formatos:
|
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| instance_name | Sí | String | Nombre de instancia de backend El nombre debe contener 1 a 64 caracteres. Solo se permiten letras, dígitos, puntos (.), guiones (-) y guiones bajos (_). |
| instance_id | Sí | String | ID de instancia de backend El ID debe contener 1 a 64 caracteres. Solo se permiten letras, dígitos, guiones (-) y guiones bajos (_). |
| weight | Obligatorio si type es 2 | Integer | Ponderación del servidor en la nube Cuanto mayor sea el peso, más solicitudes se reenvían a la instancia de backend. Este parámetro es válido sólo cuando el tipo de canal de VPC se establece en 2. El intervalo de valores es de 1 a 100. |
Ejemplo de solicitud:
{
"balance_strategy": 1,
"name": "vpc_001",
"port": 15565,
"type": 2,
"member_type": "instance",
"vpc_health_config": {
"http_code": "205",
"path": "/hc",
"port": 15563,
"protocol": "http",
"threshold_abnormal": 5,
"threshold_normal": 5,
"time_interval": 200,
"time_out": 30
},
"vpc_instances": [
{
"instance_id": "instance01",
"instance_name": "instance_name01",
"weight": 10
}
]
} Respuesta
| Parámetro | Tipo | Descripción |
|---|---|---|
| id | String | ID de canal de VPC |
| name | String | Nombre del canal de VPC |
| type | Integer | Tipo de canal VPC, que puede ser:
|
| member_type | String | Tipo de miembro del canal VPC, que puede ser:
Este parámetro es válido sólo cuando el tipo de canal de VPC se establece en 2. |
| status | Integer | Estado del canal de VPC, que puede ser:
|
| port | Integer | Puerto de host del canal de VPC |
| balance_strategy | Integer | Algoritmo de distribución, que puede ser:
|
| create_time | Timestamp | Hora en que se crea el canal de VPC |
Ejemplo de respuesta:
{
"name": "vpc_001",
"type": 2,
"member_type": "instance",
"port": 15565,
"balance_strategy": 1,
"id": "c3e6a7d85d9e47be89dfcc3cd37405d7",
"create_time": "2018-07-27T12:30:48.027484Z",
"status": 1
} Códigos de estado
| Código de estado | Descripción |
|---|---|
| 201 | Created |
| 400 | Bad Request |
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 500 | Server Internal Error |