Základy cloud operations
Operácie prvého a druhého dňa
Čo sú cloud operations (CloudOps) Úlohy administrátora infraštruktúry
DevOps vs CloudOps
Zero day operations First day operations Second Day operations
Opakovateľnosť a verzovanie infraštruktúry
Nástroje Klaud operations
Pridelenie zdrojov
Terraform Vagrant
Manuálne vs automatizované nasadenie Infrastructure as Code (IaC)
Správa dostupnosti a škálovania:
Horizontálne vs vertikálne škálovanie Autoscaling Load balancing
Aktualizácie a údržba
Ansible
Patch management Aktualizácie OS a aplikácií Automatizácia údržby
Monitoring a logging
Monitorovanie výkonu (CPU, RAM, disk) Logovanie udalostí Alerty a notifikácie Nástroje (CloudWatch, Azure Monitor)
Detekcia hrozieb Audit a compliance Správa incidentov
Zálohovanie a obnova
Backup stratégie Snapshoty a replikácia RPO a RTO Testovanie obnovy
Správa nákladov (Cost management)
Pay-as-you-go model Monitoring nákladov Optimalizácia (rightsizing, reserved instances) Tagovanie zdrojov
Ansible
Ansible je nástroj na automatizáciu správy systémov a konfigurácie.
Charakteristika:
- open-source nástroj,
- agentless (nevyžaduje inštaláciu agenta na cieľových strojoch),
- push-based (riadiaci uzol posiela príkazy).
Architektúra:
- Control node – riadiaci server,
- Managed nodes – spravované servery,
- Inventory – zoznam hostov.
Konfiguračný model (YAML)
Ansible používa YAML na definovanie konfigurácie.
Základné prvky:
- Playbooky – hlavné skripty,
- Tasks – jednotlivé kroky,
- Modules – vykonávajú operácie (napr. apt, service),
- Roles – organizácia kódu,
- Variables – premenné,
- Handlers – reakcie na zmeny,
- Templates (Jinja2) – dynamické konfigurácie.
Playbook
Playbook je súbor, ktorý definuje požadovaný stav systému.
Príklad:
- hosts: web
tasks:
- name: Install nginx
apt:
name: nginx
state: present
Playbooky podporujú:
- podmienky,
- cykly,
- tagy,
- importy,
- error handling.
Moduly a pluginy
Ansible obsahuje množstvo modulov:
- správa balíkov (
apt,yum), - správa služieb,
- práca so súbormi,
- cloudové operácie.
Pluginy umožňujú rozšírenie funkcionality (napr. lookup, callback).
Terraform
Terraform je nástroj od spoločnosti HashiCorp na správu infraštruktúry.
Používa deklaratívny prístup:
- definujeme čo chceme dosiahnuť,
- Terraform zabezpečí vykonanie zmien.
Základný workflow:
- init – inicializácia projektu
- plan – náhľad zmien
- apply – aplikovanie zmien
- destroy – odstránenie infraštruktúry
Architektúra Terraformu
Základné komponenty:
- Terraform CLI – nástroj na spúšťanie príkazov,
- Provider plugins – komunikácia s cloudom (AWS, Azure…),
- HCL – konfiguračný jazyk.
Konfiguračný jazyk (HCL)
Terraform používa jazyk HCL (HashiCorp Configuration Language).
Základné prvky:
- resource – definícia zdroja,
- variables – vstupy,
- outputs – výstupy,
- expressions – logika,
- cykly (
for_each,count), - podmienky.
Príklad:
resource "aws_instance" "web" {
ami = "ami-123456"
instance_type = "t2.micro"
}
Stav (State management)
Terraform si ukladá stav infraštruktúry do súboru:
terraform.tfstate
Význam:
- sleduje aktuálny stav infraštruktúry,
- umožňuje porovnanie s konfiguráciou,
- zabraňuje nekonzistentnosti.
Typy:
- lokálny stav,
- vzdialený stav (S3, Azure, GCS).
Dôležité pojmy:
- state locking,
- state drift,
- import existujúcej infraštruktúry.
Helm
- balíčkovací systém pre Kubernetes
- používa „charty“
Kompose
- prevod Docker Compose → Kubernetes
Operator
-
automatizuje správu aplikácií
-
rieši aj pokročilé operácie (backup, upgrade)
-
monitoring (Prometheus)
-
service mesh (Istio)
-
autentifikácia (Keycloak)