Buscar


imprimir pdf

IP Load Balancing


Introducción


Una IP Load Balancing es una dirección IP de la red de OVH que reparte la carga entre las direcciones IP de los distintos servicios de un cliente localizadas en nuestros PoP.
Proporciona mayor velocidad, menor riesgo de averías y un SLA más elevado, y optimiza los tiempos de respuesta al situarse más cerca de los usuarios gracias a la tecnología Anycast.


Mediante la API


IP Load Balancing

Lo primero que hay que hacer para añadir la IP de un backend a la IP Load Balancing es obtener el nombre del servicio IP Load Balancing.

Para ello, utilice la siguiente función:

GET /ip/loadBalancing

Un ejemplo de la información que devuelve:

[
"ip-91.121.59.140",
"ip-37.187.86.25"
]

En este ejemplo hay dos IP Load Balancing.



IP de backend

A continuación, hay que buscar las IP de backend que es posible añadir.

Para ello, utilice la siguiente función:

GET /ip/loadBalancing/{serviceName}/allowedBackends

Un ejemplo de la información que devuelve:

[
- {
ip: "94.23.239.28/32"
type: "dedicated"
}
- {
ip: "91.121.23.123/32"
type: "dedicated"
}
- {
ip: "46.105.10.113/32"
type: "vps"
}
- {
ip: "46.105.55.31/32"
type: "dedicated"
}
- {
ip: "176.31.231.216/32"
type: "dedicated"
}
- {
ip: "178.33.26.208/28"
type: "pcc"
}
]

En el ejemplo puede verse que podemos añadir distintas IP de un servidor dedicado, de un VPS y de un Dedicated Cloud (PCC).



Añadir una IP

Ahora vamos a añadir la IP 91.121.23.123, que está autorizada.

Para ello, utilizaremos la función:

POST /ip/loadBalancing/{serviceName}/backend

Con los siguientes parámetros:

serviceName: Nombre del servicio IP Load Balancing obtenido en la primera etapa.
ipBackend: IP que quiere poner como backend.
probe: Comprobación para que el servidor pueda recibir las peticiones.


Para el parámetro probe, son posibles los siguientes valores:

  • http: El servidor HTTP está accesible mediante una conexión TCP en el puerto 80 con una petición GET /. Si devuelve 200, es que el servidor recibe las peticiones.
  • icmp: El servidor responde a la petición icmp.
  • none: Ninguna comprobación.
  • oco: Comprobación realizada mediante la sonda OCO.

Un ejemplo de la información que devuelve:

{
zone: "rbx"
backend: "91.121.23.123"
probe: "http"
}



Consultar las IP

Utilice la siguiente función para obtener la lista de las IP de backend:

GET /ip/loadBalancing/{serviceName}/backend

Con los siguientes parámetros:

serviceName: Nombre del servicio IP Load Balancing obtenido en la primera etapa.

Un ejemplo de la información que devuelve:

[
"91.121.23.123"
]

En este caso, podemos retirar la IP 91.121.23.123 (tenga en cuenta que una sola IP de backend no sirve de mucho).



Eliminar una IP

Para eliminar una IP de backend, utilice la función:

DELETE /ip/loadBalancing/{serviceName}/backend/{backend}

Con los siguientes parámetros:

serviceName: Nombre del servicio IP Load Balancing obtenido en la primera etapa.
ipBackend: IP que quiere quitar como backend.

Un ejemplo de la información que devuelve:

null




Certificado SSL


Para su IP Load Balancing, puede contratar un certificado SSL para uno de sus dominios o importar su propio certificado SSL del dominio.

Nota: Cuando haya contratado el certificado y activado el SSL en la IP load balancing, todas las peticiones se redirigirán al puerto 80 de los servidores dedicados, en lugar de al 443.



Adquirir un certificado SSL

Puede contratar un certificado SSL para el dominio asociado a su IP Load Balancing. Este se configurará automáticamente en la IP Load Balancing.

Para adquirir el certificado, utilice la función:

POST /order/ip/loadBalancing/{serviceName}/ssl

Con los siguientes parámetros:

serviceName: Nombre del servicio IP Load Balancing, que puede consultar con la función GET/ip/loadBalancing.
domain: Dominio para el que quiere la opción de SSL.

Importante: Se enviará un email de confirmación a postmaster@sudominio.tld. Por lo tanto, asegúrese de que dicha dirección existe antes de abonar el pedido.

Un ejemplo de la información que devuelve:

{
{
orderId: YYYYYY
url: https://www.ovh.com/cgi-bin/order/displayOrder.cgi?orderId=YYYYYYYY&orderPassword=XXXX
-
details: [
+
{ … }
+
{ … }
]
+
contracts: [ … ]
+
prices: { … }
}

En esa información se incluye el enlace a la orden de pedido que deberá abonar, en el que podrá hacer clic para acceder directamente.

A continuación, recibirá por correo electrónico la confirmación de la creación del certificado SSL.



Importar un certificado SSL

Importante: Para instalar su propio certificado, debe haber activado previamente el certificado suministrado por OVH. Para ello, consulte el apartado anterior. Al hacerlo se activará la opción SSL para la IP load balancing.

Utilice la función:

POST /ip/loadBalancing/{serviceName}/importCustomSsl

Con los siguientes parámetros:

serviceName: Nombre del servicio IP Load Balancing, que puede consultar con la función GET/ip/loadBalancing.
certificate: Contenido del archivo del certificado.
chain: Contenido del archivo de su cadena de certificación.
key: Contenido del archivo de su clave privada (desprotegida).

Nota: Puede utilizar el siguiente comando para desproteger su clave privada: openssl rsa -in private.key > www.midominio.com.key




Configurar los servidores


Ya solo queda configurar los dominios en la IP que haya declarado como backend en cada servidor, es decir:

  • en el servidor web A, debe declarar el dominio en la IP A,
  • en el servidor web B, debe declarar el dominio en la IP B.

Si desea cambiar la gestión de los logs, puede editar la configuración del servidor web añadiendo lo siguiente:

LogFormat "%{X-Forwarded-For}i-%h- %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" loadbalancing

A continuación, en el VirtualHost del dominio, introduzca:

CustomLog /chemin/fichier.log loadbalancing

Después, en los logs de los dominios, aparecerá lo siguiente:

213.186.50.98-10.71.9.110- - - [26/Dec/2013:15:49:34 +0100] "GET / HTTP/1.1" 200 302 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Firefox/24.0"

En este ejemplo, 213.186.50.98 es la IP del cliente y 10.71.9.110 es la IP interna de la IP Load Balancing.



Conocer la IP interna

Si quiere obtener la IP del cliente en la variable REMOTE_ADDR en lugar de la IP interna de la IP Load Balancing, puede instalar el módulo rpaf de Apache para sus sitios web. Si no, la IP se indica en el encabezado de la petición con X-Forwarded-For.

Para conocer las IP NAT internas de la IP Load Balancing, utilice la función:

GET /ip/loadBalancing/{serviceName}/internalNatIp

Con los siguientes parámetros:

serviceName:Nombre del servicio IP Load Balancing.
zone:Zona en la que ha declarado la IP Load Balancing.

Un ejemplo de la información que devuelve:

"10.71.9.104/29"