Java inplementazio batek dagoeneko Jolokia amaierako puntu baimendua eskaintzen badu, monitorizazio-kliente batek JMX atributuak irakur ditzake aurrealdeko HTTP proxy arrunt baten bidez. Klientea HTTPz aritzen da Jolokiarekin, eta honek JMX eragiketa aplikazioaren aldean egiten du.

monitor → HTTP proxy → HTTPS Jolokia endpoint → MBean

Ibilbide honek HTTP gaitasuna duen kudeaketa-amaierako puntu bat behar du. Aldatu gabeko JMX kliente natiboa web-proxyra zuzentzeak ez du bat sortzen.

Adibidez, JVMaren heap erabileraren irakurketa POST eskaera gisa adieraz daiteke:

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/

Amaierako puntua eta proxy-a leku-markak dira. Honek irakurketa-eragiketa erabiltzen du; HTTP POST metodoak Jolokiaren JSON eskaera garraiatzen du, JMX idazketa bat adierazi beharrean. Jolokiak GET eskaerak ere onartzen ditu eragiketa sinpleetarako, eta JSON POSTek MBean izen konplexuetarako behar den URL escapearen zati bat saihesten du.

HTTPS kudeaketa-amaierako puntu baterako, aurrealdeko proxyak dagokion tunel-helmuga baimendu behar du. TLSek oraindik monitor.example.net egiaztatu beharko luke. Proxyaren beraren ostalari-izena eta ziurtagiria, proxy konexioak berak TLS erabiltzen badu, jauzi bereizi bat deskribatzen dute.

Mantendu bi autentifikazio-erabakiak bereizita. curl-en proxy autentifikazio aukerak proxy kontu bat ematen du. Amaierako puntuaren autentifikazioak kudeaketa-nortasuna ematen du, eta Jolokiaren politikak zehazten du zein MBean eta eragiketatara sar daitekeen. Aurrealdeko proxy-a erabiltzeko baimena ez da JVMa administratzeko baimena.

Erantzunak ere bi geruza ditu: HTTP garraio-egoera eta Jolokiaren JSON eragiketa-emaitza. Aztertu itzultzen diren status eta value, edozein gorputz metrika arrakastatsu gisa onartu beharrean. Proxy erroreek, amaierako puntuaren autentifikazio hutsegiteek eta falta diren MBeanek aldaketa desberdinak eskatzen dituzte.

Inplementazioak JMX konektore natiboa soilik eskaintzen badu, aukeratu konektore horrekin bateragarria den ibilbide bat edo antolatu onartutako HTTP kudeaketa-amaierako puntu bat. SSH tokiko birbidalketa garraio-diseinu beste bat da, baina zerbitzu natiboarekiko konexioa izaten jarraitzen du; ez du bere protokoloa Jolokiaren HTTP API bihurtzen.

Erlazionatutako artikuluak