Azure ConstraintRules не работает

Я развертываю очень простой облачный сервис Azure.

Попытка заставить Autoscaling работать так, чтобы я мог запланировать масштабирование вверх / вниз в зависимости от времени суток.

Устанавливайте и настраивайте все, развертывайте в Azure без каких-либо проблем, однако мои правила, похоже, не соблюдаются.

В настоящее время у меня есть следующее, что я ожидаю, что служба будет работать как минимум в 2 экземплярах, но всегда остается в 1.

<rules xmlns="http://schemas.microsoft.com/practices/2011/entlib/autoscaling/rules" enabled="true">
  <constraintRules>
    <rule name="Default" description="Default rules" enabled="true" rank="1">
      <actions>
        <range min="2" max="8" target="MyRoleName"/>
      </actions>
    </rule>
  </constraintRules>
</rules>

Чувствую, что я упускаю что-то действительно простое, но не знаете, что?

Спасибо

2 ответа

AFAIR из моего опыта с Wasabi - правила ограничения без расписания не будут выполняться сервисом вообще - у них нет специальных условий запуска. Цель состоит в том, чтобы ограничить максимальное и минимальное количество экземпляров, чтобы реактивные правила не могли перерасходовать (это может привести к превышению запланированных расходов) и недообеспечивать экземпляры служб (это может привести к требованиям Azure SLA). нарушение).

Я думаю, вам следует прочитать эту статью о том, как правильно настроить автоматическое масштабирование по расписанию для вашего сервиса. Короче говоря - вам нужен раздел расписания для вашего правила. Как-то так (бесстыдный рип из упомянутой ссылки)

<rules xmlns="http://schemas.microsoft.com/practices/2011/entlib/autoscaling/rules" enabled="true">
  <constraintRules>
    <rule name="Default" description="General Limitation" enabled="true" rank="1">
      <actions>
        <range min="2" max="8" target="MyRoleName"/>
      </actions>
    </rule>

    <rule name="Peak" description="Active at peak times" enabled="true" rank="100">
      <actions>
        <range min="4" max="4" target="MyRoleName"/>
      </actions>
      <timetable startTime="08:00:00" duration="02:00:00">
        <daily/>
      </timetable>
    </rule>
  </constraintRules>
</rules>

Где вы размещаете Autoscaling Application Block? Вы только добавили файл настроек в свой вопрос? Мой ответ таков: не все так просто. Добавьте рабочую роль и реализуйте там блок приложения Autoscaling для управления вашей веб-ролью.

Старый вопрос / ответ: Вы можете сравнить шаги, которые вы сделали, со следующим руководством / с http://blogs.msdn.com/b/golive/archive/2012/04/26/auto-scaling-azure-with-wasabi-from-the-ground-up.aspx и это хорошо: http://www.windowsazure.com/en-us/develop/net/how-to-guides/autoscaling/

Без дополнительной информации было бы очень сложно понять, что не так с вашей настройкой.

Другие вопросы по тегам