Přeskočit obsah

Kubernetes architektura

Součástí služby je n nodů s nainstalovaným Kuberenets cluster řešením a HA loadbalancery. Zákazník obdrží konfiguraci s klientským certifikátem pro Kube API, ke kterému přistupuje přes VPN (použita je OpenVPN).

Síťový stack je řešen přes Weave, který spravuje Kubernetes automaticky. Veřejnou IP adresu mají pouze loadbalancery a ostatní servery jsou dostupné v interní síti. Na loadbalacerech je nastavená balancovaná IP adresa, na kterou směřují všechny zákaznické DNS záznamy.

V případě nutnosti persistentní storage poskytujeme NFS, kdy je možné použít nfs-client-provisioner nebo S3 storage použitelnou přes S3 API.

Pro provoz služeb na jiném portu než 80/443, je ze strany zákazníka je třeba na zákaznickou podporu dodat NodePort, na kterém aplikace poslouchají. Na základě toho upravíme nastavení loadbalanceru.

Kubernetes cluster není vhodný pro provoz databázových serverů a to především z důvodu nutnosti persistentního uložiště, kdy je třeba v případě NFS počítat s latencí sítě. Pro tyto účely poskytujeme Managed databázové servery, které jsou optimalizovány pro maximální výkon. Výhodou managed řešení je i pomoc s debuggingem (např. detekcí slow query zpomalující aplikaci), zálohování, monitoring a řešení všech kritických provozních stavů.

Rozdělení kompetencí

VSHosting

  • Správa HW a OS všech Kubernetes nodů a loadbalancerů
  • Instalace a základní nastavení Kubernetes a loadbalancerů pro provoz HTTP/HTTPS před předáním zákazníkovi
  • Upgrade OS
  • Upgrade Kubernetes – po domluvě se zákazníkem
  • Přidání dalších nodů do clusteru
  • Správa přidělených veřejných adres a balancovaných portů na loadbalancerech
  • Monitoring Kubernetes platformy – HW, loadbalancery, Kubernetes API, storage
  • Zálohování clusteru a loadbalanceů

Zákazník

  • Příprava Docker imagů aplikací
  • Deploy aplikací včetně nastavení CI
  • Kompletní správa aplikací a služeb běžících v Kubernetes clusteru
  • Konfigurace přístupu k persistent storage v aplikacích
  • Monitoring služeb běžících v Kubernetes
  • Záloha persistentních aplikačních dat
  • Debugging nefunkčních kontejnerů a služeb
  • Nastavení NodePort pro aplikaci vyžadující přístup zvenčí a předání portu zákaznické podpoře