DOKUMENTÁCIA 1. Aplikácia: • Táto aplikácia je jednoduchá webová aplikácia postavená na Node.js. • Hlavným súborom je index.html, ktorý obsahuje jednoduchý formulár na zadanie mena. • Serverová časť je implementovaná v súbore app.js pomocou frameworku Express.js. • Po vyplnení formulára a odoslaní je zobrazené privítanie s celým menom. ---------------------------------------------------------------------------------------------- 2. Súbory: • index.html: Obsahuje HTML kód pre webovú stránku s formulárom. • app.js: Obsahuje serverový kód pre spracovanie HTTP požiadaviek a zobrazenie privítania. • Dockerfile: Definuje konfiguráciu pre vytvorenie Docker obrazu aplikácie. • service.yaml: Konfiguračný súbor pre Kubernetes Service objekt, ktorý umožňuje prístup k aplikácii v rámci klastra. • deployment.yaml: Konfiguračný súbor pre Kubernetes Deployment objekt, ktorý definuje spôsob nasadenia aplikácie v rámci klastra. ---------------------------------------------------------------------------------------------- 3. Skripty: • prepare-app.sh: Tento skript vytvorí Docker obraz aplikácie s názvom oliversid/node-app:latest a následne pomocou príkazov kubectl apply nasadí Kubernetes Deployment a Service objekty podľa konfigurácie v súboroch deployment.yaml a service.yaml. • remove-app.sh: Tento skript odstráni Kubernetes Service a Deployment objekty pomocou príkazov kubectl delete, a následne pomocou príkazu docker rmi odstráni Docker obraz oliversid/node-app:latest. • Po dokončení skriptu „prepare-app.sh“, stačí už len zistiť CLUSTER-IP adresu pomocou príkazu „kubectl get all“. • aplikácia je po dokončený skriptu dostupná na adrese EXTERNAL-IP v tomto prípade 20.79.230.252 ---------------------------------------------------------------------------------------------- 4. Nasadzovanie aplikácie na web: 1. príkaz: "az group create --name aplikacia --location germanywestcentral" • Tento príkaz v Azure Command-Line Interface (CLI) vytvára novú skupinu zdrojov (resource group) s názvom "web" v lokalite „germanywestcentral“ • Celkovo príkaz vytvoril skupinu zdrojov s názvom "web" v lokalite " germanywest" aby úspešne dokončil proces vytvárania. Skupina zdrojov slúži na logické zoskupenie zdrojov v Azure, čo uľahčuje ich správu a organizáciu. 2. príkaz: „az aks create --resource-group aplikaciaZKT --name aplikaciaZKT --node-count 1 --enable-addons monitoring --generate-ssh-keys --node-vm-size stan --location germanywestcentral“ • Celkovo tento príkaz vytvára inštanciu služby Azure Kubernetes Service (AKS) s názvom "aplikaciaZKT" v skupine zdrojov "aplikaciaZKT". Klastre AKS bude obsahovať jeden uzol s veľkosťou virtuálneho stroja "standard_l8s_v2". • Bude tiež povolené monitorovanie klastra a vygenerované SSH kľúče pre prístup k uzlom. Služba AKS bude nasadená v lokalite "germanywestcentral". 3. príkaz: „az aks get-credentials --resource-group aplikaciaZKT --name aplikaciaZKT“ • Tento príkaz načíta konfiguračné informácie pre prístup k Azure Kubernetes Service (AKS) klastru. • Po vykonaní tohto príkazu budú prístupové údaje a konfigurácia pre prístup k AKS klastru "aplikaciaZKT" načítané a nastavené v aktuálnom pracovnom kontexte Azure CLI. To umožní ďalším príkazom a nástrojom pracovať s týmto klastrom. Týmto spôsobom môžeme jednoducho pracovať s AKS klastrami z lokálnej CLI inštancie. 4. príkaz: „az acr login --name aplikaciazkt“ • Tento príkazlúži na prihlásenie do Azure Container Registry (ACR) s cieľom získať prístup k danému registru kontajnerov. • Po vykonaní tohto príkazu som úspešne prihlásený do daného Azure Container Registry (ACR). Po prihlásení budem mať oprávnenie na manipuláciu s obrazmi kontajnerov v rámci tohto registra. ---------------------------------------------------------------------------------------------- Oliver Viszlay 23.5.2023