En prestanda- och funktionsanalys av Hypervisors för molnbaserade datacenter

Storlek: px
Starta visningen från sidan:

Download "En prestanda- och funktionsanalys av Hypervisors för molnbaserade datacenter"

Transkript

1 En prestanda- och funktionsanalys av Hypervisors för molnbaserade datacenter Examensarbete 15hp - Högskoleingenjörsexamen i datateknik, 180hp Robin Bard Simon Banasik Malmö högskola - Teknik och samhälle Institutionen för datavetenskap Examinator, Ivan Kruzela Handledare, John Niubo Uppdragsgivare och extern handledare, Ross Tsagalidis, Försvarsmakten Malmö, Maj 2013

2 Sammanfattning I dagens informationssamhälle pågår en växande trend av molnbaserade tjänster. Vid implementering av molnbaserade tjänster används metoden Virtualisering. Denna metod minskar behovet av antal fysiska datorsystem i ett datacenter. Vilket har en positiv miljöpåverkan eftersom energikonsumtionen minskar när hårdvaruresurser kan utnyttjas till sin fulla kapacitet. Molnbaserade tjänster skapar samhällsnytta då nya aktörer utan teknisk bakgrundskunskap snabbt kan komma igång med verksamhetsberoende tjänster. För tillämpning av Virtualisering används en så kallad Hypervisor vars uppgift är att distribuera molnbaserade tjänster. Efter utvärdering av vetenskapliga studier har vi funnit att det finns skillnader i prestanda och funktionalitet mellan olika Hypervisors. Därför väljer vi att göra en prestanda- samt funktionsanalys av Hypervisors som kommer från de största aktörerna på marknaden. Dessa är Microsoft Hyper-V Core Server 2012, Vmware ESXi och Citrix XenServer Free edition. Vår uppdragsgivare är försvarsmakten som bekräftade en stor efterfrågan av vår undersökning. Rapporten innefattar en teoretisk grund som beskriver tekniker bakom virtualisering och applicerbara användningsområden. Genomförandet består av två huvudsakliga metoder, en kvalitativ- respektive kvantitativ del. Grunden till den kvantitativa delen utgörs av ett standardsystem som fastställdes utifrån varje Hypervisors begränsningar. På detta standardsystem utfördes prestandatester i form av dataöverföringar med en serie automatiserade testverktyg. Syftet med testverktygen var att simulera datalaster som avsiktligt påverkade CPU och I/O för att avgöra vilka prestandaskillnader som förekommer mellan Hypervisors. Den kvalitativa undersökningen omfattade en utredning av funktionaliteter och begränsningar som varje Hypervisor tillämpar. Med tillämpning av empirisk analys av de kvantitativa mätresultaten kunde vi fastställa orsaken bakom varje Hypervisors prestanda. Resultaten visade att det fanns en korrelation mellan hur väl en Hypervisor presterat och vilken typ av dataöverföring som den utsätts för. Den Hypervisor som uppvisade goda prestandaresultat i samtliga dataöverföringar är ESXi. Resultaten av den kvalitativa undersökningen visade att den Hypervisor som offererade mest funktionalitet och minst begränsningar är Hyper-V. Slutsatsen blev att ett mindre datacenter som inte planerar en expansion bör lämpligtvis välja ESXi. Ett större datacenter som både har behov av funktioner som gynnar molnbaserade tjänster och mer hårdvaruresurser bör välja Hyper-V vid implementation av molntjänster. Nyckelord: Hypervisor, ESXi, Hyper-V, XenServer, Prestanda, Jämförelse, CPU, I/O.

3 Abstract A growing trend of cloud-based services can be witnessed in todays information society. To implement cloud-based services a method called virtualization is used. This method reduces the need of physical computer systems in a datacenter and facilitates a sustainable environmental and economical development. Cloud-based services create societal benefits by allowing new operators to quickly launch business-dependent services. Virtualization is applied by a so-called Hypervisor whose task is to distribute cloud-based services. After evaluation of existing scientific studies, we have found that there exists a discernible difference in performance and functionality between different varieties of Hypervisors. We have chosen to perform a functional and performance analysis of Hypervisors from the manufacturers with the largest market share. These are Microsoft Hyper-V Core Server 2012, Vmware ESXi and Citrix XenServer Free edition. Our client, the Swedish armed forces, have expressed a great need of the research which we have conducted. The thesis consists of a theoretical base which describes techniques behind virtualization and its applicable fields. Implementation comprises of two main methods, a qualitative and a quantitative research. The basis of the quantitative investigation consists of a standard test system which has been defined by the limitations of each Hypervisor. The system was used for a series of performance tests, where data transfers were initiated and sampled by automated testing tools. The purpose of the testing tools was to simulate workloads which deliberately affected CPU and I/O to determine the performance differences between Hypervisors. The qualitative method comprised of an assessment of functionalities and limitations for each Hypervisor. By using empirical analysis of the quantitative measurements we were able to determine the cause of each Hypervisors performance. The results revealed that there was a correlation between Hypervisor performance and the specific data transfer it was exposed to. The Hypervisor which exhibited good performance results in all data transfers was ESXi. The findings in the qualitative research revealed that the Hypervisor which offered the most functionality and least amount of constraints was Hyper-V. The conclusion of the overall results uncovered that ESXi is most suitable for smaller datacenters which do not intend to expand their operations. However a larger datacenter which is in need of cloud service oriented functionalities and requires greater hardware resources should choose Hyper-V at implementation of cloud-based services. Keywords: Hypervisor, ESXi, Hyper-V, XenServer, Performance, Comparison, CPU, I/O.

4 Innehållsförteckning 1. Inledning Bakgrund och syfte Frågeställning Avgränsningar Kravspecifikation för arbetsprocess Metod Definitioner Teoretisk grund RAID Virtualisering Hypervisor Typ Typ Hypervisor-arkitektur Xen Tekniker för Virtualisering Binary Translation Para-Virtualisering Hardware-assisted Virtualization Hardware-assisted Virtualization med Para-Virtualisering Molntjänster System Under Test Hårdvara Mjukvara Kvalitativa funktioner och hårdvarukrav Funktionaliteter Hårdvarukrav Microsoft Hyper-V Core Server VMware ESXi Citrix XenServer Free Edition Kvantitativa mätningar... 29

5 6.1 Testdata Mandelbrot serien Pseudo-data Textsträng Testverktyg Testverktyg 1: FTP Testverktyg 2: HTTP Testverktyg 3: SQL Exportering av statistik från Hypervisor Export av mätattribut CPU och I/O från ESXi Export av mätattribut CPU och I/O från XenServer Export av mätattribut CPU och I/O från Hyper-V Resultat Kvalitativa resultat av funktionaliteter och begränsningar Kvantitativa mätresultat Sammanställning av mätresultat från testverktyg Sammanställning av mätresultat från Hypervisor (CPU och Disk I/O) Diskussion Kvalitativa funktionaliteter och begränsningar Användbarhet Hårdvarukrav Kvantitativa prestandaskillnader Ekonomisk hållbarhet och samhällsnytta Miljöpåverkan Slutsats Vidare forskning Referenser Bilagor... 73

6 1. Inledning 1.1 Bakgrund och syfte I dagens informationssamhälle pågår en växande trend av Software as a Service (ondemand tjänster). Software as a Service är ett lager i den servicemodell som ingår i begreppet molnbaserade tjänster. Orsaken bakom den växande trenden är att företag vill hitta effektiva lösningar och få tillgång till nya tjänster på kort tid. Cisco har gjort en prognos som visar en utveckling att företag vill flytta sin affärskritiska data till molnbaserade datacenter (Cisco 2012). Cisco hävdar även att på grund av den ökade trenden flyttas en stor mängd av den datatrafik som tidigare befann sig innanför företags nätverk, ut till externa leverantörer (Cisco 2012), vilket också bekräftar att efterfrågan av molnbaserade tjänster ökar. Vid konstruktion av infrastruktur för molnbaserade tjänster används metoden Virtualisering. Denna metod minskar behovet av antal fysiska datorsystem i ett datacenter. Detta ger en positiv miljopåverkan eftersom energikonsumtionen minskar när hårdvaruresurser kan utnyttjas till sin fulla kapacitet. Vilket i sin tur bidrar till företags ekonomiska och miljömässiga medvetenhet. För tillämpning av Virtualisering används en så kallad Hypervisor vars uppgift är att distribuera tjänster via Virtuella Maskiner (VM). Efter utvärdering av vetenskapliga studier har vi funnit att det finns skillnader i prestanda och funktionalitet mellan olika Hypervisors. Som tidigare nämnt så ökar företags intresse att flytta sin affärskritiska data till molnbaserade datacenter, därför väljer vi att göra en prestanda- samt funktionsanalys av Hypervisors som kommer från de största aktörerna på marknaden. Vår uppdragsgivare är Försvarsmakten, som efter granskning av vår förstudie, bekräftade intresset för vår undersökning. 6/95

7 1.2 Frågeställning Vårt examensarbete kommer med hjälp av laborationer och studier att redogöra för vilken Hypervisor typ-1 som är lämplig gällande prestanda och funktionalitet vid implementation av molntjänster i ett större respektive mindre datacenter. För att kunna besvara denna huvudfrågeställning bryter vi ner den i en kvalitativ och en kvantitativ underfråga, Vilka skillnader i funktionalitet finns i Hypervisor typ-1? Hur väl presterar en Hypervisor typ-1 med hänsyn till Disk I/O och CPU vid olika typer av dataöverföringar? 1.3 Avgränsningar Vi har valt ut tre Hypervisors som kommer från de största aktörerna på marknaden. Dessa är Microsoft Hyper-V Core Server 2012, Citrix XenServer Free version och VMware ESXi (techtarget.com 2011), som alla är bare-metal versioner. Arbetet är avgränsat till en kvalitativ jämförelse av funktioner samt hårdvarukrav som varje Hypervisor tillämpar. Kvantitativ mätning kommer att begränsas till en Virtuell Maskin per Hypervisor, vilket avgränsar prestandatestet med avseende på den maximala kapacitet som en Hypervisor totalt kan leverera. Antalet vcpu som allokerats till varje VM är begränsat till 1, då Citrix XenServer Free version har ett begränsat stöd för multipla vcpu. Denna begränsning har tillämpats för att samtliga Hypervisors ska testas under lika villkor. Strävan efter lika villkor ledde även till att mätning av utnyttjat internminne (RAM) uteblev, då det konstaterades att ESXi var den enda Hypervisor som kunde mäta aktivt utnyttjat internminne. 7/95

8 1.4 Kravspecifikation för arbetsprocess Följande kravspecifikation för arbetsprocessen har fastställts i förstudien. Krav-nr. K1 K2 K3 K4 K5 K6 K7 K8 K9 K10 Kravspecifikation Skapa testdata för simulering av datalast på Hypervisor typ-1. Skapa testverktyg för att utföra kvantitativ mätning på Hypervisor typ-1. Installation av hårdvaru-raid, samt hårddiskar på en fysisk server. Installation av mjukvara, Hypervisor typ-1, Virtuell Maskin, operativsystem. Konfiguration av Hypervisor typ-1, Virtuell Maskin, operativsystem. Installation av testverktyg och servertjänst (FTP,HTTP och SQL) på Virtuell Maskin. Utföra kvantitativa mätningar på Hypervisor typ-1. Identifiera funktioner och krav som Hypervisor typ-1 tillämpar. Sammanställa resultat och utföra kvalitativ analys av Hypervisor-funktioner. Sammanställa resultat och utföra kvantitativ analys av Hypervisor-prestanda. Tabell 1.1: Kravspecifikation från förstudie. 1.5 Metod Examensarbetet omfattar en kvalitativ och en kvantitativ metoddel. Där den kvalitativa metoddelen är en studie av vetenskapliga artiklar på en Hypervisors funktioner, krav och begränsningar. I avsnittet resultat redovisas skillnader i funktionalitet och begränsningar mellan Hypervisors. Resultatet ligger till grund för en djupare analys i avsnittet diskussion där en Hypervisors lämplighetsgrad vid implementation av molnbaserade tjänster fastställs. I den kvantitativa metoddelen samlas mätbar data in genom simulering av dataöverföringar. Detta görs med testverktyg som är specifikt skapade för varje typ av dataöverföring. Datan omvandlas därpå till de enheter som är relevanta för det vetenskapliga området i datakommunikation. Därefter tillämpas statistiska metoder för att framställa tabeller och grafer. Mätningarna sammanställs sedan i avsnittet resultat 8/95

9 som ligger till grund för en empirisk analys i diskussion som redovisar orsaken till en viss Hypervisors prestanda och därmed dess lämplighetsgrad i olika typer av dataöverföringar. Figur 1.2 visar sambandet mellan frågeställningar, metoder och vilka moment som genomförs i arbetet. Figur 1.2: Samband mellan frågeställningar, metoder och genomförande. 9/95

10 2. Definitioner Följande definitioner tydliggör akronymer och begrepp som förekommer i rapporten. Bare-metal En benämning av Hypervisor som ofta förekommer i offentliga publikationer, syftar till definitionen Hypervisor Typ-1, en Hypervisor som kommunicerar direkt med hårdvara utan mellanliggande operativsystem. BBWC Battery Backup Write Cache, vilket är en modul som tillåter aktivering av write cache på ett kontrollerkort. CLI Command Line Interface är ett gränsnitt som tillåter en användare att utföra kommando i textform. CSV Comma Separated Values är en datafil med kommaseparerade värden, vilket förenklar inläsningen av värden i statistiska sammanhang. Kernel Den engelska och datavetenskapliga definitionen för ett operativsystems kärna. On-demand Korrekt översatt "på begäran", syftar till mjukvarutjänster som direkt kan allokeras för kunder i servicemodellen Software as a Service. Resource pool En samling resurser som kan delas av flera Hypervisors. RPS Request Per Second, en enhet samt ett mått på antal sidvisningar per sekund via protokollet HTTP. 10/95

11 SUT System Under Test, ett definierat testsystem som tillämpas i våra tester. Testdata En simulerad datalast för testverktyg. 11/95

12 3. Teoretisk grund I denna del av arbetet behandlas en teoretisk grund för en djupare förståelse om varje komponent, vilket är en förutsättning för att kunna förstå bakgrunden i vår kvantitativa och kvalitativa undersökning. 3.1 RAID RAID, Redundant Array of Independent Disks är en lagringsteknologi som erbjuder olika nivåer av redundans- och prestandafördelar. Teknologin ligger som en hårdvarugrund och är standard i dagens datacenter som erbjuder bland annat molntjänster. Vi har valt att utnyttja denna teknik som bas i vårt SUT 1 för att kunna dra nytta av de redundans- och prestandaegenskaper som en RAID-uppsättning erbjuder. I vårt SUT har vi valt att använda RAID 1. Denna RAID-uppsättning är redundant då data speglas över minst två fysiska hårddiskar och skapar därmed en identisk kopia av all data på varje hårddisk. Om en hårddisk i denna RAID-uppsättning skulle sluta att fungera så byts den ut och därefter synkroniseras datan på nytt från den fungerade till den senast tillagda hårddisken. (Chen, Lee, Gibson, Katz & Patterson 1994, s.152) RAID 1 erbjuder en prestandaökning i form av att läs och skrivhastighet blir kortare. Anledningen till denna prestandaökning är att vid läsprocesser så väljs alltid den disk som för tillfället har lägst seek time och rotational latency, detta gäller främst för mekaniska håddiskar. Seek time innebär tiden för den mekaniska läsarmen att röra sig till det spår där avläsning eller skrivning ska ske (Daintith & Wright 2008). Rotational latency innebär den tid det tar för den magnetiska skivan att hinna spinna till korrekt position, eller med andra ord till den position där data ska lagras eller läsas (Daintith & Wright 2008). Den totala skrivtiden blir därmed beroende av den hårddisk som tar längst tid på sig att skriva med avseende på seek time och rotational latency (Chen et al 1994, s ). 1 SUT, System Under Test 12/95

13 3.2 Virtualisering Virtualisering innebär att en virtuell efterliknelse skapas med de egenskaper som en fysisk dator innefattar. I en virtuell miljö delas de fysiska resurser som är tillgängliga vilket tillåter flera operationer att pågå samtidigt. Operationer som exekveras på virtuella maskiner är separerade från underliggande hårdvaruresurser på så sätt att de bara har tillgång till de resurser som allokerats för varje virtuell maskin. (Daintith & Wright 2008) 3.3 Hypervisor Mjukvarulagret som ligger mellan gästoperativsystem och hårdvara kallas för en Hypervisor och används för att tillämpa virtualisering. Hypervisorn tillåter parallell hantering av flera virtuella maskiner. En Hypervisor består av ett mjukvarulager som hanterar den virtuella miljön där virtuella maskiner även kallade gästmaskiner eller gäster opererar. En Hypervisor övervakar dessa virtuella maskiner och har ansvar för att dynamiskt allokera den mängd resurser som gästen behöver. Det finns två kategorier av Hypervisor; Typ1 och Typ2. (Graziano, Charles David 2011, s.6-7) Typ-1 Denna Hypervisor, även kallad Bare-metal opererar på en lägre nivå jämfört med Hypervisor typ-2, se figur 3.1, detta innebär att den exekveras direkt på hårdvara och är inte är beroende av ett mellanliggande operativsystem. Typ-1 ansvarar för allokering av alla tillgängliga resurser till sina gäster så som exempelvis disk, minne, CPU och periferienheter. En fördel med denna typ av Hypervisor är att den inte utgör någon större inverkan på hårdvaruresurser vilket är till nytta i exempelvis ett datacenter där kostnadseffektivitet spelar stor betydelse och resurserna huvudsakligen går till drift av virtuella maskiner. I vissa fall så kan drivrutinstödet vara begränsat vilket kan leda till att en Hypervisor inte kan installeras på all typ av hårdvara, detta är en följd av att de ska vara lättviktiga och inte hämma prestanda. En vanlig funktionalitet bland Typ-1 är att man beviljar särskild prioritet till en virtuell maskin, dess roll blir att ha tillgång till funktioner som tillåter den att hantera andra gäster. Denna gästhanterare kallas oftast för Domain-0 eller Dom0. Typ-1 är vanligast i datacentermiljö och alla Hypervisors som är med i vårt test är av denna typ. (Graziano, Charles David 2011, s.6-7) 13/95

14 Figur 3.1 illustrerar en Hypervisor Typ-1 och förbindelsen mellan Hypervisor, virtuella maskiner och hårdvara. Figur 3.1: Hypervisor Typ Typ-2 Denna typ av Hypervisor är beroende av en värd och dess operativsystem för att fungera. Hypervisorn ligger inte direkt över hårdvarulagret utan ett tredjepartsoperativsystem finns mellan hårdvara och Hypervisor, se figur 3.2. Med en Typ-2 kan eventuella drivrutinproblem undvikas och Hypervisorn kan därmed fungera på all typ av hårdvara. Java Virtual Machine är ett exempel på mjukvara som har en liknande funktion som en Typ-2. JVM tillåter en virtuell maskin att utföra tolkningen av den Java bytekod som skapas vid kompilering av Java-programkod, fördelen med att använda JVM är de samma som för en Typ-2, det vill säga att det underliggande operativsystemet och hårdvara inte har någon betydelse. (Java.com, 2013) Denna typ av Hypervisor kan även användas för att tillåta körning av ett operativsystem på ett annat befintligt operativsystem. En stor nackdel med Typ-2 är att de kräver väldigt mycket resurser i form av exempelvis CPU och lämpar sig inte i servermiljö som Typ-1 med avseende på kostnadseffektivitet och driftsäkerhet. (Graziano, Charles David 2011, s.6-7) 2 Baserad på figur från referens (Keller, Szefer, Rexford, Lee 2010) 14/95

15 Figur 3.2: Hypervisor Typ Hypervisor-arkitektur En Hypervisor kan delas upp i Micro- och Monolith-kernel. Micro-Kernel innebär att basfunktioner som exempelvis hantering av fysiskt minne och processor-schedulering ligger innanför Hypervisorn och komponenter som enhetsdrivrutiner ligger utanför Hypervisorn. En Monolith-baserad Hypervisor innebär att komponenter som enhetsdrivrutiner implementeras i Hypervisorns mjukvara, se figur 3.3. Koden blir mindre för Micro-Kernel varianten av Hypervisor och lämnar ett mindre så kallat foot print efter sig. Alla Hypervisors i vår undersökning är av typen Micro-kernel (Xen.org, 2013). (Hwang, Dongarra, Fox 2011) 3 Baserad på figur från referens (Keller, Szefer, Rexford, Lee 2010) 15/95

16 Figur 3.3: Monolitisk och Micro-kernel Xen Xen är inte namnet på en specifik tillverkares Hypervisor utan en modell som vissa tillverkare valt att följa, denna modell av Hypervisor-mjukvara utvecklades av Cambridge University, se figur 3.4. I våra test så representeras Xen av Citrix XenServer, och även Microsoft Hyper-V som är skapad efter Xen modellen. (Xen.org, 2013) En Xen Hypervisor separerar policys och mekanismer genom att tillåta en privilegierad gäst i form av en virtuell maskin med speciella behörigheter att hantera virtualiseringspolicys i form av exempelvis tillträdeskontrol till hårdvaruresurser mellan virtuella maskiner. Sedan implementerar Hypervisor-lagret de policys som den privilegierade gästen ställt upp. (Le Cuong 2009, s.12) Den privilegierade gästen som nämns i stycket ovan kallas för Domain-0 eller Dom0 och de andra gästerna som Hypervisorn hanterar kallas för Domain-U. Dom0 är designad för att ha direkt tillgång hårdvara och hantera hårdvaruenheter, därmed får den ansvar för att allokera och mappa hårdvaruresurser till de övriga icke-priviligierade gästerna. (Hwang et al 2011) 4 Baserad på figur från referens (Keller, Szefer, Rexford, Lee 2010) 16/95

17 Figur 3.4: Xen modell Tekniker för Virtualisering X86-operativsystem använder sig av en arkitekur som delar upp applikationer och operativsystems hårdvaruprivilegier i fyra nivåer. Dessa nivåer, ring-0, -1, -2, -3 och -4 illustreras i figur 3.5. När en applikation exekveras i Supervisor mode så har det tillgång till systemets fulla resurser, till exempel samtliga minnesadresser, Supervisor mode symboliseras i figuren av ring-0. Om en applikation exekveras i User mode så är det restrikterat, applikationen har exempelvis inte tillgång till alla minnesadresser. User mode symboliseras av ring-1-3 i figur (Niubo 2012, s.11) Figur 3.5: Hårdvaruprivelegier i Ringmodell. Ett operativsystem behöver direkttillgång till de underliggande hårdvaruresurser och kunna utföra priviligerade instruktioner i ring-0, när man virtualiserar detta 5 Baserad på figur från referens (Keller, Szefer, Rexford, Lee 2010) 17/95

18 operativsystem så uppstår en problematik i form av att virtualiseringslagret förväntas ligga i ring-0, för att kunna skapa och hantera virtuella maskiner. Ännu en svårighet som uppstår i samband med att virtualisering måste ske i den innersta ringnivån är att vissa känsliga instruktioner inte kan virtualiseras på grund av att de alltid måste utföras i Ring-0. En lösning för dessa problem är att exempelvis använda sig av Binary Translation, Para-Virtualisering eller Hardware-Assisted Virtualization. (vmware.com, 2007) Binary Translation Full virtualisering innebär att operativsystemet inte vet om att det är virtualiserat. Detta betyder att operativsystem virtualiseras utan att dess kärna på något vis behöver modifieras, detta kan uppnås med hjälp av Binary Translation (Xen.org, 2013). Binary translation innebär en process som översätter exekverbar kod från en maskin till en annan, se figur 3.6. Detta sker samtidigt som koden exekveras på destinationsmaskinen (Ung & Cifuentes 2000, s.1). Denna teknik fångar och virtualiserar exekveringen av vissa känsliga instruktioner, det vill säga instruktioner som måste utföras i Supervisor mode (Hwang et al 2011). En Hypervisor tillåts att exekveras i ring-0 tack vare Binary Translation samtidigt som det virtualiserade operativsystemet exekveras i en user mode (ring-1-3). Det virtualiserade operativsystemet har dock högre privilegier än de applikationer som i sin tur exekveras på det virtualiserade operativsystemet. (vmware.com, 2007) Binary translation kan innebära förluster i prestanda på grund av att det tar tid att utföra, därför kan full virtualisering av I/O intensiva- applikationer anses en utmaning. För att effektivisera Binary translation används en kod-cache för att lagra ofta använda instruktioner, detta leder dock till att mer internminne används. (Hwang et al 2011) 18/95

19 Figur 3.6: Binary Translation Para-Virtualisering För att en Hypervisor ska kunna använda sig av para-virtualisering så krävs det att operativsystemets kärna eller kernel modifieras. Modifikationerna består av att ickevirtualiserbara instruktioner ersätts i ett operativsystem med så kallade Hypercalls som kommunicerar direkt med virtualiseringslagret. Hypervisorn ger tillgång till ett Hypercall gränssnitt för andra kritiska kerneloperationer som minneshantering, avbrottshantering och tidshantering. (vmware.com, 2007). Illustration i figur 3.7. Eftersom para-virtualisering kräver modifikation av operativsystemet så innebär detta att operativsystem som till exempel Windows inte kan virtualiseras med denna metoden. Däremot finns det modifierade versioner av Linux som tillåter att virtualiseras med para-virtualisering. Para-virtualisering kräver mindre resurser men introducerar andra problem i form av kompabilitetsproblem. (Hwang et al 2011) 6 Baserad på figur från referens (vmware.com, 2007) 19/95

20 Figur 3.7: Para-Virtualisering Hardware-assisted Virtualization Hardware Assisted Virtualization är en teknik för att uppnå full virtualisering och innebär att man tar hjälp av Intels Virtualization Technology VT-x eller AMD-V för att ge hårdvarustöd vid processornivå för virtualisering. Detta hårdvarustöd tillåter Hypervisorn att ligga under Ring0 och på så sätt fånga privilegierade och känsliga instruktioner. De två teknikerna tillåter därmed att ickevirtualiserbara instruktioner kan fångas och hanteras av en Hypervisor utan att Binary translation och para-virtualisering måste användas. (vmware.com, 2007) Hardware-assisted Virtualization med Para-Virtualisering I vissa typer av Hypervisors så utnyttjas en kombination av Hardware Assisted Virtualization med element från para-virtualisering. För att öka prestandan så kan fullt virtualiserade gäster använda speciella para-virtualiserade drivrutiner. Dessa drivrutiner är optimerade för full virtualisering och kringår disk och nätverks emulationer som utförs vid en full virtualisering och tillåter prestanda som är jämförbar eller i vissa fall bättre än vad para-virtualisering kan erbjuda. Samtidigt kan operativsystem vars kernel inte blivit modifierad ändå virtualiseras, exempelvis Windows. (Xen.org, 2013) 3.5 Molntjänster Begreppet molntjänst är fortfarande i ett utvecklingsstadie och eftersom det finns delade meningar om vad en molntjänst definieras som, väljer vi att beskriva den senaste 7 Baserad på figur från referens (vmware.com, 2007) 20/95

21 definitionen som gjordes av NIST, National Institute of Standards and Technology Definitionen innebär att en molntjänst är en modell som via nätverk tillåter på användares begäran tillgång till en samlad pool av dator-resurser. Med dator-resurser menas exempelvis; nätverk, servrar, lagring, applikationer och andra tjänster. Dessa dator-resurser kan snabbt distribueras till en kund utan omfattande interaktion med leverantör (NIST, Mell & Grance 2011). IaaS som relaterar till Virtualisering, definieras som Infrastructure as a Service och är en av de tre servicemodeller som tillhör begreppet molntjänster, se figur 3.8. De servicemodeller som associeras med molntjänster är följande: SaaS: Software as a Service. PaaS: Platform as a Service. IaaS: Infrastructure as a Service. (NIST, Mell & Grance 2011) Figur 3.8: Servicemodeller för molntjänster 8 8 Baserad på definitionen av NIST, Mell & Grance /95

22 Den servicemodell som vårt SUT främst relateras till är IaaS samt en simulering av PaaS där vi implementerar FTP-, SQL- och HTTP-servertjänster på en VM. Våra testverktyg simulerar SaaS genom att kommunicera med dessa servertjänster. En vanligt förekommande tjänst bland dagens IT företag är att hyra eller hyra ut datorresurser i form av virtualiserade tjänster. Denna företeelse har fått namnet Infrastructure as a Service. Mer specifikt så kan IaaS innebära att datacenter tillhandahåller virtuella maskiner för uthyrning, detta innebär att kunder som betalar för IaaS tjänster undkommer utgifter som berör exempelvis drift och underhållskostnader. (Graziano, Charles David 2011, s.8). IaaS brukar inte medföra långsiktiga åtagande mellan kund och leverantör vilket är ett attraktivt alternativ gentemot drift av en egen infrastruktur. Datorkraft hyrs ut enligt kundens specifika behov och de får själva stå för administration av uthyrda Virtuella Maskiner. (Bhardwaj et al 2010, s.68). Kunden har inte tillgång till att hantera eller styra den underliggande moln-infrastruktur som ett datacenter använder, exempelvis en Hypervisor, kunden har endast möjlighet att administrera den Virtuella Maskin samt datalagring, distribuerade applikationer och i vissa fall begränsad kontroll över ett fåtal nätverkskomponenter som tillhör den virtuella maskinen. (NIST, Mell & Grance 2011). IaaS nackdelar befinns främst i frågan om integritet och säkerhet. För att kunna bruka denna servicemodell är kravet att kundens data ligger distribuerad på en extern leverantör. Detta leder ofta in i en subjektiv diskussion om hur säkert det är att lagra data i molntjänster. (Graziano, Charles David 2011, s.8). Avgränsningen som gjorts i vår frågeställning omfattar prestanda och behandlar således inte området säkerhet och integritet. 22/95

23 4. System Under Test SUT, System Under Test definierar en fastställd standard i form av hårdvara och mjukvara som appliceras på varje enskild installation av Hypervisor. 4.1 Hårdvara Som tidigare nämt i avsnitt har Hypervisor typ-1 ett begränsat stöd för hårdvara. En del i vårt arbete gick därför ut på att samla de hårdvarukrav som varje Hypervisor ställer, se avsnitt 5.1. De hårdvarukomponenter som uppfyller kraven beskrivs i tabell 4.1. Servermodell Moderkort HP Proliant ML330 G6 Intel 5500 Chipset Processor E5506 (4 kärnor, 2.13 Ghz, 4MB L3, 80W) Minne Kontrollerkort Lagringsenheter Nätverksadapter 6 GB PC R Smart Array P MB med BBWC 2 x 160GB SATA 1Gb NC326i Ethernet Adapter Tabell 4.1: Hårdvarukomponenter i System Under Test (SUT). För att utesluta broadcast paket och andra störningar över Ethernet, placeras en Gigabit Ethernet switch mellan den externa klient som initierar testverktyg och SUT, isolerad från högskolans nätverk. Observera att testverktygen exekveras på SUT, se figur 4.2. Figur 4.2: Exekvering av Testverktyg. 23/95

24 Samtliga hårdvarukomponenter finansieras av Malmö högskola. 4.2 Mjukvara En Hypervisor tilldelas konfiguration enligt tabell 4.3. Lagringsutrymme 9 Minne 160 GB 6 GB CPU Kärnor 4 Antal VM 1 Samplerate för mätverktyg 20 sekunder Tabell 4.3: Standardkonfiguration för Hypervisor. En Virtuell Maskin tilldelas konfiguration enligt tabell 4.4. Lagringsutrymme Minne 60 GB 2048 MB vcpu 1 Operativsystem Servertjänster 10 Hypervisor drivrutiner 11 Fast storlek på vhd Windows 7 64-bit Professional Apache (HTTP), Filezilla (FTP) och mysql (SQL) Ja Ja Tabell 4.4: Standardkonfiguration för Virtuell Maskin. 9 Från logisk RAID enhet 10 Xampp för Windows 11 VMware tools, XenServer tools, Hyper-V integration components 24/95

25 5. Kvalitativa funktioner och hårdvarukrav Denna del av arbetet berör den kvalitativa studie av egenskaper som berör prestanda och funktionalitet. 5.1 Funktionaliteter Nedan kan man läsa korta beskrivningar om de egenskaper som kommer att jämföras i resultatavsnitt 7.1. Logisk processor En logisk processor är ett begrepp som förekommer inom hyperthreading. Hyperthreading innebär att en fysisk processor använder sig av multipla trådar för att kunna utföra flera operationer samtidigt, varje tråd får en egen så kallad logisk processor eller även kallad virtuell processor (Kim, 2004, s.10). Detta innebär att en fysisk processor med en fysisk kärna får en logisk processor med två virtuella kärnor. Processorn som används i vårt SUT är en Intel Xeon E5506 och har stöd för Hyperthreading. E5506 har fyra kärnor och fyra trådar vilket ger åtta logiska processorer. RAM Den maximala/begränsade mängd internminne som en Hypervisor tillåts utnyttja. Vårt SUT har 6 GB DDR3 RAM. RAM per VM Den maximala/begränsande mängd fysiskt minne som en Virtuell Maskin tillåts använda. vcpu per host vcpu står för virtuell cpu och betecknar hur många virtuella cpu enheter som en host maximalt stödjer. vcpu per VM Betecknar hur många virtuella CPU enheter som varje enskild virtuell maskin stödjer. 25/95

26 VM per host Antal maximalt tillåtna Virtuella Maskiner per host. Live Migration Detta är en funktionalitet som tillåter migrering av Virtuella Maskiner samtidigt som de är aktiva. Denna funktion tillåter virtuella maskiner att flyttas inom samma resource pool utan att användare behöver uppleva någon form av driftstopp. (citrix.com, 2013) Live Storage Denna funktionalitet tillåter migrering av Virtuella maskiner utanför den lokala resource poolen eller att migrera de hårddiskar som tillhör en VM från en förvaringsplats till en annan. (Xen.org, 2013) Snapshot Denna funktionalitet tillåter att ta en stillbild av systemets momentantillstånd. Detta används för att kunna återgå till ett tidigare läge. (vmware.com, 2013) VLAN support VLAN skapar en logisk gruppering av switchportar, vilket tillåter att multipla segment kan kommunicera över samma fysiska LAN port. (vmware.com, 2013) 26/95

27 5.2 Hårdvarukrav Nedan följer tabeller med minimikrav för att kunna installera de Hypervisor som ingår i våra tester Microsoft Hyper-V Core Server 2012 Systemresurs CPU Minimum 64-bit x86 CPU Kärnor 1 RAM 512MB Gigabit Ethernet Nätverkskort 1 SCSI/SAS Kontrollerkort RAID Funktionalitet Local Storage Diskutrymme HAV*, Intel VT, AMD-v Nej Nej Ja 8GB Ja * Hardware Assisted Virtualization (microsoft.com, 2013) VMware ESXi Systemresurs CPU Minimum 64-bit x86 CPU Kärnor 2 RAM 2GB/8GB* Gigabit Ethernet Nätverkskort 1 SCSI/SAS Kontrollerkort RAID Funktionalitet Local Storage Diskutrymme HAV, Intel VT, AMD-v Ja Nej Ja 1GB Ja * Rekommenderat (vmware.com, 2013) 27/95

28 5.2.3 Citrix XenServer Free Edition Systemresurs CPU Minimum 64-bit x86 CPU Kärnor 2* RAM 2 GB Gigabit Ethernet Nätverkskort 1 SCSI/SAS Kontrollerkort RAID Funktionalitet Local Storage Diskutrymme HAV, Intel VT, AMD-v Ja Nej Ja 16 GB Ja * Rekommenderat (citrix.com, 2013) 28/95

29 6. Kvantitativa mätningar Denna del av arbetet behandlar valet av testdata och konstruktion av testverktyg för kvantitativ mätning på varje Hypervisor. 6.1 Testdata För att kunna utföra våra tester måste först typen av testdata fastställas. Det är av stor vikt att testdatan har relevans till vår prestandaanalys och påverkar komponenterna CPU och Disk I/O. För att kunna besvara vår frågeställning om hur väl en Hypervisor presterar med hänsyn till CPU och Disk I/O vid dataöverföringar, har vi genom noggrann granskning av vetenskapliga artiklar i vår förstudie hittat relevanta servertjänster att applicera vår testdata på. Dessa servertjänster använder protokollen HTTP, FTP och databasspråket SQL och simulerar det lager som i servicemodellen kallas för PaaS, Platform as a Service Mandelbrot serien Vid mätning av dataöverföring via HTTP protokollet har vi beslutat att använda testdata som medvetet belastar CPU med komplexa matematiska beräkningar. Denna testdata utnyttjar mandelbrot serien som är uppkallad efter den franske matematikern Benoît B. Mandelbrot. Serien används för att iterativt transformera reella och imaginära tal för att bygga upp en fraktal. Noggrannheten på denna fraktal kan likställas med antal iterationer n, vilket också bestämmer den totala tid som förflutit för konstruktion av fraktalen. Vår fraktal är skapad av Ken Lo som har en akademisk bakgrund i rymdfysik och är ett exempel på hur mandelbrot serien kan skapas med programmeringsspråket PHP (Lo, 2007). Efter laboration av mandelbrotfraktalen har vi beslutat att begränsa antalet iterationer n till 40, och fraktalens storlek till 80x80 pixlar, vilket ger ett tidsintervall som är tillräckligt för att mäta prestanda. Se källkod i bilaga 1. Figur 6.1: Genererad 80x80 mandelbrotfraktal med 40 iterationer. 29/95

30 6.1.2 Pseudo-data Vid mätning av dataöverföring via FTP protokollet har vi beslutat att använda testdata som medvetet belastar Disk I/O med stor mängd data. Denna testdata är till skillnad från HTTP mätningen inte CPU-intensiv, då dess beräkningar överlåtes till processorn på kontrollerkortet i den fysiska servern (Hsieh, Stanton, Ali 2002, s.2). För att skapa testdatan använder vi funktionen FSEEK som ingår i grundpaketet för programmeringsspråket PHP. Syntax enligt PHP.NET visas i figur 6.2. int fseek ( resource $handle, int $offset [, int $whence = SEEK_SET ] ) handle offset whence A file system pointer resource that is typically created using fopen(). The offset. To move to a position before the end-of-file, you need to pass a negative value in offset and set whence to SEEK_END. whence values are: SEEK_SET - Set position equal to offset bytes. SEEK_CUR - Set position to current location plus offset. SEEK_END - Set position to end-of-file plus offset. Figur 6.2: Syntax för fseek. I denna mätning är filstorleken på testdata avgörande för att bestämma en Hypervisors kvantitativa prestanda. Efter laboration med filstorlek, beslutade vi att begränsa storleken till 500,000,000 bytes megabytes vilket ger ett tidsintervall som är tillräckligt för att kvantitativt mäta prestanda. Inparametrar till funktionen FSEEK, samt filskrivning presenteras i figur /95

31 $f = fopen('500.mb', 'wb'); fseek($f, 0.5 * 1000 * 1000 * 1000, SEEK_SET); fwrite($f, 'after 500 MB'); fclose($f); Figur 6.3: Tillämpade kommandon i php för 500,000,000 bytes testdata Textsträng Vid mätning av dataöverföring via SQL protokollet har vi beslutat att använda testdata som medvetet belastar både disk I/O och CPU men som även begränsas av den mängd RAM som är allokerat för en VM och hur effektivt en Hypervisor hanterar minnesresurser (Yao 2010). För att simulera ett verkligt scenario har vi valt testdata som består av en textsträng och en primärnyckel n med autoindex, se tabell 6.4. ID n Text thequickbrownfoxjumpsoverthelazydog Tabell 6.4: Tesdata för SQL-INSERT. Antalet rader som skrivs och läses till och från en databas är avgörande för att kvantitativt mäta prestanda. Efter laboration med antalet rader, har vi beslutat att använda rader, vilket ger ett tidsintervall som är tillräckligt för att mäta prestanda. 6.2 Testverktyg I förstudien gjordes en utvärdering av vetenskapliga artiklar för att bedöma om det fanns testverktyg som kunde mäta dataöverföringar kvantitativt. Organisationen SPEC - Standard Performance Evaluation Corporation, har tillverkat ett produktpaket som kallas SPECvirt_sc2010 (spec.org, 2013). Detta produktpaket är sammanställt för att utföra en prestandaanalys av Hypervisors vid olika typer av dataöverföringar. Hårdvarukraven för detta produktpaket visade sig ligga långt över det SUT som vi har tillgång till. Det fanns heller inte några övriga verktyg som kvantitativt kunde mäta dataöverföringar och presentera dessa vetenskapligt med tabeller och grafritning. Genom att analysera testprocessen som SPECvirt_sc2010 använder kunde vi skapa egna 31/95

32 testverktyg som visar likartade resultat. Den faktor som med noggrannhet krävs för att vetenskapligt mäta dataöverföringar är tiden t. PHP är det programmeringsspråk som vi valt att skapa våra testverktyg i. Med motivering att det finns ett utvecklat klassbibliotek för grafritning kallad jpgraph, och stöd för de protokoll som ingår i våra mätningar. Det finns även en funktion för att noggrant mäta tiden i mikrosekunder kallad microtime (PHP.NET, 2013). Eftersom vi valt att skapa våra egna testverktyg kan vi med fördel matematiskt fastställa rätt typ av enheter Testverktyg 1: FTP Testverktyget utvecklas i syfte att vetenskapligt mäta kvantitativ prestanda på dataöverföringar via FTP protokollet. De komponenter som implementeras och anses vara relevanta för vår mätning är; Identifiering av Hypervisor Start-funktion Starttid FTP-funktion Räknare Sluttid Tabeller Grafritning För att kunna hantera den stora mängd data som mäts upp vid en dataöverföring används datastrukturen array. Testverktyget tillämpar en inbyggd FTP-funktion i PHP för att sända och kontrollera mängden överförd data. Insamlingen sker genom iteration, som vid villkoret per sekund lagrar tidpunkten t och storleken på aktuell överförd data kb. Samtidigt beräknas enheten kbps, genom att beräkna skillnaden av totalt överförd data mellan två tidpunkter. När testet når sitt slut beräknas den genomsnittliga hastigheten, samt den totala förflutna tiden. Därefter skapas tabeller och grafer. Se källkod i bilaga 5. 32/95

33 6.2.2 Testverktyg 2: HTTP Testverktyget utvecklas i syfte att vetenskapligt mäta kvantitativ prestanda på dataöverföringar via HTTP protokollet. Testverktyget delas in i två delar. Den första delen består av en mjukvara som heter apache-bench, som är utvecklat av stiftelsen The Apache Software Foundation (apache.org, 2013). Apache-bench är framtaget för att prestandatesta hur många gånger per sekund (RPS) ett webbscript kan läsas. För att minimera felmarginaler i tiden t automatiseras hela testprocess del ett genom att och lagra start- och sluttiden med hjälp av ett batch-script, se bilaga 3. I apache-bench testet anger vi med parametern -n att 1000 förfrågningar skall skickas mot testdatan fractal.php. För att simulera ett verkligt scenario har vi dessutom valt att skicka multipla förfrågningar uppdelat på 10 test som tabell 6.5 visar. Observera att i verkligheten kommer inte förfrågningarna från en och samma källa. Test nr Multipla förfrågningar Tabell 6.5: Apache-bench test-table. Testprocess del 2 tillämpar PHP funktionalitet. De komponenter som implementeras i del två och anses vara relevanta för vår mätning är; 33/95

34 Identifiering av Hypervisor Start-funktion Funktion för att samla mätvärden genererade av apache-bench Räknare Tabeller Eftersom apache-bench i testprocess del ett genererar 10 olika testfall, skapade vi funktioner som samlar in mätvärden Request per second RPS och den förflutna tiden t från varje enskilt testfall. Insamlingen sker genom iteration, och löper med villkoret $count < 10, där 10 är det sista testfallet. Genom att summera alla värden i array tid, får vi ut den totala tiden för alla testfall. Eftersom vi vet att det är 10 testfall kan vi även summera array RPS och dividera med 10, så får vi ut den genomsnittliga hastigheten RPS över alla test. Därefter skapas tabeller och grafer. Se källkod i bilaga Testverktyg 3: SQL Testverktyget utvecklas i syfte att vetenskapligt mäta kvantitativ prestanda på dataöverföringar via SQL protokollet. De komponenter som implementeras och anses vara relevanta för vår mätning är; Identifiering av Hypervisor Start-funktion Starttid Skapa ny tabell i databas Insert-funktion Select-funktion Räknare Sluttid Tabeller Grafritning 34/95

35 Testverktyget skapar en ny tabell vid varje körning, detta för att säkerställa att tabellen inte redan innehåller rader. Vilket annars kan påverka prestanda negativt. Därefter skrivs testdatan in i databasen, och skapar rader. Vid detta tillfälle används en iteration som lagrar tiden t och antal skrivningar vid tidpunkten i två separata arrays. När rader är inmatade i tabellen skrivs den förflutna tiden ut för Insert. Därefter påbörjas en ny iteration som lagrar tiden t och antal utläsningar vid tidpunkten i två separata arrays. När rader är utlästa från tabellen skrivs den förflutna tiden ut för SELECT. När testet når sitt slut beräknas antal skrivningar per sekund och antal utläsningar per sekund, samt den totala förflutna tiden. Därefter skapas tabeller och grafer. Se källkod i bilaga Exportering av statistik från Hypervisor För att kunna genomföra våra tester så krävdes undersökningar för att reda ut hur relevanta mätvärden skulle extraheras. Hypervisors i vår undersökning erbjöd olika bra möjligheter för mätningsutförandet. Kravet för mätningarna var att relevanta mätvärden i form I/O read, I/O write och CPU skulle kunna insamlas och sedan extraheras i ett hanterbart format. Ett annat viktigt värde som samlades in var tidsstämplar från varje Hypervisor så att I/O och CPU kunde jämföras med de resultat from producerades av testverktygen. En begränsning som påverkade hur vi valde att samla in mätvärden var att VMware's mjukvaruklient V-Sphere endast kunde hämta mätvärde från Hypervisorn med hastigheten var tjugonde sekund. Detta visade omöjligt att modifiera (vmware.com, 2013). Efter studier av vetenskapliga artiklar visade det sig att en kort samplerate på exempelvis 1 sekund, teoretiskt skulle kunna påverka prestanda negativt (technet.com, 2009). Vi ansåg på grund av risken och begränsningen att vårt SUT skulle använda en samplerate på tjugo sekunder för mätning av CPU och I/O Export av mätattribut CPU och I/O från ESXi Via mjukvaruklienten VMware V-Sphere kunde Hypervisor ESXi administreras och en stor mängd mätattribut och mätvärden kunde observeras. V-Sphere har ett inbyggt stöd för att extrahera mätvärden till en excelfil vilket gav lättmanipulerbar data som direkt kunde formateras till våra egna graf-verktyg. 35/95

36 De mätattribut som användes för ESXi visas i tabell 6.6. Typ Mätattribut Enhet I/O Read rate, Write Rate kbps CPU CPU Usage % Tabell 6.6: Mätattribut för ESXi Export av mätattribut CPU och I/O från XenServer Citrix erbjuder en mjukvaruklient för att fjärrhantera Hypervisorn kallad XenCenter. Statistik över prestanda fanns tillgängligt men möjligheten att extrahera mätvärden till CSV eller andra filformat saknades, vilket ledde till att andra alternativ utforskades. Det första verktyget som undersöktes var SFlow som samlar in mätvärden och sedan skickar vidare dessa till en utomstående klient kallad collector. SFlow hade möjligheten att begränsa samplerate och gav en bättre upplösning på mätvärden än vad som kunde observeras i XenCenter tack vare dess breda konfigurationsmöjligheter. SFlow saknade exporteringsmöjligheter i form av export till excel- eller CSV. Verktyget är en tredjeparts applikation som kräver installation av mjukvara på både Hypervisor och en separat fristående maskin. Detta verktyg framkallar en osäkerhet då mätvärden överförs via TCP/IP och inte lagras lokalt, samt att Hypervisor prestanda kan påverkas negativt då SFlow installeras på Dom-0 gästen (citrix.com, 2012). DSTAT, som är ett väl utbrett verktyg för Linux distributioner var det andra verktyget som undersöktes. DSTAT erbjuder extrahering av mätvärden via Linux kommandon. Men även denna är en tredje-parts applikation. Efter laboration med verktyget valdes även denna insamlingsmetod bort eftersom prestanda kunde påverkas negativt då samplerate var låst till en sekund. Efter kontakt med företaget Citrix blev vi hänvisade till en uppdatering för XenServer som kallas Performance Monitoring Enhancements Pack for XenServer 6.1 (Citrix.com, 36/95

37 2012). Denna uppdatering inkluderade ett nytt verktyg, RRD2CSV, som innehåller en utökning med fler mätattribut, inställning av samplerate samt export till CSV. Verktyget är utvecklat av Citrix och således ingen tredje-parts produkt. Dokumentationen till RRD2CSV beskriver alla tillgängliga mätattribut. De mätattribut som användes för XenServer visas i tabell 6.7. Typ Mätattribut Enhet I/O io_throughput_read_4e467cec, io_throughput_write_4e467cec MBps CPU cpu_avg % Tabell 6.7: Mätattribut för XenServer. För att starta insamlingen med en samplerate på 20 sekunder exekverades följande kommando i XenServer CLI: RRD2CSV -n -s 20 io_throughput_read_4e467cec io_throughput_write_4e467cec cpu_avg > test.csv Export av mätattribut CPU och I/O från Hyper-V För att tillåta fjärrhantering av Hyper-V så installeras följande mjukvara på klientdatorn; Remote Server Administration Tools for Windows 7 with Service Pack 1 (SP1). I detta utgångsläge hade vi utan svårigheter kunnat fjärrhantera Hypervisorn om den hade varit medlem i en Windows domän, där rättigheter styrs centralt. Men eftersom vi valt att installera Hyper-V i en isolerad miljö utan domän, kunde vi initialt inte fjärrhantera Hypervisorn. Utöver Remote Server Administration Tools krävdes dessutom HVRemote.wsf som är ett cscript för att lägga till behörighet och aktivera fjärrhantering på en Hyper-V Core Server. Eftersom Hyper-V Core Server är en Hypervisor av typen 1, saknas mätverktyget Performance Monitor som är ett standardiserat verktyg i Microsoft Windows för att mäta prestanda. 37/95

38 Istället används Hyper-V s CLI och typeperf för att identifiera vilka mätattribut som går att använda. Dessa kan skrivas till en textfil för att vidare bestämma vilka som skall användas. Detta gjordes med hjälp av kommandot: typeperf /q find "Hyper-V" > countershyperv.txt Relevanta mätattribut identifierades och textfilen redigerades för att endast innehålla insamling av CPU och I/O. För att konfigurera en mätning på Hyper-V används raden: logman.exe create counter HyperVCounters -f bin -cf countershyperv.txt -max 200 -si 20 -si 20 gav en sampelrate på 20 sekunder. För att starta mätningen skrevs följande rad: logman start HyperVCounters För att upphöra mätningen skrevs följande: logman stop HyperVCounters De mätattribut som användes för Hyper-V Core Server 2012 visas i tabell 6.8. Typ Mätattribut Enhet I/O CPU PhysicalDisk(_total)Disk Read, PhysicalDisk(_total)Disk Write Hyper-V Hypervisor Logical Processor(_Total)\% Total Run Time Bps % Tabell 6.8: Mätattribut för Hyper-V. 38/95

39 7. Resultat Detta avsnitt behandlar kvalitativa och kvantitativa resultat av de studier och mätningar som genomförts i arbetet. 7.1 Kvalitativa resultat av funktionaliteter och begränsningar I denna del av rapporten sammanställs de kvalitativa funktioner och begränsningar som varje Hypervisor tillämpar. Tabell 7.1 redovisar ett sammanställt resultat av funktionaliteter och egenskaper som behandlas i avsnitt 5.1 respektive avsnitt 3. Diskussion kring resultatet kommer att utvecklas vidare i avsnitt 8.1. Funktioner/ begränsningar Microsoft Hyper-V Core Server 2012 VMware ESXi 5.1 Citrix XenServer 6.1 Free edition Logiska processorer RAM 4 TB 32 GB 1 TB vram 1 TB Obegränsad 128 GB vcpu/host vcpu/vm VM/Host Required disk space 8 GB 1 GB 16 GB Custom kernel Nej Ja Nej Export av statistik Ja Ja Ja 12 Stöd för tredje-parts tillägg Ja Nej Ja Live Migration Ja Nej Ja Live Storage Ja Nej Nej Snapshot Ja Ja Ja VLAN Ja Ja Ja Micro-kernel Ja Ja Ja Binary translation Nej Ja Nej HAV Ja Ja Ja PV on HAV Ja Ja Ja Tabell 7.1: Jämförelse av funktioner och begränsningar. 12 Kräver tilläggskomponent Performance Monitoring Enhancements Pack. 39/95

40 7.2 Kvantitativa mätresultat Presentation av de kvantitativa mätresultaten och en kort beskrivning om varje testfall Sammanställning av mätresultat från testverktyg Dessa mätresultat är en sammanställning av tidigare utförda mätresultat från testverktygen, se bilaga /95

41 Figur 7.2 visar den jämförbara genomsnittliga dataöverföringshastigheten (kb/s) med testverktyg 1: FTP. Grön färg symboliserar en positiv ökning av dataöverföringshastighet i förhållande till föregående Hypervisor. Tabell 7.3 redovisar resultatet i tabellform. Fetstilt symboliserar den Hypervisor med högsta genomsnittliga dataöverföringshastighet. Figur 7.2: Jämförbar genomsnittlig dataöverföringshastighet med testverktyg 1: FTP. Hypervisor Genomsnittlig överföringshastighet (kb/s) Ökning (kb/s) Hyper-V Core Server VMware ESXi XenServer Free Edition Tabell 7.3: Jämförbar genomsnittlig dataöverföringshastighet med testverktyg 1: FTP. 41/95

42 Figur 7.4 visar den totala tid som förflutit (s) vid dataöverföringen med testverktyg 1: FTP. Röd färg symboliserar en negativ ökning av tiden i förhållande till föregående Hypervisor. Tabell 7.5 redovisar resultatet i tabellform. Fetstilt symboliserar den Hypervisor med kortast tid vid dataöverföringen. Figur 7.4: Den totala tid som förflutit (s) vid dataöverföringen med testverktyg 1: FTP. Hypervisor Förfluten tid (s) Ökning (s) Hyper-V Core Server VMware ESXi XenServer Free Edition Tabell 7.5: Den totala tid som förflutit (s) vid dataöverföringen med testverktyg 1: FTP. 42/95

43 Figur 7.6 visar den jämförbara genomsnittliga dataöverföringen "förfrågningar per sekund" (RPS) med testverktyg 2: HTTP. Grön färg symboliserar en positiv ökning av RPS i förhållande till föregående Hypervisor. Tabell 7.7 redovisar resultatet i tabellform. Fetstilt symboliserar den Hypervisor med högsta RPS vid dataöverföringen. Figur 7.6: Jämförbar genomsnittlig RPS med testverktyg 2: HTTP. Hypervisor RPS Ökning VMware ESXi Hyper-V Core Server XenServer Free Edition Tabell 7.7: Jämförbar genomsnittlig RPS med testverktyg 2: HTTP. 43/95

44 Figur 7.8 visar den totala tid som förflutit (s) vid dataöverföringen "förfrågningar per sekund" (RPS) med testverktyg 2: HTTP. Röd färg symboliserar en negativ ökning av tiden i förhållande till föregående Hypervisor. Tabell 7.9 redovisar resultatet i tabellform. Fetstilt symboliserar den Hypervisor med kortast tid vid dataöverföringen. Figur 7.8: Den totala tid som förflutit (s) vid dataöverföringen med testverktyg 2: HTTP. Hypervisor Förfluten tid (s) Ökning (s) VMware ESXi Hyper-V Core Server XenServer Free Edition Tabell 7.9: Den totala tid som förflutit (s) vid dataöverföringen med testverktyg 2: HTTP. 44/95

45 Figur 7.10 visar den jämförbara genomsnittliga dataöverföringen vid "antal rader som läses från databasen per sekund" (SELECT/s) med testverktyg 3: SQL. Grön färg symboliserar en positiv ökning av antalet rader som läses från databasen per sekund i förhållande till föregående Hypervisor. Tabell 7.11 redovisar resultatet i tabellform. Fetstilt symboliserar den Hypervisor med högst antal rader vid utläsning från databasen per sekund vid dataöverföringen. Figur 7.10: Jämförbar genomsnittlig SELECT/s med testverktyg 3: SQL. Hypervisor SELECT/s Ökning (rader) Hyper-V Core Server VMware ESXi XenServer Free Edition Tabell 7.11: Jämförbar genomsnittlig SELECT/s med testverktyg 3: SQL. 45/95

46 Figur 7.12 visar den totala tid som förflutit (s) vid dataöverföringen "antalet rader som läses från databasen per sekund" (SELECT/s) med testverktyg 3: SQL. Röd färg symboliserar en negativ ökning av tiden i förhållande till föregående Hypervisor. Tabell 7.13 redovisar resultatet i tabellform. Fetstilt symboliserar den Hypervisor med kortast tid vid dataöverföringen. Figur 7.12: Den totala tid som förflutit (s) vid dataöverföringen SELECT/s med testverktyg 3: SQL. Hypervisor Förfluten tid (s) Ökning (s) VMware ESXi Hyper-V Core Server XenServer Free Edition Tabell 7.13: Den totala tid som förflutit (s) vid dataöverföringen SELECT/s med testverktyg 3: SQL. 46/95

47 Figur 7.14 visar den jämförbara genomsnittliga dataöverföringen vid "antalet rader som skrivs till databasen per sekund" (INSERT/s) med testverktyg 3: SQL. Grön färg symboliserar en positiv ökning av antalet rader som skrivs till databasen per sekund i förhållande till föregående Hypervisor. Tabell 7.15 redovisar resultatet i tabellform. Fetstilt symboliserar den Hypervisor med högst antal rader vid skrivning till databasen per sekund vid dataöverföringen. Figur 7.14: Jämförbar genomsnittlig INSERT/s med testverktyg 3: SQL. Hypervisor INSERT/s Ökning (rader) XenServer Free Edition 37 5 VMware ESXi Hyper-V Core Server Tabell 7.15: Jämförbar genomsnittlig INSERT/s med testverktyg 3: SQL. 47/95

48 Figur 7.16 visar den totala tid som förflutit (s) vid dataöverföringen "antalet rader som skrivs till databasen per sekund" (INSERT/s) med testverktyg 3: SQL. Röd färg symboliserar en negativ ökning av tiden i förhållande till föregående Hypervisor. Tabell 7.17 redovisar resultatet i tabellform. Fetstilt symboliserar den Hypervisor med kortast tid vid dataöverföringen. Figur 7.16: Den totala tid som förflutit (s) vid dataöverföringen INSERT/s med testverktyg 3: SQL. Hypervisor Förfluten tid (s) Ökning (s) XenServer Free Edition VMware ESXi Hyper-V Core Server Tabell 7.17: Den totala tid som förflutit (s) vid dataöverföringen INSERT/s med testverktyg 3: SQL. 48/95

49 Figur 7.18 visar den totala tid som förflutit (s) vid dataöverföringarna INSERT och SELECT med testverktyg 3: SQL. Röd färg symboliserar en negativ ökning av tiden i förhållande till föregående Hypervisor. Tabell 7.19 redovisar resultatet i tabellform. Fetstilt symboliserar den Hypervisor med kortast tid vid dataöverföringen. Figur 7.18: Den totala tid som förlutit (s) vid dataöverföringarna INSERT och SELECT med testverktyg 3: SQL. Hypervisor Förfluten tid (s) Ökning (s) XenServer Free Edition VMware ESXi Hyper-V Core Server Tabell 7.19: Den totala tid som förlutit (s) vid dataöverföringarna INSERT och SELECT med testverktyg 3: SQL. 49/95

50 7.2.2 Sammanställning av mätresultat från Hypervisor (CPU och Disk I/O) Dessa mätresultat är sammanställda från mätningar som är utförda lokalt på varje Hypervisor, och exekverades parallellt vid körning av testverktyg. Den förflutna tiden stämmer överrens med överföringarna från testverktygen i avsnitt Denna sammanställning används i syfte att påvisa en Hypervisors prestandaresultat. Figur 7.20 visar CPU-utnyttjande i procent över tiden på en Hypervisor vid dataöverföringen med testverktyg 1: FTP. Blå färg symboliserar Hyper-V Core Server 2012, röd färg symboliserar VMware ESXi och grön färg symboliserar XenServer % motsvarar 100% utnyttjande av 1 vcpu. Figur 7.20: CPU-utnyttjande i procent över tiden vid dataöverföringen med testverktyg 1: FTP. 50/95

51 Figur 7.21 visar I/O läs-utnyttjande i kbps över tiden på en Hypervisor vid dataöverföringen med testverktyg 1: FTP. Blå färg symboliserar Hyper-V Core Server 2012, röd färg symboliserar VMware ESXi och grön färg symboliserar XenServer Mätvärdena hämtas från kontrollerkortets mätattribut. Figur 7.21: I/O läs-utnyttjande över tiden vid dataöverföringen med testverktyg 1: FTP. 51/95

52 Figur 7.22 visar I/O skriv-utnyttjande i kbps över tiden på en Hypervisor vid dataöverföringen med testverktyg 1: FTP. Blå färg symboliserar Hyper-V Core Server 2012, röd färg symboliserar VMware ESXi och grön färg symboliserar XenServer Mätvärdena hämtas från kontrollerkortets mätattribut. Figur 7.22: I/O skriv-utnyttjande över tiden vid dataöverföringen med testverktyg 1: FTP. 52/95

53 Figur 7.23 visar CPU-utnyttjande i procent över tiden på en Hypervisor vid dataöverföringen med testverktyg 2: HTTP. Blå färg symboliserar Hyper-V Core Server 2012, röd färg symboliserar VMware ESXi och grön färg symboliserar XenServer % motsvarar 100% utnyttjande av 1 vcpu. Figur 7.23: CPU-utnyttjande i procent över tiden vid dataöverföringen med testverktyg 2: HTTP. 53/95

54 Figur 7.24 visar I/O läs-utnyttjande i kbps över tiden på en Hypervisor vid dataöverföringen med testverktyg 2: HTTP. Blå färg symboliserar Hyper-V Core Server 2012, röd färg symboliserar VMware ESXi och grön färg symboliserar XenServer Mätvärdena hämtas från kontrollerkortets mätattribut. Figur 7.24: I/O läs-utnyttjande över tiden vid dataöverföringen med testverktyg 2: HTTP. 54/95

55 Figur 7.25 visar I/O skriv-utnyttjande i kbps över tiden på en Hypervisor vid dataöverföringen med testverktyg 2: HTTP. Blå färg symboliserar Hyper-V Core Server 2012, röd färg symboliserar VMware ESXi och grön färg symboliserar XenServer Mätvärdena hämtas från kontrollerkortets mätattribut. Figur 7.25: I/O skriv-utnyttjande över tiden vid dataöverföringen med testverktyg 2: HTTP. 55/95

56 Figur 7.26 visar CPU-utnyttjande i procent över tiden på en Hypervisor vid dataöverföringen med testverktyg 3: SQL. Blå färg symboliserar Hyper-V Core Server 2012, röd färg symboliserar VMware ESXi och grön färg symboliserar XenServer % motsvarar 100% utnyttjande av 1 vcpu. Figur 7.26: CPU-utnyttjande i procent över tiden vid dataöverföringen med testverktyg 3: SQL.. 56/95

57 Figur 7.27 visar I/O läs-utnyttjande i kbps över tiden på en Hypervisor vid dataöverföringen med testverktyg 3: SQL. Blå färg symboliserar Hyper-V Core Server 2012, röd färg symboliserar VMware ESXi och grön färg symboliserar XenServer Mätvärdena hämtas från kontrollerkortets mätattribut. Figur 7.27: I/O läs-utnyttjande över tiden vid dataöverföringen med testverktyg 3: SQL. 57/95

58 Figur 7.28 visar I/O skriv-utnyttjande i kbps över tiden på en Hypervisor vid dataöverföringen med testverktyg 3: SQL. Blå färg symboliserar Hyper-V Core Server 2012, röd färg symboliserar VMware ESXi och grön färg symboliserar XenServer Mätvärdena hämtas från kontrollerkortets mätattribut. Figur 7.28: I/O skriv-utnyttjande över tiden vid dataöverföringen med testverktyg 3: SQL. 58/95

59 8. Diskussion Detta avsnitt består av en kvalitativ och en kvantitativ diskussion som behandlar resultaten av våra undersökningar. Dessa resultat diskuteras och förklaras för att ge läsaren svar på följande frågeställningar: Vilka skillnader i funktionalitet finns i Hypervisor typ-1? Hur väl presterar en Hypervisor typ-1 med hänsyn till Disk I/O och CPU vid olika typer av dataöverföringar? Utöver en kvalitativ och kvantitativ diskussion avhandlas även ekonomisk hållbarhet och samhällsnytta såväl som miljöpåverkan. De sistnämnda diskuteras för att reflektera över viktiga värderingar och frågor som återspeglar teknikens inflytande i samhället. 8.1 Kvalitativa funktionaliteter och begränsningar De resultat som den kvalitativa undersökningen påvisar i avsnitt 7.1 upplyser de funktioner och begränsningar som olika Hypervisors innehar. Resultaten visar på att den Hypervisor som ökar den administrativa underhållsförmågan för datacenter och omfattar minst antal begränsningar i resursallokering är Microsoft Hyper-V Core Server För leverantörer av molnbaserade datacenter är begränsningar i resursallokering ett problem som ökar behovet av antal fysiska datorsystem och bör därför ha en övervägande betydelse vid val av Hypervisor. En Hypervisor med låg begränsning i resursallokering ökar den långsiktiga investeringen vid uppgradering av datorkomponenter för befintliga fysiska datorsystem. Begränsningarna som finns i tabell 7.1. påvisar varje enskild aktörs licensrestriktioner. Dessa restriktioner har olika betydelser när det gäller hur resurser kan fördelas mellan de maximalt antal tillåtna VMs. En aktör begränsar resurser avsiktligt på ett vis som kan få en intressent att tro att 59/95

60 alla VMs kan konfigureras enligt de maximala gränserna (ex 4 TB 13 vram) för varje VM. Men den kostnadsfria licensen begränsar antal virtuella maskiner som maximalt kan utnyttjas vilket betyder att man inte kan allokera exempelvis 4 TB RAM till alla 1024 virtuella maskiner eftersom begränsningarna maximalt tillåter en sammanlagd användning av 4 TB fördelat över samtliga virtuella maskiner i en Hypervisor. Med hänvisning till vårt SUT, där varje VM är konfigurerad med 2048 MB 14 vram. Skulle Hyper-V med 1024 virtuella maskiner totalt kräva 2 TB internminne, vilket överstiger aktörens begränsning. ESXi med 512 virtuella maskiner till totalt 1 TB interminne, vilket överstiger aktörens begränsning. XenServer understiger aktörens begränsning då 150 virtuella maskiner används eftersom den totala allokeringen blir 300 GB 15 i internminne. Genom att välja den Hypervisor som kan hantera lägst antal virtuella maskiner, vilket är XenServer med 150 stycken, kan en jämförbar kvot beräknas. Hyper-V tillåter 6,67 GB vram per VM, ESXi 0,214 GB vram per VM och XenServer 0,854 GB vram per VM. Detta betyder att den Hypervisor som ger störst skalbarhet i jämförelse med de övriga är Hyper-V. Licensmodellen för Hyper-V skiljer sig från de övriga då Microsoft valt en kostnadsfri Hypervisor som inte har en stigande licensmodell. Microsoft har istället valt att endast ta betalt för licensen som krävs vid installation av Windows Server på en virtuell maskin. Denna möjlighet saknar konkurrenterna. När det gäller administrativ underhållsförmåga så erbjuder Hyper-V både Live Migration och Live Storage. Citrix XenServer erbjuder endast Live Migration och inte Live Storage. VMware s motsvarighet till Live migration och Live Storage kallas vmotion och är inte tillgänglig i den kostnadsfria versionen. Live Migration och Live Storage anses viktiga när man står vid valet av Hypervisor. Live Migration underlättar flytt av virtuella maskiner och Live Storage möjliggör flytt av lagringsmängd som är förknippad med en specifik virtuell maskin. Båda 13 TB, TeraByte 14 MB, MegaByte 15 GB, GigaByte 60/95

61 funktionerna kan appliceras utan yttre påverkan av en tjänst. Det innebär att kunder som använder sig av servicemodeller relaterade till molntjänster således inte upplever driftstopp, vilket stämmer överens med de krav som ställs på en molntjänst. En annan viktig administrativ egenskap som alla Hypervisors i vår undersökning uppfyller är Snapshot funktionalitet. Samtliga har stöd för snapshot med undantaget att ESXi inte tillåter en schemalagd tillämpning av snapshot-funktionalitet. VLAN funktionalitet minskar behovet av fysiska nätverksportar och därav kabeldragning i ett datacenter. Komplexiteten ökar i förhållande till datacentrets storlek, vilket medför att VLAN funktionalitet är användbart i molnbaserade datacenter. 8.2 Användbarhet Arbetet är avgränsat till en prestanda- och funktionsanalys och täcker därför inte installationsprocessen av varje individuell Hypervisor. Däremot anser vi att inlärningstiden vid hanteringen av varje Hypervisors klient är en viktig faktor att diskutera. Den klient som var mest lätthanterlig är VMware V-Sphere 5.0. Där administrativa funktioner i gränssnittet grupperades där användaren förväntade sig att de skulle ligga. V-Sphere restrikterade inte avancerade inställningsmöjligheter, som en mer erfaren användare kan förvänta sig. XenCenter är den klient som används i administrativt syfte för XenServer, saknade initialt exportmöjligheter av statistik, vilket minskar den administrativa förmågan att felsöka virtuella maskiners prestanda. Remote Server Administration Tools for Windows 7, är den klient som användes för att hantera Hyper-V. Den administrativa förmågan var begränsad i versionen för Windows 7, som saknade avancerade inställningsmöjligheter. Den administrativa förmågan var större i Windows 8 men behandlades inte i vårt arbete. Windows 7 är 2013 vanligare än Windows 8 på befintliga arbetsstationer, vilket är en anledning till att Hyper-V fått en sämre bedömning av administrativ förmåga än ESXi. 8.3 Hårdvarukrav Microsoft Hyper-V är den Hypervisor som har lägst hårdvarukrav. Microsofts Hypervisor är utvecklad för att kunna användas på så många olika hårdvaru-plattformar 61/95

62 som möjligt. De hårdvarukrav som de anser minimikrav är att processorn måste ha stöd för virtualisering vilket är antingen Intel VT eller AMD-V. Hyper-V kräver enligt Microsoft minst mängd internminne för att fungera, däremot kräver den relativt mycket lagringsmängd för att kunna installeras. Citrix XenServer kräver också en stor mängd lagringsutrymme för att kunna installeras, 16GB behövs för att hela systemet ska få plats. VMware ESXi kräver minst lagringsutrymme av de Hypervisors som undersökts. Detta kan förklaras med att både Hyper-V och XenServer i grunden består av Operativsystem som ursprungligen konstruerats för andra uppgifter än virtualisering. Därmed har man fått anpassa befintliga operativsystem, Hyper-V är baserat på Windows och XenServers är baserat på Linux. ESXi använder sig av Linux endast för att initiera sin specialutvecklade kärna som kallas vmkernel, utöver detta används inte Linux av ESXi. Eftersom samtliga Hypervisors i vår undersökning alla är av typen micro-kernel så skulle de i praktiken kunna uppta lika lite lagringsutrymme som VMware ESXi. En anpassad kärna har fördelen att den inte behöver utnyttja lika mycket hårdvaruresurser som en generell kärna. ESXi har en viss fördel över Hyper-V och XenServer då den har möjlighet att utnyttja Binary Translation i fallet då värddatorn inte skulle ha stöd för Hardware Assisted Virtualization. I dagens tekniksamhälle är det ovanligt att server-orienterade datorsystem saknar stöd för HAV. Microsoft har tydligen ett intresse att nå ut till så många slutkunder som möjligt på grund av det låga hårdvarukrav och det faktum att de erbjuder mest funktionalitet i sin Hypervisor. Microsoft vill därmed öka sin marknadsandel genom att övertala befintliga användare av konkurrerande Hypervisors om fler funktioner och färre restriktioner i sin egen kostnadsfria Hypervisor - Hyper-V. 8.4 Kvantitativa prestandaskillnader Resultaten från den kvantitativa delen av rapporten som går att ta del av i avsnitt 7.2 visar de uppmätta prestandaskillnader som testverktygen genererat för varje Hypervisor vid olika typer av dataöverföringar. Resultaten visar även att det finns ett samband mellan hur väl en Hypervisor presterat och vilken typ av dataöverföring som den utsätts för. 62/95

63 Det visade sig att Hyper-V hade en högre genomsnittlig prestanda (kb/s) jämfört med konkurrenterna vid en dataöverföring med testverktyg 1: FTP. Vårt SUT använder hårdvarubaserad RAID, med syfte att avlasta systemets CPU och överlåta beräkningar till kontrollerkortet 16. Figur 7.20 visar att Hyper-V utnyttjade procentuellt minst CPU vid dataöverföringen och figur 7.21 samt 7.22 visar att denna Hypervisor hade högst läsning och skrivning till och från I/O enheten. Detta betyder att Microsofts Hypervisor i denna dataöverföring kombinerar hårdvaruresurser mest effektivt och har därmed högst prestanda vid dataöverföringar med FTP protokollet. VMware ESXi var den Hypervisor som prestandamässigt var efterföljande Hyper-V. ESXi hade procentuellt högre CPU utnyttjande vid dataöverföringen men hade en lägre läsning och skrivning till och från I/O enheten. Citrix XenServer hade lägst genomsnittlig dataöverföring (kb/s) och procentuellt högst utnyttjande av CPU, men lägst läsning och skrivning till och från I/O enheten. ESXi hade en högre genomsnittlig prestanda (RPS) jämfört med konkurrenterna vid en dataöverföring med testverktyg 2: HTTP. Testdatan som bestod av en mandelbrotfraktal, beräknades vid varje förfrågan som ställdes till HTTP-servertjänsten. Denna användes i syfte att testa vilken Hypervisor som tillämpar CPU beräkningar mest effektivt. Figur 7.23 visar att ESXi utnyttjade procentuellt mindre CPU än XenServer som hade högst CPU utnyttjande, vilket kan förklaras genom att XenServer kräver mer resurser för att utföra samma typ av operationer som ESXi. Detta betyder att XenServer är mindre effektiv på att hantera intensiva CPU operationer än ESXi. Hyper-V som prestandamässigt var efterföljande ESXi uppvisade ett likartat utnyttjande av CPU som ESXi. XenServer var den Hypervisor som presterade lägst i detta test. Vi har lyckats hitta en källa som utövar liknande test för att validera vårt mätresultat. Detta test är framtaget av ett företag som testar lastbalansering och mäter antal anslutningar per sekund mot en HTTP-servertjänst som finns installerad på en Hypervisor. Jämförelsen är mellan de Hypervisors som ingår i vår undersökning. Mätningen påvisar liknande mätresultat som uppnåddes med testverktyg 2: HTTP. (Exceliance.fr, 2012) 16 Förtydligande, kontrollerkort är en I/O enhet 63/95

64 XenServer hade en högre genomsnittlig prestanda vid skrivning av antalet rader per sekund (INSERT/s) jämfört med konkurrenterna vid en dataöverföring med testverktyg 3: SQL. Testverktyget prestandatestade även genomsnittlig läsning av antalet rader per sekund (SELECT/s) där Hyper-V hade högst prestanda. Syftet med testdatan var att prestandatesta samtliga Hypervisors med vanligt förekommande databastransaktioner som sker i ett molnbaserat datacenter. Den Hypervisor som positonsmässigt hamnade på andra plats i båda SQL testen var ESXi. Eftersom varken Hyper-V eller XenServer presterade högst i båda testen, är ESXi den Hypervisor som prestandamässigt bör väljas vid implementering av databasserver på en virtuell maskin. Figur 7.28 visar att XenServer hade högst toppvärden vid skrivning till I/O enheten, vilket motiverar dess höga prestandaresultat vid INSERT/s. Figur 7.27 visar att Hyper-V hade högst toppvärde vid läsning från I/O enheten, vilket kan förklara dess prestandaresultat. En jämförelse av figur 7.27 och 7.28 visar även att samtliga Hypervisors utnyttjar mer disk I/O vid skrivning än för läsning. Detta är förstås beroende av hur testverktyget är uppbyggt. Men betyder att om ett datacenter ska implementera en databas-servertjänst bör ett kontrollerkort och hårddiskar som har en hög skrivhastighet prioriteras. Med en återkoppling till avsnitt 3.1, kan utnyttjandet av I/O teoretiskt förklaras genom att vi använde RAID-1 som lagringsteknologi. Vid skrivning sker dataöverföring parallellt till två hårddiskar samtidigt. Vid läsning väljer kontrollerkortet ut den hårddisk som spårmässigt har kortast väg till datan, vilket medför att mindre I/O används vid läsning. 8.5 Ekonomisk hållbarhet och samhällsnytta Med avseende på molntjänster så innebär resultaten i avsnitt 7.1 att om hårdvaran tillåter det, så ger Hyper-V möjligheten till att flest virtuella maskiner kan driftsättas samtidigt. Enligt servicemodellen IaaS så innebär detta att man kan hyra ut fler virtuella maskiner med Hyper-V än vad man kan med Citrix XenServer eller VMware ESXi. Servicemodellen IaaS skapar möjlighet för nya aktörer att ta sig in på marknaden eftersom en hyrd infrastruktur kan utökas till nästa servicemodell PaaS. PaaS kan då innehålla servertjänster som den nya aktören distribuerar i egen regi. Servicemodellen SaaS ökar samhällsnyttan då nya företag snabbt kan komma igång med nya verksamhetsberoende tjänster utan teknisk bakgrundskunskap. 64/95

65 8.6 Miljöpåverkan Eftersom efterfrågan på molnbaserade tjänster ökar, väljer företag att hyra en servicemodell framför driftsättning av eget datacenter. Virtualisering som infrastruktur har därför en fundamental betydelse då hårdvara i fysiska datorsystem kan utnyttjas mer kostnadseffektivt. Genom att välja en effektiv Hypervisor för den avsedda tjänsten, ökar prestanda och bidrar till en minskad energiförbrukning över en längre period. 8.7 Slutsats För att ge läsaren svar på vår huvudfrågeställning avslutas diskussionen med en slutsats. Resultatet av den kvalitativa undersökningen visade att den Hypervisor som offererade mest funktionalitet och minst begränsningar är Hyper-V. Ett mindre datacenter som inte planerar en expansion bör lämpligtvis välja ESXi på grund av dess höga administrativa förmåga. Ett större datacenter som planerar implementation av molnbaserade tjänster bör dra fördel av funktioner som Live Migration och Live Storage. Dessa tjänster kräver oftast mer hårdvaruresurser vilket betyder att Hyper-V är den Hypervisor som bör användas vid implementation av molntjänster. Datacenter väljer vanligtvis att implementera en aktörs Hypervisor för alla servertjänster. En förenkling av lämplighetsgraden kan därför appliceras, vilket medför att vi kan skapa en strikt poängfördelning där 3 poäng delas ut till den Hypervisor som hade högst prestanda. 1 poäng delas ut till den Hypervisor som presterat lägst i angiven dataöverföring. 2 poäng till den Hypervisor som prestandamässigt placerade sig mellan de andra. Tabell 8.1 visar en förenklad poängmodell baserat på resultatet av den kvantitativa prestandamätningen. 65/95

66 Dataöverföring Microsoft Hyper-V Core Server 2012 VMware ESXi Citrix XenServer Free version FTP (kb/s) HTTP (RPS) SQL (INSERT/s) SQL (SELECT/s) Summering Tabell 8.1: Förenklad poängmodell baserat på resultatet av den kvantitativa prestandamätningen. Summeringen av antal poäng visar att Hyper-V och ESXi är de Hypervisors som prestandamässigt lämpar sig i en datacentermiljö. Med återkoppling till mätresultatet i avsnitt 7.2 är ESXi den Hypervisor som uppvisade goda prestandaresultat i samtliga dataöverföringar, och är därför prestandamässigt den mest lämpliga i ett molnbaserat datacenter där leverantören offererar olika typer av servertjänster. 66/95

67 9. Vidare forskning Den empiriska undersökningen har identifierat nya intressanta faktorer som har inflytande på prestanda. Med återkoppling till den avgränsning som arbetet omfattar så har inte alla faktorer fullständigt behandlats. Dessa faktorer skulle kunna utgöra en grund för vidare forskning. Denna uppsats har främst fokuserat på utnyttjande av en virtuell maskin per Hypervisor, med syftet att mäta en Hypervisors totala prestanda. I distribuerade informationssystem hanterar Hypervisors flera virtuella maskiner simultant. I en vidare forskning är det därför relevant att mäta prestanda när en Hypervisor implementerar multipla virtuella maskiner, i ett så kallat distribuerat informationssystem. Live Migration och Live Storage är funktionaliteter som gynnar molnbaserade datacenter. Det skulle vara intressant att utföra en kvantitativ prestandaanalys av funktionernas effektivitet. Eftersom VMware har en begränsad licensmodell när det gäller vmotion, skulle detta innebära att man är tvungen att utföra prestandatester på en Hypervisor vars licens inte är kostnadsfri. Ett begrepp som behandlades kort i det teoretiska avsnittet är Hypervisor typ-2. En liknande prestandaanalys som detta arbete omfattar skulle kunna utföras på Hypervisor typ-2 i syfte att uppmäta hur prestanda resultaten skiljer sig från typ-1. Ett intressant fenomen som inte fullständigt behandlas av vår undersökning identifierades i figur Under detta test så nyttjade XenServer mer processorkraft än vad den ursprungligen var tilldelad. Detta skulle teoretiska kunna förklaras genom att vid tillämpning av Xen-modellen kräver Dom0-gästen mer av systemets resurser vid CPU intensiva operationer än vad andra konkurrerande modeller uppvisar. 67/95

68 10. Referenser Apache.org (2013) ab - Apache HTTP server benchmarking tool (Elektronisk) Tillgänglig: < > ( ) Bhardwaj, Sushil, Jain, Leena, Jain, Sandeep (2010) Cloud Computing: A study of Infrastructure as a service (IaaS) (Elektronisk) Tillgänglig: < OF.pdf > ( ) Chen, Peter, Lee, Edward, Gibson, Garth, Katz, Randy & Patterson, David (1994) High-Performance, Reliable Secondary Storage". ACM Computing Surveys 26 (Elektronisk) Tillgänglig: < > ( ) Cisco (2012), Global Cloud Index Forecast and Methodology (Elektronisk) Tillgänglig: < ud_index_white_paper.pdf > ( ) Citrix.com Performance Monitoring Enhancements Pack for XenServer 6.1 (2012) (Elektronisk) Tillgänglig: < > ( ) Citrix.com XenServer Performance Monitoring for Scalability Testing (2012) (Elektronisk) Tillgänglig: < Performance Monitoring for Scalability Testing.pdf > ( ) Citrix.com XenServer Tech Specs (2013) (Elektronisk) Tillgänglig: < > ( ) Citrix.com What is XenMotion? (Elektronisk) 68/95

69 Tillgänglig: < > ( ) Daintith John & Wright Edmund (2008) Seek time (senast uppdaterad 2012) (Elektronisk) Tillgänglig: < > ( ) Daintith John & Wright Edmund (2008) Latency (senast uppdaterad 2012) (Elektronisk) Tillgänglig: < > ( ) Daintith John & Wright Edmund (2008) virtual machine (senast uppdaterad 2012) (Elektronisk) Tillgänglig: < > ( ) Exceliance.fr (2012) Exceliance - Aloha Load Balancer < > ( ) Graziano, Charles David (2011) A performance analysis of Xen and KVM hypervisors for hosting the Xen Worlds Project (Elektronisk) Tillgänglig: < > ( ) Hsieh, Jenwei, Stanton, Christopher, Ali, Rizwan Performance Evaluation of Sowtware RAID vs. Hardware RAID for Parallel Virtual File System (2002) (Elektronisk) Tillgänglig: < >( ) Hwang, Kai, Dongarra, Jack, Fox, Geoffrey (2011) Cloud Computing: Virtualization Classes (Elektronisk) Tillgänglig: < > ( ) java.com (2012) Learn About Java Technology (Elektronisk) Tiilgänglig: < > ( ) 69/95

70 Keller, Erik, Szefer, Jakub, Rexford, Ruby B. Lee, Jennifer (2010) Virtualized Cloud Infrastructure without the Virtualization (Elektronisk) Tillgänglig: < > ( ) Kim Sue (2004) Characterizing Thermal Behavior of Pentium-IV with Hyperthreading (Elektronisk) Tillgänglig: < > ( ) Lo, Ken (2007) PHP Fractal generator (Elektronisk) Tillgängling : < > ( ) Le, Cuong Hoang H. (2009) Protecting Xen hypercalls (Elektronisk) Tillgänglig< > ( ) Mell Peter & Grance Timothy (2011) The NIST Definition of Cloud Computing (Elektronisk) Tillgänglig: < ( ) Microsoft.com (2013) Review Prerequisites for Installation (Elektronisk) Tillgänglig: < > ( ) Niubo, John (2012) Datorer och nätverk DA223A (Kurslitteratur) Föreläsning 3, DA223A_F3.PDF. PHP.NET microtime (2013) (Elektronisk) Tillgänglig: < > ( ) Spec.org SPECvirt_sc2010 (2013) (Elektronisk) Tillgänglig: < > ( ) 70/95

71 Technet.com (2009) Analyzing Storage Performance (Elektronisk) Tillgänglig: < > ( ) Techtarget.com Top 10 hypervisors: Choosing the best hypervisor technology (Elektronisk) Tillgänglig: < hypervisors-choosing-the-best-hypervisor-technology > ( ) Ung, David & Cifuentes, Cristina (2000) Machine-adaptable dynamic binary translation (Elektronisk) Tillgänglig: < dl.acm.org > ( ) vmware.com (2013) ESXi Hardware Require Requirements (Elektronisk) Tillgänglig: < 51/index.jsp?topic=%2Fcom.vmware.vsphere.install.doc%2FGUID-DEB8086A-306B BF76-E FC.html > ( ) Vmware.com (2007) understanding Full Virtualization, Paravirtualization, and Hardware Assist Tillgänglig: < > ( ) Vmware.com (2012) I/O Compatibility Guide (Elektronisk) Tillgänglig: < > ( ) Vmware.com vsphere Performance Data Collection (2013) (Elektronisk) Tillgänglig < 50/index.jsp?topic=%2Fcom.vmware.wssdk.pg.doc_50%2FPG_Ch16_Performance html > ( ) Vmware.com ESXi Hardware Requirements (2013) (Elektronisk) Tillgänglig: < c%2fg > ( ) 71/95

72 Vmware.com Understanding Snapshots (2013) Tillgänglig : < > ( ) Vmware.com VMware ESX Server Q VLAN Solutions (2006) (Elektronisk) Tillgänglig: < > ( ) Yao, Leiyue (2010) "Analysis and optimization for bottlenecks of database in massive management of information system," Computer and Communication Technologies in Agriculture Engineering (CCTAE) vol.2 (Elektronisk) Tillgänglig: < 0 > ( ) Xen.org Why Xen? (2013) (Elektronisk) Tillgänglig: < > ( ) Xen.org PV on HVM (2013) (Elektronisk) Tillgänglig: < > ( ) 72/95

73 11. Bilagor Bilaga 1 fractal.php <?php /* Timing */ set_time_limit(0); function microtime_float() { list($usec, $sec) = explode(" ", microtime()); return ((float)$usec + (float)$sec); } $time_start = microtime_float(); /* Lil Mandlebrot Set Fractal Generator */ define ('IMAGE_WIDTH', 80); define ('IMAGE_HEIGHT', 80); define ('X_MIN', -1.5); define ('X_MAX', 0.5); define ('Y_MIN', -1); define ('Y_MAX', 1); define ('MAX_ITERATIONS', 40); // if you change this to a number bigger than 200, make sure you create a new palette.png header("content-type: image/png"); $image = imagecreate(image_width, IMAGE_HEIGHT); // Load the palette to find colours $colours = array(); $colours['inside'] = imagecolorallocate($image, 0, 0, 0); $palette = imagecreatefrompng("palette.png"); for ($i=0; $i<imagesx($palette); $i++) { $rgb = imagecolorat($palette, $i, 0); $colours[$i] = imagecolorallocate($image, ($rgb >> 16) & 0xFF, ($rgb >> 8) & 0xFF, $rgb & 0xFF); } for ($i=0; $i<image_width; $i++) { for ($j=0; $j<image_height; $j++) { // What values of x and y does this pixel represent? $x = X_MIN+$i*((X_MAX - X_MIN) / (IMAGE_WIDTH-1)); $y = Y_MIN+$j*((Y_MAX - Y_MIN) / (IMAGE_HEIGHT-1)); // C=x+yi $iteration = 0; $z = array(0,0); // The initial value of z is 0+0i $magnitude = 0; // Optimization: Store x^2 and y^2 so we don't have to keep calculating it $x2 = 0; $y2 = 0; // If the z > 2 ever, then the sequence will tend to infinity so we can exit the loop while ($iteration <= MAX_ITERATIONS && $x2+$y2 <= 4) { // In order to get the next term in the sequence // we need to square the previous number and then add // the original complex number // z(n+1) = z(n)^2+c $k = $z; // z is a complex number. When we square a complex number in the form x+yi: // New real component: x^2-y^2 // New imaginary component: 2*real*imaginary $z[0] = $x2 - $y2; $z[1] = 2 * $k[0] * $k[1]; 73/95

74 // Add Complex Number $z[0] = $z[0] + $x; $z[1] = $z[1] + $y; $x2 = pow($z[0], 2); $y2 = pow($z[1], 2); ++$iteration; } if ($iteration == MAX_ITERATIONS) { imagesetpixel($image, $i, $j, $colours['inside']); } else { imagesetpixel($image, $i, $j, $colours[$iteration]); } } } $time_end = microtime_float(); header ("X-Exec-Time: ".($time_end - $time_start)); imagepng($image);?> 74/95

75 Bilaga 2 sqltesttool.php <!DOCTYPE html> <html> <head> </head> <body> <div> <center> <h1>sql-benchmark</h1> <?PHP // Get Hypervisor type from virtual machine hostname. $hostname = gethostname(); $system = strstr($hostname, '7'); if ($system == "7SHV") {echo "<h2>hypervisor: Hyper-V Core 2012 Server</h2>"; } elseif ($system == "7SESX") {echo "<h2>hypervisor: VMware ESXi 5.1.0</h2>"; } elseif ($system == "7SXS") {echo "<h2>hypervisor: XenServer 6.1</h2>"; }?> <div style="font-size:10pt;font-family:arial;"> <br> <p>a test tool that evaluates SQL database performance using PHP functions. The test will insert n number of rows into a test table and then read them back.<br><br><b>not included in this test tool: </b>analysis of CPU and I/O usage on Hypervisor over all tests.<br><br><b>included in this test tool: </b> Database connect-, Table create-, SQL write-, SQL read duration. Total elapsed time, SQL write/s and SQL read/s.<br><br><b>purpose:</b> To analyze Hypervisor performance at memory intensive transfers.<br> <br> <table style="border:2px solid black;" "BORDER="1" CELLPADDING="8" CELLSPACING="0"> <tr><th style="border-right:1px solid black;border-bottom:1px solid black;">id</th><th style="border-bottom:1px solid black;">text</th></tr> <tr><td style="border-right:1px solid black;">n</td><td ">thequickbrownfoxjumpsoverthelazydog</td></tr> </table> <hr style="visibility:hidden; margin-bottom:-5px;"/>table data used in test.</br></p> <?PHP // if start button not pressed, echo start button. if (!isset($_post["submit"])) { echo "<br><form action='". $_SERVER['PHP_SELF']. "' method='post'>"; echo "<input type='submit' name='submit' value='start'>"; echo "</form>"; } // if start button pressed, start test. if (isset($_post["submit"])) { // echo start time and date echo "<br><h3> Start date: ". date("y-m-d H:i:s"). "</h3>"; echo "<br><h2>results: </h2>"; // Include graph classes require_once ('src/jpgraph.php'); require_once ('src/jpgraph_scatter.php'); require_once ('src/jpgraph_line.php'); require_once ("src/jpgraph_plotline.php"); // Increase php max-execution time and set global variables set_time_limit (5000); $time = microtime(true); $start_time=$time; $rows=25000; // Mysql database connection string $mysqli = mysqli_connect("localhost","root","sommar13", "sqltest1") or die ("could not connect to mysql"); // Drop old table in database if it already exists mysqli_query($mysqli, "DROP TABLE IF EXISTS Test_tbl" ) ; // Calculate current timestamp $connect=microtime(true)-$start_time; echo '<table style="border:1px solid black;" "BORDER="1" CELLPADDING="1" CELLSPACING="4">'; echo '<B><tr><th>Number of rows</th></b></tr>'; echo "<tr>"; printf( "<td>%0.0f</td>", $rows); echo "</tr>"; 75/95

76 echo '<table><br><br>'; echo '<table style="border:1px solid black;" "BORDER="1" CELLPADDING="1" CELLSPACING="4">'; echo '<B><tr><th>Database connect duration (s)</th><th>table create duration (s)</th><th>sql write duration (s)</th><th>sql read duration (s)</th></b></tr>'; echo "<tr>"; printf( "<td>%0.5f</td>", $connect); // Create new table structure. $tablecreate = "CREATE TABLE IF NOT EXISTS test_tbl (id int(255) NOT NULL auto_increment,text TEXT,PRIMARY KEY (id)) "; // Send table to database. $queryresult = mysqli_query($mysqli, $tablecreate); // Calculate current timestamp $table=microtime(true)-$start_time-$connect; printf( "<td>%0.5f</td>", $table); // table create duration // Initiate arrays for metrics. $datax1=array(0); $datay1=array(0); $datax2=array(0); $datay2=array(0); // If table exists, insert textstring to database, add current timestamp and number of inserts to x,y-arrays. $writecount=0; if ($queryresult === TRUE) { for ($i = 1; $i <= $rows; $i++) { mysqli_query($mysqli, "INSERT INTO Test_tbl (Text) VALUES ('thequickbrownfoxjumpsoverthelazydog')" ) ; $writecount++; $timestamp=microtime(true)-$start_time-$table-$connect; $datax1[]=$timestamp; $datay1[]=$writecount/$timestamp; } } else { print "<br /><br />Error, table does not exist."; } // Calculate current timestamp $write=microtime(true)-$start_time-$table-$connect; printf( "<td>%0.5f</td>", $write); // SQL write duration // Add number of selected rows and timestamp to x,y-arrays. $readcount=1; $timestamp=0; for ($i = 1; $i <= $rows; $i++) { mysqli_query($mysqli, "SELECT SQL_NO_CACHE (Text) from Test_tbl where id=$readcount" ) ; $readcount++; $timestamp=microtime(true)-$start_time-$write-$table-$connect; $datax2[]=$timestamp; $datay2[]=($readcount-1)/$timestamp; } // Calculate current timestamp $read=microtime(true)-$start_time-$write-$table-$connect; printf( "<td>%0.5f</td>", $read); // SQL read duration echo "</tr></table><br><br>"; // Calculate totaltime $totaltime=microtime(true)-$start_time; echo '<table style="border:2px solid black;" "BORDER="1" CELLPADDING="1" CELLSPACING="4">'; echo '<B><tr><th>Total elapsed time (s)</th><th>average SQL write/s</th><th>average SQL read/s</th></b></tr>'; echo "<tr>"; printf( "<td>%0.5f</td>", $totaltime); printf( "<td>%0.5f</td>", array_sum($datay1)/$writecount); printf( "<td>%0.5f</td>", array_sum($datay2)/($readcount-1)); echo "</tr>"; echo "</table><br><br>"; $date=date("y-m-d H:i:s"); 76/95

77 // disabled, already used, echo "Hostname: ". gethostname(). "<br> Completion date: ". $date; // GRAPH PARTS BELOW // Set default configuration to graph 1. $graph1 = new Graph(900,400); $graph1->setscale('linlin'); $graph1->setmargin(80,80,60,60); $graph1->setframe(false); $graph1->setbox(true,'black',2); $graph1->setmargincolor('white'); $graph1->yaxis->settitlemargin(40); $graph1->setaxisstyle(axstyle_boxin); $graph1->xgrid->show(true); $graph1->setshadow(); $graph1->title->set("sql WRITE SPEED (rows/s)"); $graph1->subtitle->set('('. gethostname(). " ". $date. ')'); $graph1->title->setfont(ff_verdana,fs_bold,13); // Set default configuration to graph 2. $graph2 = new Graph(900,400); $graph2->setscale('linlin'); $graph2->setmargin(80,80,60,60); $graph2->setframe(false); $graph2->setbox(true,'black',2); $graph2->setmargincolor('white'); $graph2->yaxis->settitlemargin(40); $graph2->setaxisstyle(axstyle_boxin); $graph2->xgrid->show(true); $graph2->setshadow(); $graph2->title->set("sql READ SPEED (rows/s)"); $graph2->subtitle->set('('. gethostname(). " ". $date. ')'); $graph2->title->setfont(ff_verdana,fs_bold,13); // Line for graph 1. $sp1 = new LinePlot($datay1,$datax1); $graph1->add($sp1); // Average line. $pline = new PlotLine(HORIZONTAL,array_sum($datay1)/$writecount,'blue',1); // make generated image overwritable. $graph1->xaxis->settitle('elapsed time (s)', 'middle'); $graph1->yaxis->title->set("rows"); $graph1->yaxis->title->setfont(ff_font1,fs_bold); $graph1->xaxis->title->setfont(ff_font1,fs_bold); $graph1->yaxis->setlabelmargin(5); $graph1->xaxis->setlabelmargin(5); $graph1->stroke('generated/sqlwrite.png'); // create graph image. // Line for graph 2. $sp2 = new LinePlot($datay2,$datax2); $graph2->add($sp2); 77/95

78 $pline = new PlotLine(HORIZONTAL,array_sum($datay2)/($readcount-1),'blue',1); // make generated image overwritable. $graph2->xaxis->settitle('elapsed time (s)', 'middle'); $graph2->yaxis->title->set("rows"); $graph2->yaxis->title->setfont(ff_font1,fs_bold); $graph2->xaxis->title->setfont(ff_font1,fs_bold); $graph2->yaxis->setlabelmargin(5); $graph2->xaxis->setlabelmargin(5); $graph2->stroke('generated/sqlread.png'); // create graph image. echo "</div><div><br><br><br>"; echo "<img src='generated/sqlwrite.png' alt='sqlwrite'><br>"; echo "<img src='generated/sqlread.png' alt='sqlread'>"; echo "</div>"; }?> </div> </body> </html> 78/95

79 Bilaga 3 http-apache-bench-tool.cmd time /T > starttime.txt C:\xampp\apache\bin\ab -n c 10 -w > test1.html C:\xampp\apache\bin\ab -n c 20 -w > test2.html C:\xampp\apache\bin\ab -n c 30 -w > test3.html C:\xampp\apache\bin\ab -n c 40 -w > test4.html C:\xampp\apache\bin\ab -n c 50 -w > test5.html C:\xampp\apache\bin\ab -n c 60 -w > test6.html C:\xampp\apache\bin\ab -n c 70 -w > test7.html C:\xampp\apache\bin\ab -n c 80 -w > test8.html C:\xampp\apache\bin\ab -n c 90 -w > test9.html C:\xampp\apache\bin\ab -n c 100 -w > test10.html time /T > endtime.txt pause 79/95

80 Bilaga 4 httptesttool.php <!DOCTYPE html> <html> <head> </head> <body> <div> <center> <h1>http-benchmark</h1> <?PHP //Get Hypervisor type from virtual machine hostname. $hostname = gethostname(); $system = strstr($hostname, '7'); if ($system == "7SHV") {echo "<h2>hypervisor: Hyper-V Core 2012 Server</h2>"; } elseif ($system == "7SESX") {echo "<h2>hypervisor: VMware ESXi 5.1.0</h2>"; } elseif ($system == "7SXS") {echo "<h2>hypervisor: XenServer 6.1</h2>"; }?> <div style="font-size:10pt;font-family:arial;"> <br> <p>a complete test tool using official Apache-Bench software and intensive mathematical operations using fractal.php. Testdata is extracted and presented using PHP functions.<br><br><b>not included in this test tool: </b>analysis of CPU and I/O usage on Hypervisor over all tests.<br><br><b>included in this test tool :</b> Requests per second (RPS), Simultaneous requests, Number of requests and Elapsed time on each test. Total elapsed time and Average RPS over all tests.<br><br><b>purpose:</b> To analyze Hypervisor performance at cpu intensive fractal calculations.<br><br><img src="fractal.php"><br>fractal used in tests.<br></p> <?PHP // if start button not pressed, echo start button. if (!isset($_post["submit"])) { echo "<br><form action='". $_SERVER['PHP_SELF']. "' method='post'>"; echo "<input type='submit' name='submit' value='start'>"; echo "</form>"; } // disabled, test already started in batch files, echo "<br><h3> Start date: ". date("y-m-d H:i:s"). "</h3>"; // if start button pressed, start test. if (isset($_post["submit"])) { echo "<br><h2>results: </h2>"; // Include graph classes require_once ('src/jpgraph.php'); require_once ('src/jpgraph_scatter.php'); require_once ('src/jpgraph_line.php'); require_once ("src/jpgraph_plotline.php"); // Initiate arrays for metrics. $array_rps=array(); $array_time=array(); $array_test=array(); // Set date $date=date("y-m-d H:i:s"); // Function to find match in string function getvalue($parameter,$content){ preg_match($parameter, $content, $match); return $match[1]; }; echo '<table style="border:1px solid black;" "BORDER="1" CELLPADDING="1" CELLSPACING="4">'; echo "<B><tr><th>Test</th><th>Simultaneous requests</th><th>number of requests</th><th>rps</th><th>duration (s)</th></b></tr>"; // Function to find values in apache-bench html files function setvariables($content, $count){ $hostname = getvalue('#<th colspan=2 bgcolor=white>server Hostname:</th><td colspan=2 bgcolor=white>(.*)</td></tr>#',$content); $nor = getvalue('#<th colspan=2 bgcolor=white>complete requests:</th><td colspan=2 bgcolor=white>(.*)</td></tr>#',$content); $elapsed_time = getvalue('#<th colspan=2 bgcolor=white>time taken for tests:</th><td colspan=2 bgcolor=white>(.*) seconds</td></tr>#',$content); $rps = getvalue('#<th colspan=2 bgcolor=white>requests per second:</th><td colspan=2 bgcolor=white>(.*)</td></tr>#',$content); $sim = getvalue('#<th colspan=2 bgcolor=white>concurrency Level:</th><td colspan=2 bgcolor=white>(.*)</td></tr>#',$content); 80/95

81 // Print table 1 values echo "<tr>"; echo "<td>". $count. "</td>"; echo "<td>". $sim. "</td>"; echo "<td>". $nor. "</td>"; echo "<td>". $rps. "</td>"; echo "<td>". $elapsed_time. "</td>"; echo "</tr>"; return array($rps, $elapsed_time); }; // Gather data from apache-bench tests and create x,y arrays, for graph. $count=1; while ($count < 11 ) { list($a, $b) = setvariables(file_get_contents('http://localhost/test/test'. $count. '.html'), $count); $array_rps[] = $a; $array_time[] = $b; $count++; $array_test[] = $count-1; } echo '</table><br><br>'; //Sum arrays to calculate total elapsed time and average rps in table 2. $sum_rps=array_sum($array_rps); $sum_elapsed_time=array_sum($array_time); //Print table 2 values echo '<table style="border:2px solid black;" "BORDER="1" CELLPADDING="1" CELLSPACING="4">'; echo '<B><tr><th>Total elapsed time (s) </th><th>average RPS</th></B></tr>'; printf( "<td>%0.2f </td>", $sum_elapsed_time); printf( "<td>%0.2f </td>", $sum_rps/($count-1)); echo "</tr>"; echo '</table>'; $graph1 = new Graph(900,400); $graph1->setscale('intlin'); $graph1->setmargin(80,80,60,60); $graph1->setframe(false); $graph1->setbox(true,'black',2); $graph1->setmargincolor('white'); $graph1->yaxis->settitlemargin(40); $graph1->setaxisstyle(axstyle_boxin); $graph1->xgrid->show(true); $graph1->setshadow(); $graph1->title->set("http RPS (per test)"); $graph1->subtitle->set('('. gethostname(). " ". $date. ')'); $graph1->title->setfont(ff_verdana,fs_bold,13); // Line for graph 1. $sp1 = new LinePlot($array_rps,$array_test); $sp1->mark->settype(mark_cross); // make generated image overwritable. 81/95

82 $graph1->xaxis->settitle('test', 'middle'); $graph1->yaxis->title->set("rps"); $graph1->yaxis->title->setfont(ff_font1,fs_bold); $graph1->xaxis->title->setfont(ff_font1,fs_bold); $graph1->yaxis->setlabelmargin(5); $graph1->xaxis->setlabelmargin(5); $graph1->stroke('generated/httprps.png'); // create graph image. $graph2 = new Graph(900,400); $graph2->setscale('intlin'); $graph2->setmargin(80,80,60,60); $graph2->setframe(false); $graph2->setbox(true,'black',2); $graph2->setmargincolor('white'); $graph2->yaxis->settitlemargin(40); $graph2->setaxisstyle(axstyle_boxin); $graph2->xgrid->show(true); $graph2->setshadow(); $graph2->title->set("http Elapsed time (per test)"); $graph2->subtitle->set('('. gethostname(). " ". $date. ')'); $graph2->title->setfont(ff_verdana,fs_bold,13); // Line for graph 2. $sp2 = new LinePlot($array_time,$array_test); $sp2->mark->settype(mark_cross); // make generated image overwritable. $graph2->xaxis->settitle('test', 'middle'); $graph2->yaxis->title->set("elapsed time"); $graph2->yaxis->title->setfont(ff_font1,fs_bold); $graph2->xaxis->title->setfont(ff_font1,fs_bold); $graph2->yaxis->setlabelmargin(5); $graph2->xaxis->setlabelmargin(5); $graph2->stroke('generated/httptime.png'); // create graph image. // View generated images with html tages echo "</div><div><br><br><br>"; echo "<img src='generated/httprps.png' alt='httprps'><br>"; echo "<img src='generated/httptime.png' alt='httptime'>"; echo "</div>"; }?> </div> </body> </html> 82/95

83 Bilaga 5 ftptesttool.php <!DOCTYPE html> <html> <head> </head> <body> <div> <center> <h1>ftp-transfer BENCHMARK</h1> <?PHP //Get Hypervisor type from virtual machine hostname. $hostname = gethostname(); $system = strstr($hostname, '7'); if ($system == "7SHV") {echo "<h2>hypervisor: Hyper-V Core 2012 Server</h2>"; } elseif ($system == "7SESX") {echo "<h2>hypervisor: VMware ESXi 5.1.0</h2>"; } elseif ($system == "7SXS") {echo "<h2>hypervisor: XenServer 6.1</h2>"; }?> <div style="font-size:10pt;font-family:arial;"> <br> <p>sending data from local storage on HTTP server to local storage on FTP server using PHP FTP functions.<br><br><b>not included in this test tool: </b>analysis of CPU and I/O usage on Hypervisor on current transfer.<br><br><b>included in this test tool :</b> Current Speed, Average Speed, Filesize Growth, Elapsed time on current transfer.<br><br><b>purpose:</b> To analyze Hypervisor performance at disk i/o intensive transfers.<br></p> <?PHP // if start button not pressed, echo start button. if (!isset($_post["submit"])) { echo "<br><form action='". $_SERVER['PHP_SELF']. "' method='post'>"; echo "<input type='submit' name='submit' value='start'>"; echo "</form>"; } // if start button pressed, start test. if (isset($_post["submit"])) { // echo start time and date echo "<br><h3> Start date: ". date("y-m-d H:i:s"). "</h3>"; echo "<br><h2>results: </h2>"; // Include graph classes require_once ('src/jpgraph.php'); require_once ('src/jpgraph_scatter.php'); require_once ('src/jpgraph_line.php'); require_once ("src/jpgraph_plotline.php"); // Increase php max-execution time set_time_limit (5000); // Prepare testdata on httpserver storage, 500,000,000 bytes $f = fopen('500.mb', 'wb'); fseek($f, 0.5 * 1000 * 1000 * 1000, SEEK_SET); fwrite($f, 'after 500 MB'); fclose($f); // Set global variables $server="localhost"; $ftp_username="test"; $ftp_userpass="test"; $destination_file="500.mb"; $source_file="500.mb"; $elapsed_time=0; $sizenowkb=0; $sizenowkb_old=0; $count=0; $date=date("y-m-d H:i:s"); // 2 FTP connections, for transfer and measuring filesize growth. $primary_connection = ftp_connect($server); $secondary_connection = ftp_connect($server); $mode = FTP_BINARY; $login = ftp_login($primary_connection, $ftp_username, $ftp_userpass); 83/95

84 $login2 = ftp_login($secondary_connection, $ftp_username, $ftp_userpass); if (!$primary_connection!$login) { die('connection attempt failed!'); } ftp_pasv($primary_connection,true); ftp_pasv($secondary_connection,true); $upload_status=ftp_nb_put($primary_connection, $destination_file, $source_file, $mode); $filesize=filesize($source_file); $transferred = 0; $time = microtime(true); $start_time=$time; // Initiate arrays with startvalue 0 on metrics $datax1=array(0); $datay1=array(0); $datax2=array(0); $datay2=array(0); // Build a table with metrics echo '<table style="border:1px solid black;" "BORDER="1" CELLPADDING="1" CELLSPACING="4">'; $runonce=false; // Start gathering filesize and timestamp. while($upload_status == FTP_MOREDATA){ $upload_status = ftp_nb_continue($primary_connection); //Save last metrics $sizenowkb_old = $sizenowkb; $elapsed_time_old=$elapsed_time; //New metrics $sizenow=ftp_size($secondary_connection,$destination_file); $sizenowkb=$sizenow/1024; $timenow = microtime(true); $time = $timenow; $transferred = $sizenow; $elapsed_time=$timenow - $start_time; //Save metrics (timestamp, speed, filesizegrowth) once per second to x,y-arrays and print results in table. if (round($elapsed_time+0.5) > round($elapsed_time_old+0.5)) { $datax1[]=$elapsed_time; $datay1[]=$sizenowkb-$sizenowkb_old; $datax2[]=$elapsed_time; $datay2[]=$sizenowkb; (kb)</th></b></tr>"; $runonce=true;} if ($runonce==false) {echo "<B><tr><th>Timestamp (s)</th><th>speed (kb/s)</th><th>transferred echo "<tr>"; printf( "<td>%0.2f</td>", $elapsed_time); printf( "<td>%0.2f</td>", $sizenowkb-$sizenowkb_old); printf( "<td>%0.2f</td>", $sizenowkb); } $count++; echo "</tr>"; } // Echo table 2 and calculate average speed and output total elapsed time. echo '</table><br><br>'; echo '<table style="border:2px solid black;" "BORDER="1" CELLPADDING="1" CELLSPACING="4">'; echo '<B><tr><th>Elapsed time (s) </th><th>average speed (kb/s) </th></b></tr>'; printf( "<td>%0.2f </td>", $elapsed_time); printf( "<td>%0.2f </td>", array_sum($datay1)/($count)); 84/95

85 echo "</tr>"; echo '</table>'; // GRAPH PART BELOW // Set default configuration to graph 1. $graph1 = new Graph(900,400); $graph1->setscale('intint'); $graph1->setmargin(80,80,60,60); $graph1->setframe(false); $graph1->setbox(true,'black',2); $graph1->setmargincolor('white'); $graph1->yaxis->settitlemargin(40); $graph1->setaxisstyle(axstyle_boxin); $graph1->xgrid->show(true); $graph1->setshadow(); $graph1->title->set("ftp TRANSFER SPEED (kb/s)"); $graph1->subtitle->set('('. gethostname(). " ". $date. ')'); $graph1->title->setfont(ff_verdana,fs_bold,13); // Set default configuration to graph 2. $graph2 = new Graph(900,400); $graph2->setscale('intint'); $graph2->setmargin(80,80,60,60); $graph2->setframe(false); $graph2->setbox(true,'black',2); $graph2->setmargincolor('white'); $graph2->yaxis->settitlemargin(40); $graph2->setaxisstyle(axstyle_boxin); $graph2->xgrid->show(true); $graph2->setshadow(); $graph2->title->set("ftp FILESIZE GROWTH (kb/s)"); $graph2->subtitle->set('('. gethostname(). " ". $date. ')'); $graph2->title->setfont(ff_verdana,fs_bold,13); // Line for graph 1. $sp1 = new LinePlot($datay1,$datax1); //print_r ($datay1); $sp1->mark->settype(mark_cross); $graph1->add($sp1); // Average line. $pline = new PlotLine(HORIZONTAL,array_sum($datay1)/$count,'blue',1); // make generated image overwritable. $graph1->xaxis->settitle('elapsed time (s)', 'middle'); $graph1->yaxis->title->set("kb"); $graph1->yaxis->title->setfont(ff_font1,fs_bold); $graph1->xaxis->title->setfont(ff_font1,fs_bold); $graph1->yaxis->setlabelmargin(5); $graph1->xaxis->setlabelmargin(5); $graph1->stroke('generated/ftpspeed.png'); // create graph image. 85/95

86 // Line for graph 2. $sp2 = new LinePlot($datay2,$datax2); //$sp2->mark->settype(mark_cross); // does not use cross marks on second graph. $graph2->add($sp2); $linex=array(0); $liney=array(0); $liney[]=end($datay2); $linex[]=end($datax2); //line for comparing filesize growth. $line = new LinePlot($liney,$linex); $graph2->add($line); // make generated image overwritable. $graph2->xaxis->settitle('elapsed time (s)', 'middle'); $graph2->yaxis->title->set("kb"); $graph2->yaxis->title->setfont(ff_font1,fs_bold); $graph2->xaxis->title->setfont(ff_font1,fs_bold); $graph2->yaxis->setlabelmargin(5); $graph2->xaxis->setlabelmargin(5); $graph2->stroke('generated/ftptrans.png'); // create graph image. echo "</div><div><br><br><br>"; echo "<img src='generated/ftpspeed.png' alt='ftpspeed'><br>"; echo "<img src='generated/ftptrans.png' alt='ftptransferred'>"; echo "</div>"; }?> </div> </body> </html> 86/95

87 Bilaga 6 FTP-Benchmark results Hypervisor: Hyper-V Core 2012 Server Elapsed time (s) Average speed (kb/s) /95

88 Hypervisor: XenServer 6.1 Free edition Elapsed time (s) Average speed (kb/s) /95

89 Hypervisor: VMware ESXi Elapsed time (s) Average speed (kb/s) /95

90 Bilaga 7 HTTP-Benchmark results Hypervisor: Hyper-V Core 2012 Server Test Simultaneous requests Number of requests RPS Duration (s) Total elapsed time (s) Average speed (RPS) /95

91 Hypervisor: XenServer 6.1 Free edition Test Simultaneous requests Number of requests RPS Duration (s) Total elapsed time (s) Average speed (RPS) /95

92 Hypervisor: VMware ESXi Test Simultaneous requests Number of requests RPS Duration (s) Total elapsed time (s) Average speed (RPS) /95

93 Bilaga 8 SQL-Benchmark results Hypervisor: Hyper-V Core 2012 Server Database connect duration (s) Table create duration (s) SQL write duration (s) SQL read duration (s) Total elapsed time (s) Average SQL write/s Average SQL read/s /95

94 Hypervisor: XenServer 6.1 Free edition Database connect duration (s) Table create duration (s) SQL write duration (s) SQL read duration (s) Total elapsed time (s) Average SQL write/s Average SQL read/s /95

95 Hypervisor: VMware ESXi Database connect duration (s) Table create duration (s) SQL write duration (s) SQL read duration (s) Total elapsed time (s) Average SQL write/s Average SQL read/s /95

Minnesisolering för virtuella maskiner en hypervisorstudie

Minnesisolering för virtuella maskiner en hypervisorstudie 1.Introduktion 1.1 Inledning Den senaste trenden inom IT-världen är cloud computing (molntjänster). Molntjänster har uppnått stor popularitet både hos IT-chefer och ekonomichefer inom stora företag. Molntjänster

Läs mer

Systemkrav WinServ II Edition Release 2 (R2)

Systemkrav WinServ II Edition Release 2 (R2) Systemkrav WinServ II Edition Release 2 (R2) Observera: Alla rekommendationer är aktuella vid den tid då dokumentet publicerades och visar den senaste informationen för nödvändig mjukvara. Systemkrav för

Läs mer

Innehåll Molntjänster... 4 Vad är detta?... 5 Cirkeln sluts... 6 The Cloud... 7 The Cloud (forts.)... 8 Definition av molntjänster...

Innehåll Molntjänster... 4 Vad är detta?... 5 Cirkeln sluts... 6 The Cloud... 7 The Cloud (forts.)... 8 Definition av molntjänster... 1 2 Innehåll Molntjänster... 4 Vad är detta?... 5 Cirkeln sluts... 6 The Cloud... 7 The Cloud (forts.)... 8 Definition av molntjänster... 9 Definition av molntjänster (forts.)... 11 Tjänster... 12 Skikt

Läs mer

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2013.Q3

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2013.Q3 Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2013.Q3 För att 3L Pro skall fungera krävs att nedanstående hårdvarukrav och mjukvarukrav är uppfyllda. Viktigt är att tänka på att

Läs mer

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2013.Q2

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2013.Q2 Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2013.Q2 För att 3L Pro skall fungera krävs att nedanstående hårdvarukrav och mjukvarukrav är uppfyllda. Viktigt är att tänka på att

Läs mer

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2015.Q1

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2015.Q1 Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2015.Q1 För att 3L Pro skall fungera krävs att nedanstående hårdvarukrav och mjukvarukrav är uppfyllda. Viktigt är att tänka på att

Läs mer

Plattform as a Service, leverantör tillhandahåller plattformen, jag tillhandahåller applikation och ansvarar för denna.

Plattform as a Service, leverantör tillhandahåller plattformen, jag tillhandahåller applikation och ansvarar för denna. Modul 1: Molntjänst Publikt moln Privat moln Hybrid moln IaaS PaaS SaaS DaaS DaaS SLA Infrastructure as a Service, leverantör tillhandahåller infrastrukturen, jag tillhandahåller virtuella maskiner eller

Läs mer

VI SI CLOSETALK AB SYSTEMKRAV

VI SI CLOSETALK AB SYSTEMKRAV 2010-01-18 VI SI CLOSETALK AB SYSTEMKRAV 1 MJUK- OCH HÅRDVARUKRAV I detta dokument beskrivs de minimikrav och rekommendationer för mjukvara samt hårdvara som gäller för VISI System AB:s produkter. Visi

Läs mer

Dagens Agenda. Klient- och Serveroperativsystem Installation av Windows Server Genomgång av Windows Server Roller och Funktioner Domänhantering DNS

Dagens Agenda. Klient- och Serveroperativsystem Installation av Windows Server Genomgång av Windows Server Roller och Funktioner Domänhantering DNS Dagens Agenda Klient- och Serveroperativsystem Installation av Windows Server Genomgång av Windows Server Roller och Funktioner Domänhantering DNS Observera Anteckna! Praktisk genomgång, inga direkta presentationer

Läs mer

Lagringssystem. server. arbetsstationer. Katalog 2013. 08-584 006 41 Öppettider: 09:00-17:00 alla vardagar. www.nextron.se E-mail: sales@nextron.

Lagringssystem. server. arbetsstationer. Katalog 2013. 08-584 006 41 Öppettider: 09:00-17:00 alla vardagar. www.nextron.se E-mail: sales@nextron. Katalog 2013 Lagringssystem Upp till 288TB i ett kabinett SAN, NAS och DAS lösningar Automatisk failover mellan redundanta system server 1U till 5U 1 till 8 processorer Single, Microcloud, Twin eller Blade

Läs mer

Hogias Ekonomisystem. Systemkrav för enanvändarinstallation fr o m version 2015.1 av GENERELLA KRAV

Hogias Ekonomisystem. Systemkrav för enanvändarinstallation fr o m version 2015.1 av GENERELLA KRAV Systemkrav för enanvändarinstallation fr o m version 2015.1 av Hogias Ekonomisystem Systemkraven specificerar de miljöer och förutsättningar som programvaran är testad i och som vi rekommenderar för att

Läs mer

Säkerställ er tillgänglighet Kommunikationsrapporteringsverktyg

Säkerställ er tillgänglighet Kommunikationsrapporteringsverktyg Säkerställ er tillgänglighet Kommunikationsrapporteringsverktyg Vad är Meridix Studio? Meridix Studio är ett verktyg som låter er analysera och följa upp er kommunikation via ett enkelt men kraftfullt

Läs mer

Systemkrav 2014 för enanvändarinstallation fr o m version 2014.2 av

Systemkrav 2014 för enanvändarinstallation fr o m version 2014.2 av Systemkrav 2014 för enanvändarinstallation fr o m version 2014.2 av Hogias ekonomisystem Systemkraven specificerar de miljöer och förutsättningar som programvaran är testad i och som vi rekommenderar för

Läs mer

I. Krav på terminaler för telefonistprodukter 1. II. Krav på server och klient till Telefonistöd och Kalenderkoppling 4

I. Krav på terminaler för telefonistprodukter 1. II. Krav på server och klient till Telefonistöd och Kalenderkoppling 4 TELIA CENTREX KRAV PÅ TERMINALER / SERVRAR Innehållsförteckning I. Krav på terminaler för telefonistprodukter 1 II. Krav på server och klient till Telefonistöd och Kalenderkoppling 4 III. Krav på server

Läs mer

EXAMENSARBETE. Processbeskrivning för servermigrering. Olov Nygård 2013. Högskoleexamen Datornätverk

EXAMENSARBETE. Processbeskrivning för servermigrering. Olov Nygård 2013. Högskoleexamen Datornätverk EXAMENSARBETE Processbeskrivning för servermigrering Olov Nygård 2013 Högskoleexamen Datornätverk Luleå tekniska universitet Institutionen för system- och rymdteknik Processbeskrivning för servermigrering

Läs mer

I. Krav på terminaler för telefonistprodukter 2. II. Krav på server och klient till Telefonistöd och Kalenderkoppling 4

I. Krav på terminaler för telefonistprodukter 2. II. Krav på server och klient till Telefonistöd och Kalenderkoppling 4 TELIA CENTREX KRAV PÅ TERMINALER / SERVRAR Innehållsförteckning I. Krav på terminaler för telefonistprodukter 2 II. Krav på server och klient till Telefonistöd och Kalenderkoppling 4 III. Krav på server

Läs mer

Vägen till det Hybrida molnet Hur byggde vi vårt hybrida moln och vad säger kunderna som har tagit steget? Jonas Emilsson Anders Jansson

Vägen till det Hybrida molnet Hur byggde vi vårt hybrida moln och vad säger kunderna som har tagit steget? Jonas Emilsson Anders Jansson Vägen till det Hybrida molnet Hur byggde vi vårt hybrida moln och vad säger kunderna som har tagit steget? Jonas Emilsson Anders Jansson Förändringens vindar Hybrid IT Ditt moln Hybrid IT Kanske 23% Har

Läs mer

Webbservrar, severskript & webbproduktion

Webbservrar, severskript & webbproduktion Webbprogrammering Webbservrar, severskript & webbproduktion 1 Vad är en webbserver En webbserver är en tjänst som lyssnar på port 80. Den hanterar tillgång till filer och kataloger genom att kommunicera

Läs mer

Administratör IT-system Kursplan

Administratör IT-system Kursplan Administratör IT-system Kursplan Administratör IT-system Kursöversikt Obligatoriska kurser Kurs Poäng Advanced Enterprise System Administration 25 CCNA 45 CCNA Security 20 Drift i virtuella miljöer 20

Läs mer

Cloud Computing för arkitekter Sten Sundblad IASA och Sundblad & Sundblad

Cloud Computing för arkitekter Sten Sundblad IASA och Sundblad & Sundblad Cloud Computing för arkitekter Sten Sundblad IASA och Sundblad & Sundblad Är Cloud Computing intressant? 40 % tillväxt globalt 2009. Blir likadant i Sverige! Computer Sweden/IDC 2009-03-06 USA 2008 23

Läs mer

Daniel Akenine, Teknikchef, Microsoft Sverige

Daniel Akenine, Teknikchef, Microsoft Sverige Daniel Akenine, Teknikchef, Microsoft Sverige Quincy Invånare: 5,300 Arbete: 52% jordbruk 18 % byggsektor 18 % offentlig sektor Språk: Spanska 57% Företaget Inköp Företaget Inköp Installering Lång

Läs mer

Prestandatest Förberedelser & Faktainsamling. LIGHTS IN LINE AB Tegnérgatan 37 111 61 STOCKHOLM info@lightsinline.se

Prestandatest Förberedelser & Faktainsamling. LIGHTS IN LINE AB Tegnérgatan 37 111 61 STOCKHOLM info@lightsinline.se Prestandatest Förberedelser & Faktainsamling LIGHTS IN LINE AB Tegnérgatan 37 111 61 STOCKHOLM info@lightsinline.se Sida 2 (6) Innehåll 1 Introduktion... 3 2 Sammanfattning... 3 3 Testmetoder... 3 4 Prestandamål

Läs mer

Systemkrav Tekis-Bilflytt 1.3

Systemkrav Tekis-Bilflytt 1.3 Systemkrav 1. Systemkrav Systemkrav 2015-06-09 2 (8) Systemkrav 1. Dokumentet beskriver de krav som systemet ställer på maskinvara och programvara i de servrar och klientdatorer som ska användas för systemet.

Läs mer

Tekis-FB 7.1.0. Systemkrav

Tekis-FB 7.1.0. Systemkrav 7.1.0 Systemkrav Systemkrav 2015-09-17 MAAN 2 (2) Systemkrav 7.1.0 Dokumentet beskriver de krav som systemet ställer på maskinvara och programvara i de servrar och klientdatorer som ska användas för systemet.

Läs mer

Din leverantör av hissautomater, pallställ, grenställ och utdragsenheter.

Din leverantör av hissautomater, pallställ, grenställ och utdragsenheter. v.2 Compact talk Programvaran som integrerar Compact Hissautomater med överliggande system Compact Talk gör det enkelt att till låg kostnad integrera Compact Hissautomater med ett överliggande system som

Läs mer

Vilket moln passar dig bäst?

Vilket moln passar dig bäst? Vilket moln passar dig bäst? Idag diskuteras ofta huruvida man ska kliva in i molnets underbara värld eller inte, men sällan om skillnaderna mellan olika moln och vilka tillämpningar som är lämpliga att

Läs mer

Upplev Symantec Backup Exec.cloudcloud

Upplev Symantec Backup Exec.cloudcloud Automatiskt, kontinuerligt och säkert skydd som gör backup av data till molnet eller via en hybridmetod som kombinerar lokal och molnbaserad backup. Datablad: Symantec.cloud Endast 21 procent av tillfrågade

Läs mer

Systemkrav och tekniska förutsättningar

Systemkrav och tekniska förutsättningar Systemkrav och tekniska förutsättningar Hogia Webbrapporter Det här dokumentet går igenom systemkrav, frågor och hanterar teknik och säkerhet kring Hogia Webbrapporter, vilket bl a innefattar allt ifrån

Läs mer

Diagnostisktprov Utveckla i Azure

Diagnostisktprov Utveckla i Azure .easec Diagnostisktprov Utveckla i Azure Mats Johannesson 2015-06-08 1 o Indikerar ett svar önskas. Flera svar önskas. Maxpoäng: 86 Din poäng: Godkänt: 43 poäng Väl Godkänt: 60 poäng 2 1. Vilka fyra alternativ

Läs mer

Definition DVG A06. Varför operativsystem? Operativsystem. Översikt. - Vad är ett operativsystem?

Definition DVG A06. Varför operativsystem? Operativsystem. Översikt. - Vad är ett operativsystem? DVG A06 Operativsystem, mm Definition Den del av systemet som hanterar all hårdvara och all mjukvara. Kontrollerar: -alla filer -alla enheter -varje del av minnet -varje ögonblick av processortiden (-nätverk

Läs mer

Windowsadministration II, 7.5hp, 1DV424 MODUL 5 EXCHANGE SERVER 2013 FÖRELÄSNING 1

Windowsadministration II, 7.5hp, 1DV424 MODUL 5 EXCHANGE SERVER 2013 FÖRELÄSNING 1 Windowsadministration II, 7.5hp, 1DV424 MODUL 5 EXCHANGE SERVER 2013 FÖRELÄSNING 1 Modul 5 - Exchange Server 2013 Vad är Exchange? Server Roller Installation Förberedelse Standalone Custom Mailbox-databaser

Läs mer

Linuxadministration I 1DV417 - Laboration 3 Installation av ny hårddisk, RAID och logisk volymhantering

Linuxadministration I 1DV417 - Laboration 3 Installation av ny hårddisk, RAID och logisk volymhantering Linuxadministration I 1DV417 - Laboration 3 Installation av ny hårddisk, RAID och logisk volymhantering Marcus Wilhelmsson marcus.wilhelmsson@lnu.se 17 december 2013 Innehåll 1 Inledning och mål 3 2 Material

Läs mer

Advanced Format. Examensarbete i Datavetenskap. En prestandajämförelse av sektorer i RAID. B-nivå. Författare: Jesper Lindgren

Advanced Format. Examensarbete i Datavetenskap. En prestandajämförelse av sektorer i RAID. B-nivå. Författare: Jesper Lindgren Examensarbete i Datavetenskap B-nivå Advanced Format En prestandajämförelse av sektorer i RAID Författare: Jesper Lindgren Författare: Cenny Stålnäbb Handledare: Marcus Wilhelmsson Termin: VT11 Kurskod:

Läs mer

RTS vtour 2014 Senaste nyheterna från VMware. Malmö 22 oktober

RTS vtour 2014 Senaste nyheterna från VMware. Malmö 22 oktober RTS vtour 2014 Senaste nyheterna från VMware Malmö 22 oktober Agenda vtour 2014 08.30 Registrering med kaffe Registrering samt kaffe med smörgås 09.00 Senaste nytt från VMworld Vi går kort igenom de viktigaste

Läs mer

PRODUKTINFORMATION LOCKING SYSTEM MANAGEMENT 3.2 SP2 UPPDATERAT: OKTOBER 2014

PRODUKTINFORMATION LOCKING SYSTEM MANAGEMENT 3.2 SP2 UPPDATERAT: OKTOBER 2014 LOCKING SYSTEM MANAGEMENT 3.2 SP2 UPPDATERAT: OKTOBER 2014 2 1.0... 3 1.1. LOCKING SYSTEM MANAGEMENT 3.2 SP2 - PRODUKTBILD... 3 1.2. KORT BESKRIVNING AV PRODUKTEN... 4 2.0 PRODUKTMILJÖ... 5 2.1. SYSTEMKRAV...

Läs mer

Vad är molnet?... 2. Vad är NAV i molnet?... 3. Vem passar NAV i molnet för?... 4. Fördelar med NAV i molnet... 5. Kom igång snabbt...

Vad är molnet?... 2. Vad är NAV i molnet?... 3. Vem passar NAV i molnet för?... 4. Fördelar med NAV i molnet... 5. Kom igång snabbt... Produktblad för NAV i molnet Innehåll Vad är molnet?... 2 Vad är NAV i molnet?... 3 Vem passar NAV i molnet för?... 4 Fördelar med NAV i molnet... 5 Kom igång snabbt... 5 Bli kostnadseffektiv... 5 Enkelt

Läs mer

Installationsmanual ImageBank 2

Installationsmanual ImageBank 2 Document information ID: P001 Appendix D Rev: 3 Author: Ingvar Falconer Product nr: Title: Reviewed by: Approved by: P001 Installation Manual Product name: Tomas von Peltzer Date: 2014-10-22 Sign: Mattias

Läs mer

Using Microsoft Azure IAAS to host your SharePoint farms

Using Microsoft Azure IAAS to host your SharePoint farms Wictor Wilén Using Microsoft Azure IAAS to host your SharePoint farms IT-Pro Wictor Wilén Director, SharePoint Architect, Author Connecta AB, Sweden Microsoft Certified Architect SharePoint 2010 Microsoft

Läs mer

Marcus Wilhelmsson marcus.wilhelmsson@lnu.se 12 april 2013

Marcus Wilhelmsson marcus.wilhelmsson@lnu.se 12 april 2013 Datorhårdvaruteknik 1DV426 - Laboration Grundläggande konfiguration av lagringslösning ATAboy Installation av Backupserver Konfiguration av Virtuellt bandbibliotek, VTL Marcus Wilhelmsson marcus.wilhelmsson@lnu.se

Läs mer

Hosted Exchange 2010 Egen Dedikerad Företagsserver

Hosted Exchange 2010 Egen Dedikerad Företagsserver Hosted Exchange 2010 Surfcity Sverige Hosting är unik i sitt upplägg av produkten Hosted Exchange 2010. Dessutom är vi förmodligen det enda företaget som erbjuder 2010:an i hostad variant i Sverige vilket

Läs mer

Servervirtualisering. EXAMENSARBETE våren 2015. Servervirtualisering hos privata företag

Servervirtualisering. EXAMENSARBETE våren 2015. Servervirtualisering hos privata företag EXAMENSARBETE våren 2015 Sektionen för hälsa och samhälle Programområdet för datavetenskap IT-driftteknikerprogrammet Servervirtualisering Servervirtualisering hos privata företag Författare Nina Nilsson

Läs mer

Windowsadministration I

Windowsadministration I NAMN: Betygsgränser: 3: 60% 4: 75% PERSONNUMMER: 5: 90% Windowsadministration I Lämna in svar på separata papper. Allmänt Uppgifterna är inte ordnade efter svårighetsgrad. Skriv namn, personnummer samt

Läs mer

Övning 1: Skapa virtuell maskin för utveckling.

Övning 1: Skapa virtuell maskin för utveckling. Övning 1: Skapa virtuell maskin för utveckling. Arbetsuppgift 1: Skapa storage account. Steg 1: I vänstre delen av Preview Portal, klicka på Browse. Steg 2: I fönstret Browse, klicka på alternativet Storage.

Läs mer

Introduktion till molntjänster Tekniken bakom molntjänster och legala utmaningar

Introduktion till molntjänster Tekniken bakom molntjänster och legala utmaningar Introduktion till molntjänster Tekniken bakom molntjänster och legala utmaningar 19 november 2012 - Erica Wiking Häger och Mikael Moreira Innehåll 1. Vad är molntjänster? 2. Legala utmaningar 3. EU:s förslag

Läs mer

Du kan installera Widgitprodukter på ett nätverk. Följande program och tillägg hanteras (du kanske inte har licens att installera all dessa):

Du kan installera Widgitprodukter på ett nätverk. Följande program och tillägg hanteras (du kanske inte har licens att installera all dessa): Nätverksinstallation Installera Widgitprodukter Du kan installera Widgitprodukter på ett nätverk. Följande program och tillägg hanteras (du kanske inte har licens att installera all dessa): SymWriter 2

Läs mer

Installation av WinPig Slakt

Installation av WinPig Slakt Installation av WinPig Slakt Grundinstallation av WinPig Slakt ska göras med en cd skiva, den går inte att hämta från Internet. I samband med installationen installeras också vissa nödvändiga komponenter

Läs mer

Virtualisering av resurser i en yrkeshögskola. Jonas Rautelius

Virtualisering av resurser i en yrkeshögskola. Jonas Rautelius Virtualisering av resurser i en yrkeshögskola Jonas Rautelius Informations- och medieteknik 2014 EXAMENSARBETE Arcada Utbildningsprogram: Informations- och medieteknik Identifikationsnummer: 4099 Författare:

Läs mer

Rättvis kostnadsfördelning av IT-infrastrukturinvesteringar

Rättvis kostnadsfördelning av IT-infrastrukturinvesteringar Rättvis kostnadsfördelning av IT-infrastrukturinvesteringar Rättvis kostnadsfördelning av IT-infrastrukturinvesteringar Michael Andersson Svalövs Kommun Anders Nilsson PMCG Helsingborg...bättre kommunikation

Läs mer

Minnesisolering för virtuella maskiner

Minnesisolering för virtuella maskiner Minnesisolering för virtuella maskiner En hypervisorstudie MATHIAS PEDERSEN- SANDBACKKEN och MATTIAS USKALI Examensarbete Stockholm, Sverige 2011 Minnesisolering för virtuella maskiner En hypervisorstudie

Läs mer

Systemkrav/Rekommendationer

Systemkrav/Rekommendationer Pyramid Business Studio, version 3.40B Version 1.5 - (130924) Systemkrav och rekommendationer för Pyramid Business Studio för användning med Microsoft Windows. Anvisningarna gäller från version 3.40B.

Läs mer

Nya möjligheter med M3 Technology. Björn Svensson, Björn Torold

Nya möjligheter med M3 Technology. Björn Svensson, Björn Torold Nya möjligheter med Technology Björn Svensson, Björn Torold Vem är vi? 2 Copyright 2011 Lawson. All rights reserved. Nya möjligheter med Technology System Foundation Grid Förändrar basen i Installation

Läs mer

hogia.se/approval Gäller från och med programversion 2015.1

hogia.se/approval Gäller från och med programversion 2015.1 Gäller från och med programversion 2015.1 För produkten Hogia Approval Manager gäller samma systemkrav som för ekonomisystemet, med vissa tillägg. Systemkraven specificerar de miljöer och förutsättningar

Läs mer

Uppstart av OS med resp. utan krypering

Uppstart av OS med resp. utan krypering Linnéuniversitetet Projektrapport Grundläggande Operativsystem 1DV415 Uppstart av OS med resp. utan krypering Andreas Aspernäs, August Winberg 12 januari 2014 Sammanfattning Kryptering av hårddiskar blir

Läs mer

Användarhandledning Plancenter Klient version 2011

Användarhandledning Plancenter Klient version 2011 Användarhandledning Plancenter Klient version 2011 Senast reviderad 2012-01-16 Utgivare pcskog AB Copyright 2012 pcskog AB Innehållsförteckning...2 1 Välkommen...2 2 pcskog Plancenter 2.1 Plancenter Klient...

Läs mer

NSi Output Manager Vanliga frågor och svar. Version 3.2

NSi Output Manager Vanliga frågor och svar. Version 3.2 NSi Output Manager Vanliga frågor och svar Version 3.2 I. Allmän produktinformation 1. Vad finns det för nyheter i NSi Output Manager 3.2? I NSi Output Manager 3.2 finns det flera förbättringar på serversidan,

Läs mer

Handbok SSCd. Peter H. Grasch

Handbok SSCd. Peter H. Grasch Peter H. Grasch 2 Innehåll 1 Inledning 6 2 Använda SSCd 7 2.1 Baskatalog.......................................... 7 2.2 Inställning.......................................... 7 2.3 Databas............................................

Läs mer

Sikta högt Nå molnet HP Reseller Option Kit

Sikta högt Nå molnet HP Reseller Option Kit 1 Sikta högt Nå molnet HP Reseller Option Kit Upplev molnanpassad styrka och kapacitet Dagens företag är intresserade av mer än bara virtualisering. De vill utnyttja möjligheterna med modern IT. De vill

Läs mer

Kursplaner för Administartör IT-System Innehåll

Kursplaner för Administartör IT-System Innehåll Kursplaner för Administartör IT-System Innehåll Hårdvara och operativsystem (15 Yhp)... 2 Advanced Enterprise System Administration (25 yhp)... 2 Advanced Linux Security (25 yhp)... 2 CCNA (35 yhp)...

Läs mer

Molntjänster -- vad är molnet?

Molntjänster -- vad är molnet? En e-bok från Visma Spcs Molntjänster -- vad är molnet? Vad du bör tänka på för att göra rätt val till ditt företag Molntjänster -- vad är molnet? En guide till att förstå molntjänster Innehåll Hänger

Läs mer

Datainsamling över Internet

Datainsamling över Internet Datainsamling över Internet I den här uppgiften skall du styra ett mätförlopp och hämta mätdata via internet. Från en dator skall du styra en annan dator och beordra den att utföra en mätning och skicka

Läs mer

Installationsmanual ImageBank 2

Installationsmanual ImageBank 2 Installationsmanual ImageBank 2 INNEHÅLL Konventioner i manualen... 3 Uppmärksamhetssymboler... 3 Miljö och grundkrav... 4 Installera ImageBank MS SQL databas... 4 ImageBank Databas Configuration Wizard...

Läs mer

Säkerhetskopiering och tillgänglighet en del av det dynamiska datacentret. Nicklas Pettersson Atea

Säkerhetskopiering och tillgänglighet en del av det dynamiska datacentret. Nicklas Pettersson Atea Säkerhetskopiering och tillgänglighet en del av det dynamiska datacentret Nicklas Pettersson Atea Detta pass presenterar hur Atea, med teknik från Symantec, hjälpt några av sina kunder inom privat och

Läs mer

Har vi nått målet? En säker virtuell miljö

Har vi nått målet? En säker virtuell miljö White paper Har vi nått målet? En säker virtuell miljö Be Ready for What s Next. White paper Varför Kaspersky? Skydd eftersom du inte tål ett enda sabotageprogram till Prestationer med antivirusprogram

Läs mer

EVRY One Outsourcing Linköping AB. Erfaranheter av daglig drift och nyttjande av IFS Applications 8.

EVRY One Outsourcing Linköping AB. Erfaranheter av daglig drift och nyttjande av IFS Applications 8. EVRY One Outsourcing Linköping AB Erfaranheter av daglig drift och nyttjande av IFS Applications 8. Vår erfarenhet IFS Applications 8 Ca 10 st genomförda eller pågående uppgraderingar till IFS 8. Första

Läs mer

Vad är vad uppe bland molnen stratus, cumulus eller nimbus?

Vad är vad uppe bland molnen stratus, cumulus eller nimbus? Vad är vad uppe bland molnen stratus, cumulus eller nimbus? Förvirringen ökar kring vad Cloud Computing egentligen är HÖG TID ATT KATEGORISERA Stratus betyder dimmoln och nimbus betyder ovädersmoln kanske

Läs mer

Systemkrav/Rekommendationer

Systemkrav/Rekommendationer Pyramid Business Studio, version 3.42A Version 1.4 - (150604) Systemkrav och rekommendationer för Pyramid Business Studio för användning med Microsoft Windows. Anvisningarna gäller från version 3.42A.

Läs mer

Implementering och migrering av virtuell servermiljö

Implementering och migrering av virtuell servermiljö Implementering och migrering av virtuell servermiljö Implementation and migration of virtiual server environment Andreas Skymberg Examensarbete inom datornät Högskoleingenjör Dergree Project in Computer

Läs mer

LARS. Ett e-bokningssystem för skoldatorer.

LARS. Ett e-bokningssystem för skoldatorer. LARS Ett e-bokningssystem för skoldatorer. Därför behöver vi LARS Boka dator i förväg. Underlätta för studenter att hitta ledig dator. Rapportera datorer som är sönder. Samordna med schemaläggarnas system,

Läs mer

Innehåll. MySQL Grundkurs

Innehåll. MySQL Grundkurs MySQL Grundkurs Copyright 2014 Mahmud Al Hakim mahmud@dynamicos.se www.webbacademy.se Innehåll Introduktion till databaser Installera MySQL lokalt Webbserverprogrampaket (XAMPP) Introduktion till phpmyadmin

Läs mer

2014-2015 Alla rättigheter till materialet reserverade Easec

2014-2015 Alla rättigheter till materialet reserverade Easec 1 2 Innehåll Introduktion... 3 Azure Client SDK Libraries... 4 Översikt: Azure Client Libraries... 5 Azure SDK... 6 Azure SDK (forts.)... 7 Azure SDK (forts.)... 8 Cloud Services... 10 Cloud Services...

Läs mer

Utmaningar vid molnupphandlingar

Utmaningar vid molnupphandlingar Utmaningar vid molnupphandlingar Inger Gran Grundare av Cloud Sweden och Kompetens@rkitekt En skeptisk och entusiastisk it-användare redan på 70-talet Kopplade upp mig på internet 1993 sedan aldrig frånkopplad

Läs mer

Systemkrav för Hogia Approval Manager

Systemkrav för Hogia Approval Manager Systemkrav för Hogia Approval Manager Gäller från och med programversion 2014.1 För produkten Hogia Approval Manager gäller samma systemkrav som för ekonomisystemet, med vissa tillägg. Systemkraven specificerar

Läs mer

Windows 8 och det nya arbetslivet. Magnus Holmér IT strategisk rådgivare

Windows 8 och det nya arbetslivet. Magnus Holmér IT strategisk rådgivare Windows 8 och det nya arbetslivet Magnus Holmér IT strategisk rådgivare Verkligheten? people Hemma På arbetet Windows 8 Demo Nya mobila lösningar Samma upplevelse på alla datorer* Folder Re-Direct

Läs mer

Din guide till. Teknisk Specifikation Säljstöd

Din guide till. Teknisk Specifikation Säljstöd Din guide till Teknisk Specifikation Säljstöd April 2014 Innehåll Systemkrav... 3 Operativsystem... 3 Mjukvara... 3 Maskinvara... 4 Datakällor... 4 Databas... 5 Databasstruktur... 5 Katalogstruktur...

Läs mer

Högpresterande extern lagring med hög kapacitet

Högpresterande extern lagring med hög kapacitet 2,5" hårddiskkabinett med två fack - USB 3.0 till SATA III 6 Gbps med RAID StarTech ID: S252BU33R Detta USB 3.0-kabinett med 2 fack för hårddiskar på 2,5" ger dig den prestanda du vill ha i ett externt

Läs mer

Apple Remote Desktop 3. Viktor Glemme Systemingenjör - Apple glemme.v@euro.apple.com 2006-06-07

Apple Remote Desktop 3. Viktor Glemme Systemingenjör - Apple glemme.v@euro.apple.com 2006-06-07 Apple Remote Desktop 3 Viktor Glemme Systemingenjör - Apple glemme.v@euro.apple.com 2006-06-07 Datorer Kontrollerade datorer har 40% lägre TCO! Kontrollerad Hård och mjukvara Drift Administration Slutanvändare

Läs mer

Installation av RIB Huvudprogram 1.3

Installation av RIB Huvudprogram 1.3 RIB Huvudprogram, version 1.3.0 Sidan 1 av 8 Installation av RIB Huvudprogram 1.3 Bakgrund RIB Huvudprogram är en informationskälla för alla som arbetar inom området samhällsskydd och beredskap, till exempel

Läs mer

IBM FlashSystem (och lite SSD)

IBM FlashSystem (och lite SSD) IBM FlashSystem (och lite SSD) 2014-10-13 Henrik Grönberg Technical Director henrik.gronberg@load.se Förändringens tid är här Dagens naturresurser Morgondagens naturresurs LKAB omsätter 30 miljarder SEK

Läs mer

Framgångsfaktorer i molnet!

Framgångsfaktorer i molnet! Framgångsfaktorer i molnet! Inledning samt presentation av panelen, Cloud Sweden och molntjänster Affärs-/verksamhetsnytta Juridik Säkerhet Infrastruktur Enstaka frågor kommer att besvaras Sammanfattning

Läs mer

Installation och konfiguration av klientprogramvara 2c8 Modeling Tool

Installation och konfiguration av klientprogramvara 2c8 Modeling Tool Installation och konfiguration av klientprogramvara 2c8 Modeling Tool Hämta programpaket, MSI Aktuell version av klientprogramvaran finns tillgänglig för nedladdning på vår hemsida på adress http://www.2c8.com/

Läs mer

Nätverksteknik A - Introduktion till Routing

Nätverksteknik A - Introduktion till Routing Föreläsning 8 Nätverksteknik A - Introduktion till Routing Lennart Franked Information och Kommunikationssystem (IKS) Mittuniversitetet 2014-12-02 Lennart Franked (MIUN IKS) Nätverksteknik A - Introduktion

Läs mer

Win95/98 Nätverks Kompendium. av DRIFTGRUPPEN

Win95/98 Nätverks Kompendium. av DRIFTGRUPPEN Win95/98 Nätverks Kompendium av DRIFTGRUPPEN Sammanfattning Vad håller jag i handen? Detta är en lättförståelig guide till hur man lägger in och ställer in nätverket i Windows 95 och 98 Efter 6 (sex) enkla

Läs mer

Skapa ett eget programnu! NU! Komplett med programvara och konkreta exempel! Patrice Pelland. Swedish Language Edition published by Docendo Sverige AB

Skapa ett eget programnu! NU! Komplett med programvara och konkreta exempel! Patrice Pelland. Swedish Language Edition published by Docendo Sverige AB NU! Skapa ett eget programnu! Patrice Pelland Komplett med programvara och konkreta exempel! Swedish Language Edition published by Docendo Sverige AB Kapitel 2 Installera Visual Basic 2005 Express Edition

Läs mer

Alternativet är iwindows registret som ni hittar under regedit och Windows XP 32 bit.

Alternativet är iwindows registret som ni hittar under regedit och Windows XP 32 bit. TNT ExpressShipper installation. Om ni redan har en ExpressShipper installation på företaget behöver ni först ta reda på vilken version som är installerad och sökvägen till databasen. Versionen ser ni

Läs mer

Prestandatest mellan Windows och Linux

Prestandatest mellan Windows och Linux Linnéuniversitetet Projektrapport Grundläggande Operativsystem 1DV415 Prestandatest mellan Windows och Linux Erik Källqvist, Teddy Wong, Douglas Rikardsson 10 januari 2014 Sammanfattning Vi har i vårt

Läs mer

Administrationsmanual ImageBank 2

Administrationsmanual ImageBank 2 Administrationsmanual ImageBank 2 INNEHÅLL 1. Konventioner i manualen 3 2. Uppmärksamhetssymboler 3 3. Vad är imagebank SysAdmin 4 4. Guide för att snabbt komma igång 5 5. Uppgradera din imagebank 1.2

Läs mer

Linuxadministration I 1DV417 - Laboration 5 Brandvägg och DNS. Marcus Wilhelmsson marcus.wilhelmsson@lnu.se 19 februari 2013

Linuxadministration I 1DV417 - Laboration 5 Brandvägg och DNS. Marcus Wilhelmsson marcus.wilhelmsson@lnu.se 19 februari 2013 Linuxadministration I 1DV417 - Laboration 5 Brandvägg och DNS Marcus Wilhelmsson marcus.wilhelmsson@lnu.se 19 februari 2013 Innehåll 1 Inledning och mål 3 2 Material och genomförande 3 3 Förberedelseuppgifter

Läs mer

Innehåll i detta dokument

Innehåll i detta dokument Läs igenom hela dokumentet innan du startar. Kopiera över allt på CD-skivan till din hårddisk. Din dator kommer behöva startas om en gång vid installationen av CodeSys. Du måste ha rättigheter att installera

Läs mer

Toshiba och Intel Centrino Duo mobile teknologi för professionella användare

Toshiba och Intel Centrino Duo mobile teknologi för professionella användare Toshiba och Intel Centrino Duo mobile teknologi för professionella användare I dagens affärsvärld är den bärbara datorn det främsta mobila verktyget för produktivitet och kommunikation. Detta verktyg har

Läs mer

LABORATIONSRAPPORT Operativsystem 1 Laboration 1, Ghost, pingpong och Windows 2003 installation

LABORATIONSRAPPORT Operativsystem 1 Laboration 1, Ghost, pingpong och Windows 2003 installation LABORATIONSRAPPORT Operativsystem 1 Laboration 1, Ghost, pingpong och Windows 2003 Laborant/er: Klass: Laborationsansvarig: Sebastian Svensson, Linn Friberg DD11 Peter Josefsson Utskriftsdatum: 2011-09-05

Läs mer

Sänk kostnaderna genom a/ ställa rä/ krav och testa effektivt

Sänk kostnaderna genom a/ ställa rä/ krav och testa effektivt Sänk kostnaderna genom a/ ställa rä/ krav och testa effektivt Kravhantering / Testprocess - Agenda AGENDA Grundläggande kravhanteringsprocess. Insamling, dokumentation, prioritering, Test och förvaltning

Läs mer

Eclipse. Avsikt. Nu ska ett fönster liknande figuren till höger synas.

Eclipse. Avsikt. Nu ska ett fönster liknande figuren till höger synas. Eclipse Avsikt Att bekanta dig med Eclipse programmeringsmiljö, dvs att med hjälp av Eclipse 1. skapa ett nytt projekt 2. skriva in källkod (sparas som.java-fil) 3. kompilera (översätta) koden till byte-kod

Läs mer

ANVIA MOLNET. inhemska molntjänster för företag 24/7

ANVIA MOLNET. inhemska molntjänster för företag 24/7 ANVIA MOLNET inhemska molntjänster för företag 24/7 Anvia Molnet VISSTE DU ATT ÖVER HÄLFTEN AV FÖRETAGEN I FINLAND ANVÄNDER MOLNTJÄNSTER? Anvia Molnet är en tjänst avsedd för finländska företag. Via tjänsten

Läs mer

Skapa ett paket av TI-Nspire programvara med Microsoft SMS 2003

Skapa ett paket av TI-Nspire programvara med Microsoft SMS 2003 Skapa ett paket av TI-Nspire programvara med Microsoft SMS 2003 Detta dokument ger steg för steg-instruktioner för att skapa och implementera ett TI-Nspire nätverkspaket via plattformen Microsoft SMS 2003.

Läs mer

Beställning av fjärrbackup

Beställning av fjärrbackup Beställning av fjärrbackup Utrymme på server Upprättande Årsbackup Övervakning Pris/mån. 10 GB 0:- 280:- 12 GB 0:- 305:- 14 GB 0:- 330:- 16 GB 0:- 350:- 18 GB 0:- 375:- 20 GB 0:- 400:- 25 GB 0:- 450:-

Läs mer

Tekniskt driftdokumentation & krishantering v.1.0

Tekniskt driftdokumentation & krishantering v.1.0 Tekniskt driftdokumentation & krishantering v.1.0 Denna driftdokumentation avser driftmiljön hos Camero AB:s webbhotell, både delade och dedikerade lösningar. Teknisk dokumentation Cameros webbhotell har

Läs mer

Distribuerade affärssystem

Distribuerade affärssystem Distribuerade affärssystem Kursens mål Bygga upp, strukturera och programmera distribuerade system med en flerskiktsarkitektur Beskriva och förklara teorier och uttryck som används inom affärskritiska

Läs mer

Prestandajämförelse mellan Amazon EC2 och privat datacenter

Prestandajämförelse mellan Amazon EC2 och privat datacenter 2013-02-22 Prestandajämförelse mellan Amazon EC2 och privat datacenter Daniel Johansson Gustav Jibing Johan Krantz EXAMENSARBETE Kandidatprogrammet P, 180 hp EXAMENSARBETE Prestandajämförelse mellan Amazon

Läs mer

SNITS-Lunch. Säkerhet & webb 2013-10-08

SNITS-Lunch. Säkerhet & webb 2013-10-08 SNITS-Lunch Säkerhet & webb 2013-10-08 Kort om ÅF ÅF i Karlstad idag! Vi är ca 150 varav 50 inom IT Automation Elkraft Mekanik Industriell IT Process och miljö IT och telekom Energi Industri Automotive

Läs mer

Office Synchronizer. Utgåvekommentarer. Version 1,61

Office Synchronizer. Utgåvekommentarer. Version 1,61 Office Synchronizer Utgåvekommentarer Version 1,61 Huvudkontor Trimble Navigation Limited Engineering and Construction 5475 Kellenburger Road Dayton, Ohio 45424-1099 USA Telefon: +1-937-233-8921 Avgiftsfritt:

Läs mer