• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 84
  • 4
  • 2
  • 1
  • Tagged with
  • 92
  • 57
  • 43
  • 35
  • 27
  • 27
  • 27
  • 27
  • 24
  • 23
  • 21
  • 19
  • 14
  • 14
  • 12
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
61

Spark on Kubernetes using HopsFS as a backing store : Measuring performance of Spark with HopsFS for storing and retrieving shuffle files while running on Kubernetes

Saini, Shivam January 2020 (has links)
Data is a raw list of facts and details, such as numbers, words, measurements or observations that is not useful for us all by itself. Data processing is a technique that helps to process the data in order to get useful information out of it. Today, the world produces huge amounts of data that can not be processed using traditional methods. Apache Spark (Spark) is an open-source distributed general-purpose cluster computing framework for large scale data processing. In order to fulfill its task, Spark uses a cluster of machines to process the data in a parallel fashion. External shuffle service is a distributed component of Apache Spark cluster that provides resilience in case of a machine failure. A cluster manager helps spark to manage the cluster of machines and provide Spark with the required resources to run the application. Kubernetes is a new cluster manager that enables Spark to run in a containerized environment. However, running external shuffle service is not possible while running Spark using Kubernetes as the resource manager. This highly impacts the performance of Spark applications due to the failed tasks caused by machine failures. As a solution to this problem, the open source Spark community has developed a plugin that can provide the similar resiliency as provided by the external shuffle service. When used with Spark applications, the plugin asynchronously back-up the data onto an external storage. In order not to compromise the Spark application performance, it is important that the external storage provides Spark with a minimum latency. HopsFS is a next generation distribution of Hadoop Distributed Filesystem (HDFS) and provides special support to small files (<64 KB) by storing them in a NewSQL database and thus enabling it to provide lower client latencies. The thesis work shows that HopsFS provides 16% higher performance to Spark applications for small files as compared to larger ones. The work also shows that using the plugin to back-up Spark data on HopsFS can reduce the total execution time of Spark applications by 20%-30% as compared to recalculation of tasks in case of a node failure. / Data är en rå lista över fakta och detaljer, som siffror, ord, mätningar eller observationer som inte är användbara för oss alla i sig. Databehandling är en teknik som hjälper till att bearbeta data för att få användbar information ur den. Idag producerar världen enorma mängder data som inte kan bearbetas med traditionella metoder. Apache Spark (Spark) är en öppen källkod distribuerad ram för allmänt ändamål kluster dator för storskalig databehandling. För att fullgöra sin uppgift använder Spark ett kluster av maskiner för att bearbeta data på ett parallellt sätt. Extern shuffle-tjänst är en distribuerad komponent i Apache Spark-klustret som ger motståndskraft vid maskinfel. En klusterhanterare hjälper gnista att hantera kluster av maskiner och förse Spark med de resurser som krävs för att köra applikationen. Kubernetes är en ny klusterhanterare som gör att Spark kan köras i en containeriserad miljö. Det är dock inte möjligt att köra extern shuffle-tjänst när du kör Spark med Kubernetes som resurshanterare. Detta påverkar starkt prestanda för Spark-applikationer på grund av misslyckade uppgifter orsakade av maskinfel. Som en lösning på detta problem har Spark-communityn med öppen källkod utvecklat ett plugin-program som kan tillhandahålla liknande motståndskraft som tillhandahålls av den externa shuffle-tjänsten. När det används med Spark- applikationer säkerhetskopierar plugin-programmet asynkront data till en extern lagring. För att inte kompromissa med Spark-applikationsprestandan är det viktigt att det externa lagret ger Spark en minimal latens. HopsFS är en nästa generations distribution av Hadoop Distribuerat filsystem (HDFS) och ger specialstöd till små filer (<64 kB) genom att lagra dem i en NewSQL-databas och därmed möjliggöra lägre klientfördröjningar. Examensarbetet visar att HopsFS ger 16 % högre prestanda till Spark-applikationer för små filer jämfört med större. Arbetet visar också att användning av plugin för att säkerhetskopiera Spark-data på HopsFS kan minska den totala körningstiden för Spark-applikationer med 20 % - 30 % jämfört med omberäkning av uppgifter i händelse av ett nodfel.
62

Managing Microservices with a Service Mesh : An implementation of a service mesh with Kubernetes and Istio

Mara Jösch, Ronja January 2020 (has links)
The adoption of microservices facilitates extending computer systems in size, complexity, and distribution. Alongside their benefits, they introduce the possibility of partial failures. Besides focusing on the business logic, developers have to tackle cross-cutting concerns of service-to-service communication which now defines the applications' reliability and performance. Currently, developers use libraries embedded into the application code to address these concerns. However, this increases the complexity of the code and requires the maintenance and management of various libraries. The service mesh is a relatively new technology that possibly enables developers staying focused on their business logic. This thesis investigates one of the available service meshes called Istio, to identify its benefits and limitations. The main benefits found are that Istio adds resilience and security, allows features currently difficult to implement, and enables a cleaner structure and a standard implementation of features within and across teams. Drawbacks are that it decreases performance by adding CPU usage, memory usage, and latency. Furthermore, the main disadvantage of Istio is its limited testing tools. Based on the findings, the Webcore Infra team of the company can make a more informed decision whether or not Istio is to be introduced. / Tillämpningen av microservices underlättar utvidgningen av datorsystem i storlek, komplexitet och distribution. Utöver fördelarna introducerar de möjligheten till partiella misslyckanden. Förutom att fokusera på affärslogiken måste utvecklare hantera övergripande problem med kommunikation mellan olika tjänster som nu definierar applikationernas pålitlighet och prestanda. För närvarande använder utvecklare bibliotek inbäddade i programkoden för att hantera dessa problem. Detta ökar dock kodens komplexitet och kräver underhåll och hantering av olika bibliotek. Service mesh är en relativt ny teknik som kan möjliggöra för utvecklare att hålla fokus på sin affärslogik. Denna avhandling undersöker ett av de tillgängliga service mesh som kallas Istio för att identifiera dess fördelar och begränsningar. De viktigaste fördelarna som hittas är att Istio lägger till resistens och säkerhet, tillåter funktioner som för närvarande är svåra att implementera och möjliggör en renare struktur och en standardimplementering av funktioner inom och över olika team. Nackdelarna är att det minskar prestandan genom att öka CPU-användning, minnesanvändning och latens. Dessutom är Istios största nackdel dess begränsade testverktyg. Baserat på resultaten kan Webcore Infra-teamet i företaget fatta ett mer informerat beslut om Istio ska införas eller inte.
63

Constraint based network communications in a virtual environment of a proprietary hardware

Bhonagiri, Saaish, Mudugonda, Soumith Kumar January 2022 (has links)
The specialized hardware remains a key component of the mobile networks, but at the same time, the telecom industry is adapting a vision of a fully programable distributed end-to-end network with cloud style management and Software-Defined Networking. In the specialized hardware programmable network, it will be possible to place workloads across abstracted compute and networking infrastructure. But, whereas virtualization standard compute resources is a mature technology and well supported in cloud management systems such as OpenStack and Kubernetes, this is not the case for specialized hardware with more complex constraints. There is a significant gap in terms of advanced constraints and service level aware schedulers. The main objective of this thesis is that the specialised hardware needs to adapt to the features of edge computing. Edge computing provides the opportunity to explore how technologies can advance industrial processes. To achieve flexibility by choosing where the workload should be processed on the board based on available resources. Utilising this technology, highly intensive applications can be handled at the network’s edge. There is a necessity to virtualize the proprietary hardware and run workloads in VMs and containers. In this thesis, we discuss kernel bypass, PCI passthrough and MPI communication technologies in a virtual environment by considering the hardware constraints and software requirements so that these technologies can be integrated into OpenStack and Kubernetes in future.
64

A Comparison of CI/CD Tools on Kubernetes

Johansson, William January 2022 (has links)
Kubernetes is a fast emerging technological platform for developing and operating modern IT applications. The capacity to deploy new apps and change old ones at a faster rate with less chance of error is one of the key value proposition of the Kubernetes platform. A continuous integration and continuous deployment (CI/CD) pipeline is a crucial component of the technology. Such pipelines compile all updated code and do specific tests and may then automatically deploy the produced code artifacts to a running system. There is a thriving ecosystem of CI/CD tools. Tools can also be divided into two types: integrated and standalone. Integrated tools will be utilized for both pipeline phases, CI and CD. The standalone tools will be used just for one of the processes, which needs the usage of two independent programs to build up the pipeline. Some tools predate Kubernetes and may be converted to operate on Kubernetes, while others are new and designed specifically for usage with Kubernetes clusters. CD systems are classified as push-style (artifacts from outside the cluster are pushed into the cluster) or pull-style (CD tool running inside the cluster pulling built artifacts into the cluster). Pull- and push-style pipelines will have an impact on how cluster credentials are managed and if they ever need to leave the cluster. This thesis investigates the deployment time, fault tolerance, and access security of pipelines. Using a simple microservices application, a testing setup is created to measure the metrics of the pipelines. Drone, Argo Workflows, ArgoCD, and GoCD are the tools compared in this study. These tools are coupled to form various pipelines. The pipeline using Kubernetes-specific tools, Argo Workflows and ArgoCD, is the fastest, the pipeline with GoCD is somewhat slower, and the Drone pipeline is the slowest. The pipeline that used Argo Workflows and ArgoCD could also withstand failures. Theother pipelines that used Drone and GoCD were unable to recover and timed out. Pull pipelines handles the Kubernetes access differently to push pipelines as the Kubernetes cluster credentials does not have to leave the cluster, whereas push pipelines needs the cluster credentials in the external environment where the CD tool is running.
65

Optimizing Systems for Deep Learning Applications

Albahar, Hadeel Ahmad 01 March 2023 (has links)
Modern systems for Machine Learning (ML) workloads support heterogeneous workloads and resources. However, existing resource managers in these systems do not differentiate between heterogeneous GPU resources. Moreover, users are usually unaware of the sufficient and appropriate type and amount of GPU resources to request for their ML jobs. In this thesis, we analyze the performance of ML training and inference jobs and identify ML model and GPU characteristics that impact this performance. We then propose ML-based prediction models to accurately determine appropriate and sufficient resource requirements to ensure improved job latency and GPU utilization in the cluster. / Doctor of Philosophy / We daily interact with and use many software applications such as social media, e-commerce, healthcare, and finance. These applications rely on different computing systems as well as artificial intelligence to deliver users the best service and experience. In this dissertation, we present optimizations to improve the performance of these artificial intelligence applications while at the same time improving the performance and the utilization of the systems and the heterogeneous resources they run on. We propose utilizing machine learning models, that learn from historical data of application performance as well as application and resource characteristics, to predict the necessary and sufficient resource requirements for these applications to ensure the optimal performance for the application and the underlying system.
66

Observability of Cloud Native Systems: : An industrial case study of system comprehension with Prometheus & knowledge transfer

Widerberg, Anton, Johansson, Erik January 2021 (has links)
Background:                                                                                                            Acquiring comprehension and observability of software systems is a vital and necessary activity for testing and maintenance; however, these tasks are time-consuming for engineers. Concurrently cloud computing requires microservices to enhance the utilization of cloudnative deployment, which simultaneously introduces a high degree of complexity. Further,codifying and distributing technical knowledge within the organization has been proven to be vital for both competitiveness and financial performance. However, doing it successfully has been proven to be difficult, and transitioning to working virtually and in DevOps brings new potential challenges for software firms. Objective:                                                                                                              The objective of this study is to explore how system comprehension of a microservice architecture can be improved from performance metrics through an exploratory data analysis approach. To further enhance the practical business value, the thesis also aims to explore the effects transitioning to virtual work and DevOps have had on knowledge sharing for software firms. Method:                                                                                                                    A case study is conducted at Ericsson with performance data generated from testing of a system deployed in Kubernetes. Data is extracted with Prometheus, and the performance behavior of four interacting pods is explored with correlation analysis and visualization tools.Furthermore, to explore virtual work and DevOps effects on intra-organizational knowledge sharing of technical knowledge, semi-structured interviews were cross analyzed with literature. Results:                                                                                                                  An overall high correlation between performance metrics could be observed with deviations between test cases. Also, we were able to generate propositions regarding the performance behavior as well as bring forward possible candidates for predictive modeling. Four new potential decisive factors driving the choice of activities and transfer mechanisms for knowledge transfer are identified, namely, accessibility, dynamicity, established processes, and efficiency. The transition to virtual work showed five positive factors and three negatives. Effects from DevOps were mostly connected to the frequency of sharing and the potentials of automation.  Conclusions: Our findings suggest that correlation analysis, when used along with visualization tools, can improve system comprehension of cloud-native systems. And while it shows promise for analyzing individual services and hypothesis creation, the method utilized in the study showcased some drawbacks which are covered in the discussion. The findings also point towards the fact that performance metrics can be a rich information source for knowledge and thus deserves further investigation.Findings also suggest that knowledge sharing is not only considered an important element by academia but also deliberately practiced by industry agents. Looking at the transition to virtual work and DevOps, the results imply that they affect knowledge transfer, both in combination and isolation. However, the case study findings do point towards the fact that the transition to working virtually potentially exerts a larger influence. Interviewees expressed both positive and negative aspects of virtual knowledge sharing. Simultaneously, the positive influences of DevOps were followed by extensive challenges. / Bakgrund:  Att erhålla förståelse och observerbarhet av mjukvarusystem är en vital och nödvändig aktivitet, speciellt för testning och underhåll. Samtidigt så är dessa uppgifter både komplexa och tidskrävande för ingenjörer. Mikroservicearkitekturen som utnyttjas för att bygga molnintegrerade lösningar introducerar en hög grad av komplexitet. Fortsättningsvis, att kodifiera och distribuera teknisk kunskap har visats vara kritiskt för organisationers konkurrenskraft och finansiella resultat. Att göra det framgångsrik har dock flertal utmaningar och när flera mjukvarubolag under senare tid övergått till att arbeta virtuellt samt skiftat till DevOps har flertalet nya potentiella utmaningar uppdagats. Syfte:  Målet med denna studie är att utforska hur systemförståelse av mjukvarusystem baserade på en mikroservicearkitektur kan förbättras utifrån prestandamätningar med hjälp av undersökande dataanalysmetoder. För att ytterligare utöka det praktiska affärsvärdet så avser avhandlingen även att undersöka effekterna som övergången till virtuellt arbete och DevOps har haft på denintern kunskapsspridning inom mjukvarubolag.  Metod: En fallstudie utförs på Ericsson AB med prestandadata som genererats under testkörningar av ett system som kör på Kubernetes. Data extraherad med Prometheus och prestationsbeteendet utav fyra interagerande ”pods” utforskas genom korrelationsanalys och visualiseringsverktyg. För att undersöka effekterna från virtuellt arbete samt DevOps har på intraorganisatorisk kunskapsdelning av teknisk kunskap så utförs semi-strukturerade intervjuer som sedan korsanalyseras med litteratur. Resultat:  Överlag så uppvisas hög korrelation mellan prestandamätvärden samtidigt som tydliga avvikelser observerades mellan testfall. Utöver detta så generades propositioner angående prestationsbeteendet samtidigt som potentiella kandidater för prediktiv modellering framhävs. Fyra nya potentiella determinanter identifieras för valet av aktiviteter samt överföringsmekanism, nämligen tillgänglighet, dynamik, etablerade processer, och effektivitet. Övergången till virtuellt arbete uppvisade främst fem positiva faktorer och tre negativa. Effekterna utav DevOps var särskilt kopplade till frekvensen av delning samt potential för automation. Slutsatser: Våra resultat tyder på att korrelationsanalys i kombination med visualiseringsverktyg kan användas för att skapa systemförståelse av molnbaserade system. Samtidigt som metoden visar potential för att analysera individuella tjänster och generera hypoteser så påvisar metoden i vår studie vissa nackdelar vilket tas upp i diskussionen. Resultatet tyder dessutom på att prestandadata kan vara en rik informationskälla för kunskapsskapande och bör vara av intresse för ytterligare studier.Resultaten av den kvalitativa undersökning indikerar att kunskapshantering inte bara är ett viktigt element ur akademins perspektiv men även något som omsorgsfullt praktiseras av industrin. Resultatet angående övergången till virtuellt arbete samt DevOps antyder på att båda har inflytande på hur kunskapsspridning bedrivs, både var för sig och i kombination. Samtidigt pekar våra undersökningsresultat på att övergången till att arbeta virtuellt potentiellt har påverkat kunskapshantering i betydligt större utsträckning än DevOps. Intervjuerna uppvisade både positiva och negativa aspekter utav den virtuella påverkan samtidigt som de positiva effekter som uppmättes av DevOps uppföljdes av omfattande utmaningar.
67

Load Balancing In The Edge Cloud With Service Degradation : Combining Application-level Service Degradation With Load Balancing in a Kubernetes-based Edge Cloud / : Kombinering av tjänstedegredering på applikationsnivå med lastbalansering i ett Kubernetesbaserat edge cloud

Homssi, Rachel, Möller, Jacob January 2023 (has links)
Edge cloud is a distributed computing architecture that is growing in popularity. It aims to bring the cloud closer to the edge of a network, reducing latency and improving performance through the use of distributed servers (edge nodes) spread out geographically. However, in the case of sudden increases in user requests, a node may run short of resources and need to implement a strategy that allows the node's service to degrade its service quality to a level that requires fewer resources so that the service can still be delivered. One such strategy is brownout, a control theory-based algorithm that dynamically controls the node's service quality in order to meet e.g., a latency goal. This thesis explores the use of brownout, previously used in combination with load balancing in the cloud, in conjunction with load balancing in an edge-cloud environment. In this thesis, four load-balancing strategies are evaluated in a Kubernetes-based edge-cloud environment, along with an application that implements the brownout feature. Two of the strategies are originally designed to be used with brownout but made for the regular cloud, one is a recently introduced strategy that performs well in the edge cloud but is brownout unaware, and the last is a random load balancer used as a baseline (also brownout unaware). The goal of the evaluation is to determine the efficiency of these strategies in different edge-cloud scenarios, with regard to service quality-weighted throughput, average latency, adherence to a set latency goal, and outsourcing (requests load balanced to another edge node). The results show that the first two strategies perform worse than the random load balancer in many regards. Their performance is also less predictable and tends to get worse with increasing network delays. The edge cloud strategy, however, shows an improvement in performance when the brownout is introduced in the majority of the test scenarios.  Furthermore, the thesis introduced three possible modifications to make one of the cloud-based strategies perform better in the edge cloud. These modifications were tested in the same environment as the other load-balancing strategies and compared against each other. The first modification consisted of making the load-balancing logic treat its own node differently from other edge nodes.  The second version was devised to only outsource when a certain resource threshold is exceeded and the last version was designed to prioritize its own node when below a certain resource threshold. The last version improved on the others and performed better than the base version in all measured metrics. Compared to the edge cloud strategy with brownout, it performed better with regard to service quality-weighted throughput but was outperformed in all other metrics.
68

Adopting Observability-Driven Development for Cloud-Native Applications : Designing End-to-end Observability Pipeline using Open-source Software / Anta observerbarhetsdriven utveckling för molnbaserade applikationer : En skalbar öppen källkodspipeline och arkitektur

Ni, Chujie January 2023 (has links)
As cloud-native applications become more distributed, complex, and unpredictable with the adoption of microservices and other new architectural components, traditional monitoring solutions are inadequate in providing end-to-end visibility and proactively identifying deviations from expected behaviour before they become disruptive to services. In response to these challenges, observability-driven development (ODD) is proposed as a new methodology that leverages tools and practices to observe the state and detect the behaviour of systems. Unlike the leading IT giants developing their proprietary tools and platforms, some non-IT companies and smaller organizations still have difficulty adopting observability-driven development. Proprietary development demands extensive resources and manpower, while connecting to third-party platforms may compromise data security. This thesis proposed an end-to-end observability pipeline that is composed of merely open-source components. The pipeline collects and correlates metrics, logs, and traces to facilitate software development and help troubleshoot in production. The pipeline is designed to be adaptive and extensible so that companies can adopt it as the first step towards observability-driven development, and customize it to meet their specific requirements. / Molnbaserade applikationer blir alltmer distribuerade, komplexa och oförutsägbara med införandet av mikrotjänster och andra nya arkitektoniska komponenter. Detta resulterar i att traditionella övervakningslösningar blir alltmer inadekvata. De traditionella lösningarna tillhandahåller inte tillräcklig överskådlighet över dessa applikationer (end-to-end) för proaktiv identifiering av avvikelser från förväntat beteende innan de börjar påverka tjänsterna negativt. Som svar på dessa utmaningar föreslås observerbarhetsdriven utveckling (ODD) som en ny metod som utnyttjar verktyg och praxis för att observera tillståndet och upptäcka systemens beteende. Till skillnad från de ledande IT-jättarna som utvecklar sina egna verktyg och plattformar, har vissa icke-IT-företag och mindre organisationer fortfarande svårt att ta till sig observerbarhetsdriven utveckling. Egenutvecklad mjukvara kräver omfattande resurser och arbetskraft, medan anslutning till tredjepartsplattformar kan äventyra datasäkerheten. Den här avhandlingen bidrar med en end-to-end lösning som enbart baserats på öppen källkod. Pipelinen samlar in data från loggar och korrelerar dessa mätvärden för att underlätta mjukvaruutveckling och hjälpa till att felsöka i produktionen. Pipelinen är designad för att vara anpassningsbar och utvidgningsbar så att företag kan använda den som ett första steg mot observerbarhetsdriven utveckling och anpassa den för att möta deras specifika krav.
69

Intelligent autoscaling in Kubernetes : the impact of container performance indicators in model-free DRL methods / Intelligent autoscaling in Kubernetes : påverkan av containerprestanda-indikatorer i modellfria DRL-metoder

Praturlon, Tommaso January 2023 (has links)
A key challenge in the field of cloud computing is to automatically scale software containers in a way that accurately matches the demand for the services they run. To manage such components, container orchestrator tools such as Kubernetes are employed, and in the past few years, researchers have attempted to optimise its autoscaling mechanism with different approaches. Recent studies have showcased the potential of Actor-Critic Deep Reinforcement Learning (DRL) methods in container orchestration, demonstrating their effectiveness in various use cases. However, despite the availability of solutions that integrate multiple container performance metrics to evaluate autoscaling decisions, a critical gap exists in understanding how model-free DRL algorithms interact with a state space based on those metrics. Thus, the primary objective of this thesis is to investigate the impact of the state space definition on the performance of model-free DRL methods in the context of horizontal autoscaling within Kubernetes clusters. In particular, our findings reveal distinct behaviours associated with various sets of metrics. Notably, those sets that exclusively incorporate parameters present in the reward function demonstrate superior effectiveness. Furthermore, our results provide valuable insights when compared to related works, as our experiments demonstrate that a careful metric selection can lead to remarkable Service Level Agreement (SLA) compliance, with as low as 0.55% violations and even surpassing baseline performance in certain scenarios. / En viktig utmaning inom området molnberäkning är att automatiskt skala programvarubehållare på ett sätt som exakt matchar efterfrågan för de tjänster de driver. För att hantera sådana komponenter, container orkestratorverktyg som Kubernetes används, och i det förflutna några år har forskare försökt optimera dess autoskalning mekanism med olika tillvägagångssätt. Nyligen genomförda studier har visat potentialen hos Actor-Critic Deep Reinforcement Learning (DRL) metoder i containerorkestrering, som visar deras effektivitet i olika användningsfall. Men trots tillgången på lösningar som integrerar flera behållarprestandamått att utvärdera autoskalningsbeslut finns det ett kritiskt gap när det gäller att förstå hur modellfria DRLalgoritmer interagerar med ett tillståndsutrymme baserat på dessa mätvärden. Det primära syftet med denna avhandling är alltså att undersöka vilken inverkan statens rymddefinition har på prestandan av modellfria DRL-metoder i samband med horisontell autoskalning inom Kubernetes-kluster. I synnerhet visar våra resultat distinkta beteenden associerade med olika uppsättningar mätvärden. Särskilt de set som uteslutande innehåller parametrar som finns i belöningen funktion visar överlägsen effektivitet. Dessutom våra resultat ge värdefulla insikter jämfört med relaterade verk, som vår experiment visar att ett noggrant urval av mätvärden kan leda till anmärkningsvärt Service Level Agreement (SLA) efterlevnad, med så låg som 0, 55% överträdelser och till och med överträffande baslinjeprestanda i vissa scenarier.
70

An I/O-aware scheduler for containerized data-intensive HPC tasks in Kubernetes-based heterogeneous clusters / En I/O-medveten schemaläggare för containeriserade dataintensiva HPC-uppgifter i Kubernetes-baserade heterogena kluster

Wu, Zheyun January 2022 (has links)
Cloud-native is a new computing paradigm that takes advantage of key characteristics of cloud computing, where applications are packaged as containers. The lifecycle of containerized applications is typically managed by container orchestration tools such as Kubernetes, the most popular container orchestration system that automates the containers’ deployment, maintenance, and scaling. Kubernetes has become the de facto standard for container orchestrators in the cloud-native era. Meanwhile, with the increasing demand for High-Performance Computing (HPC) over the past years, containerization is being adopted by the HPC community and various processors and special-purpose hardware are utilized to accelerate HPC applications. The architecture of cloud systems has been gradually shifting from homogeneous to heterogeneous with different processors and hardware accelerators, which raises a new challenge: how to exploit different computing resources efficiently? Much effort has been devoted to improving the use efficiency of computing resources in heterogeneous systems from the perspective of task scheduling, which aims to match different types of tasks to optimal computing devices for execution. Existing proposals do not take into account the variation in I/O performance between heterogeneous nodes when scheduling tasks. However, I/O performance is an important but often overlooked factor that can be a potential performance bottleneck for HPC tasks. This thesis proposes an I/O-aware scheduler named cmio-scheduler for containerized data-intensive HPC tasks in Kubernetes-based heterogeneous clusters, which is aware of the I/O throughput of compute nodes when making task placement decisions. In principle, cmio-scheduler assigns data-intensive HPC tasks to the node that fulfills the tasks’ requirements for CPU, memory, and GPU and has the highest I/O throughput. The experimental results demonstrate that cmio-scheduler reduces the execution time by 19.32% for the overall workflow and 15.125% for parallelizable tasks on average. / Cloud-native är ett nytt dataparadigm som drar nytta av de viktigaste egenskaperna hos molntjänster, där applikationer paketeras som behållare. Livscykeln för applikationer i containrar hanteras vanligtvis av verktyg för containerorkestrering, t.ex. Kubernetes, det mest populära systemet för containerorkestrering, som automatiserar installation, underhåll och skalning av containrar. Kubernetes har blivit de facto-standard för containerorkestrar i den molnnativa eran. Med den ökande efterfrågan på högpresterande beräkningar (HPC) under de senaste åren har containerisering antagits av HPC-samhället och olika processorer och specialhårdvara används för att påskynda HPC-tillämpningar. Arkitekturen för molnsystem har gradvis skiftat från homogen till heterogen med olika processorer och hårdvaruacceleratorer, vilket ger upphov till en ny utmaning: hur kan man utnyttja olika datorresurser på ett effektivt sätt? Mycket arbete har ägnats åt att förbättra utnyttjandet av datorresurser i heterogena system ur perspektivet för uppgiftsfördelning, som syftar till att matcha olika typer av uppgifter till optimala datorutrustning för utförande. Befintliga förslag tar inte hänsyn till variationen i I/O-prestanda mellan heterogena noder vid schemaläggning av uppgifter. I/O-prestanda är dock en viktig men ofta förbisedd faktor som kan vara en potentiell flaskhals för HPC-uppgifter. I den här avhandlingen föreslås en I/O-medveten schemaläggare vid namn cmio-scheduler för containeriserade dataintensiva HPC-uppdrag i Kubernetes-baserade heterogena kluster, som är medveten om beräkningsnodernas I/O-genomströmning när den fattar beslut om placering av uppdrag. I princip tilldelar cmio-scheduler dataintensiva HPC-uppgifter till den nod som uppfyller uppgifternas krav på CPU, minne och GPU och som har den högsta I/O-genomströmningen. De experimentella resultaten visar att cmio-scheduler i genomsnitt minskar exekveringstiden med 19,32 % för det totala arbetsflödet och med 15,125 % för parallelliserbara uppgifter.

Page generated in 0.0849 seconds