Привет!
Сегодня мы хотим поделиться с вами опытом использования Microsoft Azure для обеспечения масштабируемости и отказоустойчивости нашей системы мониторинга серверов и сайтов CloudStats.me.
Необходимо отметить, что до начала работы в 6-м наборе акселератора ФРИИ и получения гранта на использование ресурсов Microsoft Azure наша платформа, как и у большинства, работала на обычных выделенных серверах, разделенных на OpenVZ виртуальные машины при помощи панели SolusVM.
Изначально, мы использовали несколько серверов Online.net, Redstation и OVH в конфигурации 2 x Intel Xeon E5 2620v3, 128 GB RAM, 2 x 500 GB SSD, H/W RAID1, дисковая система которых обеспечивает до 15,000 IOPS судя по нашим тестам. Для любой платформы сбора статистики производительность дисковой системы является особенно важной из-за необходимости обработки большого потока входящих данных и операций на запись в базу данных.
Как мы писали ранее, мы использовали бесплатный балансировщик нагрузки HaProxy с Apache Tomcat и кластером MySQL MariaDB для распределения нагрузки на наши сервера. С одной стороны, выделенные серверы обеспечивали необходимую производительность, но с другой стороны требовали отдельного мониторинга ресурсов и не позволяли обеспечить отказоустойчивость из-за отсутствия отдельного балансировщика на стороне датацентра, что могло привести к отказу системы при падении нашего load balancer'a.
Благодаря работе со специалистами Microsoft в рамках акселератора и программы BizSpark, нами были протестированы возможности Azure и разделено хранилище данных на два типа — SQL (MariaDB Cluster) и NoSQL (DocumentDB).
Сегодня мы хотим поделиться с вами опытом использования Microsoft Azure для обеспечения масштабируемости и отказоустойчивости нашей системы мониторинга серверов и сайтов CloudStats.me.
Необходимо отметить, что до начала работы в 6-м наборе акселератора ФРИИ и получения гранта на использование ресурсов Microsoft Azure наша платформа, как и у большинства, работала на обычных выделенных серверах, разделенных на OpenVZ виртуальные машины при помощи панели SolusVM.
Изначально, мы использовали несколько серверов Online.net, Redstation и OVH в конфигурации 2 x Intel Xeon E5 2620v3, 128 GB RAM, 2 x 500 GB SSD, H/W RAID1, дисковая система которых обеспечивает до 15,000 IOPS судя по нашим тестам. Для любой платформы сбора статистики производительность дисковой системы является особенно важной из-за необходимости обработки большого потока входящих данных и операций на запись в базу данных.
Как мы писали ранее, мы использовали бесплатный балансировщик нагрузки HaProxy с Apache Tomcat и кластером MySQL MariaDB для распределения нагрузки на наши сервера. С одной стороны, выделенные серверы обеспечивали необходимую производительность, но с другой стороны требовали отдельного мониторинга ресурсов и не позволяли обеспечить отказоустойчивость из-за отсутствия отдельного балансировщика на стороне датацентра, что могло привести к отказу системы при падении нашего load balancer'a.
Благодаря работе со специалистами Microsoft в рамках акселератора и программы BizSpark, нами были протестированы возможности Azure и разделено хранилище данных на два типа — SQL (MariaDB Cluster) и NoSQL (DocumentDB).