JMX lugemine HTTP-puhverserveri kaudu Jolokia abil
Kasutage Jolokia HTTP-liidest, kui monitooringuklient peab läbima eesmise veebipuhverserveri, eraldi puhverserveri ja halduse volitustega.
Kui Java juurutus pakub juba volitatud Jolokia lõpp-punkti, saab monitooringuklient lugeda JMX-atribuute tavalise eesmise HTTP-puhverserveri kaudu. Klient räägib Jolokiaga HTTP kaudu, mis teeb JMX-toimingu rakenduse poolel.
monitor → HTTP proxy → HTTPS Jolokia endpoint → MBean
See tee vajab HTTP-võimelist halduse lõpp-punkti. Muutmata kujul päris JMX-kliendi suunamine veebipuhverserverile seda ei loo.
Näiteks JVM-i hunniku kasutuse lugemist saab väljendada POST-päringuna:
curl --proxy http://proxy.example.net:8080 \
--header 'Content-Type: application/json' \
--data '{"type":"read","mbean":"java.lang:type=Memory","attribute":"HeapMemoryUsage","path":"used"}' \
https://monitor.example.net/jolokia/
Lõpp-punkt ja puhverserver on kohahoidjad. See kasutab lugemistoimingut; HTTP-meetod POST kannab Jolokia JSON-päringut, mitte ei tähenda JMX-kirjutust. Jolokia toetab lihtsate toimingute jaoks ka GET-päringuid, samas kui JSON POST väldib osa URL-i escapimisest, mida keerukate MBean-nimede jaoks vaja on.
HTTPS-i halduse lõpp-punkti puhul peab eesmine puhverserver lubama asjakohase tunnelisihtkoha. TLS peaks ikkagi kontrollima monitor.example.net. Puhverserveri enda hostinimi ja sertifikaat, kui puhverserveri ühendus ise TLS-i kasutab, kirjeldavad eraldi hüpet.
Hoidke kaks autentimisotsust eraldi. curli puhverserveri autentimisvalikud annavad puhverserveri konto. Lõpp-punkti autentimine annab halduse identiteedi ja Jolokia poliitika määrab, millistele MBeanidele ja toimingutele pääseb. Luba eesmise puhverserveri kasutamiseks ei ole luba JVM-i hallata.
Ka vastusel on kaks kihti: HTTP-transpordi olek ja Jolokia JSON-toimingu tulemus. Kontrollige tagastatud status ja value, selle asemel et pidada ükskõik millist keha õnnestunud mõõdikuks. Puhverserveri vead, lõpp-punkti autentimise ebaõnnestumised ja puuduvad MBeanid nõuavad erinevaid muudatusi.
Kui juurutus pakub ainult päris JMX-pistikühendust, valige selle pistikühendusega ühilduv tee või korraldage heakskiidetud HTTP-halduse lõpp-punkt. SSH kohalik edasisaatmine on teine transpordilahendus, kuid see jääb ühenduseks päris teenusega; see ei muuda selle protokolli Jolokia HTTP API-ks.