Похоже, что сейчас многие люди используют AWS, и я очень надеюсь, что кто-нибудь подскажет, как и если я смогу разработать масштабируемую систему в EC2.
Я попытался выполнить поиск, но все, что я нашел, - это CloudBuzz, CloudCookie, CloudIceCream и никакой хорошей документации о фактической инфраструктуре.
Я хочу создать кластер серверов, которые могут выполнять некоторые вычисления и увеличивать / уменьшать масштаб. Однако управление и их рабочие графики зависят от неочевидных факторов, которые не могут быть получены напрямую из загрузки ЦП / ОЗУ / жесткого диска.
Поэтому мне интересно, можно ли вызвать функцию CloudSuperScaleMe, чтобы просто запустить и завершить экземпляр изнутри или снаружи облака программно.
Из всех модных словечек кажется, что ближе всего я могу найти CloudWatch и CloudElasticSomething, но похоже, что они основаны на группах автомасштабирования, которые проверяют CPU / Network / и т. Д. load, и, поскольку в моей архитектуре нельзя доверять ни одному из этих факторов, я не понимаю, как я мог бы написать функции сигнализации и масштабирования / масштабирования без серьезного изменения и настройки AMI.
Cloudwatch - это служба мониторинга AWS, которая предоставляет файлы CPU / Network / etc. load '- требуется при автомасштабировании. Однако вы можете определить свой собственный специальные показатели который также можно использовать при автомасштабировании.
Существуют некоторые ограничения на тип данных, которые вы можете регистрировать с помощью CloudWatch, согласно Эта статья.
Насколько я понимаю (хотя у меня нет личного опыта), настройки Nagios / Cacti могут быть настроены для мониторинга и последующего выполнения вашего сценария масштабирования - если кто-то другой не может предоставить вескую причину для такого подхода, я не могу.
Другой, возможно, более простой подход (очень общая версия): Настроить уровень обмена сообщениями (corosync / heartbeat) между серверами. Он будет «выбирать» главный узел, а также отслеживать работающие серверы на «главном узле». вы отслеживаете свои коэффициенты для масштабирования и запускаете свой сценарий масштабирования. Ваш сценарий масштабирования будет передан добавлению / удалению + число, необходимое для возможности: