401 research outputs found

    Optimierung des Wirkungsgrades virtueller Infrastrukturen

    Get PDF
    Virtualisierungstechniken erfreuen sich immer größerer Beliebtheit in vielen Bereichen der Informatik. Ursprünglich wiederentdeckt mit dem Ziel Ressourcen und Dienste zu konsolidieren, dienen Virtualisierungsansätze heute als Grundlage für moderne Grid- und Cloud-Computing-Infastrukturen und werden damit auch im Bereich des Hochleistungsrechnens eingesetzt. Derzeit existieren keine objektiven und systematischen Analysen bezüglich des Wirkungsgrades von Virtualisierungsansätzen, Techniken und Implementierungen, obwohl sie von vielen großen Rechenzentren weltweit eingesetzt und produktiv betrieben werden. Alle existierenden, modernen Hostvirtualisierungsansätze setzen derzeit auf eine Softwareschicht, die sich je nach Virtualisierungstyp zwischen Hardware und Gast-Betriebssystem bzw. zwischen Host- und Gast-Betriebssystem befindet. Eine Anwendung in einer virtuellen Maschine ist somit nicht mehr nur von der Leistung des physischen Systems abhängig, sondern ebenfalls von der Technologie des eingesetzten Virtualisierungsproduktes und nebenläufigen virtuellen Maschinen. Je nach Anwendungstyp kann es daher sinnvoll sein, einen anderen Virtualisierungsansatz zu wählen und auf den Typ der nebenläufigen virtuellen Maschinen zu achten, um den Wirkungsgrad eines lokalen Systems sowie den der globalen Infrastruktur zu optimieren. Um dieses Ziel zu erreichen, werden in einem zweistufigen Ansatz zunächst theoretisch Virtualisierungsansätze analysiert und Parameter identifiziert, deren Einfluss auf den Wirkungsgrad in einem zweiten Schritt empirisch quantifiziert wird. Für die Durchführung dieser quantitativen Analyse ist eine Anpassung verbreiteter Leistungsmaße, wie z.B. Durchsatz und Antwortzeit, für den Kontext der Virtualisierung erforderlich, da sie sich klassisch gesehen auf das Betriebssystem einer Maschine beziehen, eine virtuelle Maschine jedoch von der Architektur her eher einer klassischen Anwendung entspricht. Die Messung dieses Leistungsmaßes in virtuellen Umgebungen stellt eine weitere Herausforderung dar, da Zeitmessung in virtuellen Maschinen aufgrund von Scheduling durch den Hypervisor generell fehlerbehaftet ist und somit alternative Messmethoden konzipiert werden müssen. Basierend auf den durchgeführten Analysen und Messungen wird anschließend ein Leitfaden entwickelt, der dabei hilft, die zur Virtualisierung einer Infrastruktur benötigten Ressourcen qualitativ sowie quantitativ abzuschätzen und eine Verteilung der virtuellen Maschinen anhand ihres charakteristischen Ressourcenbedarfes auf physische Systeme vorzunehmen, so dass vorhandene physische Ressourcen optimal ausgenutzt werden können. Die Automatisierung des erstellten Leitfadens durch die Entwicklung und prototypische Implementierung eines globalen Ressourcen-Schedulers auf der Basis eines gewichteten Constraint Solvers rundet die Arbeit ab. Der verwendete Ansatz besitzt zwar eine theoretisch exponentielle Laufzeitkomplexität, liefert in der Praxis aufgrund einer entwickelten Greedy-Heuristik jedoch bereits nach extrem kurzer Laufzeit herausragende Ergebnisse. Die optimierten Verteilungen lassen sich anschließend mittels weniger Live Migration realisieren, da bereits bei der Berechnung einer Verteilung auf deren räumliche Nähe zur bestehenden Verteilung geachtet wird

    A reference model for Server Based Computing infrastructures and its application for the capacity management

    Get PDF
    Der weltweit rasant steigende Bedarf an Unterstützung von Anwendern durch leistungsfähige IT-Systeme führt zu einer gleichermaßen steigenden Nachfrage nach Technologien, die es Unternehmen ermöglichen, ihren Endanwendern Desktop-Umgebungen und Applikationen in effizienter und effektiver Weise bereitzustellen. Daraus leitet sich sowohl unter ökologischen als auch unter ökonomischen Aspekten die Anforderung ab, vorhandene Hardware- und Software-Plattformen möglichst passend zum heutigen und zukünftigen Bedarf zu dimensionieren und die Systeme optimal auszulasten. Protokolle zum Zugriff auf Server-Ressourcen unter Microsoft Windows Betriebssystemen nach dem Prinzip der entfernten Präsentation wurden erstmals ca. 1995 implementiert. Seither hat das damit auch unter Windows mögliche Server Based Computing (SBC) mit Terminal Servern und im Nachgang auch virtuellen Desktops eine technische Reife erlangt, die dem Betriebsmodell der verteilten Ausführung und Datenhaltung mittels konventioneller Personal Computer nicht nachsteht. Energie- und ressourcensparende Thin Clients haben sich entsprechend als Alternative zu herkömmlichen Arbeitsplatz-Computern und ihrer lokalen Datenverarbeitung etabliert. Die Leistungsfähigkeit der Thin Clients hängt jedoch maßgeblich von der Kapazität der Server-Infrastruktur im Rechenzentrum ab. Die vorliegende Dissertation greift dieses Thema auf und entwirft ein Referenzmodell für das Kapazitätsmanagement von Server Based Computing Infrastrukturen mit dem Ziel, vorhandene wie auch neu zu konzipierende Systeme zu planen und in einem iterativen Prozess weiterzuentwickeln. Der zu Grunde liegende Ansatz baut auf Methoden und Sprachen der Referenzmodellierung auf. Zunächst wird die aus fünf Schichten bestehende Gesamtsicht einer Server Based Computing Infrastruktur entworfen. Aus diesem Referenzmodell werden nach einem methodischen Vorgehen konkretere Informationsmodelle abgeleitet und in der Sprache der Fundamental Modeling Concepts (FMC) notiert. Ein solches Modell kann anschließend im Rahmen einer Simulation oder einer analytischen Herangehensweise dazu verwendet werden, bereits bei der Konzeption verschiedene Handlungsalternativen zu untersuchen und bezüglich der Kapazität der Ressourcen zu bewerten. Das Referenzmodell und seine Methodik werden anhand eines exemplarischen Szenarios mit verschiedenen Gruppen von Anwendern und Arbeitsplatzgeräten auf der Client-Seite sowie mehreren Profilen von Anwendungen auf der Server-Seite erprobt. Hierbei wird deutlich, dass die modellbasierte Herangehensweise einen wertvollen Beitrag zum Kapazitätsmanagement leisten kann, ohne dass vorab der tatsächliche Aufbau einer neuen IT-Infrastruktur durch die Installation eines physischen Prototypen und die Simulation von Arbeitslasten darauf notwendig wäre.A worldwide rapidly increasing need for assistance of staff by powerful IT-systems leads to an equally ever growing demand for technologies that enable organizations to provide desktop environments and applications to their end users in an efficient and effective way. In terms of both ecologic and economic aspects, the deduced requirement is to size existing hardware and software platforms as suitable as possible for present and future needs, and to allow for an optimum utilization of the system capacities. Access protocols on server resources based on Microsoft Windows operating systems within the scope of remote presentation were implemented for the first time around 1995. Since then, Server Based Computing (SBC), with terminal servers and virtual desktops later on, has reached a technical maturity which is not inferior to the distributed issue of the operating modeland data storage as used in conventional personal computers. Accordingly, energy and resource saving thin clients have established themselves as an alternative to conventional desktop computers and local data processing. Their performance, however, depends significantly on the capacity of the server infrastructure located in the data center. The present thesis takes up this subject and outlines a reference model for the capacity management of Server Based Computing infrastructures with the intention to plan novel designed systems and, further, to develop both these as well as exsisting ones by means of an iterative process. The underlying approach bases upon methods for reference modeling and languages. Initially, a global view of a Server Based Computing infrastructure consisting of five layers is developed. From this reference model, more precise information models are derived following a methodological approach and are stated according to language elements of the Fundamental Modeling Concepts (FMC). Such model can be used subsequently within the scope of a simulation or an analytical approach, hereby aiming to investigate and evaluate various alternative courses of action regarding the capacity of resources already during the conception phase. The reference model and its methodology are evaluated using an exemplary scenario with different groups of users and workstation devices on the client side and several profiles of applications on the server side. This shows clearly that the model-based approach can make a valuable contribution to the capacity management, without requiring the actual implementation of a new IT infrastructure by building a physical prototype and simulating workloads within this prototype

    Testen von verteilten Systemen in heterogenen Netzwerken mit virtuellen Maschinen am Beispiel von MPI

    Get PDF
    Verteilte Systeme sind in zunehmendem Maße mit komplexen Netzwerkkonfigurationen konfrontiert, beispielsweise mit mehreren Netzwerkschnittstellen pro Knoten, NAT und gemischter IPv4/IPv6-Adressierung. Um Unterstützung dafür korrekt zu implementieren, ist regelmäßiges und gründliches Testen nerlässlich. Allerdings ist der Aufwand, derart vielfältige Teststellungen in Hardware vorzuhalten, so hoch, dass Testen nur sehr selten erfolgen kann und oftmals ganz unterbleibt. Gegenstand dieser Diplomarbeit ist die Entwicklung eines Virtual Test Environment (VTE), das (Multi-)Cluster-Umgebungen mit Hilfe von virtuellen Maschinen nachbildet und somit den erforderlichen Aufwand so weit senkt, dass kontinuierliches, entwicklungsbegleitendes Testen praktikabel wird

    Fabeln und Fehler

    Get PDF
    Mit Beiträgen von: Achim Mohné / Uta Kopp, Sabine Rollberg, Michael Erlhoff, CMUK, Hans Ulrich Reck, Laurentia Genske / Robin Humboldt, Dieuwke Boersma, Christian Sievers, Olivier Arciol

    Das Computerprogramm als Erfahrungsgegenstand

    Get PDF
    Was ist eigentlich ein Computerprogramm? Technikphilosophische Überlegungen deuten darauf hin, dass unter diesen Begriff sehr unterschiedliche Gegenstände fallen können. Bisherige ontologische Analysen zergliedern aus diesem Grund den Begriff, um beispielsweise zwischen der Semantik eines Programms und greifbaren technischen Artefakten zu unterscheiden. Derartige Analysen bieten eine große Klarheit und Präzision bei der Begriffsverwendung, da die Unterscheidungen der zuvor zergliederten Begriffsanteile in den Vordergrund treten. Gleichzeitig führt dieses Vorgehen jedoch dazu, dass die Zusammenhänge, Verbindungen und wechselseitigen Beeinflussungen der einzelnen Bedeutungen, welche im "Programm"-Begriff gebündelt sind verdeckt werden können. Um diesem Nachteil zu begegnen, wird in dieser Arbeit ein mehrdimensionaler Programmbegriff entwickelt, der eine Unterscheidung zwischen verschiedenen Bedeutungsebenen des Programmbegriffs vornimmt, gleichzeitig aber deren Zusammenhang herausarbeitet. Dafür werden der Begriffsbestimmung epistemologische Überlegungen vorangestellt, die der Frage nachgehen, wie Computerprogramme überhaupt von Menschen wahrgenommen werden können, wie Programme Gegenstände menschlicher Erfahrung werden. Ausgehend von Immanuel Kants Transzendentalphilosophie und Edmund Husserls Grundlegung der Phänomenologie wird ein Zugang zu dieser Erfahrung von Computerprogrammen entwickelt. Dabei wird herausgearbeitet, dass die Programme auf vier voneinander unterscheidbare Arten als Gegenstand konstituiert werden. Die daraus resultierenden Bedeutungsebenen des vorgestellten Programmbegriffs sind jeweils Programme als räumlich-zeitliche, syntaktische, semantische und eingebettete Gegenstände. Der Zusammenhang zwischen diesen Begriffsdimensionen zeigt sich dabei als Eigenschaft der Wahrnehmung von Programmen: Je nachdem, als was ein Programm konstituiert wird, können die jeweils anderen Begriffbedeutungen von "Programm" appräsentiert, also mitgegeben, sein. Dieser Zusammenhang ist in hohem Maße gesellschaftlich und technisch bedingt. Um diese Bedingtheit zu untersuchen wird dies anschließend als Assoziation im Sinne von Bruno Latours Akteur-Netzwerk-Theorie untersucht. Der hier entwickelte Programmbegriff eignet sich, um die Bedeutung von Computerprogrammen im Rahmen technikphilosophischer und techniksoziologischer Forschung zu analysieren. Die Anwendbarkeit des mehrdimensionalen Programmbegriffs zur Analyse menschlicher Bezüge zur Computertechnologie wird in der vorliegenden Arbeit an drei Fallbeispielen im Umfeld der Softwareentwicklung aufgezeigt. Im Mittelpunkt dieser Überlegungen stehen die wechselseitigen Verhältnisse von Mensch, Technik und Gesellschaft zueinander. Abschließend zeigt ein Ausblick weitere Bereiche, in denen mithilfe des entwickelten Begriffs aussichtsreiche Untersuchungen durchgeführt werden können

    Konzept zur Modularisierung von Komponenten des Digitalen Prozesszwillings

    Get PDF
    Digitale Prozesszwillinge (DPTs) sind vernetzte Software-Systeme im Industrie-4.0-Kontext, die Produktionsprozesse digital abbilden, überwachen und steuern. Damit können Produktivitätssteigerungen erzielt und Wertschöpfungsketten flexibilisiert werden. Allerdings kann der Betrieb von DPTs zu sehr hohen Anforderungen an die ausführende Rechenressource führen. Zu diesen Anforderungen gehören eine hohe und variable benötigte Rechenleistung, Zuverlässigkeit und Ausfallsicherheit. Diese können mit monolithischen DPT-Architekturen nicht immer ausreichend erfüllt werden. Außerdem sind monolithische DPTs schwer wartbar, da einzelne Teile nur umständlich ersetzt werden können. Wenige wissenschaftliche Arbeiten befassten sich aber bisher mit nicht-monolithischen Digitalen Zwillingen. Der Aufbau eines DPT in modularer statt monolithischer Architektur verspricht eine längere Lebensdauer durch bessere Wartbarkeit und Austauschbarkeit der DPT-Komponenten. Außerdem lassen sich die Module mittels Software-Virtualisierung durch Container von der physischen Hardware trennen und so flexibel zwischen beliebigen Hosts bewegen. Diese Portabilität erlaubt die horizontale Skalierung des DPT, Ausfalltoleranz sowie eine Auslagerung von Modulen in die Cloud. Austauschbarkeit und Wiederverwertbarkeit der Module sowie Portabilität der Container-Technologie ermöglichen zudem ein herstellerübergreifendes Ökosystem für den DPT. In dieser Arbeit werden die Komponenten eines DPT modularisiert und containerisiert. Es wird eine Architektur für diesen containerisierten, modularisierten DPT (CMDPT) geschaffen, welche insbesondere die benötigte Infrastruktur für den Betrieb spezifiziert. Das Konzept wird in einer prototypischen Implementierung umgesetzt. Die Validierung des Konzepts zeigt, dass der CMDPT neue Anwendungsgebiete für den DPT schafft, die zugrundeliegenden Technologien aber in Hinsicht Echtzeit und Latenz noch nicht ausgereift sind

    Grid Computing und Peer-to-Peer Systeme. Seminar SS 2004

    Get PDF
    Im Sommersemester 2004 wurde im Seminar "Grid Computing und Peer-to-Peer Systeme" eine Reihe aktueller Themen aus den Grid Computing, Peer-to-Peer Systeme und Ad-Hoc Netzwerkem Gebieten angeboten. Jeder Teilnehmer wählte hieraus ein Thema, um darüber in der Form eines medial gestützten Vortrages zu referieren. Um allen Teilnehmern die Gelegenheit zu geben, aus diesem Seminar nachhaltig etwas mitzunehmen, fertigte jeder Vortragende eine allen zugängliche schriftliche Ausarbeitung an. Die Ausarbeitungen finden sich in leicht redigierter Fassung durch die Editoren im vorliegenden technischen Bericht wieder

    Analyse von IT-Anwendungen mittels Zeitvariation

    Get PDF
    Performanzprobleme treten in der Praxis von IT-Anwendungen häufig auf, trotz steigender Hardwareleistung und verschiedenster Ansätze zur Entwicklung performanter Software im Softwarelebenszyklus. Modellbasierte Performanzanalysen ermöglichen auf Basis von Entwurfsartefakten eine Prävention von Performanzproblemen. Bei bestehenden oder teilweise implementierten IT-Anwendungen wird versucht, durch Hardwareskalierung oder Optimierung des Codes Performanzprobleme zu beheben. Beide Ansätze haben Nachteile: modellbasierte Ansätze werden durch die benötigte hohe Expertise nicht generell genutzt, die nachträgliche Optimierung ist ein unsystematischer und unkoordinierter Prozess. Diese Dissertation schlägt einen neuen Ansatz zur Performanzanalyse für eine nachfolgende Optimierung vor. Mittels eines Experiments werden Performanzwechselwirkungen in der IT-Anwendung identifiziert. Basis des Experiments, das Analyseinstrumentarium, ist eine zielgerichtete, zeitliche Variation von Start-, Endzeitpunkt oder Laufzeitdauer von Abläufen der IT-Anwendung. Diese Herangehensweise ist automatisierbar und kann strukturiert und ohne hohen Lernaufwand im Softwareentwicklungsprozess angewandt werden. Mittels der Turingmaschine wird bewiesen, dass durch die zeitliche Variation des Analyseinstrumentariums die Korrektheit von sequentiellen Berechnung beibehalten wird. Dies wird auf nebenläufige Systeme mittels der parallelen Registermaschine erweitert und diskutiert. Mit diesem praxisnahen Maschinenmodell wird dargelegt, dass die entdeckten Wirkzusammenhänge des Analyseinstrumentariums Optimierungskandidaten identifizieren. Eine spezielle Experimentierumgebung, in der die Abläufe eines Systems, bestehend aus Software und Hardware, programmierbar variiert werden können, wird mittels einer Virtualisierungslösung realisiert. Techniken zur Nutzung des Analyseinstrumentariums durch eine Instrumentierung werden angegeben. Eine Methode zur Ermittlung von Mindestanforderungen von IT-Anwendungen an die Hardware wird präsentiert und mittels der Experimentierumgebung anhand von zwei Szenarios und dem Android Betriebssystem exemplifiziert. Verschiedene Verfahren, um aus den Beobachtungen des Experiments die Optimierungskandidaten des Systems zu eruieren, werden vorgestellt, klassifiziert und evaluiert. Die Identifikation von Optimierungskandidaten und -potenzial wird an Illustrationsszenarios und mehreren großen IT-Anwendungen mittels dieser Methoden praktisch demonstriert. Als konsequente Erweiterung wird auf Basis des Analyseinstrumentariums eine Testmethode zum Validieren eines Systems gegenüber nicht deterministisch reproduzierbaren Fehlern, die auf Grund mangelnder Synchronisationsmechanismen (z.B. Races) oder zeitlicher Abläufe entstehen (z.B. Heisenbugs, alterungsbedingte Fehler), angegeben.Performance problems are very common in IT-Application, even though hardware performance is consistently increasing and there are several different software performance engineering methodologies during the software life cycle. The early model based performance predictions are offering a prevention of performance problems based on software engineering artifacts. Existing or partially implemented IT-Applications are optimized with hardware scaling or code tuning. There are disadvantages with both approaches: the model based performance predictions are not generally used due to the needed high expertise, the ex post optimization is an unsystematic and unstructured process. This thesis proposes a novel approach to a performance analysis for a subsequent optimization of the IT-Application. Via an experiment in the IT-Application performance interdependencies are identified. The core of the analysis is a specific variation of start-, end time or runtime of events or processes in the IT-Application. This approach is automatic and can easily be used in a structured way in the software development process. With a Turingmachine the correctness of this experimental approach was proved. With these temporal variations the correctness of a sequential calculation is held. This is extended and discussed on concurrent systems with a parallel Registermachine. With this very practical machine model the effect of the experiment and the subsequent identification of optimization potential and candidates are demonstrated. A special experimental environment to vary temporal processes and events of the hardware and the software of a system was developed with a virtual machine. Techniques for this experimental approach via instrumenting are stated. A method to determine minimum hardware requirements with this experimental approach is presented and exemplified with two scenarios based on the Android Framework. Different techniques to determine candidates and potential for an optimization are presented, classified and evaluated. The process to analyze and identify optimization candidates and potential is demonstrated on scenarios for illustration purposes and real IT-Applications. As a consistent extension a test methodology enabling a test of non-deterministic reproducible errors is given. Such non-deterministic reproducible errors are faults in the system caused by insufficient synchronization mechanisms (for example Races or Heisenbugs) or aging-related faults

    z/OS Internet Integration

    Get PDF
    corecore