Od verzie 26 systém D2000 podporuje kontajnerizáciu na platforme Kubernetes (K8s).
Tento dokument obsahuje základný prehľad vlastností a funkcionality.
Prehľad
Kontajnerizovaná D2000 má nasledovné vlastnosti:
- Každý proces má samostatný image a je spustený ako samostatný pod. Prostriedkami K8s je možné ho samostatne štartovať, vypínať, reštartovať, aktualizovať.
- Inštalácia D2000 je umiestnená v adresári /opt/d2000.
- Proces D2000 Server a k nemu prislúchajúce procesy (CLC, EVH, EDS, ARC, ...) majú namapované spoločný diskový priestor:
- Konfiguračné súbory inštalácie D2000 sú umiestnené v adresári /config/d2000 (súbory instance.properties, ConsolesInfo.txt). Tento adresár je zverejnený v environment premennej D2000_HOME.
- Konfiguračné súbory aplikácie D2000 sú umiestnené v aplikačnom adresári /opt/d2000/app/<appname> (súbory application.properties, client.properties).
- Adresár s logmi je umiestnený v adresári inštalácie (opt/d2000/log).
- Konfiguračná, monitorovacia a archívna databáza sú na PostgreSQL databázových serveroch umiestnených mimo prostredie Kubernetes. Pody s procesmi D2000 Server a D2000 Archív majú nakonfigurované ODBC spojenia (konfiguračný súbor /config/odbc/odbc.ini zverejnený v environment premennej ODBCINI) na príslušné databázy.
- Procesy D2000 Server, D2000 Kom a D2000 Web server majú nastavené príslušné capabilities (prístup na privilegované sieťové porty, raw sockety, prípadne špeciálne súbory [sériové porty]) pomocou nastavenia capabilities (v konfiguračných YAML súboroch aj v dodávaných kontajnerových images).
Referenčná implementácia
Referenčná implementácia zahŕňa redundantnú (2-nodovú) aplikáciu D2000. V prostredí K8s sú spustené 2 procesy D2000 Server, pričom pomocou konfigurácie anti-afinity je dosiahnuté, že nebežia v rámci jedného nodu. V rámci aplikácie sú spustené všetky potrebné procesy ako samostatné pody, pričom pomocou konfigurácie afinity je dosiahnuté, že bežia na tom istom node ako príslušný D2000 Server.
Utilita CfgSynchroAuto je spúšťaná automaticky procesom D2000 Server pri pripájaní druhého procesu D2000 Server do redundancie, na synchronizáciu konfiguračných databáz.
Utilita Arcsynchro je spúšťaná automaticky procesom D2000 Archív pri štarte na zaplátanie diery v archívnej databáze.
Konfiguračné YAML súbory sú vygenerované pomocou Help Chart súborov.
Do prostredia Kubernetes clustra sú povolené štandardne porty:
- TCP porty 3119 (mapované na TCP porty procesov D2000 Server): prístup D2000 klientov (HI, Cnf).
- UDP porty 3119 (mapované na UDP porty procesov D2000 Server): prístup D2000 System Console na procesy D2000 Server.
Pozn: IP adresy procesov D2000 Server je nutné nakonfigurovať vo Windows registry a zadať procesu D2000 System Console pomocou štartovacích parametrov /RF alebo /S, pričom musí byť zhodný názov redundantnej skupiny aj názov kernelov. IP adresy musia byť zadané nie privátne K8s, ale vonkajšie, ktoré sú dostupné pre procesy mimo K8s prostredie.
Príklad: štartovanie SysConsole: sysconsole.exe /RFk8s_dev
Definícia redundantnej skupiny k8s_dev v registry:Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Ipesoft\D2000V70\Redundancy]
[HKEY_LOCAL_MACHINE\SOFTWARE\Ipesoft\D2000V70\Redundancy\k8s_dev]
[HKEY_LOCAL_MACHINE\SOFTWARE\Ipesoft\D2000V70\Redundancy\k8s_dev\Kernel_1]
"IpAddr1"="192.168.253.82"
"Name"="a"
[HKEY_LOCAL_MACHINE\SOFTWARE\Ipesoft\D2000V70\Redundancy\k8s_dev\Kernel_2]
"IpAddr1"="192.168.253.83"
"Name"="b"
Redundantná skupina zobrazená v SysConsole (zobrazujú sa vnútorné IP adresy 10.x.y.z pridelené jednotlivým Podom)
Do vonkajšieho prostredia sú povolené štandardne porty:
- TCP port 5432: Prístup procesu D2000 Server na konfiguračnú a monitorovaciu databázu, prístup procesu D2000 Archív na archívnu databázu.
