magistrska naloga
Luka Kidrič (Author), Borut Lužar (Mentor)

Abstract

V magistrski nalogi podrobno predstavimo metodologiji DevOps in IaC (infrastruktura kot koda), ki postajata vedno bolj popularni pri razvoju kompleksnih programskih rešitev. Ogledamo si tudi najbolj pogosto uporabljena orodja, ki nam pomagajo pri vzpostavitvi razvojnega procesa po načelu omenjenih metodologij, nekatera od njih pa tudi uporabimo pri izdelavi avtomatiziranega razvojnega procesa. Kot primer smo izdelali spletno aplikacijo, ki temelji na arhitekturi mikrostoritev. Te storitve smo kontejnerizirali, pripravili teste enot (angl. unit tests) in jih s pomočjo orodja Kubernetes nato tudi uspešno lansirali na Googlovi oblačni platformi (GCP). Uporabili smo tudi orodje Terraform, ki nam je omogočilo, da smo celotno infrastrukturo definirali s kodo in se tako držali principov IaC. Uporabo vseh omenjenih orodij na koncu povežemo z rešitvijo GitHub Actions, ki omogoči, da ustvarimo cevovod CI/CD (neprekinjena integracija in neprekinjena dostava), ki spremlja vsako našo spremembo v kodi in po potrebi posodobi našo aplikacijo.

Keywords

DevOps;Infrastruktura kot koda (IaC);Cevovod CI/CD;Kubernetes;Docker;Terraform;GCP;

Data

Language: Slovenian
Year of publishing:
Typology: 2.09 - Master's Thesis
Organization: FIŠ - Faculty of Information Studies
Publisher: [L. Kidrič]
UDC: 004.411-026.131(043.2)
COBISS: 113937155 Link will open in a new window
Views: 6
Downloads: 1
Average score: 0 (0 votes)
Metadata: JSON JSON-RDF JSON-LD TURTLE N-TRIPLES XML RDFA MICRODATA DC-XML DC-RDF RDF

Other data

Secondary language: English
Secondary abstract: In the master's thesis, we learned in more detail about the methodology of DevOps and IaC (Infrastructure as code), which are becoming increasingly popular in the development of complex applications. We also learned about the most commonly used tools for the implementation of those methodologies and used some of them in the creation of an automated development process. We have created a web application based on micro service architecture. We then containerized these services, wrote tests and, with the help of Kubernetes, successfully launched them on the google cloud platform (GCP). We also used the Terraform tool, which allowed us to define the entire infrastructure as code and thus adhere to the IaC principles. It all came together in the end with GitHub Actions, which allowed us to create a CI / CD pipeline (continuous integration and continuous deployment) that tracked our every change in the code and updated our app as needed.
Secondary keywords: DevOps;Infrastructure as code (IaC);CI/CD Pipeline;Kubernetes;Docker;Terraform;GCP;
Type (COBISS): Master's thesis/paper
Thesis comment: Fakulteta za informacijske študije v Novem mestu
Source comment: Na ov.: Magistrska naloga : študijskega programa druge stopnje;
Pages: XVII, 79 str.
ID: 15916110