From 8af8d1ceab8149330d4d7673fb0c01e9d07b0817 Mon Sep 17 00:00:00 2001 From: oleh Date: Wed, 9 Apr 2025 10:53:31 +0200 Subject: [PATCH] upd readme --- z2/README.md | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) diff --git a/z2/README.md b/z2/README.md index 5d32038..d4468a1 100644 --- a/z2/README.md +++ b/z2/README.md @@ -21,27 +21,37 @@ --- + ## 3. Zoznam Kubernetes objektov a ich stručný opis + - **Namespace (battleship-app):** - Poskytuje izolované prostredie pre všetky vytvorené objekty súvisiace s aplikáciou. + Tento objekt vytvára samostatný menný priestor `battleship-app`, do ktorého patria všetky nasadené komponenty aplikácie, čím je zabezpečená logická izolácia zdrojov. - **Deployment:** - - *battleship-backend:* Deployment pre backend službu s 1 replikou, ktorý zabezpečuje prevádzku Node.js aplikácie. - - *battleship-frontend:* Deployment pre frontend službu s 1 replikou, ktorý zabezpečuje dostupnosť webového rozhrania. + - **battleship-backend:** + Deployment pre backend službu, ktorý spúšťa Node.js aplikáciu s obrazom `battleship-backend:latest` a počtom replik nastaveným na 1. Aplikácia počúva na porte **4000** a využíva environment variables pre pripojenie k databáze (napríklad `DB_HOST=mysql`, `DB_PORT=3306`, `DB_USER=root`, `DB_PASSWORD=somepassword`, `DB_NAME=battleship`). + + - **battleship-frontend:** + Deployment pre frontend službu, ktorý nasadzuje webové rozhranie s obrazom `battleship-frontend:latest` a počtom replik nastaveným na 1. Frontend komunikuje so serverovou logikou cez port **80**. - **StatefulSet (battleship-mysql):** - Riadi nasadenie MySQL databázy s 1 replikou a využíva PersistentVolumeClaim na trvalé ukladanie dát. + StatefulSet s názvom `battleship-mysql` riadi nasadenie MySQL databázy s jednou replikou. Tento objekt používa PersistentVolumeClaim (`mysql-pvc`) pre trvalé ukladanie dát databázy. Kontajner beží s obrazom `mysql:8.0.30`, počúva na porte **3306** a je nakonfigurovaný pomocou environment variables `MYSQL_ROOT_PASSWORD=somepassword` a `MYSQL_DATABASE=battleship`. -- **PersistentVolume (PV):** - Definovaný zdroj pre uloženie dát databázy, typicky využívajúci `hostPath` alebo iný storage provisioner. +- **PersistentVolume (mysql-pv):** + PersistentVolume s názvom `mysql-pv` poskytuje fyzické úložisko pre MySQL databázu. Konkrétne má kapacitu **1Gi**, používa režim prístupu **ReadWriteOnce** a je nastavený na využitie `hostPath` s cestou `/mnt/data/mysql`. -- **PersistentVolumeClaim (PVC):** - Požaduje úložný priestor pre MySQL databázu (1Gi), ktorý sa následne pripojí k objektu StatefulSet. +- **PersistentVolumeClaim (mysql-pvc):** + Tento objekt žiada úložný priestor vo veľkosti **1Gi** s prístupom **ReadWriteOnce**. PVC sa následne používa v StatefulSet `battleship-mysql` na pripojenie trvalého úložiska k databáze. - **Service:** - - *mysql:* ClusterIP služba pre internú komunikáciu s databázou. - - *backend:* NodePort služba pre prístup ku backend aplikácii. - - *frontend:* NodePort služba pre prístup k webovému rozhraniu frontend aplikácie. + - **mysql:** + ClusterIP služba, ktorá poskytuje interný prístup k MySQL databáze v rámci namespace `battleship-app` a smeruje požiadavky na port **3306**. + + - **backend:** + NodePort služba, ktorá smeruje požiadavky na Deployment `battleship-backend` na port **4000** a mapuje ho na externý port **30000**, čím zabezpečuje prístup k backend API. + + - **frontend:** + NodePort služba, ktorá poskytuje prístup k webovému rozhraniu nasadenému prostredníctvom Deployment `battleship-frontend` na porte **80**, pričom mapuje tento port na externý port **30001**. ---