Comparison of Gitlab Runner implementations without Docker machine for cloud providers

dc.contributor.advisorPoojara, Shivananda Rangappa, juhendaja
dc.contributor.authorGanjusev, Timofei
dc.contributor.otherTartu Ülikool. Loodus- ja täppisteaduste valdkondet
dc.contributor.otherTartu Ülikool. Arvutiteaduse instituutet
dc.date.accessioned2023-09-01T07:27:05Z
dc.date.available2023-09-01T07:27:05Z
dc.date.issued2022
dc.description.abstractIn recent years DevOps practices became more popular among all companies in the IT industry. Gitlab is a platform built on top of a code version control system and services to manage an application active development process.The automation of processes of application development lifecycle together with Agile practices allow to deliver faster software products to market. The objective of the thesis is to analyze existing Gitlab Runner implementations design including scalable solutions without Docker Machine because it was deprecated by Docker. The Gitlab utilizes its own auto scaling runner integration with popular cloud providers such as Google Cloud, AWS and Azure Cloud and has to maintain a forked version of Docker Machine. The thesis mainly describes aspects of different Gitlab Runner implementations, finding advantages and disadvantages of each solution and proving the theoretical problems via benchmarks. Using different cloud provider environments, were set up auto scale Gitlab Runners in Kubernetes Clusters, non-scalable on Linux server. Further, the runners were benchmarked with a pipeline that contains 3 stages with 7 jobs emulating basic project pipeline. According to the results, the best solution is runner in Azure Kubernetes Service with cache in Azure Cloud, but the popular cloud providers have instances with CPU on ARM architecture with better performance in some cases and different cache storage solutions could be tested.et
dc.identifier.urihttps://hdl.handle.net/10062/91937
dc.language.isoenget
dc.publisherTartu Ülikoolet
dc.rightsopenAccesset
dc.rightsAttribution-NonCommercial-NoDerivatives 4.0 International*
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/4.0/*
dc.subjectGitlabet
dc.subjectKuberneteset
dc.subjectCI/CDet
dc.subjectDockeret
dc.subjectPodmanet
dc.subjectKanikoet
dc.subjectAzureet
dc.subjectHetzneret
dc.subjectCloud computinget
dc.subject.otherbakalaureusetöödet
dc.subject.otherinformaatikaet
dc.subject.otherinfotehnoloogiaet
dc.subject.otherinformaticset
dc.subject.otherinfotechnologyet
dc.titleComparison of Gitlab Runner implementations without Docker machine for cloud providerset
dc.typeThesiset

Failid

Originaal pakett

Nüüd näidatakse 1 - 1 1
Laen...
Pisipilt
Nimi:
ganjusev_informaatika_2022.pdf
Suurus:
1.22 MB
Formaat:
Adobe Portable Document Format
Kirjeldus:

Litsentsi pakett

Nüüd näidatakse 1 - 1 1
Laen...
Pisipilt
Nimi:
license.txt
Suurus:
1.71 KB
Formaat:
Item-specific license agreed upon to submission
Kirjeldus: