ອ່ານ JMX ຜ່ານ HTTP proxy ດ້ວຍ Jolokia
ໃຊ້ອິນເຕີເຟສ HTTP ຂອງ Jolokia ເມື່ອລູກຄ້າຕິດຕາມຕ້ອງຜ່ານ web proxy ທາງໜ້າ ໂດຍມີຂໍ້ມູນຢືນຢັນແຍກຕ່າງຫາກສຳລັບ proxy ແລະ ການຈັດການ.
ຖ້າການຕິດຕັ້ງ Java ໄດ້ເປີດເຜີຍຈຸດປາຍທາງ Jolokia ທີ່ໄດ້ຮັບອະນຸຍາດແລ້ວ ລູກຄ້າຕິດຕາມສາມາດອ່ານຄຸນລັກສະນະ JMX ຜ່ານ HTTP proxy ທາງໜ້າທຳມະດາໄດ້. ລູກຄ້າເວົ້າ HTTP ກັບ Jolokia ເຊິ່ງດຳເນີນການ JMX ຢູ່ຝັ່ງແອັບພລິເຄຊັນ.
monitor → HTTP proxy → HTTPS Jolokia endpoint → MBean
ເສັ້ນທາງນີ້ຕ້ອງການຈຸດປາຍທາງການຈັດການທີ່ຮອງຮັບ HTTP. ການຊີ້ລູກຄ້າ JMX ດັ້ງເດີມທີ່ບໍ່ໄດ້ປ່ຽນໄປຫາ web proxy ບໍ່ໄດ້ສ້າງມັນຂຶ້ນ.
ຕົວຢ່າງ ການອ່ານການໃຊ້ heap ຂອງ JVM ສາມາດສະແດງເປັນຄຳຂໍ 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/
ຈຸດປາຍທາງ ແລະ proxy ເປັນຕົວແທນ. ນີ້ໃຊ້ການດຳເນີນການອ່ານ; ວິທີ HTTP POST ບັນຈຸຄຳຂໍ JSON ຂອງ Jolokia ແທນທີ່ຈະໝາຍເຖິງການຂຽນ JMX. Jolokia ຍັງຮອງຮັບຄຳຂໍ GET ສຳລັບການດຳເນີນການງ່າຍໆ ໃນຂະນະທີ່ JSON POST ຫຼີກລ້ຽງການ escape URL ບາງສ່ວນທີ່ຕ້ອງການສຳລັບຊື່ MBean ທີ່ສັບສົນ.
ສຳລັບຈຸດປາຍທາງການຈັດການ HTTPS proxy ທາງໜ້າຕ້ອງອະນຸຍາດປາຍທາງ tunnel ທີ່ກ່ຽວຂ້ອງ. TLS ຄວນຍັງກວດສອບ monitor.example.net. ຊື່ໂຮສ ແລະ ໃບຢັ້ງຢືນຂອງ proxy ເອງ ຖ້າການເຊື່ອມຕໍ່ proxy ໃຊ້ TLS ເອງ ຈະອະທິບາຍການໂດດແຍກຕ່າງຫາກ.
ແຍກການຕັດສິນໃຈຢືນຢັນຕົວຕົນສອງຢ່າງນີ້. ຕົວເລືອກການຢືນຢັນ proxy ຂອງ curl ໃຫ້ບັນຊີ proxy. ການຢືນຢັນຂອງຈຸດປາຍທາງໃຫ້ຕົວຕົນການຈັດການ ແລະ ນະໂຍບາຍຂອງ Jolokia ກຳນົດວ່າ MBean ແລະ ການດຳເນີນການໃດເຂົ້າເຖິງໄດ້. ການອະນຸຍາດໃຊ້ proxy ທາງໜ້າບໍ່ແມ່ນການອະນຸຍາດບໍລິຫານ JVM.
ການຕອບສະໜອງກໍມີສອງຊັ້ນ: ສະຖານະການຂົນສົ່ງ HTTP ແລະ ຜົນການດຳເນີນການ JSON ຂອງ Jolokia. ກວດເບິ່ງ status ແລະ value ທີ່ສົ່ງກັບມາ ແທນທີ່ຈະຍອມຮັບເນື້ອຫາໃດໆເປັນຕົວວັດທີ່ສຳເລັດ. ຂໍ້ຜິດພາດ proxy ຄວາມລົ້ມເຫຼວຂອງການຢືນຢັນທີ່ຈຸດປາຍທາງ ແລະ MBean ທີ່ຂາດຫາຍ ຕ້ອງການການປ່ຽນແປງທີ່ແຕກຕ່າງ.
ຖ້າການຕິດຕັ້ງເປີດເຜີຍພຽງຕົວເຊື່ອມຕໍ່ JMX ດັ້ງເດີມ ໃຫ້ເລືອກເສັ້ນທາງທີ່ເຂົ້າກັນໄດ້ກັບຕົວເຊື່ອມຕໍ່ນັ້ນ ຫຼື ຈັດການຈຸດປາຍທາງການຈັດການ HTTP ທີ່ໄດ້ຮັບອະນຸມັດ. ການສົ່ງຕໍ່ SSH ພາຍໃນເປັນການອອກແບບການຂົນສົ່ງອີກຢ່າງໜຶ່ງ ແຕ່ມັນຍັງເປັນການເຊື່ອມຕໍ່ກັບບໍລິການດັ້ງເດີມ; ມັນບໍ່ໄດ້ປ່ຽນໂປຣໂຕຄອນຂອງມັນເປັນ HTTP API ຂອງ Jolokia.