CloudSim: Framework for Modeling and Simulation of Cloud Computing Infrastructures and Services

wprowadzenie

Ostatnio chmura obliczeniowa stała się wiodącą technologią zapewniającą niezawodne, bezpieczne, odporne na awarie, zrównoważone i skalowalne usługi obliczeniowe, które są prezentowane jako usługi oprogramowania, infrastruktury lub platformy (SaaS, IaaS, PaaS). Ponadto usługi te mogą być oferowane w prywatnych centrach danych (chmury prywatne), mogą być oferowane komercyjnie dla klientów (chmury publiczne), a jednak możliwe jest, że zarówno publiczne, jak i prywatne chmury są połączone w chmurach hybrydowych.

te już szerokie ekosystemy architektur chmur, wraz ze wzrostem zapotrzebowania na energooszczędne technologie IT, wymagają terminowych,powtarzalnych i możliwych do kontrolowania metod oceny algorytmów, aplikacji i polityk przed faktycznym rozwojem produktów w chmurze.Ponieważ wykorzystanie rzeczywistych podstaw testowych ogranicza eksperymenty do skali podłoża testowego i sprawia, że odtwarzanie wyników jest niezwykle trudne, alternatywne podejścia do testowania i eksperymentowania wykorzystują rozwój nowych technologii chmurowych.

odpowiednią alternatywą jest wykorzystanie narzędzi symulacyjnych, które otwierają możliwość oceny hipotezy przed rozwojem oprogramowania w środowisku, w którym można odtworzyć testy. W szczególności w przypadku przetwarzania w chmurze, w którym dostęp do infrastruktury wiąże się z płatnościami w prawdziwej walucie, metody oparte na symulacji oferują znaczące korzyści, ponieważ umożliwiają klientom w chmurze bezpłatne testowanie usług w powtarzalnym i kontrolowanym środowisku oraz dostosowanie wąskich gardeł wydajności przed wdrożeniem w rzeczywistych chmurach. Po stronie dostawcy środowiska Symulacyjne umożliwiają ocenę różnych rodzajów scenariuszy leasingu zasobów przy różnym obciążeniu i rozkładach cen. Takie badania mogłyby pomóc dostawcom w optymalizacji kosztów dostępu do zasobów, koncentrując się na poprawie zysków. W przypadku braku takich platform symulacyjnych klienci i dostawcy usług w chmurze muszą polegać albo na teoretycznych i nieprecyzyjnych ocenach, albo na podejściach opartych na próbach i błędach, które prowadzą do nieefektywnej wydajności usług i generowania przychodów.

głównym celem tego projektu jest zapewnienie uogólnionej i rozszerzalnej struktury symulacji, która umożliwia bezproblemowe modelowanie, symulację i eksperymentowanie z pojawiającymi się infrastrukturami obliczeniowymi w chmurze i usługami aplikacyjnymi. Korzystając z CloudSim, naukowcy i Programiści branżowi mogą skupić się na konkretnych kwestiach związanych z projektowaniem systemu, które chcą zbadać, bez obawy o szczegóły niskiego poziomu związane z infrastrukturami i usługami w chmurze.

Główne cechy

Przegląd funkcji CloudSim:

  • wsparcie dla modelowania i symulacji dużych centrów danych w chmurze
  • wsparcie dla modelowania i symulacji zwirtualizowanych hostów serwerów z konfigurowalnymi zasadami udostępniania zasobów hosta do maszyn wirtualnych
  • wsparcie dla modelowania i symulacji kontenerów aplikacji
  • wsparcie dla modelowania i symulacji energooszczędnych zasobów obliczeniowych
  • wsparcie dla modelowania i symulacji symulacja topologii sieci centrów danych i aplikacji przekazujących wiadomości
  • wsparcie dla modelowania i symulacji federacyjnych chmury
  • obsługa dynamicznego wstawiania elementów symulacji, zatrzymywania i wznawiania symulacji
  • obsługa zdefiniowanych przez użytkownika zasad przydzielania hostów do maszyn wirtualnych oraz zasad przydzielania zasobów hostów do maszyn wirtualnych

dokumentacja

  • kurs online na temat CloudSim, który zawiera filmy wideo, opracowany przez Anupinder Singh z Indii.
  • przykłady
  • informacje o wydaniu
  • instalacja i uruchamianie CloudSim (README)
  • Changelog
  • kontenery w CloudSim

Pobierz

Pakiet CloudSim zawierający kod źródłowy, przykłady, słoiki i APIdocumentation można pobrać ze strony internetowej CloudSim na GitHub:

https://github.com/Cloudslab/cloudsim/releases

Kodeks z gazety: Tom Guerout, Thierry Monteil, Georges Da Costa, Rodrigo N. Calheiros, Rajkumar Buyya, Mihai Alexandru. Energooszczędna symulacja z DVFS.Simulation Modeling Practice and Theory, Volume 39, pages 76-91, December 2013.

CloudSim_DVFS.rar

Grupa dyskusyjna (Lista mailingowa)

iFogSim

ifogsim umożliwia modelowanie i symulację środowisk obliczeniowych Fog w celu oceny zarządzania zasobami i planowania w zasobach brzegowych i chmurowych w różnych scenariuszach. Symulator wspiera ocenę polityki zarządzania zasobami, koncentrując się na ich wpływie na opóźnienia (terminowość), zużycie energii, przeciążenie sieci i koszty operacyjne. Symuluje urządzenia brzegowe, centra danych w chmurze i łącza sieciowe w celu pomiaru wskaźników wydajności. Głównym modelem aplikacji obsługiwanym przez iFogSim jest model theSense-Process-Actuate. W takich modelach czujniki publikują dane do sieci IoT, aplikacje uruchamiane na urządzeniach Fog subskrybują i przetwarzają dane pochodzące z czujników, a uzyskane spostrzeżenia są przekazywane do działań przekazywanych do siłowników.

Pobierz iFogSim tutaj. Więcej informacji można znaleźć w naszym referacie SPE.

CloudSimEx

celem projektu CloudSimEx jest opracowanie zestawu rozszerzeń dla symulatora CloudSim. Rozszerzenia, które okażą się godne, zostaną później połączone z CloudSim.

Uwaga! Rozszerzenia te nie są oficjalnie obsługiwane przez zespół CloudSim, dopóki nie zostaną zintegrowane z CloudSim.

obecnie CloudSimEx posiada:

  1. modelowanie sesji internetowych;
  2. lepsze narzędzia do rejestrowania;
  3. narzędzia do generowania plików CSV do analizy statystycznej;
  4. Automatyczne generowanie identyfikatorów;
  5. narzędzia do uruchamiania wielu eksperymentów równolegle;
  6. Symulacja MapReduce.

EdgeCloudSim

EdgeCloudSim zapewnia środowisko symulacji specyficzne dla scenariuszy obliczeń brzegowych, w których możliwe jest prowadzenie eksperymentów uwzględniających zarówno zasoby obliczeniowe, jak i sieciowe. EdgeCloudSim jest oparty na CloudSim, ale dodaje kilka dodatkowych funkcji, takich jak modelowanie sieci specyficzne dla WLAN i WAN, model mobilności urządzeń, realistyczny i przestrajalny generator obciążenia.

EdgeCloudSim został opracowany przez Cagatay Sonmez i zespół z NETLAB (Computer Networks Research Laboratory) na Wydziale Inżynierii Komputerowej Uniwersytetu Bogazici w Stambule, Turcja.

Pobierz i więcej informacji można znaleźć w GitHub projektu.

CloudSim Automation: Czytelna dla człowieka Specyfikacja scenariuszy dlaautomatyczne tworzenie symulacji na CloudSim

CloudSim Automation to narzędzie wiersza poleceń Java oparte na klasach CloudSimand CloudReports, które jest w stanie odczytać specyfikacje scenariuszy symulacji cloudsim z pliku YAML, bardzo czytelnego dla człowieka formatu danych. Scenariusze symulacji można zapisać w pliku YAML, a narzędzie do automatyzacji chmury odczytuje te scenariusze symulacji,tworzy i uruchamia je w chmurze.

narzędzie zwalnia badaczy z konieczności pisania kodu Javy tylko po to, aby uruchomić scenariusze symulacji. W ten sposób można skupić uwagę na problemie, który należy rozwiązać, takim jak tworzenie nowych algorytmów równoważenia obciążenia, nowe zasady planowania maszyn wirtualnych, rozmieszczenie maszyn wirtualnych, udostępnianie zasobów, przewidywanie obciążenia pracą, konsolidacja serwerów,efektywność energetyczna, redukcja kosztów i tak dalej.

głównym wkładem tej pracy są:

  1. aby uniknąć programowania przy tworzeniu środowiska symulacji CloudSim;
  2. aby zmniejszyć krzywą uczenia się przy tworzeniu scenariuszy symulacji CloudSim;
  3. aby ułatwić i zautomatyzować środowisko symulacji CloudSim;
  4. aby użyć formatu pliku czytelnego dla człowieka, aby określić scenariusze symulacji w chmurze i przyspieszyć taką fazę procesu symulacji;
  5. aby umożliwić ponowne użycie, rozszerzenie i udostępnianie scenariuszy symulacji.

kod można pobrać z GitHub. Aby uzyskać więcej informacji, skontaktuj się z Dr Manoel Campos DaSilva Filho.

WorkflowSim

workflowsim rozszerza zestaw narzędzi do symulacji CloudSim, wprowadzając wsparcie przygotowania i wykonania przepływu pracy z implementacją stosu parsera workflow, silnika przepływu pracy i harmonogramu zadań. Obsługuje wielowarstwowy model awarii i opóźnień występujących na różnych poziomach systemów zarządzania przepływem pracy. Heft, Min-Min i Max-Min) oraz algorytmy grupowania zadań zostały zaimplementowane w przepływach pracy. Parametry są bezpośrednio poznawane ze śladów rzeczywistych wykonań, które były uruchamiane przez systemy zarządzania przepływem pracy, takie jak Pegasus.WorkflowSim został opracowany przez Weiwei Chen i zespół z University of SouthernCalifornia, USA.

Pobierz i więcej informacji można znaleźć na Githubie projektu.

Cloud2Sim

Cloud2Sim proponuje rozproszoną architekturę współbieżną do symulacji cloudsim. Wykorzystując siatkę danych Hazelcast w pamięci, CloudSim został rozszerzony, aby wiele instancji wykonywało obciążenia Cloudlet i VM z wielu węzłów i przesyłało je do datacenterbroker, jednocześnie wykonując podstawowe segmenty symulacji, które nie mogą być dystrybuowane z głównej instancji Cloud2Sim. Ponadto zaprojektowano i wdrożono architekturę adaptacyjną w celu elastycznego skalowania zasobów udostępnianych symulacji, z wątkiem Cloud2Simmonitoring działającym na oddzielnym klastrze Hazelcast. Cloud2Simwork został opracowany przez Pradeebana Kathiravelu i Luisa Veiga, atINESC-ID Lisboa, Universidade de Lisboa, Portugalia.

Pobierz i więcej informacji można znaleźć na stronie projektu Sourceforge.

SimpleWorkflow

jest to prosty pakiet zawierający klasy pomagające w symulowaniu przepływów pracy w CloudSim. Nie jest to tak obszerne jak WorkflowSim, ale zawiera te same pliki opisów obciążenia, co WorkflowSim.

Pobierz SimpleWorkflow tutaj.

DynamicCloudSim

niestabilność wydajności często spotykana w niejednolitych i współdzielonych strukturach, takich jak chmury obliczeniowe, była wielokrotnie obserwowana, aby silnie wpływać na działanie aplikacji. DynamicCloudSim rozszerza zestaw narzędzi do symulacji CloudSim, wprowadzając modele dla (1)niejednorodności wydajności zasobów obliczeniowych, (2) niepewności i dynamicznych zmian wydajności maszyn wirtualnych oraz (3) maruderów i awarii podczas wykonywania zadań.

ponadto DynamicCloudSim wprowadza drobnoziarnistą reprezentację zasobów obliczeniowych, umożliwiając w ten sposób symulację wykonywania różnych rodzajów aplikacji (CPU-, I/o-, communication-bound) na maszynach o różnej charakterystyce wydajności. DynamicCloudSim jako punkt wyjścia do badań nad planowaniem przepływu pracy zapewnia funkcjonalność symulującą wykonywanie naukowych przepływów pracy przy użyciu różnych dobrze ugruntowanych harmonogramów.

DynamicCloudSim został opracowany przez Marca Buxa na Uniwersytecie Humboldta w Berlinie. Plik do pobrania jest dostępny na stronie projectwebsite w Google Code. W przypadku pytań i sugestii prosimy o kontaktbux (at) informatik.hu-berlin.de.

RealCloudSim

RealCloudSim to symulator alokacji maszyn wirtualnych oparty na głównym silniku projektu CloudSim. RealCloudSim dostarcza graficzny interfejs do odczytu topologii sieci w oparciu o format BRITE. RealCloudSim wykorzystuje również własny silnik do symulacji alokacji w oparciu o algorytmy genetyczne, mieszane Programowanie całkowite z oprogramowaniem Lingo oraz symulacje sieciowe oparte na NS2 (NetworkSimulator 2). Na końcu każdej symulacji generowany jest kompletny raport.

RealCloudSim został opracowany przez Lucio Agostinho Rocha i zespół na Uniwersytecie Stanu Campinas w Brazylii.

wątpliwości i sugestie można przesyłać mailem na adres yahoo dot com dot br. Pobierz i więcej informacji można znaleźć na stronie projektu w SourceForge.

CloudReports

CloudReports to graficzne narzędzie symulujące rozproszone środowisko obliczeniowe w oparciu o paradygmat przetwarzania w chmurze. Wykorzystuje CloudSim jako swój silnik symulacji i zapewnia łatwy w użyciu interfejs użytkownika, generowanie raportów i tworzenie rozszerzeń w sposób wtyczkowy.

CloudReports został opracowany przez Thiago Sa i zespół z Uniwersytetu Federalnego w Ceara w Brazylii.

Pobierz i więcej informacji można znaleźć w github projektu.

CloudAuction

to działa rozszerza Cloudsim poprzez opracowanie biblioteki pakietów, która umożliwia cloudsim obsługę usług opartych na aukcjach. Głównym celem tych badań jest wdrożenie mechanizmów aukcyjnych w Cloudsim. Aby przetestować bibliotekę pakietów, wprowadzono nowy mechanizm rynkowy, aby efektywnie przydzielać uczestnikom usługi w oparciu o kombinatoryczną zasadę podwójnej aukcji. Mechanizm uwzględnia odpowiednie atrybuty mające zastosowanie w środowiskach przetwarzania w chmurze z korzyścią i satysfakcją zarówno użytkowników, jak i dostawców. W tej bibliotece pakietów odbywa się to na podstawie kosztów dla MIP-ów procesora oraz charakterystyk pozostałych(przepustowość, rozmiar pamięci RAM itp.) są traktowane po stronie maszyny wirtualnej, jeśli odpowiadają żądaniu.

CloudAuction został opracowany przez Youness Teimoury(QIAU) i Parnia Samimi (UKM).

Pobierz: CloudAuctionV2.0.zip (wydany 25 marca 2013).

CloudMIG Xpress

cloudmig Xpress ułatwia porównywanie i planowanie faz związanych z migracją systemów oprogramowania do środowisk chmurowych opartych na PaaS lub IaaS. Modele kodu można wyodrębnić z oprogramowania opartego na Javie, aby(1) modelować obecne wdrożenie systemu i wzbogacić go o obecny profil obciążenia, (2) porównać kompromisy, które muszą być wykonane w przypadku różnych opcji wdrażania w chmurze oraz (3) automatycznie przekształcić model systemu w model CloudSim,aby umożliwić zintegrowaną symulację różnych opcji wdrażania w chmurze w odniesieniu do przyszłych kosztów, czasów reakcji i naruszeń umowy SLA.

CloudMIG Xpress został opracowany przez Sorena Freya,Floriana Fittkau i zespół z grupy Inżynierii Oprogramowania,Uniwersytet w Kilonii, Kilonia, Niemcy.

Pobierz i więcej informacji: projekt na Sourceforge.

FederatedCloudSim

FederatedCloudSim (FCS) to wszechstronne i elastyczne rozszerzenie do frameworku CloudSim. Pozwala na wiele eksperymentów z Federacją chmur. FCS obsługuje umowy SLA i oferuje trzypoziomowe podejście do planowania dla maszyn wirtualnych (w centrach danych, między centrami danych tego samego dostawcy usług w chmurze (CSP) oraz między CSP w Federacji). FCS oferuje również elastyczny model finansowy do analizy wpływu różnych strategii planowania na przychody i zyski CSP oraz platformę aukcyjną dla wymiany maszyn wirtualnych.

FederatedCloudSim został opracowany przez naukowców z Uniwersytetu Technicznego w Dortmundzie w Niemczech. Szczegółowe informacje można znaleźć na stronie FederatedCloudSim.

CloudAnalyst

Cloud Analyst to narzędzie opracowane na University of Melbourne, które ma na celu wsparcie oceny narzędzi sieci społecznościowych zgodnie z dystrybucją użytkowników i centrów danych. W tym narzędziu scharakteryzowane są społeczności użytkowników i centra danych obsługujące sieci społecznościowe i, w oparciu o ich lokalizację, pozyskiwane/rejestrowane są takie parametry, jak userexperience podczas korzystania z aplikacji sieci społecznościowej i obciążenie centrum danych.

Pobierz: CloudAnalyst.zip (wydany 26 listopada 2009).

członkowie zespołu projektowego

Aktywni członkowie:

  • Rajkumar Buyya
  • Sara Kardani Moghaddam
  • Shashikant Ilager
  • TianZhang He
  • Amanda Jayanetti

Byli członkowie i współpracownicy:

  • Rodrigo N. Calheiros
  • Rajiv Ranjan
  • Anton Beloglazov
  • Nikolay Grozev
  • Saurabh Garg
  • Sareh Fotuhi Piraghaj
  • Marcos dias de Assuncao
  • Bhathiya Wickremasinghe
  • Jungmin Jay Son

Licencja oprogramowania

oprogramowanie Cloudsim Toolkit jest wydawane jako open source na licencji Apache w wersji 2.0.
Copyright the CLOUDS Lab, University of Melbourne, 2009-do tej pory.

publikacje

  • Jungmin Son i Rajkumar Buyya, CloudSimSDN-NFV: Modelowanie i symulacja wirtualizacji funkcji sieciowych i łańcuchów funkcji usługowych w Edge Computing Environments, SPE (recenzja).
  • Jungmin Son and Rajkumar Buyya, Priority-aware vm Allocation and Network Bandwidth Provisioning in Software-Defined Networking (SDN)-enabled Clouds, IEEE Transactions on Sustainable Computing (T-SUSC), Volume 4, Number 1, Pages: 17-28, ISSN: 2377-3782, IEEE Computer Society Press, USA, January-March 2019.
  • Sareh Fotuhi Piraghaj, Amir Vahid Dastjerdi, Rodrigo N. Calheiros, and Rajkumar Buyya, ContainerCloudSim: An Environment for Modeling and Simulation of Containers in Cloud Data Centers, Software: Practice and Experience, Volume 47, Number 4, Pages: 505-521, ISSN: 0038-0644, Wiley Press, New York, USA, April 2017.
  • Saurabh Kumar Garg i Rajkumar Buyya, NetworkCloudSim: Modelling Parallel Applications in Cloud Simulations,Proceedings of the 4th IEEE/ACM International Conference on Utility and CloudComputing (UCC 2011, IEEE CS Press, USA), Melbourne, Australia,5-7 grudnia 2011.
  • Rodrigo N. Calheiros, Rajiv Ranjan, Anton Beloglazov, Cesar A. F. DeRose, and Rajkumar Buyya, CloudSim: a Toolkit for Modeling andsimulation of Cloud Computing Environments and Evaluation of ResourceProvisioning Algorithms, Software: Practice and Experience (SPE), Volume 41, Number 1, Pages: 23-50, ISSN: 0038-0644, Wiley Press, New York, USA, January, 2011.
  • Bhathiya Wickremasinghe, Rodrigo N. Calheiros, Rajkumar Buyya, CloudAnalyst: A CloudSim-based Visual Modeller for Analysing CloudComputing Environments and Applications, Proceedings of the 24thinternational Conference on Advanced Information Networking and applications (Aina 2010), Perth, Australia, April 20-23, 2010.
  • Rajkumar Buyya, Rajiv Ranjan i Rodrigo N. Calheiros, Modeling and Simulation of Scalable Cloud Computing Environments and the CloudSim Toolkit: Challenges and Opportunities, Proceedings of the 7th High Performance Computing and Simulation Conference (HPCS 2009, ISBN: 978-1-4244-4907-1, IEEE Press, Nowy Jork, USA), Lipsk, Niemcy, 21-24 czerwca 2009.

niektóre publikacje wykorzystujące wyniki CloudSim

  • Anton Beloglazov i Rajkumar Buyya, Optimal Online Deterministic Algorithms and AdaptiveHeuristics for Energy and Performance Efficient Dynamic Consolidation ofVirtual Machines in Cloud Data Centers, Concurrency and Computation:Practice and Experience, Volume 24, Issue 13, Pages: Rodrigo Calheiros, Rajiv Ranjan and Rajkumar Buyya, Virtual MachineProvisioning Based on Analytical Performance and QoS in Cloud ComputingEnvironments, Proceedings of the 40th International Conference on ParallelProcessing (ICPP 2011), Taipei, Taiwan, September 13-16, 2011.
  • Linlin Wu, Saurabh Kumar Garg and Rajkumar Buyya, SLA-based ResourceAllocation for a Software as a Service Provider in Cloud Computing Environments, Proceedings of the 11th IEEE / ACM International Symposium on Cluster, Cloud andGrid Computing (CCGrid 2011), Los Angeles, USA, May 23-26, 2011.
  • Adel Nadjaran Toosi, Rodrigo N. Calheiros, Ruppa K. Thulasiran, Rajkumar Buyya, Resource Provisioning Policies to Increase IaaS Provider ‘ s Profit in a FederatedCloud Environment, Proceedings of the 13rd International Conference on High Performanceand Communications (HPCC 2011), Banff, Canada, September 2-4, 2011.
  • Anton Beloglazov i Rajkumar Buyya, energooszczędna alokacja maszyn wirtualnych w centrach danych w chmurze. Materiały z 10th IEEE / ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid 2010), Melbourne, Australia, 17-20 maja 2010.
  • Rodrigo N. Calheiros, Rajkumar Buyya, Cesar A. F. De Rose, budowanie zautomatyzowanego i samo-konfigurowalnego stanowiska testowego emulacji dla aplikacji grid.International Journal of Software: Practice and Experience, Volume 40, Issue 5, Pages: 405-429, Wiley Press, USA, April 2010.
  • Kyong Hoon Kim, Anton Beloglazov i Rajkumar Buyya, energooszczędne Udostępnianie zasobów w chmurze na potrzeby usług w czasie rzeczywistym. Proceedings of the 7th International Workshop on Middleware for grids, Clouds and e-Science, Urbana Champaign, Illinois, USA: ACM, 2009.
  • Rodrigo N. Calheiros, Rajkumar Buyya, Cesar A. F. De Rose, Aheuristic for Mapping Virtual Machines and Links in Emulation Testbeds, Proceedings of the 38th International Conference on Parallel Processing(ICPP 2009), Wiedeń, Austria, September 22-25, 2009.
  • aby uzyskać najnowszą listę, zobacz artykuły odwołujące się do CloudSim zgodnie z Google Scholar

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.