test: add influxdb docker test files
This commit is contained in:
parent
8fde169abb
commit
502b826396
|
@ -0,0 +1,28 @@
|
|||
-----BEGIN PRIVATE KEY-----
|
||||
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDstiij2PRYssNx
|
||||
P5k+0YlWLgx57xOz5zpzjyjavDvFUmboEJH2VG2A7ITQtXlTqrqB3rxbGEDYjltm
|
||||
RG/tjm4g5GQ3RgfupZdsNommgzE4/bH0PT6PwYTlt83596Vu9hFqUF5a0rtYF8RJ
|
||||
gXHXzDeraz25JoLcuNgGlSrpgioryx6NZB/oBkbuHbGL7fmYuRO8zQSxknHtg/Jr
|
||||
K4YqQaw66VFQoydyzcGp9b8KjMYjyBVjNvt7xbvvCLrMZ6XMAhPYyquRhQC00ydJ
|
||||
OHavzcauARAQH20noHpKU8/W8HSwBOKMsYdh0vxLnFwnrP9qOjMoB1G6DtpL8yGc
|
||||
dsWSkXJTAgMBAAECggEAI4uxy/OcXbrFFpB9AViTIwSEjcWU/oL5Mrk2DVgO3FwP
|
||||
ZUciZAyG6mvvVdf/1syLIqLBQ3yqNYV1vC8ID8g/nrjX7mTvHqscc1I37BqZ8vub
|
||||
FBjOTZAQgN56aSWttgfwKDgsCGofWo8sbqKoPHDyOyTo0+YwkyyUDrOqX1OojtgG
|
||||
Vv+0jKZfc6zzGWoG7HXAAMHYlnLDcO/XqFGiqWG0jVQtKaHOYndYzbWQHg/h4kOr
|
||||
NcpOCryAUOWWZWjO212qINAYmN/v+ietoemrNKInYzkF6na0TCjOyhzurMdhO1VF
|
||||
H0D/q0QKZp0BurWMBgoVMEu/L+5NKnVAdS417DojoQKBgQDydlesHeoAlTEKfSOf
|
||||
4Un/n2ylU7Xu6V17RV+oTUESFlxl+2IeQJ1FuTtnW7LWaT/+jCkqNoxpcj+Aq1Ov
|
||||
tsecy894hEy1cKOTD8g0BHqGMQ96El/vy4cphBGrmJ1BHd8t+B7u2kuDJO+Jap/r
|
||||
R0FMtQvkcsZX/JlVnKl2j/OVdwKBgQD57Z4riMKCyEh99y0e5dK2cDjm+NhEErxs
|
||||
C3AV5ye1rApf5HR4qYaEwdfqMk1mU1eQKQG3nLMEYNDx+ofMNxnJ8xWFtlLOCeRA
|
||||
bAaD/O9lqvVNV6HDamT85xxrgi6glJRVmlglr1qDutvqKEbt5Cy81hVrGg09prmw
|
||||
0DdKXlpxBQKBgQC4xicaK9Hgj9HHxIYZmX7jJ4OMmrbTU1TCVKQJhpZISnIv5dto
|
||||
YqV4NSloIyGu9JaoTfgxC1EGKuLqE6a7CfglLcz2cxxiSWze7fAMdD1Ldqfsx4QF
|
||||
In3mzZcJxkxRC4rBZY1tST6yursxZehpTOweoPpnJnCxLPdNnw4mJJ3lEQKBgF+2
|
||||
Wh5970+6d9iVslfk1786VvBNWDUpn7MY5kHdFl4Clq6GhPw4n+VzfsaXoQCQ5jW1
|
||||
Ho08m2oP0bT5psvURjIKv7FHU4rISvtI423kjaG3yN1ns/Fsa2RW9ZFOd6DThcMK
|
||||
qrsz3kwYYWPZLOCpw2BF9Enh3jRAB1jpRGNcovIpAoGAQJJSNcZDr1JY3NppBZ9U
|
||||
7OqcQypQ8PP7jBpszQrWid8BGGK082UjO+okG7f3wQjmRYaPpuS/Rqa50ikmLscZ
|
||||
aO6Y4+rUGmZH6G7r/hk9Pu8AO3JDRH/gNImZy6X1Ae8NDoeHRYzXtz57aGlOY+gU
|
||||
rcgGpevWU5XzAtEudxOMRsk=
|
||||
-----END PRIVATE KEY-----
|
|
@ -0,0 +1,69 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIDvTCCAqWgAwIBAgIFFnRIM4UwDQYJKoZIhvcNAQELBQAwbTELMAkGA1UEBhMC
|
||||
U0UxEjAQBgNVBAgMCVN0b2NraG9sbTESMBAGA1UECgwJTXlPcmdOYW1lMRkwFwYD
|
||||
VQQLDBBNeUludGVybWVkaWF0ZUNBMRswGQYDVQQDDBJNeUludGVybWVkaWF0ZUNB
|
||||
LTEwHhcNMjMwMTIzMTQxNjI1WhcNMzMwMTIwMTQxNjI1WjBrMQswCQYDVQQGEwJT
|
||||
RTESMBAGA1UECAwJU3RvY2tob2xtMRIwEAYDVQQKDAlNeU9yZ05hbWUxEjAQBgNV
|
||||
BAsMCU15U2VydmljZTEgMB4GA1UEAwwXaW5mbHV4ZGIuZW1xeC5pbmZsdXguaW8w
|
||||
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDstiij2PRYssNxP5k+0YlW
|
||||
Lgx57xOz5zpzjyjavDvFUmboEJH2VG2A7ITQtXlTqrqB3rxbGEDYjltmRG/tjm4g
|
||||
5GQ3RgfupZdsNommgzE4/bH0PT6PwYTlt83596Vu9hFqUF5a0rtYF8RJgXHXzDer
|
||||
az25JoLcuNgGlSrpgioryx6NZB/oBkbuHbGL7fmYuRO8zQSxknHtg/JrK4YqQaw6
|
||||
6VFQoydyzcGp9b8KjMYjyBVjNvt7xbvvCLrMZ6XMAhPYyquRhQC00ydJOHavzcau
|
||||
ARAQH20noHpKU8/W8HSwBOKMsYdh0vxLnFwnrP9qOjMoB1G6DtpL8yGcdsWSkXJT
|
||||
AgMBAAGjZjBkMCIGA1UdEQQbMBmCF2luZmx1eGRiLmVtcXguaW5mbHV4LmlvMB0G
|
||||
A1UdDgQWBBSz+wgHJ2TZNGasVR+BSMqRpg3pSTAfBgNVHSMEGDAWgBRfr50a+u+U
|
||||
2sPlCD7ft2gOjNIdOjANBgkqhkiG9w0BAQsFAAOCAQEAAInxCAHkEVbPQhijpl+C
|
||||
vblGHxS4aPGGAmIU7rS2CsZQaXRLZNC++syMZQzOKtLOIzLT8WSgs026/tLsFQk0
|
||||
5VCLbgnQqS2wblFylGribUiT/dSMmiMvGylc6MHJnbEyiNKtlB88paTLuDC81lIZ
|
||||
KDBEYSQTfaykm3MXjeZGB5sHBcKeBWCkDY9O1YvsP/5a9zyZiC1c+XTTlB5Lnzgo
|
||||
aL7SWB88J+mF0cn5iwitwTg0ryZtO5fG8qmqaAs+G8u9oVytnxi+WBmjukjnFdzC
|
||||
SlRFYGY0KZmg1ZGlLCzBS3Bi3q+ck8yfv2rj2WBqklOISzSnp5VaRC6gcUDNE0XY
|
||||
1g==
|
||||
-----END CERTIFICATE-----
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIEODCCAyCgAwIBAgIFFnRIM4UwDQYJKoZIhvcNAQELBQAwbzELMAkGA1UEBhMC
|
||||
U0UxEjAQBgNVBAgMCVN0b2NraG9sbTESMBAGA1UEBwwJU3RvY2tob2xtMRIwEAYD
|
||||
VQQKDAlNeU9yZ05hbWUxETAPBgNVBAsMCE15Um9vdENBMREwDwYDVQQDDAhNeVJv
|
||||
b3RDQTAeFw0yMzAxMjMxNDE2MjVaFw0zMzAxMjAxNDE2MjVaMG0xCzAJBgNVBAYT
|
||||
AlNFMRIwEAYDVQQIDAlTdG9ja2hvbG0xEjAQBgNVBAoMCU15T3JnTmFtZTEZMBcG
|
||||
A1UECwwQTXlJbnRlcm1lZGlhdGVDQTEbMBkGA1UEAwwSTXlJbnRlcm1lZGlhdGVD
|
||||
QS0xMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApYFU7RYTvI8eH6Y6
|
||||
yVgjwWWMWSqU3Q97G8l2zHcgOCrph8xQRM8tp0wsoPpvj6SYvohzPJyIxK6tFiQg
|
||||
FvPrk4JQdQWNEK7ogRwqbeFX017vVsQIDMAsO5V5cqoRjOghV1QvHkz5+oVQt09w
|
||||
whwk47IrsKhwiXtQrFuGi3w7WNTkwh1FX3V8ZrqCVr02/f1GmODYxPqvuXVtf42B
|
||||
iewWOvnHs58vyMPvts/Ngh4HBzQncSudeI9GDsPscAn6I5YmjBQkGsQQb7cygd4p
|
||||
u3OrMw/Sw2e85N6fBM6+b4ZTUEaz6EC2ymBNiJtkLDzkM3ZaP19GluYy17PBi8ZB
|
||||
UO+rowIDAQABo4HcMIHZMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/
|
||||
MB0GA1UdDgQWBBRfr50a+u+U2sPlCD7ft2gOjNIdOjCBlgYDVR0jBIGOMIGLoXOk
|
||||
cTBvMQswCQYDVQQGEwJTRTESMBAGA1UECAwJU3RvY2tob2xtMRIwEAYDVQQHDAlT
|
||||
dG9ja2hvbG0xEjAQBgNVBAoMCU15T3JnTmFtZTERMA8GA1UECwwITXlSb290Q0Ex
|
||||
ETAPBgNVBAMMCE15Um9vdENBghRfGvHfslLmWduK/DoD5zdiKKaPsDANBgkqhkiG
|
||||
9w0BAQsFAAOCAQEAKoEj6H7tBDiD/sqPuxABGJI4dT6jqSFskF2An95FlwTHLu4b
|
||||
kBxfb1r3emaqM6t+dgEjupqa6Mte9/rQmynGn+U9IFn3dOo95FPmf8igQGGcO7Tz
|
||||
Wl1pTm2S7m5+fQAgC94jmBk8JUXO+fGJe33Mx+os1ZaE26KvbhQzTk8NpYfK+cp2
|
||||
+K4HsaVogr+mR139YNbKD00xexGQdxPzdBO4EHEsCI+6W7ELFz/iaj7S6XTe9YW2
|
||||
Uj858vOWhL6bg2zWhb/ER2MqbB05gOQhf8Rw+4iL+45AiGFrdyD4jXaqMy7lR4dv
|
||||
fBlPwX60owxqgtKc4QC8/rSKLteSey01WV1SXA==
|
||||
-----END CERTIFICATE-----
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIDZTCCAk0CFF8a8d+yUuZZ24r8OgPnN2Iopo+wMA0GCSqGSIb3DQEBCwUAMG8x
|
||||
CzAJBgNVBAYTAlNFMRIwEAYDVQQIDAlTdG9ja2hvbG0xEjAQBgNVBAcMCVN0b2Nr
|
||||
aG9sbTESMBAGA1UECgwJTXlPcmdOYW1lMREwDwYDVQQLDAhNeVJvb3RDQTERMA8G
|
||||
A1UEAwwITXlSb290Q0EwHhcNMjMwMTIzMTQxNjI0WhcNMzMwMTIwMTQxNjI0WjBv
|
||||
MQswCQYDVQQGEwJTRTESMBAGA1UECAwJU3RvY2tob2xtMRIwEAYDVQQHDAlTdG9j
|
||||
a2hvbG0xEjAQBgNVBAoMCU15T3JnTmFtZTERMA8GA1UECwwITXlSb290Q0ExETAP
|
||||
BgNVBAMMCE15Um9vdENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
|
||||
4aktTF0LaTO6XYvZCGM7vI1XaXIh0eEvYmnLW0di2JD/CajTAqyGbLkpHCDVJDrE
|
||||
zIXP4v+u872RtfOHDcXnK8fU0hYv4r6KG4YW8PAQouPDuP992WbpuxircOq4b7Z8
|
||||
ED5RIxKqZxFJYLmkrvk+cJyqOOIUdbre1+82Wh7TJzBkNJNVRYVb6PzX3qCoVxgy
|
||||
3tyZCW7K/2wjs8Rde3eyTJuOFsKRaGk5ycS4OMAPqFc3Y1uw5yIDTkWMp/dtbBIK
|
||||
jVDg6DcY79Vlz293u7Y03Je4xK1HksxpxcU/sMqgtsUB+HKbUBDhLUNkxRRkCw1N
|
||||
+5PVkP8rmxGuQbIgYxOMOQIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQBQ9hrNHYcL
|
||||
m9Vh5Q94Pg+hPk6Q97wRv9lKsimQgVutLXBjC8+NfHGwJchMRlnKrcRHeYTzYIUi
|
||||
TXxLrRbAMLnAeyeKlGhjqqw4VDORJFvt0I82ia6jrKNlbwGqQ6v+SKoXu85HuJv+
|
||||
Er8Iz9X6l1aZ2hEBFy4W4IuYy+fPBlrN74aUdSLcekgLbLj8n0mjQjWD5wzQ4Gsf
|
||||
8dwm0rsbh6UoX8/XOMkSXP9SlKsNyzA4ZHTZ9aZoehoe0G5sUbfDumUaONmp4oOj
|
||||
EFntuk5AsbxqzQTSYP4jrLc7/D2hOCJBn93nfZ+raMyD6mjttfk52aeYwFLuPihL
|
||||
FoanUYSck91R
|
||||
-----END CERTIFICATE-----
|
|
@ -0,0 +1,77 @@
|
|||
version: '3.9'
|
||||
|
||||
services:
|
||||
influxdb_server:
|
||||
container_name: influxdb_server
|
||||
image: influxdb:2.5.0
|
||||
hostname: influxdb.emqx.influx.io
|
||||
expose:
|
||||
- "8086"
|
||||
- "8083"
|
||||
ports:
|
||||
- "8086:8086"
|
||||
- "8083:8083"
|
||||
environment:
|
||||
DOCKER_INFLUXDB_INIT_MODE: setup
|
||||
DOCKER_INFLUXDB_INIT_USERNAME: root
|
||||
DOCKER_INFLUXDB_INIT_PASSWORD: emqx@123
|
||||
DOCKER_INFLUXDB_INIT_ORG: emqx
|
||||
DOCKER_INFLUXDB_INIT_BUCKET: mqtt
|
||||
DOCKER_INFLUXDB_INIT_ADMIN_TOKEN: abcdefg
|
||||
volumes:
|
||||
- "${PWD}/certs/server_combined.pem:/etc/influxdb/cert.pem"
|
||||
- "${PWD}/certs/server.key:/etc/influxdb/key.pem"
|
||||
# - "../../../.ci/docker-compose-file/certs/server.crt:/etc/influxdb/cert.pem"
|
||||
# - "../../../.ci/docker-compose-file/certs/server.key:/etc/influxdb/key.pem"
|
||||
- "../../../.ci/docker-compose-file/influxdb/setup-v1.sh:/docker-entrypoint-initdb.d/setup-v1.sh"
|
||||
restart: always
|
||||
command:
|
||||
- influxd
|
||||
- --tls-cert=/etc/influxdb/cert.pem
|
||||
- --tls-key=/etc/influxdb/key.pem
|
||||
networks:
|
||||
- emqx_test
|
||||
|
||||
emqx_1:
|
||||
container_name: emqx_1
|
||||
image: emqx/emqx-enterprise:${EMQX_TAG}
|
||||
hostname: emqx_1.emqx.influx.io
|
||||
ports:
|
||||
- "1883:1883"
|
||||
- "18083:18083"
|
||||
environment:
|
||||
EMQX_LOG__CONSOLE_HANDLER__LEVEL: warning
|
||||
EMQX_NODE_NAME: "emqx@emqx_1.emqx.influx.io"
|
||||
volumes:
|
||||
- "${PWD}/emqx.conf:/opt/emqx/etc/emqx.conf"
|
||||
- "${PWD}/influx-bridge.conf:/opt/emqx/etc/influx-bridge.conf"
|
||||
networks:
|
||||
- emqx_test
|
||||
|
||||
emqx_2:
|
||||
container_name: emqx_2
|
||||
image: emqx/emqx-enterprise:${EMQX_TAG}
|
||||
hostname: emqx_1.emqx.influx.io
|
||||
environment:
|
||||
EMQX_LOG__CONSOLE_HANDLER__LEVEL: warning
|
||||
EMQX_NODE_NAME: "emqx@emqx_2.emqx.influx.io"
|
||||
ports:
|
||||
- "1884:1883"
|
||||
- "18084:18083"
|
||||
volumes:
|
||||
- "${PWD}/emqx.conf:/opt/emqx/etc/emqx.conf"
|
||||
- "${PWD}/influx-bridge.conf:/opt/emqx/etc/influx-bridge.conf"
|
||||
networks:
|
||||
- emqx_test
|
||||
|
||||
networks:
|
||||
emqx_test:
|
||||
driver: bridge
|
||||
name: emqx.influx.io
|
||||
ipam:
|
||||
driver: default
|
||||
config:
|
||||
- subnet: 172.100.240.0/24
|
||||
gateway: 172.100.240.1
|
||||
- subnet: 2001:3200:3110::/64
|
||||
gateway: 2001:3200:3210::1
|
|
@ -0,0 +1,94 @@
|
|||
## NOTE:
|
||||
## Configs in this file might be overridden by:
|
||||
## 1. Environment variables which start with 'EMQX_' prefix
|
||||
## 2. File $EMQX_NODE__DATA_DIR/configs/cluster-override.conf
|
||||
## 3. File $EMQX_NODE__DATA_DIR/configs/local-override.conf
|
||||
##
|
||||
## The *-override.conf files are overwritten at runtime when changes
|
||||
## are made from EMQX dashboard UI, management HTTP API, or CLI.
|
||||
## All configuration details can be found in emqx.conf.example
|
||||
|
||||
node {
|
||||
cookie = "influx"
|
||||
data_dir = "data"
|
||||
}
|
||||
|
||||
log {
|
||||
file_handlers.default {
|
||||
level = warning
|
||||
file = "log/emqx.log"
|
||||
}
|
||||
}
|
||||
|
||||
cluster {
|
||||
name = emqxcl
|
||||
discovery_strategy = manual
|
||||
}
|
||||
|
||||
|
||||
listeners.tcp.default {
|
||||
bind = "0.0.0.0:1883"
|
||||
max_connections = 1024000
|
||||
}
|
||||
|
||||
listeners.ssl.default {
|
||||
bind = "0.0.0.0:8883"
|
||||
max_connections = 512000
|
||||
ssl_options {
|
||||
keyfile = "etc/certs/key.pem"
|
||||
certfile = "etc/certs/cert.pem"
|
||||
cacertfile = "etc/certs/cacert.pem"
|
||||
}
|
||||
}
|
||||
|
||||
listeners.ws.default {
|
||||
bind = "0.0.0.0:8083"
|
||||
max_connections = 1024000
|
||||
websocket.mqtt_path = "/mqtt"
|
||||
}
|
||||
|
||||
listeners.wss.default {
|
||||
bind = "0.0.0.0:8084"
|
||||
max_connections = 512000
|
||||
websocket.mqtt_path = "/mqtt"
|
||||
ssl_options {
|
||||
keyfile = "etc/certs/key.pem"
|
||||
certfile = "etc/certs/cert.pem"
|
||||
cacertfile = "etc/certs/cacert.pem"
|
||||
}
|
||||
}
|
||||
|
||||
# listeners.quic.default {
|
||||
# enabled = true
|
||||
# bind = "0.0.0.0:14567"
|
||||
# max_connections = 1024000
|
||||
# keyfile = "etc/certs/key.pem"
|
||||
# certfile = "etc/certs/cert.pem"
|
||||
#}
|
||||
|
||||
dashboard {
|
||||
listeners.http {
|
||||
bind = 18083
|
||||
}
|
||||
default_username = "admin"
|
||||
default_password = "public"
|
||||
}
|
||||
|
||||
authorization {
|
||||
deny_action = ignore
|
||||
no_match = allow
|
||||
cache = { enable = true }
|
||||
sources = [
|
||||
{
|
||||
type = file
|
||||
enable = true
|
||||
# This file is immutable to EMQX.
|
||||
# Once new rules are created from dashboard UI or HTTP API,
|
||||
# the file 'data/authz/acl.conf' is used instead of this one
|
||||
path = "etc/acl.conf"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
include emqx-enterprise.conf
|
||||
include influx-bridge.conf
|
|
@ -0,0 +1,46 @@
|
|||
bridges {
|
||||
"influxdb_api_v2" {
|
||||
test {
|
||||
bucket = "mqtt"
|
||||
enable = true
|
||||
org = "emqx"
|
||||
precision = "ms"
|
||||
resource_opts {
|
||||
async_inflight_window = 100
|
||||
auto_restart_interval = "60s"
|
||||
batch_size = 100
|
||||
batch_time = "10ms"
|
||||
health_check_interval = "15s"
|
||||
max_queue_bytes = "1GB"
|
||||
query_mode = "sync"
|
||||
request_timeout = "15s"
|
||||
start_after_created = "true"
|
||||
start_timeout = "5s"
|
||||
worker_pool_size = 4
|
||||
}
|
||||
server = "influxdb.emqx.influx.io:8086"
|
||||
ssl {
|
||||
ciphers = []
|
||||
depth = 10
|
||||
enable = false
|
||||
reuse_sessions = true
|
||||
secure_renegotiate = true
|
||||
user_lookup_fun = "emqx_tls_psk:lookup"
|
||||
verify = "verify_peer"
|
||||
versions = ["tlsv1.3", "tlsv1.2", "tlsv1.1", "tlsv1"]
|
||||
}
|
||||
token = "abcdefg"
|
||||
write_syntax = "mqtt,clientid=${clientid} value=${payload.value}"
|
||||
}
|
||||
}
|
||||
}
|
||||
log {
|
||||
console_handler {enable = true, level = "warning"}
|
||||
file_handlers {
|
||||
default {
|
||||
enable = false
|
||||
file = "log/emqx.log"
|
||||
level = "warning"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,34 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
NET='emqx.influx.io'
|
||||
NODE1="emqx@emqx_1.$NET"
|
||||
NODE2="emqx@emqx_2.$NET"
|
||||
export EMQX_TAG='5.0.0-rc.1-g92797d72'
|
||||
|
||||
cd -P -- "$(dirname -- "${BASH_SOURCE[0]}")"
|
||||
|
||||
docker rm -f emqx_1 emqx_2 influxdb_server
|
||||
docker-compose up -d
|
||||
|
||||
wait_limit=60
|
||||
wait_for_emqx() {
|
||||
container="$1"
|
||||
wait_limit="$2"
|
||||
wait_sec=0
|
||||
while ! docker exec "$container" emqx_ctl status >/dev/null 2>&1; do
|
||||
wait_sec=$(( wait_sec + 1 ))
|
||||
if [ $wait_sec -gt "$wait_limit" ]; then
|
||||
echo "timeout wait for EMQX"
|
||||
exit 1
|
||||
fi
|
||||
echo -n '.'
|
||||
sleep 1
|
||||
done
|
||||
}
|
||||
|
||||
wait_for_emqx emqx_1 30
|
||||
wait_for_emqx emqx_2 30
|
||||
|
||||
echo
|
||||
|
||||
docker exec emqx_1 emqx_ctl cluster join "$NODE2"
|
Loading…
Reference in New Issue