12 votos

EC2 Auto-Escala con el Lugar y las Instancias bajo Demanda?

Yo estoy buscando para optimizar el costo de nuestra auto-escalado de EC2 grupos por tener ellos el lanzamiento de las instancias puntuales en lugar de las instancias bajo demanda.

Lo que yo realmente quiero es ser capaz de mantener a algunos de los servidores en el grupo como en las instancias bajo demanda, independientemente de lo que sucede en el terreno de la instancia de precios de mercado. Entonces quiero servidores adicionales en el grupo, por encima de mi configurado mínimo, las instancias puntuales. En general estoy de acuerdo con el retraso en la adición de servidores a través de las solicitudes puntuales.

Me parece que no puede encontrar una manera de hacer esto y he tratado de buscar en la AWS documentación. Parece que un ASG puede ser ya sea en la demanda o irregular, pero no un híbrido.

Yo podría agregar manualmente una instancia bajo demanda para la Elastic Load Balancer asignado a la auto-escalado de grupo, pero luego la carga de que el servidor no debería tenerse en cuenta en el auto-escalado de las mediciones y de los factores desencadenantes.

Supongo que yo podría entrar en un ridículamente alto precio de la oferta a fin de garantizar que siempre me los servidores que necesito, pero luego miro el historial de precios y ver ocasional de grandes picos.

La AWS documentación está en desacuerdo con la misma, ya que en un lugar se dice que si se introduce una mínima de servidor, de que el número está "asegurado" estar allí. Pero entonces, cuando usted lea acerca de las instancias puntuales, no hay garantías. El diferencial de precio por spot es convincente, así que me gustaría aprovechar que tanto como me sea posible mientras que todavía mantiene un siempre sobre la línea de base. Es esto posible?

15voto

stack programmer Puntos 1678

El enfoque discutido más arriba, sería un poco desordenado, y no tan flexible. La más canónica de enfoque es crear 2 ASGs (uno para el spot, una para en-demanda) y, a continuación, registrar ambos con el mismo ELB (explicado aquí). Esto le da la capacidad de controlar cada uno de forma independiente en lugar de intentar ocultar con LC swaps en una sola ASG.

6voto

Steffen Opel Puntos 3207

Este híbrido de Auto Scaling enfoque no parece estar disponible fuera de la caja, de hecho, por desgracia.

Sin embargo, usted podría ser capaz de evitar esta limitación de la siguiente manera (no ha sido probado, solo en un sistema de diseño he estado haciendo malabares alrededor por un tiempo):

Posible Solución

Como se indica en el Uso de Auto Scaling para el Lanzamiento de las Instancias Puntuales, el precio de oferta es un parámetro de la Configuración de inicio en el uso. Como usted ha señalado, no hay ningún híbrido de configuración de inicio disponibles, sino que éste debe ser, ya sea en la demanda o irregular, lo que significa que el caso de uso requiere de dos lanzamiento distintas configuraciones.

Esto no parece ayudar de inmediato, porque sólo puede adjuntar una configuración de lanzamiento a un grupo de Auto Scaling en un momento, con la siguiente (parcialmente obsoleto) limitaciones (véase Configuración de Lanzamiento):

Cuando conecte un nuevo o actualizado de configuración de inicio para su Auto Escala de grupo, todas las nuevas instancias será lanzado el uso de las nuevas los parámetros de configuración. Las instancias existentes no se ven afectados. Cuando El Escalado automático de las necesidades a escala hacia abajo, primero termina instancias que tiene una antigua configuración de lanzamiento. [énfasis mío]

El hincapié en las partes clave, aunque, con el ex cubrir el requisito para mantener la demanda de instancias que se ejecutan después del cambio de los respectivos inicial en la demanda de configuración de inicio a la plana adicional de configuración de inicio, y el último no necesariamente es el caso más debido a la recientemente introducido el Escalado Automático de la Terminación de las Políticas (por un cambio no ha sido generalmente fanfarria a través de un acompañamiento de AWS blog), documentada en la Instancia de Terminación de la Póliza para Su Grupo de Auto Scaling:

Antes de Escalado Automático selecciona una instancia para terminar, primero identifica la Zona de Disponibilidad que tiene más instancias de la otras Zonas de Disponibilidad, utilizado por el grupo. Si todas las Zonas de Disponibilidad tienen el mismo número de casos, se identifica un azar Disponibilidad De la zona. Dentro de la identificación de las zonas de Disponibilidad, utiliza el Escalado Automático política de cancelación para seleccionar la instancia para la terminación. [énfasis mío]

Como se describe en Cómo Su Política de Terminación de Obras, ahora se puede especificar NewestInstance, si desea que el último lanzado instancia para ser terminado, el que sería uno de los más recientemente lanzado instancias puntuales:

El Escalado automático utiliza la instancia de tiempo de inicio para identificar la instancia que se lanzó el pasado.

Obviamente no podría ser un poco más al este, por ejemplo, puede especificar cualquiera de las políticas, como independiente de la política, o puede hacer una lista de varias políticas en una lista ordenada, pero este enfoque debe garantizar que la carga de todas las instancias de ser tomado en cuenta en el auto-escalado de las mediciones y de los factores desencadenantes; una advertencia sigue siendo, sin embargo:

Advertencia

Si el equilibrador de carga termina una de las instancias bajo demanda por cualquier otra razón (por ejemplo, porque se ha convertido en poco saludable en sí mismo), no sería sustituida por una instancia bajo demanda de forma automática. Por lo que se necesita para supervisar y cuenta para este evento por separado, por ejemplo temporalmente la activación de la demanda de configuración de inicio de nuevo.

Buena suerte!

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X