From df4e121b4ec505c22bd3f58019728b67a2f1543a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9A=D0=B0=D1=80=D0=BF=D0=B8=D1=87=20=D0=94=D0=BC=D0=B8?= =?UTF-8?q?=D1=82=D1=80=D0=B8=D0=B9=20=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0?= =?UTF-8?q?=D0=BD=D0=B4=D1=80=D0=BE=D0=B2=D0=B8=D1=87?= Date: Mon, 23 Dec 2024 14:40:30 +0300 Subject: [PATCH] chore(*): start all --- Dockerfile | 13 +++++++++++ hazelcast.xml | 21 +++++++++++++++++ jmx_agent_config.yaml | 20 ++++++++++++++++ js/.gitignore | 1 + js/index.js | 53 +++++++++++++++++++++++++++++++++++++++++++ js/package.json | 9 ++++++++ js/yarn.lock | 27 ++++++++++++++++++++++ 7 files changed, 144 insertions(+) create mode 100644 Dockerfile create mode 100644 hazelcast.xml create mode 100644 jmx_agent_config.yaml create mode 100644 js/.gitignore create mode 100644 js/index.js create mode 100644 js/package.json create mode 100644 js/yarn.lock diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..b8e9f62 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,13 @@ +FROM hazelcast/hazelcast:3.12.10 + +# Копируем файлы конфигурации в контейнер +COPY ./hazelcast.xml /opt/hazelcast/ +COPY ./jmx_agent_config.yaml /opt/prometheus/ + +ENV JAVA_OPTS="-Dhazelcast.config=/opt/hazelcast/hazelcast.xml -Dhazelcast.jmx=true -Djava.rmi.server.hostname=onaintdata1" +ENV PROMETHEUS_PORT=9100 +ENV PROMETHEUS_CONFIG="/opt/prometheus/jmx_agent_config.yaml" +ENV MIN_HEAP_SIZE=1228m +ENV MAX_HEAP_SIZE=1228m + +EXPOSE 5701 9100 diff --git a/hazelcast.xml b/hazelcast.xml new file mode 100644 index 0000000..78dc826 --- /dev/null +++ b/hazelcast.xml @@ -0,0 +1,21 @@ + + + ona + 123456 + + + onaintdata1 + 5701 + + + + onaintdata1:5701 + + + + + true + true + true + + \ No newline at end of file diff --git a/jmx_agent_config.yaml b/jmx_agent_config.yaml new file mode 100644 index 0000000..b7d9cef --- /dev/null +++ b/jmx_agent_config.yaml @@ -0,0 +1,20 @@ +--- +ssl: false +whitelistObjectNames: ["com.hazelcast:*"] +rules: +- pattern: '<>(.*):' + name: hazelcast_$3_$4 + labels: + instance: $1 + name: $2 + type: $3 + help: "Hazelcast metric instance=$1 name=$2 type=$3 attribute=$4" + attrNameSnakeCase: false +- pattern: '>> ' + state); +// if(state === 'shutdown'){ +// console.log('WE ARE DEAD!'); +// } +// }); + +const cfg = { + network: { + clusterMembers: [ + '127.0.0.1:5701', + ] + }, + groupConfig: { + name: 'ona', + password: '123456' + }, + lifecycleListeners: [ + (state) => { + console.log(`Hazelcast lifecycle Event >>> ${state}`); + }], +}; + +const config = new Haz.Config.ClientConfig(cfg); + + Haz.Client.newHazelcastClient(config).then((client) => { + console.log('Success!', client); + globalClient = client; + console.log(globalClient.getLocalEndpoint()); + + +}) +.catch((err) => { + console.log(err) +}); + + +setInterval(async () => { + try{ + console.log('Client >>>>>>'); + + if(globalClient){ + const map = await globalClient.getMap('qqz'); + console.log('value: ', await map.put('q', Date.now())); + } +}catch(e) { + console.log('>>>>>>>>>>>>>>>>>', e) +} +}, 5000); \ No newline at end of file diff --git a/js/package.json b/js/package.json new file mode 100644 index 0000000..7ea7831 --- /dev/null +++ b/js/package.json @@ -0,0 +1,9 @@ +{ + "name": "hazelcast-test", + "version": "1.0.0", + "main": "index.js", + "license": "MIT", + "dependencies": { + "hazelcast-client": "3.12.4" + } +} diff --git a/js/yarn.lock b/js/yarn.lock new file mode 100644 index 0000000..e94303e --- /dev/null +++ b/js/yarn.lock @@ -0,0 +1,27 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +bluebird@3.7.2: + version "3.7.2" + resolved "http://binary.moscow.alfaintra.net/artifactory/api/npm/npm/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" + integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== + +hazelcast-client@3.12.4: + version "3.12.4" + resolved "http://binary.moscow.alfaintra.net/artifactory/api/npm/npm/hazelcast-client/-/hazelcast-client-3.12.4.tgz#a34d0f59b26a7277bd05373818729af0547f4562" + integrity sha512-o/0zkY//1P0A3j/x4Zh3kCwKIh38Uiqd9kCRcWqa3IYm9zAs9iyL+Ml6f0+eUwWOjrGNVlthXvxe9lijhzpqug== + dependencies: + bluebird "3.7.2" + long "4.0.0" + safe-buffer "5.2.1" + +long@4.0.0: + version "4.0.0" + resolved "http://binary.moscow.alfaintra.net/artifactory/api/npm/npm/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28" + integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA== + +safe-buffer@5.2.1: + version "5.2.1" + resolved "http://binary.moscow.alfaintra.net/artifactory/api/npm/npm/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==