Ak nasadenie Java už vystavuje autorizovaný koncový bod Jolokia, monitorovací klient môže čítať atribúty JMX cez bežnú doprednú HTTP proxy. Klient hovorí HTTP s Jolokiou, ktorá vykonáva operáciu JMX na strane aplikácie.

monitor → HTTP proxy → HTTPS Jolokia endpoint → MBean

Táto cesta potrebuje koncový bod správy schopný HTTP. Nasmerovanie nezmeneného natívneho klienta JMX na webovú proxy ho nevytvorí.

Napriklad čítanie využitia haldy JVM možno vyjadriť ako požiadavku POST:

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/

Koncový bod a proxy sú zástupné. Toto používa operáciu čítania; metóda HTTP POST prenáša JSON požiadavku Jolokia, nie že by znamenala zápis JMX. Jolokia podporuje aj požiadavky GET pre jednoduché operácie, zatiaľ čo JSON POST sa vyhýba časti escapovania URL potrebného pre zložité názvy MBean.

Pre koncový bod správy HTTPS musí dopredná proxy povoliť príslušný cieľ tunela. TLS by stále malo overovať monitor.example.net. Vlastný názov hostiteľa a certifikát proxy, ak samotné proxy pripojenie používa TLS, opisujú samostatný skok.

Držte obe rozhodnutia o autentizácii oddelene. Možnosti autentizácie proxy v curl poskytujú účet proxy. Autentizácia koncového bodu poskytuje identitu správy a zásada Jolokia určuje, ku ktorým MBeanom a operáciám má prístup. Oprávnenie používať doprednú proxy nie je oprávnenie spravovať JVM.

Odpoveď má tiež dve vrstvy: stav transportu HTTP a výsledok operácie JSON v Jolokia. Skontrolujte vrátené status a value, namiesto toho, aby ste akékoľvek telo prijali ako úspešnú metriku. Chyby proxy, zlyhania autentizácie koncového bodu a chýbajúce MBeany vyžadujú rôzne zmeny.

Ak nasadenie vystavuje len natívny konektor JMX, vyberte cestu kompatibilnú s týmto konektorom alebo zabezpečte schválený koncový bod správy HTTP. Lokálne presmerovanie SSH je iný návrh transportu, ale zostáva pripojením k natívnej službe; nemení jej protokol na HTTP API Jolokia.

Súvisiace články