Aplikačný server reálneho času Ipesoft D2000 je použiteľný na celú škálu aplikácií - od malých SCADA systémov (postavených na platforme Raspberry PI alebo na priemyselných počítačoch s OS Windows/Linux) až po veľké systémy typu MES/EMS s desiatkami užívateľov, veľkými aplikačnými databázami (v rozmeroch jednotiek TB), multiterabajtovými archívmi a trezormi. V tejto kapitole sa pokúsime sumarizovať niektoré osvedčené spôsoby a praktiky pri navrhovaní a správe D2000 systémov.

Virtualizácia

Aplikačný server D2000 je dnes často prevádzkovaný aj vo virtualizovanom prostredí (VMware, Hyper-V, Proxmox), najmä pre systémy typu MES, EMS, SELT a bilančné systémy, zriedkavejšie pre SCADA systémy.
V tomto prostredí dochádza ku zdieľani zdrojov, z čoho vyplývajú dva základné problémy so zdieľaním spojené:

Osvedčila sa nám "hyperkonvergovaná architektúra", v rámci ktorej používame výkonné servery s lokálnymi diskami (v diskovom poli RAID10, prípadne RAID50). Ideálne je, keď majú virtualizované D2000 aplikácie vlastné servery (ktoré nie sú zdieľané s inými aplikáciami) a keď správcovia D2000 aplikácií majú nielen administrátorské práva na virtuálne stroje, na ktorých je D2000 prevádzkovaná, ale majú zároveň prístup do virtualizačného prostredia, takže môžu operatívne vykonať výkonnostnú diagnostiku v prípade problémov.

V prípade viacerých administrátorov (napr. pre sieťovú infraštruktúru a firewally, virtualizáciu, Active Directory, aplikačné servery) odporúčame zavedenie prevádzkového denníka, v ktorom budú zaznamenávané všetky operácie, ktoré mohli ovplyvniť funkčnosť serverov, najmä:

Následnú analýzu (spravidla pokiaľ dôjde k spomaleniu a zníženiu výkonu) existencia prevádzkového denníka značne uľahčuje. Na zdieľanie denníka možno použiť napr. SVN alebo GIT repozitár, prípadne SharePoint úložisko a podobne. 

Pridelenie dostatočného množstva zdrojov vo virtualizovanom prostredí

Zdroje, ktoré D2000 primárne potrebuje, sú tri: pamäť (RAM), CPU a diskový priestor (zatiaľ sme nezaznamenali problémy s limitmi priepustnosti na sieťových rozhraniach). Odporúčame:

Na partíciu s OS a D2000 odporúčame rýchle disky (SSD), na partíciu s trezormi postačujú aj pomalšie HDD, prípadne NAS.


Monitorovanie a diagnostika vo virtualizovanom prostredí

Vo virtualizovanom prostredí je nevyhnutné mať prístup k monitorovaniu prevádzkových parametrov, aby bolo zaručené, že D2000 aplikácia netrpí v dôsledku zdieľania zdrojov. Odporúčame, aby správcovia prostredia monitorovali a vedeli poskytnúť tieto dáta (podľa vzoru grafov dostupných vo vCentre):

Všetky tieto grafy a dáta pre ne odporúčame mať k dispozícii aspoň 3 mesiace, kvôli dlhodobému sledovaniu výkonu.

Vo virtualizovanom prostredí je pre D2000 Archív dôležitá nielen rýchlosť, ale aj latencia diskov. Treba si uvedomiť, že pri archivácii sa zapisuje paralelne do stoviek a tisícov databázových tabuliek pre jednotlivé archívne objekty.

Antivírusy

V prípade použitia antivírusov a antimalware programov (Microsoft Defender, ESET Nod, Symantec a iné, na platforme Linux napr. McAfee 'OAS Manager') je nutné správne ponastavovať výnimky, aby antivírusy nezahltili CPU a nespomalili funkčnosť D2000 systémov.

Výnimky na adresáre: štandardne odporúčame pridať adresáre s D2000 a databázami pre D2000, napr. na platforme Windows:

Na platforme Linux:

Výnimky na programy v pamäti - kvôli tomu, aby sa antivírusy nesnažili analyzovať komunikáciu (externú -  D2000 KOM, medzi procesmi - D2000 Kernel, s databázami - D2000 DbManager). Odporúčame pridať výnimky na D2000 procesy, ktoré spotrebúvajú najviac CPU, štandardne sú to:

Na platforme Linux:


V prípade niektorých antivírusov (Microsoft Defender) je vhodné sledovať celkovú spotrebu CPU antivíru (msmpeng.exe) v Task Manageri. Ak je vysoká, výnimky sú nedostatočné (a treba nastaviť výnimky pre ďalšie procesy, zvyčajne tie, ktoré majú tiež vysokú spotrebu CPU). Iné antivírusy (ESET NOD) pracujú "v utajení" a spotrebúvajú CPU v kontexte bežiacich procesov - Task Manager tak ukazuje napr. vysokú spotrebu CPU pre postgres.exe.

Negatívne skúsenosti sú aj s programom xagt.exe (FireEye Endpoint Security), ktorý (pravdepodobne kvôli chýbajúcim výnimkám) jednak spotreboval pomerne veľa CPU výkonu (4 zo 16 dostupných CPU) a jednak znefunkčnil niekoľko realtime komunikácií (IEC 870-5-101, IEC 870-5-104).

Užitočné diagnostické nástroje

Na platforme Windows:

Na platforme Linux: