Nomad - pojmy jednoduse
Zkusim zde posepisovat vysvetleni mene jasnych pojmu, ktere se nejen v souvislosti s nomadem pouzivaji.
Ingress controler
Slouzi k nasmerovani prichoziho pozadavku ke spravne aplikaci.
Lze si to predstavit tak, ze pozadavek z prohlizece uzivatele je navstevnik ve veznici a ingress je vratny, ktery overi kdo prisel a za kym jde. Nasledne navstevnika preda nekomu kdo ho dovede za veznem (aplikaci) a zajisti, ze se navstevnikovi nic nestane a ze navstevnik nikomu nic neprovede (tunel/cesta).
Orchestrator
Stara se o optimalni vyuziti HW a dela vse pro to, aby spravovane aplikace byly ve stavu, jaky po nem byl zadan.
Predstavte si ho jako velmi schopneho a neunavneho osobniho asistenta, ktery ma za ukol udrzovat vse ve stavu jaky sami urcite. Pokud budete treba chtit aby vase auto bylo stale umyte v garazi a doma byla vsechny veci na svem miste. Tak mu predate seznam veci a stavu v jakem maji byt a on bude kazdou minutu delat vse proto, aby to tak bylo, pokud napriklad zaparkujete ve spechu na travniku, nebo zapomenete zavrit okno, on vzdy pujde a vse vrati do stavu jaky ste mu popsali.
Cili pokud mu reknu, chci aby moje aplikace XXX bezela na serveru YYY presne 3x, on bude delat vse co muze, aby to tak bylo.
Service discovery
Real-time katalog vsech sluzeb v infrastrukture, ktery umoznuje ke vsem objektum navic pridavat tagy a healt-checky.
- umoznuje nam registrovat nove sluzby na jedno misto
- umoznuje nam najit vsechny dostupne sluzby na jednom miste ruznymi metodami (DNS, API, …)
- umoznuje nam hlidat stav registrovanych sluzeb a dle stavu je filtrovat
Predstavte si obri nemocnici, kde se neustale meni pacienti. Aby bylo mozne se v tom vyznat, bude tu nejaka recepce, kde se schromazduji informace o prijmutych pacientech a o jejich stavu. Kdokoli kdo do nemocnice prijde na tomto miste bud bude zaregistrovan jako pacient, nebo se zde jako navstevnik muze zeptat (ma-li pravo) na umisteni a stav pacienta, ktery byl prijmut.
Takze takova recepce je vlastne hodne zjednodusena service discovery
Priklad pouziti: Budeme mit hromadu serveru, kde bezi jeste vetsi hromada aplikaci. Pokud v takove infrastrukture bezi service discovery, muzeme na ni napriklad napojit monitoring, ktery zde bude zjistovat seznam aplikaci, ktere ma monitorovat. Dale zde muzeme napojit aplikaci, ktera se bude ptat na dostupne atabaze, kam muze ukaldat sva data a pokud napriklad jedna DB, nebude funkcni, aplikace se to okamzite dozvi a muze pouzivat jinou dostupnou. Pripadne tam muze byt napojen i load balancer, ktery bude zjistovat, ktere aplikace jsou schopne obslouzit pozadavky klienta.
Pokud mame service discovery v infrastrukture, je pak pridavani a odebirani sluzeb a serveru velmi snadne, protoze misto pridavani nove sluzby na hromade mistech, ji staci jen zaregistrovat do service discovery, ktera overi, ze nova sluzba bezi spravne a nasledne preda informaci vsem ostatnim.