КС:2015:Проект:ClusterManager
Содержание
Что это за проект
Введение
Программное обеспечение позволяющее управлять процессами развертывания, запуска и мониторинга приложений на группе компьютеров.
Что требуется
Разработать серверную и клиентские части, которые:
1. Запускает заданные процессы на заданные членах кластера
2. Контролирует, что эти процессы успешно выполняются
3. Перезапустят упавшие процессы
4. В случае недоступности ноды запускает процессы с неё на других членах кластера
Чему вы научитесь (помимо разработки очередного велосипеда)
1. Работе с сетью
2. Основам построения распределенных приложений
3. Работе с файлами и процессами
Начальные требования
1. Умение разрабатывать программы на C++ или Python
Критерии оценивания
Требования на зачет в конце 1-го модуля
Сервер и клиенты, запускающие процессы на заданных хостах и контролирующие их активность и перезапускающие в случае падения.
Итоговая оценка
- 4 балла. Требования на зачет в первом модуле и дополнительно реализованы
возможности: добавления в базу новых файлов, обновлений контрольных сумм старый и проверка по все базе.
- 6 баллов. В случае не доступности ноды процессы должные мигрировать на
другую ноду.
- 8 баллов. Балансировка нагрузки на кластере
- +2 балл. Автоматизированное развертывание ПО на кластере.
- +2 балла. Распределение процессов по кластеру в зависимости от
требований к памяти, CPU и диску.