Licencja
Moduł optymalizacji wykorzystania zasobów chmurowych
Abstrakt (PL)
W ramach niniejszej pracy zaprojektowano i zaimplementowano mikroserwis optymalizujący wykorzystanie maszyn wirtualnych przez klientów dostawców usług chmurowych. Użytkownik zgłasza zapotrzebowanie na pewną liczbę maszyn wirtualnych i podaje wymagania, które muszą być spełnione, na przykład minimalną ilość pamięci RAM. Dodatkowo dostarcza funkcję, która ocenia użyteczność zaproponowanej konfiguracji. Zadaniem rozwiązania jest znalezienie grupy maszyn wirtualnych, spełniających wymagania użytkownika, z możliwie optymalną użytecznością. Rozwiązanie bazuje na połączeniu dwóch klasycznych algorytmów optymalizacyjnych - Przeszukiwania drzew metodą Monte Carlo, Parallel Tempering. Projekt został zintegrowany z platformą Melodic, rozwiązaniem pozwalającym na zarządzanie aplikacjami w chmurze.
Abstrakt (EN)
We design and implement a microservice which optimises use of virtual machines by customers of cloud providers. The user requests a number of virtual machines and specifies the requirements to be met, such as the minimum amount of RAM. Additionally, a function that assesses the utility of the proposed configuration is provided. The task of the solution is to find a group of virtual machines that meet the requirements of the user with the best possible utility. The solution is based on a combination of two classic optimization algorithms - Monte Carlo Tree Search, Parallel Tempering. The project has been integrated with Melodic platform, a solution for managing applications in the cloud.