Adición de un oyente
Función
Esta API se utiliza para agregar un oyente a un balanceador de carga.
Restricciones
- Sólo los usuarios con los permisos de administrador ELB pueden especificar el valor de connection_limit.
- El valor del protocol puede ser TCP, HTTP, UDP, o TERMINATED_HTTPS.
URI
POST /v2/{project_id}/elb/listeners
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
project_id |
Sí |
String |
Especifica el ID del proyecto. |
Solicitud
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
listener |
Sí |
Listener object |
Especifica el oyente. Para más detalles, consulte Tabla 3. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
tenant_id |
No |
String |
Especifica el ID del proyecto donde se utiliza el oyente. El valor debe ser el mismo que el valor de project_id en el token. El valor contiene un máximo de 255 caracteres. |
name |
No |
String |
Especifica el nombre de oyente. El valor contiene un máximo de 255 caracteres. |
description |
No |
String |
Proporciona información complementaria sobre el oyente. El valor contiene un máximo de 255 caracteres. |
protocol |
Sí |
String |
Especifica el protocolo utilizado por el oyente. El valor puede ser TCP, HTTP, UDP o TERMINATED_HTTPS. |
protocol_port |
Sí |
Integer |
Especifica el puerto utilizado por el oyente. El número de puerto se encuentra dentro del rango de 1 a 65535.
NOTA:
Si el protocolo utilizado por el oyente es UDP, el número de puerto no puede ser 4789. |
loadbalancer_id |
Sí |
String |
Especifica el ID del balanceador de carga asociado. |
connection_limit |
No |
Integer |
Especifica el número máximo de conexiones. El valor oscila entre -1 y 2147483647. El valor predeterminado es -1, lo que indica que no hay restricción en el número máximo de conexiones. Este parámetro está reservado. |
admin_state_up |
No |
Boolean |
Especifica el estado administrativo del oyente. Este parámetro está reservado y el valor predeterminado es true. |
http2_enable |
No |
Boolean |
Especifica si se debe usar HTTP/2. El valor puede ser true o false.
El valor predeterminado es false. Este parámetro solo tiene efecto cuando el protocolo utilizado por el oyente se establece en TERMINATED_HTTPS. |
default_pool_id |
No |
String |
Especifica el ID del grupo de servidores backend asociado. Si una solicitud no coincide con la política de reenvío, la solicitud se reenvía al grupo de servidores backend predeterminado para su procesamiento. Si el valor es null, el oyente no tiene un grupo de servidores backend predeterminado.
El parámetro default_pool_id tiene las siguientes restricciones:
Las relaciones entre el protocolo del grupo de servidores backend y el protocolo utilizado por el oyente son las siguientes:
|
default_tls_container_ref |
No |
String |
Especifica el ID del certificado de servidor utilizado por el oyente. Este parámetro es obligatorio cuando protocol se establece en TERMINATED_HTTPS. El valor predeterminado es null cuando el protocolo no está establecido en TERMINATED_HTTPS. El valor contiene un máximo de 128 caracteres.
NOTA:
Este parámetro solo tiene efecto cuando el protocolo utilizado por el oyente se establece en TERMINATED_HTTPS. |
client_ca_tls_container_ref |
No |
String |
Especifica el ID del certificado de CA utilizado por el oyente. El valor predeterminado es null. El valor contiene un máximo de 128 caracteres.
NOTA:
Este parámetro solo tiene efecto cuando el protocolo utilizado por el oyente se establece en TERMINATED_HTTPS. |
sni_container_refs |
No |
Array |
Enumera los ID de los certificados SNI (certificados de servidor con nombres de dominio) utilizados por el oyente. Si el valor del parámetro es una lista vacía, la función SNI está deshabilitada. El valor predeterminado es [].
NOTA:
Este parámetro solo tiene efecto cuando el protocolo utilizado por el oyente se establece en TERMINATED_HTTPS. |
tls_ciphers_policy |
No |
String |
Especifica la política de seguridad utilizada por el oyente. Este parámetro solo tiene efecto cuando el protocolo utilizado por el oyente se establece en TERMINATED_HTTPS. El valor puede ser tls-1-0-inherit, tls-1-0, tls-1-1, tls-1-2, o tls-1-2-strict, y el valor predeterminado es tls-1-0. Para obtener más información sobre conjuntos de cifrado para cada política de seguridad, consulte Tabla 4. |
Política de seguridad |
Versión de TLS |
Suite de cifrado |
---|---|---|
tls-1-0-inherit |
TLS 1.2 TLS 1.1 TLS 1.0 |
ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-SHA:AES256-SHA:DHE-DSS-AES128-SHA:CAMELLIA128-SHA:EDH-RSA-DES-CBC3-SHA:DES-CBC3-SHA:ECDHE-RSA-RC4-SHA:RC4-SHA:DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA:DHE-RSA-CAMELLIA256-SHA:DHE-DSS-CAMELLIA256-SHA:CAMELLIA256-SHA:EDH-DSS-DES-CBC3-SHA:DHE-RSA-CAMELLIA128-SHA:DHE-DSS-CAMELLIA128-SHA |
tls-1-0 |
TLS 1.2 TLS 1.1 TLS 1.0 |
ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-SHA:AES256-SHA |
tls-1-1 |
TLS 1.2 TLS 1.1 |
|
tls-1-2 |
TLS 1.2 |
|
tls-1-2-strict |
TLS 1.2 |
ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384 |
Respuesta
Parámetro |
Tipo |
Descripción |
---|---|---|
listener |
Listener object |
Especifica el oyente. Para más detalles, consulte Tabla 6. |
Parámetro |
Tipo |
Descripción |
---|---|---|
id |
String |
Especifica el ID de oyente. |
tenant_id |
String |
Especifica el ID del proyecto donde se utiliza el oyente. El valor contiene un máximo de 255 caracteres. |
project_id |
String |
Especifica el ID del proyecto al que pertenece el oyente. Este parámetro tiene el mismo significado que tenant_id. |
name |
String |
Especifica el nombre de oyente. El valor contiene un máximo de 255 caracteres. |
description |
String |
Proporciona información complementaria sobre el oyente. El valor contiene un máximo de 255 caracteres. |
protocol |
String |
Especifica el protocolo utilizado por el oyente. El valor puede ser TCP, HTTP, UDP o TERMINATED_HTTPS. |
protocol_port |
Integer |
Especifica el puerto utilizado por el oyente. El número de puerto se encuentra dentro del rango de 1 a 65535. |
loadbalancers |
Array of Loadbalancers objects |
Especifica el ID del balanceador de carga asociado. Para más detalles, consulte Tabla 7. |
connection_limit |
Integer |
Especifica el número máximo de conexiones. El valor oscila entre -1 y 2147483647. El valor predeterminado es -1, lo que indica que no hay restricción en el número máximo de conexiones. Este parámetro está reservado. |
admin_state_up |
Boolean |
Especifica el estado administrativo del oyente. Este parámetro está reservado. El valor puede ser true o false.
|
http2_enable |
Boolean |
Especifica si se debe usar HTTP/2. El valor puede ser true o false.
Este parámetro solo tiene efecto cuando el protocolo utilizado por el oyente se establece en TERMINATED_HTTPS. |
default_pool_id |
String |
Especifica el ID del grupo de servidores backend asociado. Si una solicitud no coincide con la política de reenvío, la solicitud se reenvía al grupo de servidores backend predeterminado para su procesamiento. Si el valor es null, el oyente no tiene un grupo de servidores backend predeterminado. |
default_tls_container_ref |
String |
Especifica el ID del certificado de servidor utilizado por el oyente. Para más detalles, consulte Certificado. Este parámetro es obligatorio cuando protocol se establece en TERMINATED_HTTPS. El valor contiene un máximo de 128 caracteres. |
client_ca_tls_container_ref |
String |
Especifica el ID del certificado de CA utilizado por el oyente. El valor contiene un máximo de 128 caracteres. Para más detalles, consulte Certificado. |
sni_container_refs |
Array |
Enumera los ID de los certificados SNI (certificados de servidor con nombres de dominio) utilizados por el oyente. Si el valor del parámetro es una lista vacía, la función SNI está deshabilitada. |
tags |
Array |
Etiqueta al oyente. |
created_at |
String |
Especifica la hora a la que se creó el oyente.YYYY-MM-DDTHH:MM:SS |
updated_at |
String |
Especifica la hora a la que se actualizó el oyente.YYYY-MM-DDTHH:MM:SS |
tls_ciphers_policy |
String |
Especifica la política de seguridad utilizada por el oyente. Este parámetro solo tiene efecto cuando el protocolo utilizado por el oyente se establece en TERMINATED_HTTPS. El valor puede ser tls-1-0-inherit, tls-1-0, tls-1-1, tls-1-2, o tls-1-2-strict, y el valor predeterminado es tls-1-0. Enumera los conjuntos de cifrado utilizados por cada política de seguridad. Para más detalles, consulte Tabla 8. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
id |
Sí |
String |
Especifica el ID del balanceador de carga asociado. |
Política de seguridad |
Versión de TLS |
Suite de cifrado |
---|---|---|
tls-1-0-inherit |
TLS 1.2 TLS 1.1 TLS 1.0 |
ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-SHA:AES256-SHA:DHE-DSS-AES128-SHA:CAMELLIA128-SHA:EDH-RSA-DES-CBC3-SHA:DES-CBC3-SHA:ECDHE-RSA-RC4-SHA:RC4-SHA:DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA:DHE-RSA-CAMELLIA256-SHA:DHE-DSS-CAMELLIA256-SHA:CAMELLIA256-SHA:EDH-DSS-DES-CBC3-SHA:DHE-RSA-CAMELLIA128-SHA:DHE-DSS-CAMELLIA128-SHA |
tls-1-0 |
TLS 1.2 TLS 1.1 TLS 1.0 |
ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-SHA:AES256-SHA |
tls-1-1 |
TLS 1.2 TLS 1.1 |
|
tls-1-2 |
TLS 1.2 |
|
tls-1-2-strict |
TLS 1.2 |
ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384 |
Ejemplo de la solicitud
- Ejemplo de solicitud 1: Adición de un oyente TCP
POST https://{Endpoint}/v2/145483a5107745e9b3d80f956713e6a3/elb/listeners { "listener": { "protocol_port": 80, "protocol": "TCP", "loadbalancer_id": "0416b6f1-877f-4a51-987e-978b3f084253", "name": "listener-test", "admin_state_up": true } }
- Ejemplo de solicitud 2: Adición de un oyente con protocol establecido en TERMINATED_HTTPS
POST https://{Endpoint}/v2/601240b9c5c94059b63d484c92cfe308/elb/listeners { "listener": { "protocol_port": 25, "protocol": "TERMINATED_HTTPS", "default_tls_container_ref": "02dcd56799e045bf8b131533cc911dd6", "loadbalancer_id": "0416b6f1-877f-4a51-987e-978b3f084253", "name": "listener-test", , "admin_state_up": true } }
Ejemplo de la respuesta
- Ejemplo de respuesta 1
{ "listener": { "protocol_port": 80, "protocol": "TCP", "description": "", "client_ca_tls_container_ref": null, "default_tls_container_ref": null, "admin_state_up": true, "http2_enable": false, "loadbalancers": [ { "id": "0416b6f1-877f-4a51-987e-978b3f084253" } ], "tenant_id": "145483a5107745e9b3d80f956713e6a3", "project_id": "145483a5107745e9b3d80f956713e6a3", "sni_container_refs": [], "connection_limit": -1, "default_pool_id": null, "tags": [], "id": "b7f32b52-6f17-4b16-9ec8-063d71b653ce", "name": "listener-test", "created_at": "2018-07-25T01:54:13", "updated_at": "2018-07-25T01:54:14" } }
- Ejemplo de respuesta 2
{ "listener": { "insert_headers": {}, "protocol_port": 25, "protocol": "TERMINATED_HTTPS", "description": "", "default_tls_container_ref": "02dcd56799e045bf8b131533cc911dd6", "sni_container_refs": [], "loadbalancers": [ { "id": "0416b6f1-877f-4a51-987e-978b3f084253" } ], "tenant_id": "601240b9c5c94059b63d484c92cfe308", "project_id": "601240b9c5c94059b63d484c92cfe308", "created_at": "2019-01-21T12:38:31", "client_ca_tls_container_ref": null, "connection_limit": -1, "updated_at": "2019-01-21T12:38:31", "http2_enable": false, "admin_state_up": true, "default_pool_id": null, "id": "b56634cd-5ba8-460e-b5a2-6de5ba8eaf60", "tags": [], "name": "listener-test" } }
- Ejemplo de respuesta 3
{ "listener": { "insert_headers": {}, "protocol_port": 27, "protocol": "TERMINATED_HTTPS", "description": "", "default_tls_container_ref": "02dcd56799e045bf8b131533cc911dd6", "sni_container_refs": [ "5882325fd6dd4b95a88d33238d293a0f", "e15d1b5000474adca383c3cd9ddc06d4" ], "loadbalancers": [ { "id": "6bb85e33-4953-457a-85a9-336d76125b7b" } ], "tenant_id": "601240b9c5c94059b63d484c92cfe308", "project_id": "601240b9c5c94059b63d484c92cfe308", "created_at": "2019-01-21T12:43:55", "client_ca_tls_container_ref": null, "connection_limit": -1, "updated_at": "2019-01-21T12:43:55", "http2_enable": false, "admin_state_up": true, "default_pool_id": null, "id": "b2cfda5b-52fe-4320-8845-34e8d4dac2c7", "tags": [], "name": "listener-test" } }
Código de estado
Para más detalles, consulte Códigos de estado.