DE112012003307T5 - System zum Energieeinsparen bei Unternehmensdatenzentren - Google Patents

System zum Energieeinsparen bei Unternehmensdatenzentren Download PDF

Info

Publication number
DE112012003307T5
DE112012003307T5 DE112012003307.8T DE112012003307T DE112012003307T5 DE 112012003307 T5 DE112012003307 T5 DE 112012003307T5 DE 112012003307 T DE112012003307 T DE 112012003307T DE 112012003307 T5 DE112012003307 T5 DE 112012003307T5
Authority
DE
Germany
Prior art keywords
servers
server
manager
local
virtual machine
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE112012003307.8T
Other languages
English (en)
Inventor
Raffaele Giordanelli
Carlo Mastroianni
Agostino Forestiero
Domenico Talia
Giuseppe Papuzzo
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Consiglio Nazionale delle Richerche CNR
Universita della Calabria
Original Assignee
Consiglio Nazionale delle Richerche CNR
Universita della Calabria
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Consiglio Nazionale delle Richerche CNR, Universita della Calabria filed Critical Consiglio Nazionale delle Richerche CNR
Publication of DE112012003307T5 publication Critical patent/DE112012003307T5/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Small-Scale Networks (AREA)
  • Information Transfer Between Computers (AREA)
  • Supply And Distribution Of Alternating Current (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Die vorliegende Erfindung betrifft ein Verfahren zum Zuweisen einer Rechenlast zu den Servern eines Datenzentrums mittels virtueller Maschinen, die auf eine Reduktion der in dem Datenzentrum verbrauchten Energie und gleichzeitig Aufrechterhalten eines angemessenen Dienst-Levels für die Kunden des Datenzentrums selbst abzielen.

Description

  • Die vorliegende Erfindung betrifft ein System zur Energieeinsparung bei Unternehmensdatenzentren.
  • Detaillierter betrifft die vorliegende Erfindung ein Verfahren der Zuweisung einer Computerbelastung zu den verschiedenen Servern eines Datenzentrums mittels virtueller Maschinen (”Virtuelle Maschinen”, VM), welche abzielt auf eine Reduktion der im Datenzentrum verbrauchten Energie, wobei gleichzeitig ein angemessenes Dienste-Niveaus für die Kunden desselben Datenzentrums aufrechterhalten wird.
  • Das Aufkommen des ”Cloud”-Computings repräsentiert einen radikalen Perspektivenwandel bei der Verwaltung von Informatik-Infrastrukturen für Unternehmen jeglicher Größenordnung und für die wissenschaftlichen Gemeinden. [Buy09]. Der Hauptvorteil für die Unternehmen besteht darin, dass es nicht mehr notwendig ist, ein eigenes Datenzentrum zu verwalten, mit entsprechenden Kosten und Verwaltungsbelastungen, sondern es möglich ist, Daten und die Verarbeitung der ”Cloud” (Wolke) anzuvertrauen, das heißt von Datenzentren und spezialisierten Unternehmen angebotenen Bezahldiensten. Beispielsweise ist es möglich, einen Web-Server in einer Cloud anstelle eines lokalen Computers durchzuführen, eine Wahl, die bemerkenswerte Vorteile im Hinblick auf bessere Garantie von Sicherheit und Datenverfügbarkeit (beispielsweise Abwehr gegenüber Hackern wird durch professionelle Betreiber verwaltet) impliziert, und viel kleinere Risiken, wenn nicht sogar Null Risiken, des Unterschätzens oder Überschätzens der notwendigen Ressourcen.
  • Nichts desto weniger ist es notwendig, dem Problem der Energieeinsparung in Datenzentren Aufmerksamkeit zu geben, aufgrund der großen Menge an Energie, die zur Versorgung sowohl der Server selbst als auch der Kühlsysteme notwendig ist. Es ist geschätzt worden, dass die verbrauchte Energie für die IT-Infrastrukturen allein in den Vereinigten Staaten 120 Milliarden kWh entsprechen, entsprechend etwa 3% der gesamten erzeugten elektrischen Energie [Bel10]. Der Energieverbrauch beeinträchtigt ersichtlich sowohl die Kosten des Unternehmens, dem die Datenzentren gehören, als auch ihre Kunden, und hat aufgrund der CO2-Emissionen auch große Umweltauswirkungen.
  • Der Energieverbrauch wird durch zwei wichtige Ineffizienzquellen beeinflusst: auf der einen Seite sind im Durchschnitt die Server nur 20 bis 30% ihrer Kapazität ausgelastet, was eine bemerkenswerte Verschwendung von Ressourcen ist [Bar07]. Andererseits verbraucht ein Server bei kleiner Last etwa 70% des Stroms, den derselben Server bei Volllast verbraucht [Gre09].
  • Die am meisten eingesetzte Technik zum Beheben des Problems ist die ”Konsolidierung” der Anwendungen, das heißt ihre Sammlung auf der kleinstmöglichen Anzahl von Servern, um so in der Lage zu sein, die nicht verwendeten Server zu deaktivieren oder in einen Niedrigverbrauchsmodus zu bringen [Bel11]. Die Konsolidierungsoperation ist aufgrund der ”Virtualisierung” möglich: die Anwendungen werden virtuellen Maschinen (VM) assoziiert, die gleichzeitig auf demselben Server ausgeführt werden können, falls dieser die notwendigen Ressourcen hat, und können zur Laufzeit von einem Server zum anderen ”migriert” werden [Ver08, Bel10].
  • Das Problem der optimalen Verteilung der VM auf den Server kann zum Problem des ”Bin-Packings” zurückverfolgt werden, das heißt der Allokation einer Anzahl von Objekten variabler Dimensionen (in unserem Fall VM mit Anfragen an heterogener Last) zu einer minimalen Anzahl von Containern (in unserem Fall dem Server) [Ver08, Sti09]. Unglücklicherweise ist dies ein NP-hartes Problem [Yue91], dessen optimale Lösung eine exponentielle Zeit erfordert, und sie ist daher unmöglich, in einem Datenzentrum mit mehreren Zehn oder Hunderten von Servern erreicht zu werden. Es sind Algorithmen erdacht worden, die in der Lage sind, zu suboptimalen Lösungen zu gelangen [Maz10, Ver08, Bel10], die aber einige wichtige Nachteile zeigen:
    • 1) Sie befasst sich mit zentralisierten Lösungen, das heißt Lösungen, welche erfordern, dass ein zentraler Manager stets aktualisierte Informationen zu den einzelnen Servern aufweist, was bei großen und dynamischen Datenzentren wie denjenigen, die für Cloud-Computing verwendet werden, ersichtlich problematisch ist;
    • 2) die Lösungen erfordern im Allgemeinen die gleichzeitige Reallokation einer beachtlichen Anzahl von VM, was Leistungseinbrüche und Dienstniveau-Einbrüche für die Anwender mit sich bringen kann;
    • 3) jedenfalls können die eingesetzten heuristischen Techniken nur garantieren, eine Anzahl von Servern in Aktivität zu halten, die um etwa 20% höher ist als die minimale Anzahl von Servern [Yue91].
  • Das Problem, das man zu lösen wünscht, besteht in der Reduktion der verbrauchten Energie im Datenzentrum, wobei gleichzeitig ein geeignetes Dienstniveau, das den Kunden des Datenzentrums selbst angeboten wird, aufrecht erhalten wird. Im Falle von Cloud-Computing-Anwendungen ist dies tatsächlich zum Einhalten der vertraglichen Beschränkungen mit den Kunden notwendig.
  • Das Subjekt von Energieverbrauch in den Datenzentren wird in den nächsten Jahren dominant werden, im Hinblick sowohl auf Effizienz als auch Steuerung und Verwaltung. Die Energieeinsparstrategien werden verschiedene Formen annehmen, von der Einführung grüner Technologien – wie etwa Wasserkühlsystemen und anderen Kühlmitteln auf Maschinenniveau – bis zur Echtzeitverwaltung der Infrastruktur, die es gestattet, die Ressourcen auf Basis von Arbeitslast zu bewegen.
  • Auch der durch den Server besetzte physische Raum hat seinen Einfluss. Heute tendieren die Unternehmen dazu, die Server-”Racks” (Einbauschränke) in einem beschränkten Raum zu konzentrieren, aber dies hält die Temperatur und als Folge die Elektrizitätsrechnung für das Kühlen: Gartner zufolge wird die Tendenz, die Racks zu bündeln, im gesamten Jahr 2012 andauern und das Top-Management wird bald realisieren, dass die Energiekosten der IT, bereits heute hoch, nur einen Bruchteil derjenigen sein werden, die die Budgets morgen belasten werden. Gartner berechnet, dass in drei Jahren die Energie-Kosten eines Servers höher sein werden als die Kosten des Servers selbst. Und bei den jährlichen Wachstumstrends ist es wahrscheinlich, dass die Server-Betriebskosten bald gleich den Kapitalkosten werden. Ein Rack von 40 kW könnte jedes Jahr bis zu 5400 Dollar pro Server kosten.
  • Daher die Notwendigkeit eines neuen Datenzentrums, mit Design auf dem Stand der Technik, zum Reduzieren von sowohl Kapital- als auch Betriebskosten und zum Erhalten von höheren Rechenleistungen pro Kilowatt. Einige Lösungen zum Reduzieren des Energieverbrauchs im Datenzentrum können die Verwendung von Kühlung auf Rack- und Reihen-Niveau für Ausrüstung bei höherer Dichte sein, welche den Verbrauch um 15% reduzieren können, während die Dimensionierung des Datenzentrums auf Basis ihrer Berechnung benötigt, und Erweitern nur, wenn notwendig, die operativen Kosten langfristig um 10 bis 30% senken können.
  • Das Patentdokument WO2007063132 befasst sich mit virtueller Maschinenverwaltung auf einem oder mehr Servern. Die Absicht besteht darin, den Sitzungszustand der virtuellen Maschinenumgebung zu überwachen, um Zugriff auf sie durch entfernte Anwender zu gestatten. Die Zustände können sein: Aktiv, Pause, Übergang, etc.. Eine Software eines virtuellen Maschinen-Managers gestattet es, die Sitzungszustände zu überwachen und wenn beispielsweise eine Sitzung zu langsam fortschreitet, wird sie dazu gebracht, auf eine andere virtuelle Maschine zu migrieren. Das Patentdokument betrachtet nicht das Problem der virtuellen Maschinenzuweisung zu mehreren Servern, außer von Sitzungen und ihrem Zustand, um so soviele Server als möglich abzuschalten, um Energie zu sparen.
  • Das Patent US2005108709 stellt sich dem Problem des Allozierens einer virtuellen Maschinengruppe zu verschiedenen simultanen Kunden, welche den Bedarf haben, diese virtuellen Maschinen zu verwenden. Im Stand der Technik wird dies virtuelles Desktop-Allozierungsproblem genannt. In den Absätzen [0007] und [0079] sagt das Dokument aus, dass die virtuellen Maschinen zwischen den Wirten unter Verwendung eines Balance-Algorithmus der Last so verteilt werden, dass ”Elaborierungszeiten optimiert werden”. Nun ist das Optimieren von Elaborierungszeiten sehr schwierig in Bezug auf die Optimierung des Gesamtverbrauchs der Maschinen.
  • Das Patentdokument US2011010709 beschreibt ein Verfahren zum Optimieren der Systemleistungsfähigkeiten unter Verwendung von extra Prozessorkernen in einer virtuellen Umgebung. Dieses Verfahren ist nicht spezifisch zum Energiesparen ausgelegt und verwendet in jeglichen Fällen einen deterministischen Ansatz (siehe Absatz [0005], der nicht adaptiv und skalierbar erscheint.
  • Die Artikel von Agostino Forestiero et al ”Towards a Self-structured Grid: An Ant-Inspired P2P Algorithm”, 1. Januar 2008, und Agostino Forestiereo et al ”A proximity-based self-organizing framework for service composition and discovery”, 17. Mai 2010, offenbaren Algorithmen in einem Framework von verteiltem Gitter (Dsitributed grid)/P2P und in einer öffentlichen Umgebung. Das Ziel der Algorithmen besteht darin, die Ressourcen zu organisieren, um die Suchprozeduren zu vereinfachen und zu beschleunigen, ohne Bezugnahme auf die Energieeinsparung während der Verwendung der Server.
  • Es ist die Aufgabe der vorliegenden Erfindung, ein Verfahren zum Zuweisen von Computerlasten zwischen den Servern eines Datenzentrums bereitzustellen, welches die Probleme löst und die Nachteile des Stands der Technik überwindet.
  • Es ist ein zusätzliches spezifisches Ziel der vorliegenden Erfindung, die Ausrüstung und die Mittel bereitzustellen, die zum Realisieren des Verfahrensziels der vorliegenden Erfindung notwendig sind.
  • Gegenstand der vorliegenden Erfindung ist ein Verfahren für die Zuweisung von virtuellen Maschinenwirts-Applikationen an Server einer Mehrzahl von Servern in einem Daten- oder Rechenzentrum, für die Konsolidierung der besagten virtuellen Maschinen, zu jedem Zeitpunkt, zu dem die Mehrzahl von Servern in eine Untermenge aktiver Server, die alle eine gewisse Anzahl vom virtuellen Maschinen bewirten, und eine Untermenge inaktiver Server unterteilt sind, wobei das Verfahren dadurch gekennzeichnet ist, dass es einen zentralen Manager (ξ) des Datenzentrums und eine Mehrzahl lokaler Manager in einer Anzahl entsprechend derjenigen der Server der Mehrzahl von Servern einsetzt, und darin, dass die folgenden Schritte ausgeführt werden:
    S1: Zumindest für einen, für die Untermenge aktiver Server relevanten lokalen Manager, individuell Ausführen eines Bernoulli-Tests auf Basis einer Wahrscheinlichkeitsfunktion, die von dem Besetzungsprozentsatz von Berechnungs-Ressourcen des zumindest einen lokalen Managers abhängt, und für Besetzungswerte von Berechnungs-Ressourcen des zumindest einen lokalen Managers höher als ein vorgegebener Schwellenwert Null ist, und Deklarieren der Verfügbarkeit zum Akzeptieren oder nicht der Zuweisung einer neuen virtuellen Maschine, wobei der zentrale Manager eine Liste verfügbarer Server auf Basis der Verfügbarkeit des zumindest einen lokalen Managers konstruiert;
  • Das Ausführen des Bernoulli-Tests wird einmalig für lokale Manager durchgeführt, das heißt für die lokalen Server, und kann sehr gut für denselben lokalen Manager oder dem einen zentralen anstelle des einen lokalen vorgenommen werden, wenn der letzte einmal seine Zustandsdaten an den zentralen Manager gesendet hat. Daher sind verschiedene Ausführungsformen möglich.
  • Und dabei, wenn es eine neue einem Server zuzuweisende virtuelle Maschine gibt, wird der zentrale Manager:
    S2: Falls die Liste verfügbarer Server zumindest ein Element enthält, aus den Elementen der Liste den Server auswählen, dem die neue virtuelle Maschine zuzuweisen ist, und weist sie der Ersteren zu;
    S3: falls die Liste verfügbarer Server kein Element enthält, einen Server aktivieren in einem Untersatz von inaktiven Servern und ihn der virtuellen, zuzuweisenden Maschine zuweisen.
  • Wenn einmal die Server ihre Verfügbarkeit zur Akzeptierung einer virtuellen Maschine (neu oder von einem anderen Server nach Migration kommend) angegeben haben, könnte die Auswahl eines von ihnen einfach zufällig sein oder mit anderen Faktoren verknüpft. Beispielsweise könnte der zentrale Manager den Server, der die kleinste CPU-Auslastung aufweist (oder besser, höher, in der Perspektive des Belastens von weiteren bereits belasteten Servern), den einen, der die kleinste Speicherauslastung etc. aufweist, den einen, der in jüngster Zeit oder späterer Zeit aktiviert worden ist etc. auswählen. Diese Generalisierung unterläuft in keinster Weise die Kernerfindungsidee, die darin besteht, den einzelnen Servern zu gestatten, zu entscheiden, ob Verfügbarkeit bereitgestellt wird, nach einem Bernoulli-Wahrscheinlichkeitstest mit Wahr/Falsch-Ergebnis. Es muss angemerkt werden, dass tatsächlich die Zentralmanagerverpflichtung, ihre Entscheidung auf die Servergruppe zu beschränken, welche erklärt hat, verfügbar zu sein, unverändert bleibt. Es ist diese Verpflichtung, die das skalierbare Verhalten des Algorithmus garantiert. Das zusätzlich mögliche Kriterium, das verwendet wird, um die Auswahl zu treffen, unterminiert das globale Verhalten und die Datenzentrums-Leistungsfähigkeiten nicht, kann aber nützlich zum Erfüllen sekundärer Beschränkungen sein, als eine Funktion der Anforderungen und der Anfragen der Systemadministratoren.
  • Vorzugsweise führt gemäß der Erfindung der zumindest eine lokale Manager von Schritt S1 den Schritt S1 nur durch, nachdem er kontrolliert hat, dass einige vorbestimmte Bedingungen erfüllt sind, wie etwa beispielsweise die Tatsache, dass die Besetzung des RAM-Speichers oder die Verwendung der Disks unter gewissen Schwellenwerten sind.
  • Die Verfügbarkeit des einzelnen Servers zum Akzeptieren einer virtuellen Maschine (neu oder von einem anderen Server nach einer Migration stammend) könnte nicht nur vom Bernoulli-Test abhängen, sondern auch von anderen Beschränkungen. Beispielsweise könnte ein Server zuerst verifizieren, ob einige Beschränkungen erfüllt sind (z. B. die Auslastung des RAM-Speichers oder die Disk-Verwendung müssen unter gewissem Schwellenwert bleiben), und nur falls sie erfüllt sind, würde er den Bernoulli-Test durchführen. Falls sie nicht erfüllt sind, würde er seine Verfügbarkeit sofort verneinen. Auch diese Variation unterminiert nicht die Kernerfindungsmethodologie. Der Effekt des Berücksichtigens anderer Beschränkungen ist nur derjenige des Reduzierens der Menge von Servern, die den Bernoulli-Test durchführen, und als Folge die Menge von Servern, welche ihre Verfügbarkeit nach dem Test geben werden. Nichts desto weniger verbleibt die statistische/probabilistische Natur des Algorithmus unverändert und es bleibt die Verpflichtung des zentralen Managers, aus den Servern zu entscheiden, die ihre Verfügbarkeit angegeben haben.
  • Vorzugsweise wird gemäß der Erfindung Schritt S1 nachfolgend dem folgenden Vorabschritt durchgeführt:
    S0. Der zentrale Manager rundfunkt eine Anfrage nach Verfügbarkeit an Wirte der neuen virtuellen Maschine, die der Anzahl von lokalen Managern eines Teils der Untermenge der aktiven Server zuzuweisen sind, wobei der zumindest eine lokale Manager von Schritt S1 der Anzahl von lokalen Managern entspricht.
  • Vorzugsweise wird gemäß der Erfindung die Anfrage der Verfügbarkeit an alle Server der Untermenge von aktiven Mengen gesendet.
  • Vorzugsweise wird gemäß der Erfindung Schritt S1 durch den zentralen Manager durchgeführt, wobei zumindest ein lokaler Manager zuvor an den zentralen Manager die Daten gesendet hat, die zur Ausführung des Bernoulli-Tests notwendig sind.
  • Vorzugsweise wird gemäß der Erfindung Schritt S1 durch den zumindest einen lokalen Manager durchgeführt.
  • Bernoulli-Tests können auf einem einzelnen Server durchgeführt werden. Nichts desto weniger ist eine äquivalente Lösung diejenige, dass der Manager den Test anstelle des einzelnen Servers durchführt. Falls nämlich der Manager die Daten zum einzelnen Serverzustand erhalten kann, kann der Manager selbst die Tests durchführen und kann entscheiden, welche Server verfügbar sind und welche nicht. Die Algorithmuslogik ändert sich auf diese Art evidenterweise nicht, aber die Modifikation gestattet es, die materielle Ausführung von Funktionalität (d. h. die Bernoulli-Test-Ausführung) vom einzelnen Server zum zentralen Manager zu verschieben. Was wichtig ist, ist, dass das Testergebnis, selbst falls durch den Manager durchgeführt, von der Verwendung der CPU auf dem einzelnen Server abhängt, da diese zuvor aus dem Server an den Manager gesendet wurde.
  • Vorzugsweise kann gemäß der Erfindung der festgestellte Schwellenwert während der Zeit auf Basis von Anforderungen geändert werden.
  • Die verwendeten Schwellenwerte und Parameter in den probabilistischen Funktionen des Bernoulli-Tests (sowohl für die Zuweisung als auch für die Migration) können manuell oder automatisch beispielsweise auf Basis der Gesamtbelastung oder von Kriterien modifiziert werden, die jedes Mal durch den Systemadministrator etabliert werden. Beispielsweise etabliert einer der Schwellenwerte den durch die CPU verwendeten Maximalwert, hinter dem der Bernoulli-Test ein negatives Ergebnis ergeben muss. Der Schwellenwert kann abhängig vom Konsolidierungsgrad, den man erhalten möchte, fixiert sein. Falls beispielsweise der Wert des Schwellenwerts von 80% zu 90% modifiziert wird, stellt er sicher, dass die Server intensiver genutzt werden und daher ist es möglich, eine größere Anzahl von Servern zu deaktivieren, aber man geht auf der anderen Seite ein größeres Risiko ein, dass eine Belastung einer virtuellen Maschine einen Server überlasten könnte. Der Wert dieser Parameter und die Weise, durch welche sie eingerichtet werden können, beeinflussen ganz klar nicht in irgendeiner Weise den Basis-Algorithmus, der durch seine Natur parametrisierbar ist.
  • Vorzugsweise wird gemäß der Erfindung Schritt S1 in einer kontinuierlichen Weise spontan durch alle Server der Untermenge von aktiven Mengen (μ) durchgeführt.
  • Vorzugsweise ist gemäß der Erfindung, falls die zuzuweisende virtuelle Maschine von einem Server der Untermenge von aktiven Servern zu transferieren ist, der vorgegebene Schwellenwert um einen vorbestimmten realen Positivwert Δ kleiner als der in dem Fall, wenn die zuzuweisende virtuelle Maschine nicht aus einem Server der Untermenge aktiver Server zu transferieren ist.
  • Vorzugsweise ist gemäß der Erfindung die Wahrscheinlichkeitsfunktion auf eine solche Weise definiert, dass, falls ein für den lokalen Manager relevanter Server eine Berechnungslast kleiner als ein erster Schwellenwert oder größer als ein zweiter Schwellenwert aufweist, sie dazu tendiert, eine neue virtuelle Maschine zu verweigern, zugewiesen zu werden, während, falls sie eine mittlere Berechnungslast aufweist, sie dazu tendiert, sie zu akzeptieren, zum Zwecke des Favorisierens der Konsolidierung.
  • Vorzugsweise gemäß der Erfindung, falls eine gegebene Zeit eines lokalen Managers keine auf einem relevanten lokalen Server laufende virtuelle Maschine aufweist, deaktiviert sich der Letztere und schaltet ab.
  • Vorzugsweise wählt gemäß der Erfindung im Schritt S2 der zentrale Manager beliebig aus den Elementen der ersten Liste aus.
  • Es ist ein zusätzlicher spezifischer Gegenstand der vorliegenden Erfindung ein Computerprogramm, dadurch gekennzeichnet, dass es Codemittel umfasst, die eingerichtet sind, wenn sie dazu gebracht werden, auf einer ausgearbeiteten elektronischen Einheit abzulaufen, die Aktionen eines zentralen Managers gemäß dem Verfahrensgegenstand der Erfindung auszuführen.
  • Ein weiterer spezifischer Gegenstand der vorliegenden Erfindung ist ein Computerprogramm, dadurch gekennzeichnet, dass es Codemittel umfasst, die eingerichtet sind, wenn sie dazu gebracht werden, auf einer Ausarbeitungs-Elektronikeinheit abzulaufen, die Aktionen eines lokalen Managers gemäß dem Verfahrensgegenstand der Erfindung auszuführen.
  • Es ist ein weiterer spezifischer Gegenstand der vorliegenden Erfindung ein Rechen- oder Datenzentrum, das eine Mehrzahl von Servern und eine Verwaltungszentral-Elektronikeinheit des Rechenzentrums umfasst, dadurch gekennzeichnet, dass auf jedem Server der Mehrzahl von Servern, auf dem das Computerprogramm des lokalen Servers gemäß der Erfindung gebracht wird, zu laufen, und auf der Verwaltungszentral-Elektronikeinheit, auf der das Computerprogramm des zentralen Servers gemäß der Erfindung gebracht wird zu laufen, weiter Mittel für die Kommunikation und Steuerung zwischen der Verwaltungszentral-Elektronikeinheit und den Servern der Mehrzahl von Servern vorgesehen sind.
  • Die Erfindung wird nunmehr illustrativ, aber nicht beschränkend, unter insbesonderer Bezugnahme auf die Figuren der beigefügten Zeichnungen beschrieben, wobei:
  • 1 eine VM-Zuweisung und Migration in einem Datenzentrum gemäß einem typischen Szenario zeigt, in welchem das Verfahren der Erfindung anwendbar ist;
  • 2 eine Verbindung für das entfernte Ein/Aus-Schalten eines Servers gemäß der bekannten Technik zeigt, die ”Wake On LAN” (WOL) genannt ist;
  • 3 Zuordnungswahrscheinlichkeits-Funktionsbeispiele zeigt, entsprechend verschiedener Anzahlen von involvierten Servern gemäß der vorliegenden Erfindung.
  • Die vorliegende Erfindung verfolgt die Aufgabe der Konsolidierung mittels zwei Arten von statistischen Prozeduren für die Anfangszuweisung der virtuellen Maschine (VM) an die Server und für ihre Laufzeitmigration.
  • Detaillierter wird eine neue VM einem der Datenzentrumsserver nachfolgend der Ausführung der Bernoulli-Tests zugewiesen, das heißt statistischer Tests, die als Ergebnis ”Wahr” oder ”Falsch” haben können. Solche Tests werden lokal auf den einzelnen Servern ausgeführt und die Erfolgswahrscheinlichkeit hängt von der aktuellen Verwendung der Server ab, anhand der bereitgestellten Wahrscheinlichkeitsfunktionen. Der Server, der eine niedrige Last hat, tendiert dazu, eine neue VM zurückzuweisen, um sie selbst zu entladen, und deaktiviert zu werden. Ähnlich tendieren die Server mit hoher Last dazu, eine neue VM zurückzuweisen, diesmal, um Überlastungssituationen zu vermeiden, die zu Leistungseinbrüchen und zum Bruch von Vertragsvereinbarungen führen können, welche mit den Kunden vereinbart sind. Andererseits tendieren die Server mit mittlerer Last dazu, neue VMs zu akzeptieren, um so die Konsolidierung zu bevorzugen.
  • Weiterhin sieht die Erfindung die Möglichkeit vor, eine Migration zur Laufzeit vorzunehmen, das heißt die VM von einem Server zu einem anderen zu transferieren, wenn dies dazu dienen kann, die Konsolidierung zu verbessern oder die Leistungen zu vergrößern. Auch geschehen die Migrationen den Bernoulli-Tests nachfolgend und auch in diesem Fall werden die Entscheidungen, das heißt, ob die Migration einer VM nachzufragen ist, oder eine migrierte VM zu akzeptieren ist, auf Basis von Informationen getroffen, die auf den verschiedenen Servern lokal verwaltet werden.
  • 1 beschreibt das Referenzszenario für die Zuweisungsprozedur der VM zu den Servern und für die VM-Dynamik-Migrationsprozedur.
  • Die Anforderung zur Ausführung einer Anwendung λ wird vom Klienten zum Manager (oder Front-Ende) ξ des Datenzentrums gesendet, die eine für diese Art von Anwendung geeignete VM auswählt, auf Basis der Charakteristika, beispielsweise der Menge an verlangten Ressourcen (CPU, Speicher, Speicherplatz) und der Art von Betriebssystem, das durch den Kunden spezifiziert ist. Danach wird die VM einem der Server mittels einer Zuweisungsprozedur zugewiesen. Eine solche Prozedur ist allgemein wie folgt definiert.
  • Das Front-End sendet die Anforderung als Rundfunk (Broadcast; es ist anzumerken, dass rundgefunkte Anforderungen einfach und billig bei dieser Art von Umgebung sind) an alle Server oder eine Untermenge von ihnen. Jeder Server führt den Bernoulli-Test aus, um exklusiv auf Basis von lokaler Information (Rechenlast) zu entscheiden, ob die Anfrage zu akzeptieren ist oder nicht. Die Wahrscheinlichkeit zur Akzeptanz hängt von der aktuellen Verwendung der CPU und dem maximal akzeptierbaren Wert für die Verwendung der CPU ab (beispielsweise 90%). Die Wahrscheinlichkeitsdefinition ist auf solche Weise definiert, dass die Server mit kleinen oder großen Lasten dazu tendieren, die neue VM zurückzuweisen, während die Server mit mittlerer Last dazu tendieren, sie zu akzeptieren, mit dem Ziel, die Konsolidierung zu fördern.
  • Detaillierter und Bezug nehmend auf 3 ist die Wahrscheinlichkeitsfunktion des Bernoulli-Tests für Werte der CPU-Verwendung im Bereich zwischen 0 und dem maximalen akzeptablen Wert (es sei 90% angenommen) definiert, und nimmt Werte zwischen 0 und 1 an. Um das beschriebene Ergebnis zu erhalten, nimmt die Funktion Werte nahe an 0 (niedrige Zuordnungswahrscheinlichkeit) für Werte der CPU-Auslastung nahe an den Grenzen an, während sie Werte nahe 1 (hohe Zuweisungswahrscheinlichkeit) für Zwischenwerte der CPU-Auslastung annimmt.
  • Nach Empfangen der Antwort aus den unterschiedlichen Servern μ, ν, weist der Front-End zufällig die VM einem von ihnen zu, ohne daher irgendeinen komplexen und zentralisierten Algorithmus ausführen zu müssen. Falls kein Server sich selbst als frei erklärt, bedeutet dies, dass mit maximaler Wahrscheinlichkeit die aktuell aktiven Server nicht in der Lage sind, die Last zu unterstützen, und daher wird ein neuer Server aktiviert, welchem die VM zugewiesen wird.
  • Dies ist nicht die einzig mögliche Wahl. Beispielsweise könnte der zentrale Manager den Server, der die kleinste CPU-Auslastung aufweist (oder selbst sogar besser größer im Hinblick auf noch mehr Belasten bereits belasteter Server), denjenigen, der die kleinste Speicherauslastung aufweist, etc., denjenigen, der zuletzt oder seit gewisser Zeit aktiviert worden ist, etc. auswählen. Diese Generalisierung unterläuft in keinster Weise die Kernerfindungsidee, die darin besteht, die einzelnen Server dazu zu bringen, zu entscheiden, ob sie ihre Verfügbarkeit bereitstellen, nachdem sie einen Bernoulli-Wahrscheinlichkeitstest mit Wahr/Falsch-Ergebnis durchgeführt haben. Es ist wichtig anzumerken, tatsächlich, dass es Verpflichtung des zentralen Managers bleibt, seine Auswahl innerhalb der Servergruppe, die als verfügbar deklariert worden ist, zu halten. Es ist diese Verpflichtung, welche das skalierbare Verhalten des Algorithmus garantiert. Das mögliche Zusatzkriterium, das verwendet wird, um die Auswahl zu treffen, unterläuft nicht die globale Verhaltens- und Datenzentrums-Leistungsfähigkeit, kann aber nützlich zum Erfüllen sekundärer Beschränkungen sein, als eine Funktion der Anforderungen und der Systemadministratorenanfragen.
  • Bezüglich der Migration ist es wichtig, anzumerken, dass die VM-Last hoch variabel ist, wobei man an Beispiele des Falls einer VM denken kann, die ein Server-Web eines Kunden laufen lässt. Daher können auch als Folge einer optimalen Zuweisung die Lastvariationen die Online-Migration der VM von einem Server zu einem anderen erfordern.
  • Die Migrationsprozedur wird vorzugsweise lokal durch den einzelnen Server gestartet, in dem Moment, in welchem er seine eigene Last zu klein feststellt (und es daher besser wäre, den Server vollständig zu entlasten, um so in der Lage zu sein, ihn zu deaktivieren), oder zu groß. Wenn ein Server entscheidet, eine VM fähig zu machen, zu migrieren, führt er eine statistische Prozedur ähnlich zu der Zuweisung durch, wobei er nur die Wahrscheinlichkeitsfunktion des Bernoulli-Tests etwas ändert. Detaillierter betrifft die Variation der Definition des maximal akzeptablen Werts für die CPU-Verwendung, einen Wert, der etwas niedriger (beispielsweise 10%) als derjenige in der Zuweisungsprozedur ist. Dies ist nützlich, um zu garantieren, dass im Falle einer Migration aufgrund einer Überlastung die VM zu einem Server mit einer effektiv kleineren Last migriert, um so eine neue Zwischenmigration zu vermeiden, die durch Überlastung verursacht wäre.
  • Die Energieeinsparung basiert auf der Möglichkeit, die Server des Datenzentrums als eine Funktion der Anfragelast ein- oder auszuschalten, wobei die doppelte Aufgabe des Minimierens der Anzahl von eingeschalteten Servern und Maximieren der Dienstqualität (”Quality of Service”, QoS) berücksichtigt wird.
  • Bezug nehmend auf 2 kann das Ausschalten eines Servers aus dem lokalen Manager entschieden werden, der auf dem einzelnen Server läuft, auf Basis der Last, und mittels eines Abschaltbefehls auftritt. Während das Abschalten eines Servers lokal über Software ausgeführt werden kann, erfordert das Einschalten durch Fernsteuerung die Unterstützung der Hardware. Eine solche Unterstützung wird durch Wake an LAN (WOL) Netzwerkschnittstellenkarten bereitgestellt, basierend auf einem Ethernet-Standard, der es gestattet, einen Computer im Standby von einer entfernten Station aus zu starten, vorausgesetzt, dass die MAC-Adresse bekannt ist, indem das sogenannte Magische Paket (Magic Packet) an das LAN gesendet wird. Die fragliche Computer-Hauptplatine (MB) muss mit einer geeigneten Verbindung (WAKEUP-LINK genannt) versehen sein und muss mit der Netzwerkschnittstellenkarte mittels eines speziellen Kabels verbunden sein. Jedoch ist es seit wenigen Jahren, falls sowohl die Hauptplatine als auch die Netzwerkschnittstellenkarte dem PCI-Standard 2.2 unterstützen, im Allgemeinen das Kabel nicht notwendig, da, wie auch im Falle eines abgeschalteten Computers, die PCI-Steckplätze mit Bereitschaftsspannung betrieben werden. Mit der Einführung des PCI-Release 2.2 ist tatsächlich Unterstützung für PME (Power Management Events) hinzugefügt, so dass die PCI-Karten Signale austauschen könnten, selbst wenn der Computer ausgeschaltet ist.
  • Vom Standpunkt von Software ausgehend, beinhaltet die Erfindung zwei fundamentale Komponenten, eine für den System-Manager und eine für den einzelnen Server. Die Software wird in einer Mehrzahl von Programmiersprachen (C, Java) und in verschiedenen Versionen entwickelt, um sich selbst an die verschiedenen Arten von Datenzentren (Eucalyptus, VMWare, Amazon etc.) anzupassen.
  • Die zentrale Manager-Software führt in einer Ausführungsform die folgenden Funktionalitäten durch:
    • 1. Im Rundfunk Senden der Anfrage zum Akzeptieren einer VM;
    • 2. zufälliges Auswählen (oder gemäß einem anderen Vorteilskriterium, wie oben spezifiziert) zwischen den verfügbaren Servern den einen, der die VM zu allozieren haben wird;
    • 3. im Falle, dass kein Server verfügbar ist, Aktivieren eines neuen Servers und Auffordern, die VM zu allozieren.
  • Die einzelne Server-Software verwaltet das Überwachen der lokalen Last, und um die essentiellen Primitiven der Plattform (zentraler Manager) bereitzustellen, d. h.:
    • 1. Aktivieren des lokalen Servers weiter auf die Anfrage des Managers hin;
    • 2. Abschalten des lokalen Servers, wenn es keine aktive VM gibt;
    • 3. Antworten im Rundfunk auf die Anfragen und Deklarieren ihrer Verfügbarkeit zum Akzeptieren einer VM auf Basis der lokalen Last;
    • 4. Allozieren einer VM beim Anfragen des Managers;
    • 5. Anfordern der Migration einer VM (oder, abhängig von den Versionen, Delegieren dieser Aktivität mit einem Manager).
  • Das System kann sich selbst mit existierenden Cloud-Plattformen integrieren, zum Beispiel mit ”Elastic Computer Cloud” (EC2) von Amazon, einem Dienst vom IaaS-(”Infrastructure-as-a-Service”)Typ, basierend auf der XEN-Virtualisierungs-Technologie. Durch die Integration des Managers mit den VM-Verwaltungsinstrumenten von EC2 (EC2ool) ist es möglich, die für den Manager notwendigen Funktionalitäten zu implementieren.
  • Beispiel der Zuweisungsprozedur
  • Ein Kunde fordert die Ausführung einer Anwendung am Front-End an, welche die Anwendung mit einer VM assoziiert. Das Front-End (zentraler Manager) sendet die Anfrage rundfunkend an die Server, und fordert für ihn an, ob sie zum Ausführen der VM verfügbar sind. Jeder Server evaluiert die lokale Verwendung der CPU und führt einen Bernoulli-Test aus, um zu entscheiden, ob er sich selbst verfügbar macht oder nicht.
  • Beispielsweise evaluiert ein Server mit einer niedrigen Verwendung der CPU (man nehme 10% an) die Wahrscheinlichkeitsfunktion der Zuweisung in 3, das, die niedrige Last berücksichtigend, einen niedrigen Wert annehmen wird, beispielsweise 0,03.
  • An diesem Punkt ist es notwendig, den Bernoulli-Test durchzuführen. Daher extrahiert man eine Zufallszahl zwischen 0 und 1 (oder äquivalent zwischen 0 und 100, was eine Wahrscheinlichkeit ist); falls dieser Extrahierwert kleiner als 0,03 ist, erklärt sich dann der Server selbst verfügbar.
  • Dies bedeutet, dass dem Bernoulli-Test folgend nur mit 3% der Wahrscheinlichkeit der Server sich selbst zum Ausführen der VM verfügbar macht. Andererseits wird ein Server mit einer mittleren Last (beispielsweise 60%) einen viel größeren Wert der Zuweisungsfunktion berechnen: beispielsweise könnte der Wert 0,95 sein, das heißt dass der Server sich selbst mit 95% verfügbar machen wird. Nach Empfang der Verfügbarkeitserklärungen wählt das Front-End zufällig einen Server zwischen allen verfügbaren Servern aus und weist ihm die VM zu.
  • Beispiel einer Migrationsprozedur
  • Die Migrationsprozedur kann in deterministischer Weise (beispielsweise falls der Server realisiert, dass seine Last niedriger oder höher als ein Schwellenwert ist) oder einem Wahrscheinlichkeitstest folgend gestartet werden. Die Migration kann dann auf zwei Weisen durchgeführt werden: der Server selbst kann die Anfrage rundfunkend an andere Server stellen oder der Server kann die Prozedur dem Front-End zuweisen, ähnlich zu derjenigen, die bei der Zuweisungsprozedur auftritt. Die Server entscheiden, ob sie die ”migrierende” VM akzeptieren, noch vorbehaltlich eines Bernoulli-Tests, analog zu dem zuvor Gesehenen, und die Entität, welche die Einladung gesendet hat (das Front-End oder der startende Server) wählt zufällig zwischen den Servern aus, die sich selbst verfügbar gemacht haben. Die Wahrscheinlichkeitsfunktion ähnelt derjenigen, die für die Zuweisung verwendet wird, aber im Falle einer Migration, die durch die Überlastung verursacht wird, wird sie auf solche Weise modifiziert, dass die VM zu einem Server mit einer niedrigeren CPU-Verwendung zu migrieren sein wird, als derjenigen des startenden Servers.
  • Eine mögliche Variation der zwei Prozeduren ist, dass die Einladung nicht rundfunkend an jede zuzuweisende/zu migrierende VM gesendet wird, sondern der einzelne Server regulär oder lokalen spezifischen Ereignissen (beispielsweise einer signifikanten Lastvariation) folgend spontan mit dem Front-End ihre Verfügbarkeit zum Akzeptieren einer VM austauschen, alles vorbehaltlich eines Bernoulli-Tests. Daher warten die Server nicht auf die Einladung, sondern bieten sich selbst spontan an, so dass das Front-End die Zuweisung durchführen kann, oder die Migration abschließen kann, bereits wissend, welche Server verfügbar sind.
  • Vorteile der Erfindung
  • Alle Ansätze zur Konsolidierung von virtuellen Maschinen basieren unseres Wissens nach auf Ansätzen, die einige wichtige Probleme mit sich bringen. Zuallererst basieren sie auf zentralisierten Algorithmen, die auf der Basis der gesammelten Informationen über das gesamte Datenzentrum versuchen, in einer optimalen Weise die VMs auf die verschiedenen Server zu verteilen. Das Problem ist, dass die optimale Zuweisung ein typisches Problem des ”Bin-Packing” ist, das eine NP-harte Komplexität aufweist, das heißt die Ausführungszeiten sind exponentiell zur Anzahl von Server und von VMs. Natürlich existieren heuristische Algorithmen, beispielsweise basierend auf dem Verfahren von Ganzzahlprogrammierung oder der VM-Sortierung anhand ihrer Lastanfragen, aber diese Algorithmen können die optimale Lösung nur innerhalb einer Spannbreite von ungefähr 20% annähern. Darüber hinaus, was wichtiger ist, erfordern diese Lösungen, dass der zentrale Manager konstant bezüglich der Last aller Server und aller Anwendungen aktualisiert wird, was sehr problematisch bei dynamischen Umgebungen mit einigen Zehn, Hunderten oder sogar Millionen von Servern ist. Dies ist gewiss ein nicht skalierbarer Ansatz.
  • Eine andere wichtige Schwierigkeit besteht darin, dass die in der Literatur beschriebenen Algorithmen periodische Neuzuweisung vieler VMs erfordern, und daher ihre simultane Migration. Diese können große Leistungseinbrüche mit sich bringen und folglich das Risiko, dass die vertraglichen Verpflichtungen mit dem Kunden nicht eingehalten werden können.
  • Mit Bezug darauf, was gemäß der vorliegenden Erfindung beschrieben worden ist, gibt es zumindest drei wichtige Vorteile:
    • 1. Dank des statistischen Ansatzes ist die Lösung gemäß der vorliegenden Erfindung skalierbar, ist tatsächlich sogar ”überskalierbar”, das heißt mehr als skalierbar in dem Sinne, dass sie effizienter ist, wenn das Datenzentrum größer ist. Insbesondere zeigen unsere Tests, beginnend ab 80 Servern, dass es möglich ist, die ideale Lösung innerhalb einer Spannbreite von nicht mehr als 35% anzunähern, und die Ergebnisse für größere Datenzentren sogar besser sind.
    • 2. Die Lösung gemäß der vorliegenden Erfindung ist dezentralisiert, was bedeutet, dass die Intelligenz (beispielsweise die Entscheidung, ob eine neue VM zu akzeptieren ist oder eine Migration anzufragen ist) im einzelnen Server und nicht im zentralen Manager erfolgt. Insbesondere das Letztere ist ohne die Notwendigkeit, aktualisierte Informationen zu den verschiedenen Servern zu sammeln, muss aber stattdessen nur einige Anfragen im Rundfunk senden und wählt dann zwischen den Servern zufällig aus, die sich zum Akzeptieren einer VM als verfügbar erklärt haben.
    • 3. Die Lösung gemäß der vorliegenden Erfindung fordert die kontinuierliche, graduelle und asynchrone Migration der VMs an. Es ist niemals notwendig, kontemporär verschiedene VMs zu migrieren. Dieser Ansatz hat viele Vorteile bezüglich dem Leistungsabfall, der mit den Migrationen selbst verbunden ist.
  • Die Erfindung kann für Energieeinsparung im Datenzentrum von mittleren bis großen Abmessungen verwendet werden, das heißt von einigen zehn Servern bis zu einigen hundert oder Millionen von Servern.
  • Der Referenzmarkt ist enorm. Nachfolgend werden Zahlen von Datenzentrumsservern einiger großer IT-Unternehmen berichtet, die im Sektor des Cloud-Computing arbeiten:
    • • Intel: 100.000 Server (Daten vom Februar 2010);
    • • SoftLayer: 81.000 Server (Daten vom Mai 2011);
    • • OVH: 80.000 Server (Daten vom November 2010);
    • • Akamai Technologies: 73.000 Server (Daten vom November 2010);
    • • Rackspace: 70.473 Server (Daten vom Mai 2011);
    • • 1&1 Internet: 70.000 Server (Daten vom Februar 2010);
    • • Facebook: 60.000 Server (Daten vom Oktober 2009);
    • • LeaseWeb: 36.000 Server (Daten vom Februar 2011);
    • • SBC Communications: 29.193 Server (Schätzung von Netcraft);
    • • Verizon: 25.788 Server (Schätzung von Netcraft);
    • • Time Warner Cable: 24.817 Server (Schätzung von Netcraft);
    • • AT&T: 20.268 Server (Schätzung von Netcraft);
    • • Google: Über 450.000 Server (Konservative Schätzung von 2011);
    • • Microsoft: Über 500.000 Server (Konservative Einschätzung von 2011);
    • • Amazon: 40.000 Server (Konservative Schätzung von 2011);
    • • eBay: Über 50.000 (Schätzung von 2011);
    • • Yahoo: Über 50.000 (Schätzung von 2011);
    • • HP: Über 380.000 (Schätzung von 2011);
    • • IBM: Über 50.000 (Schätzung von 2011);
  • Es wird berechnet, dass es in Italien 3000 Datenzentren gibt. In diesem Kontext gibt es auch extreme Fälle, die von kleinen Datenzentren einer lokalen Verwaltung bis zu über 15 Datenzentren von Internet-Providern reichen.
  • Eine Studie von Oracle vom Mai identifiziert zuletzt (http://www.cwi.it) vier Schritte dieser Transformation: Silos, Konsolidierung, Optimierung (Integration verschiedener Schichten) und schließlich Cloud. Das durchschnittliche italienische Datenzentrum befindet sich zwischen dem ersten und dem zweiten Schritt, zwischen Silos und Konsolidierung. Dies bedeutet, dass der größere Teil der italienischen Unternehmen als weit weg von der Möglichkeit vollständiger Ausschöpfung des Werts seiner eigenen IT-Ressourcen ist.
  • Beispiele, wie italienische Datenzentren weit von der maximalen Effizienz weg erscheinen, sind wie folgt: mehr als 75% im Durchschnitt liefern weniger als 50% der gesamten verfügbaren Leistung; mehr als 30% der Strukturen haben keine automatischen Prozeduren für System-Management, was die Verwendung vieler Ressourcen und wenig Flexibilität bestimmt.
  • Aber die möglicherweise signifikantesten Daten beziehen sich auf die Virtualisierung und Umweltnachhaltigkeit. Etwa 40% der Unternehmen hat zugegeben, dass sie weniger als 10% der Hardware-Server, die im Datenzentrum vorhanden sind, virtualisiert haben, und weitere beachtliche 20% zwischen 10 und 29% der Server.
  • Es zeigt sich die Notwendigkeit einer Änderung für italienische Unternehmen. Aufgrund der durch komplexe und ineffiziente Infrastrukturen erzeugten Probleme sehen gemäß Oracle 61% der Unternehmen die Notwendigkeit voraus, eine neue Struktur von Datenzentren innerhalb der nächsten zwei Jahre zu implementieren.
  • Mit ”neuer Struktur” ist ein vollständig verwaltetes oder auch externalisiertes Datenzentrum gemeint. 55% der italienischen Unternehmen hat nur ein In-Haus-Datenzentrum. 23% haben einige In-Haus-Datenzentren und kein externes. 15% zeigen eine Mischung, die aus einem internen Hauptdatenzentrum plus einigen externen besteht. Schließlich haben 7% eine Mischung von mehreren In-Haus-Datenzentren plus mehreren externen.
  • Darüber hinaus, soweit die Entwicklung von Cloud-Computing betroffen ist, muss berücksichtigt werden, dass auf Seiten vieler Unternehmen hauptsächlich ein Interesse an ”Private Cloud”-Diensten besteht. Diese beschäftigen sich mit spezifischen IT-Umgebungen, wo Zugriff und Teilen privat sind. Eine private Cloud kann entweder das Unternehmen selbst sein, oder durch einen externen Provider ge-hostet werden. Es gibt auch die hybride Cloud, welche die externen IT-Dienste kombiniert, das heißt durch spezialisierte Unternehmen bereitgestellt, wobei andere direkt durch den Kunden verwaltet werden. Das typische Verhalten der Unternehmen ist im Allgemeinen, einen umsichtigen Ansatz einzuhalten: sie beginnen mit einer privaten Cloud und treffen nur nachfolgend bei externen und hybriden Systemen ein. Dies bringt es mit sich, dass das Energieeinsparproblem nicht nur für spezialisierte Unternehmen wichtig ist, sondern auch für das Management von Datenzentren der Unternehmen, die sich selbst mit privaten Cloud-Computing-Systemen ausrüsten.
  • Soweit Italien betroffen ist, wird vorausgesagt, dass das Geschäftsvolumen für die nächsten 12 Monate 287 Millionen Euro betragen wird. Eine jüngste Untersuchung von Nextvalue (Cloud Computing Report, April 2011) schätzt, dass 61% der großen italienischen Unternehmen (und 80% in Europa) in den nächsten 12 Monaten Projekte des Cloud Computings angenommen haben oder annehmen werden. Was PMI betrifft, offenbart ein Report der Managementschule der ”Politecnico di Milano”, die im Mai präsentiert wurde, dass das Verbreitungsniveau von Cloud in kleinen und mittleren Unternehmen immer noch in der Größenordnung von 2 bis 3% ist, aber ein großes Wachstum vorhergesehen wird. Die Erwartungen der Unternehmen in Bezug auf die Cloud sind sehr hoch und betreffen zuerst die Beschränkung von Hardware und Personalkosten und zweitens die Aktivierungsrate und die Flexibilität.
  • Referenzen
    • [Bel11] Anton Beloglazov, Rajkumar Buyya, Young Choon Lee, Albert Y. Zomaya: A Taxonomy und Survey of Energy-Efficient Data Centers und Cloud Computing Systems. Advances in Computers 82: 47–111(2011)
    • [Buy09] Rajkumar Buyya, Chee Shin Yeo, Srikumar Venugopal, James Broberg, und Ivona Brandic. Cloud computing and emerging it platforms: Vision, hype und reality for delivering computing as the 5th utility. Future Generation Computer Systems, 25(6): 599–616, Juni 2009.
    • [Bel10] Anton Beloglazov und Rajkumar Buyya. Energy efficient allocation of virtual machines in cloud data centers. In 10th IEEE/ACM Int. Symp. on Cluster Computing and the Grid, CCGrid 2010, Seiten 577–578, 2010.
    • [Bar07] Luiz André Barroso und Urs Holzle. The case for energy-proportional computing. IEEE Computer, 40(12): 33–37, Dezember 2007.
    • [Gre09] Albert Greenberg, James Hamilton, David A. Maltz, und Parveen Patel. the cost of a cloud: research problems in data center networks. SIGCOMM Comput. Commun. Rev., 39(1): 68–73, 2009.
    • [Ver08] Akshat Verma, Puneet Ahuja, und Anindya Neogi. pMapper: Power and migration cost aware application placement in virtualized systems. In Valrie Issarny und Richard E. Schantz, Hrsg., Middleware 2008, ACM/IFIP/USENIX 9th International Middleware Conference, Leuven, Belgium, 1.–5. Dezember 2008, Proceedings, Band 5346 von Lecture Notes in Computer Science, Seiten 243–264, Springer, 2008.
    • [Sti09] M. Stillwell, D. Schanzenbach, F. Vivien, H. Casanova, Resource allocation using virtual clusters, in: Proceedings of the 9th IEEE/ACM International Symposium on Cluster Computing and the Grid (CCGrid 2009), Shanghai, China, 2009, Seiten 260–267.
    • [Yue91] Minyi Yue, A simple proof of the inequality FFD(L) ≤ 11/9 OPT(L) + 1, for all L for the FFD bin-packing algorithm. Acta Mathematicae Applicatae Sinica, 7(4): 321–331, 1991.
    • [Maz91] Michele Mazzucco, Dmytro Dyachuk, und Ralph Deters. Maximizing cloud providers' revenues via energy aware allocation policies. In 10th IEEE/ACM Int. Symp. on Cluster Computing and the Grid, CCGrid 2010, Seiten 131–138, 2010.
  • Vorstehend sind bevorzugte Ausführungsformen der Offenbarung beschrieben worden und einige Variationen der vorliegenden Erfindung sind vorgeschlagen worden. Nichts desto weniger versteht es sich, dass Fachleute in der Lage sein werden, Modifikationen zu machen, ohne vom Geist und Schutzumfang der vorliegenden Offenbarung, wie durch die anhängigen Ansprüche definiert, abzuweichen.

Claims (15)

  1. Verfahren für die Zuweisung von virtuellen Maschinen-(VM)-Wirts-Applikationen (λ) an Server einer Mehrzahl von Servern (μ, ν) in einem Daten- oder Rechenzentrum, für die Konsolidierung der besagten virtuellen Maschinen, zu jedem Zeitpunkt, zu dem die Mehrzahl von Servern (μ, ν) in eine Untermenge aktiver Server (μ), die alle eine gewisse Anzahl vom virtuellen Maschinen (VM) bewirten, und eine Untermenge inaktiver Server (ν) unterteilt sind, wobei das Verfahren dadurch gekennzeichnet ist, dass es einen zentralen Manager (ξ) des Datenzentrums und eine Mehrzahl lokaler Manager in einer Anzahl entsprechend derjenigen der Server der Mehrzahl von Servern (μ, ν) einsetzt, und darin, dass die folgenden Schritte ausgeführt werden: S1: Zumindest für einen, für die Untermenge aktiver Server (μ) relevanten lokalen Manager, individuell Ausführen eines Bernoulli-Tests auf Basis einer Wahrscheinlichkeitsfunktion, die von dem Besetzungsprozentsatz von Berechnungs-Ressourcen des zumindest einen lokalen Managers abhängt, und für Besetzungswerte von Berechnungs-Ressourcen des zumindest einen lokalen Managers höher als ein vorgegebener Schwellenwert verschwindet, und Deklarieren der Verfügbarkeit zum Akzeptieren oder nicht der Zuweisung einer neuen virtuellen Maschine (VM), wobei der zentrale Manager (ξ) eine Liste verfügbarer Server auf Basis der Verfügbarkeit des zumindest einen lokalen Managers konstruiert; und dadurch, dass, wenn es eine neue einem Server zuzuweisende virtuelle Maschine (VM) gibt, der zentrale Manager (ξ): S2: Falls die Liste verfügbarer Server zumindest ein Element enthält, aus den Elementen der Liste den Server auswählt, dem die neue virtuelle Maschine (VM) zuzuweisen ist, und die Letztere der Ersteren zuweist; S3: falls die Liste verfügbarer Server kein Element enthält, einen Server aktiviert in einem Untersatz von inaktiven Servern (ν) und ihn der virtuellen, zuzuweisenden Maschine (VM) zuweist.
  2. Verfahren gemäß Anspruch 1, dadurch gekennzeichnet, dass der zumindest eine lokale Manager von Schritt S1 Schritt S1 nur durchführt, nachdem er kontrolliert hat, dass einige vorgegebene Bedingungen erfüllt sind, wie etwa beispielsweise die Tatsache, dass die Auslastung des RAM-Speichers oder die Verwendung der Disks unter gewissen Schwellenwerten liegt.
  3. Verfahren gemäß Anspruch 1 oder 2, dadurch gekennzeichnet, dass Schritt S1 nach dem folgenden Vorabschritt durchgeführt wird: S0. Der zentrale Manager (ξ) rundfunkt eine Anforderung zur Verfügbarkeit, die neue virtuelle Maschine (VM) zu bewirten, die der Anzahl von lokalen Managern eines Teils der Untermenge von aktiven Servern (μ) zuzuweisen ist, wobei der zumindest eine lokale Manager von Schritt S1 der Anzahl von lokalen Managern entspricht.
  4. Verfahren gemäß Anspruch 3, dadurch gekennzeichnet, dass die Anforderung von Verfügbarkeit an alle Server der Untermenge aktiver Mengen (μ) gesendet wird.
  5. Verfahren gemäß einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass Schritt S1 durch den zentralen Manager (ξ) durchgeführt wird, wobei der zumindest eine lokale Manager zuvor an den zentralen Manager die Daten gesendet hat, die zur Ausführung der Bernoulli-Tests benötigt werden.
  6. Verfahren gemäß einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass Schritt S1 durch den zumindest einen lokalen Manager ausgeführt wird.
  7. Verfahren gemäß einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass der vorbestimmte Schwellenwert abhängig vom Bedarf über die Zeit variiert werden kann.
  8. Verfahren gemäß einem der Ansprüche 1, 2, 5, 6 und 7, dadurch gekennzeichnet, dass Schritt S1 in einer kontinuierlichen Weise spontan durch alle Server der Untermenge aktiver Server (μ) ausgeführt wird.
  9. Verfahren gemäß einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass, falls die virtuelle Maschine (VM) die zuzuweisen ist, von einem Server der Untermenge aktiver Server (μ) zu transferieren ist, der vorgegebene Schwellenwert um einen vorbestimmten realen Positivwert Δ kleiner ist als derjenige in dem Fall, wenn die zuzuweisende virtuelle Maschine (VM) nicht von einem Server der Untermenge aktiver Server (μ) zu transferieren ist.
  10. Verfahren gemäß einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, dass die Wahrscheinlichkeitsfunktion auf solche Weise definiert ist, dass, falls ein für einen lokalen Manager relevanter Server eine Rechenlast kleiner als ein erster Schwellenwert oder größer als ein zweiter Schwellenwert aufweist, sie dazu tendiert, eine zuzuweisende neue virtuelle Maschine (VM) zurückzuweisen, während, falls sie eine mittlere Berechnungslast aufweist, sie dazu tendiert, sie zu akzeptieren, mit dem Ziel, die Konsolidierung zu bevorzugen.
  11. Verfahren gemäß einem der Ansprüche 1 bis 10, dadurch gekennzeichnet, dass, falls zu einer gegebenen Zeit ein lokaler Manager keine auf einem relevanten lokalen Server laufende virtuelle Maschine aufweist, der Letztere sich deaktiviert und abschaltet.
  12. Verfahren gemäß einem der Ansprüche 1 bis 11, dadurch gekennzeichnet, dass im Schritt S2 der zentrale Manager zufällig aus den Elementen der Liste auswählt.
  13. Computerprogramm, dadurch gekennzeichnet, dass es Codemittel umfasst, die geeignet sind, wenn sie dazu gebracht werden, auf einer Ausarbeitungselektronikeinheit zu laufen, die Aktionen eines zentralen Managers gemäß einem der Ansprüche 1 bis 12.
  14. Computerprogramm, dadurch gekennzeichnet, dass es Codemittel umfasst, die geeignet sind, wenn sie dazu gebracht werden, auf einer Ausarbeitungselektronikeinheit zu laufen, die Aktionen eines lokalen Managers gemäß einem der Ansprüche 1 bis 12.
  15. Rechnen- oder Datenzentrum, umfassend eine Mehrzahl von Servern (μ, ν) und eine Management-Zentralelektronikeinheit (ξ) des Rechenzentrums, dadurch gekennzeichnet, dass auf jedem Server der Mehrzahl von Servern das Computerprogramm gemäß Anspruch 13 dazu gebracht wird, zu laufen, und auf der Verwaltungs-Zentralelektronikeinheit das Computerprogramm gemäß Anspruch 14 dazu gebracht wird, zu laufen, wobei weiter Mittel für die Kommunikation und Steuerung zwischen der Verwaltungs-Zentralelektronikeinheit und den Servern der Mehrzahl von Servern vorgesehen sind.
DE112012003307.8T 2011-08-10 2012-08-08 System zum Energieeinsparen bei Unternehmensdatenzentren Withdrawn DE112012003307T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
IT000433A ITRM20110433A1 (it) 2011-08-10 2011-08-10 Sistema per il risparmio di energia nei data center aziendali.
ITRM2011A000433 2011-08-10
PCT/IT2012/000248 WO2013021407A1 (en) 2011-08-10 2012-08-08 System for energy saving in company data centers

Publications (1)

Publication Number Publication Date
DE112012003307T5 true DE112012003307T5 (de) 2014-04-24

Family

ID=44800172

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112012003307.8T Withdrawn DE112012003307T5 (de) 2011-08-10 2012-08-08 System zum Energieeinsparen bei Unternehmensdatenzentren

Country Status (7)

Country Link
US (1) US9274841B2 (de)
EP (1) EP2742427B1 (de)
CA (1) CA2843669A1 (de)
DE (1) DE112012003307T5 (de)
GB (1) GB2507683A (de)
IT (1) ITRM20110433A1 (de)
WO (1) WO2013021407A1 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9391919B2 (en) * 2013-08-14 2016-07-12 International Business Machines Corporation Adaptive algorithm for cloud admission policies
US20150089062A1 (en) * 2013-09-25 2015-03-26 Virtual Bridges, Inc. Methods and systems for dynamically specializing and re-purposing computer servers in an elastically scaling cloud computing infrastructure
US10203991B2 (en) * 2017-01-19 2019-02-12 International Business Machines Corporation Dynamic resource allocation with forecasting in virtualized environments
EP3355190A1 (de) * 2017-01-31 2018-08-01 Sony Corporation Vorrichtung und system
US11050677B2 (en) 2019-11-22 2021-06-29 Accenture Global Solutions Limited Enhanced selection of cloud architecture profiles
EP4162363A4 (de) 2020-07-30 2024-07-03 Accenture Global Solutions Ltd Empfehlungssystem für grünes cloud-computing
CN112600895B (zh) * 2020-12-07 2023-04-21 中国科学院深圳先进技术研究院 移动边缘计算的服务调度方法、系统、终端以及存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6078960A (en) * 1998-07-03 2000-06-20 Acceleration Software International Corporation Client-side load-balancing in client server network
US8635328B2 (en) * 2002-10-31 2014-01-21 International Business Machines Corporation Determining time varying thresholds for monitored metrics
US7246174B2 (en) * 2003-10-28 2007-07-17 Nacon Consulting, Llc Method and system for accessing and managing virtual machines
US7877485B2 (en) * 2005-12-02 2011-01-25 International Business Machines Corporation Maintaining session states within virtual machine environments
US20090150700A1 (en) * 2007-12-06 2009-06-11 International Business Machines Corporation Method of controlling power to a plurality of servers
US8537673B1 (en) * 2008-04-18 2013-09-17 Juniper Networks, Inc. Fairness algorithm for bundle resource utilization
US8477942B2 (en) * 2008-10-21 2013-07-02 Motorola Mobility Llc Method and apparatus for managing service lists
US8291430B2 (en) * 2009-07-10 2012-10-16 International Business Machines Corporation Optimizing system performance using spare cores in a virtualized environment
US20110154327A1 (en) * 2009-09-11 2011-06-23 Kozat Ulas C Method and apparatus for data center automation
JP5435399B2 (ja) 2009-10-07 2014-03-05 日本電気株式会社 省電力化システム、省電力化方法、及び省電力化用プログラム

Also Published As

Publication number Publication date
EP2742427B1 (de) 2018-03-07
EP2742427A1 (de) 2014-06-18
GB201402186D0 (en) 2014-03-26
ITRM20110433A1 (it) 2013-02-11
WO2013021407A1 (en) 2013-02-14
US20140173601A1 (en) 2014-06-19
US9274841B2 (en) 2016-03-01
CA2843669A1 (en) 2013-02-14
GB2507683A (en) 2014-05-07

Similar Documents

Publication Publication Date Title
DE112011101633B4 (de) Virtualisierung und dynamische Ressourcenzuweisung berücksichtigendes Neuordnen von Speicherebenen
DE112012003307T5 (de) System zum Energieeinsparen bei Unternehmensdatenzentren
Liu et al. Job scheduling model for cloud computing based on multi-objective genetic algorithm
CN104679594B (zh) 一种中间件分布式计算方法
DE102014113232A1 (de) Live-Migration virtualisierter Systeme
CN109213555A (zh) 一种面向虚拟桌面云的资源动态调度方法
CN108337109A (zh) 一种资源分配方法及装置和资源分配系统
DE112015004564B4 (de) Ereignisgesteuerte Reoptimierung einer logisch partitionierten Umgebung zur Energieverwaltung
CN106095531B (zh) 云平台中一种基于等级和物理机负载的虚拟机调度方法
DE112018005268T5 (de) Priorisieren von anwendungen für eine diagonale skalierung in einer verteilten datenverarbeitungsumgebung
Barlaskar et al. Enhanced cuckoo search algorithm for virtual machine placement in cloud data centres
DE102021125182A1 (de) Gemeinsam genutzte unternehmenscloud
DE112021000390T5 (de) Anpassen der leistung eines datenverarbeitungssystems
DE112021005586T5 (de) Automatisches skalieren einer abfrage-steuerungsroutine für arbeitslasten im bereich big data auf unternehmensebene
DE112021003294T5 (de) Systemverwaltung auf grundlage von leistung und leistungsfähigkeit
Rajabzadeh et al. New comprehensive model based on virtual clusters and absorbing Markov chains for energy-efficient virtual machine management in cloud computing
Mylavarapu et al. An optimized capacity planning approach for virtual infrastructure exhibiting stochastic workload
CN111767139A (zh) 一种跨地域多数据中心资源云服务建模方法及系统
DE112018004415B4 (de) Optimierung von cloud-ressourcen bei operationen in mehrstufigem speicher auf richtliniengrundlage
DE102021122508A1 (de) Ausgleichen von grossrechner- und verteilten arbeitslasten auf der grundlage von leistung und kosten
CN102801750B (zh) 一种云计算目标系统构建方法
DE112018005973T5 (de) Automatisches diagonales skalieren von arbeitslasten in einer verteilten datenverarbeitungsumgebung
CN104683480A (zh) 一种基于应用的分布式计算方法
Lee et al. Efficient server consolidation considering intra-cluster traffic
Cao et al. Online cost-rejection rate scheduling for resource requests in hybrid clouds

Legal Events

Date Code Title Description
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee