OpenStack Heat AutoScale Juno: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
Строка 3: Строка 3:
   
 
==Введение==
 
==Введение==
  +
<BR>
  +
Дальше по тексту я буду приводить только части шаблонов, полные шаблоны - в конце, отдельным разделом. Это нужно для простоты - читать "простыню" не удобно.
 
Основная задача формулируется так:
 
Основная задача формулируется так:
 
* Есть абстрактное приложение которое надо масштабировать от нагрузки
 
* Есть абстрактное приложение которое надо масштабировать от нагрузки
Строка 8: Строка 10:
 
* При отсутствии нагрузки удалять -M экземпляров приложения (виртуальных машин)
 
* При отсутствии нагрузки удалять -M экземпляров приложения (виртуальных машин)
 
* M и N - целые числа (в моем примере они будут равны 1)
 
* M и N - целые числа (в моем примере они будут равны 1)
  +
===Создание стека===
  +
Команду создания стека я вынес в отдельный скрипт для простоты
  +
<PRE>
  +
D=` date +%Y%m%d%H%M%S`
   
  +
heat stack-create ABC-${D} -f asglb.yaml \
  +
-P "key_name=demo;net=net04;subnet=net04__subnet;public_net=net04_ext;app_lb_port=80;timeout=600;min_asg_size=1;max_asg_size=3;launch_asg_size=3"
  +
  +
</PRE>
   
 
==2==
 
==2==

Версия 12:50, 2 ноября 2015

OpenStack Heat AutoScaling (Juno)

Это короткая заметка про использование автоскейлинша с хитом и цейлометром в Juno (сборка Mirantis и в ванильном джуно может не хватать каких-то бекпортов, я это специально не проверял)

Введение


Дальше по тексту я буду приводить только части шаблонов, полные шаблоны - в конце, отдельным разделом. Это нужно для простоты - читать "простыню" не удобно. Основная задача формулируется так:

  • Есть абстрактное приложение которое надо масштабировать от нагрузки
  • При превышении порога по какой-либо метрике добавлять +N экземпляров приложения (виртуальную машину)
  • При отсутствии нагрузки удалять -M экземпляров приложения (виртуальных машин)
  • M и N - целые числа (в моем примере они будут равны 1)

Создание стека

Команду создания стека я вынес в отдельный скрипт для простоты

D=` date  +%Y%m%d%H%M%S`

heat stack-create ABC-${D} -f asglb.yaml  \
-P "key_name=demo;net=net04;subnet=net04__subnet;public_net=net04_ext;app_lb_port=80;timeout=600;min_asg_size=1;max_asg_size=3;launch_asg_size=3"

2

3

4

5