Od verzie 26 systém D2000 podporuje kontajnerizáciu na platforme Kubernetes (K8s).
Tento dokument obsahuje základný prehľad vlastností a funkcionality.
Kontajnerizovaná D2000 má nasledovné vlastnosti:
Referenčná implementácia zahŕňa redundantnú (2-nodovú) aplikáciu D2000.
V prostredí K8s sú spustené 2 procesy D2000 Server (A, B), 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.
Redundantná aplikácia má dva procesy D2000 Archív, fungujúce ako inštancie (aktívna a pasívne) a pripájajúce sa k aktívnemu (HOT) procesu D2000 Server. Pomocou konfigurácie afinity je dosiahnuté, že inštancia 1 bežia node s D2000 Serverom A, inštancia 2 s D2000 Serverom B.
Utilita D2000 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 D2000 Arcsynchro je spúšťaná automaticky príslušnou inštanciou procesu D2000 Archív pri štarte na zaplátanie diery v jeho archívnej databáze.
Konfiguračné YAML súbory sú vygenerované pomocou Helm Chart súborov.
Do prostredia Kubernetes clustra sú povolené štandardne porty:
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"

Do vonkajšieho prostredia sú povolené štandardne porty:
Správa aplikácie bežiacej v prostredí Kubernetes je možná z management konzoly príkazmi nástroja kubectl alebo cez webovú management platformu, napr. Rancher.
Pretože D2000 proces je v K8s reprezentovaný objektom typu StatefulSet, vypnutie a zapnutie procesu znamená nastavenie počtu replík StatefukSet-u na 0 (vypnutie) resp. na 1 (zapnutie). Pri vyššom počte replík by vznikol D2000 proces s rovnakým menom ako už beží a preto by ho D2000 server odmietol pripojiť. Podpora viacerých replík D2000 procesov prostriedkami K8s momentálne nie je podporená, je však plánovaná pre vybrané typy procesov.
# syntax: kubectl scale statefulset <name> --replicas=<count> # priklad: kubectl scale statefulset d2-ala-a-self --replicas=0 |
# syntax: kubectl logs <pod-name> # priklad: kubectl logs d2-clc-a-self-0 |
Deploy StatefulSet-u v sebe zahŕňa ukončenie bežiacich replík pod-ov, stiahnutie najnovších použitých image s daným tag-om, a pre každú repliku pod-u spustenie init kontajnerov a následné spustenie kontajnerov. V prípade, že kontajner používa image bez čísla patchu, bude stiahnutý najnovší patch daného D2000 procesu.
# syntax: kubectl rollout restart statefulset <name> # priklad: kubectl rollout restart statefulset d2-evh-a-self |