Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/thalesmg/emqx-ansible-cdk-helpers
https://github.com/thalesmg/emqx-ansible-cdk-helpers
Last synced: 10 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/thalesmg/emqx-ansible-cdk-helpers
- Owner: thalesmg
- Created: 2021-11-22T13:11:42.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2022-08-26T16:02:22.000Z (about 2 years ago)
- Last Synced: 2023-03-05T07:38:54.686Z (over 1 year ago)
- Language: Shell
- Size: 165 KB
- Stars: 0
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: readme.org
Awesome Lists containing this project
README
* tuning
#+BEGIN_SRC sh
EMQX_BASTION_IP=XXX.XXX.XXX.XXX
ansible-playbook \
-i localhost \
-e emqx_bastion_server=$EMQX_BASTION_IP \
-e emqx_cluster_name=thalesmg \
-e emqx_emqx_num=2 \
-e emqx_loadgen_num=20 \
-e emqx_db_backend=rlog \
-e emqx_num_cores=1 \
tuning.yml
#+END_SRC* running test scripts
#+BEGIN_SRC sh
EMQX_BASTION_IP=XXX.XXX.XXX.XXX
NUM_EMQX=10
NUM_LG=3
RUN_DATE=$(date +'%Y%m%d-%H%M%S')
NUM_PROC=30
INTERVAL_MS=7
TEST_TYPE="conn"
RUN_NAME="rlog.10cores.${TEST_TYPE}.directly2node.mnesia-nolog.${NUM_PROC}proc.${INTERVAL_MS}ms"
OUTPUT_RECORDING="${RUN_NAME}.${RUN_DATE}"
echo Output recording: ${OUTPUT_RECORDING}
ansible-playbook \
-i localhost \
-e emqx_bastion_server=$EMQX_BASTION_IP \
-e emqx_cluster_name=thalesmg \
-e emqx_emqx_num=${NUM_EMQX} \
-e emqx_loadgen_num=${NUM_LG} \
-e emqx_script_result_file="$OUTPUT_RECORDING" \
-e script_timeout_s=30000 \
-e emqx_test_script_file="${TEST_TYPE}-test.sh" \
-e emqtt_bench_interval=${INTERVAL_MS} \
-e emqx_test_procs=${NUM_PROC} \
-e emqtt_bench_number_of_connections=1500000 \
-e emqtt_bench_session_expiry_interval=0 \
-e script_timezone=$(timedatectl | grep -i zone | sed 's|.*Time zone: \([^ ]*\).*|\1|')
run-test.yml
echo Output recording: ${OUTPUT_RECORDING}
#+END_SRCTo skip collecting output from =emqtt-bench=, simply pass ~--skip-tags
collect~ to the command above.Also, one can pass ~-e emqtt_bench_lowmem_mode=True~ to use
=emqtt-bench='s low memory mode.*** overlays
to run the "overlay files" step, put the files to be copied onto the
servers on =files/=, add the source and destination paths in
=tuning.yml= and execute the playbook passing the =-e emqx_beam_overlays=True=
flag.ex:
#+BEGIN_SRC yaml
# tuning.yml
block:
- name: overlay stat path
# .....
when: emqx_beam_overlays
vars:
overlays:
- dest: "/usr/lib/emqx/lib/mnesia-4.19/ebin/mnesia_log.beam"
src: "mnesia_log.beam"
- dest: "/etc/emqx/emqx.conf"
src: my-emqx.conf
#+END_SRC