This repository contains a command tool hdt
, which can be used to set up a HStreamDB Cluster with docker.
Quick start
Check environment
-
Start HStreamDB requires an operating system kernel version greater than at least Linux 4.14. Check with command:
uname -r
-
Make sure docker is installed.
-
Make sure that the log-in user has sudo
execute privileges,and configure sudo
without password.
-
For nodes which deploy HStore
instances, mount the data disk to /mnt/data*/
.
- "*" Matching incremental numbers, start from zero
- one disk should mount to one directory. e.g. if we have two data disks
/dev/vdb
and /dev/vdc
, then /dev/vdb
should mount to /mnt/data0
and /dev/vdc
should mount to /mnt/data1
Installation
Binaries are available here: https://github.com/hstreamdb/deployment-tool/releases
Generate configuration template && init local environment
./hdt init
The current directory structure will be as follows after running the init
command:
├── hdt
└── template
├── config.yaml
├── grafana
│ ├── dashboards
│ └── datasources
├── prometheus
└── script
Update config.yaml
Update the config.yaml
file with cluster-related information. The configuration in the config.yaml
template will deploy a cluster on 3 nodes, each consisting of a HServer
instance, a HStore
instance, a Meta-Store
instance and associated monitoring components. Prometheus
、Grafana
and other monitor components will be deploy on a separate node.
To use this configuration file, just update the host information of the node and the ssh key-pair path. The final configuration file may looks like:
global:
user: "root"
key_path: "~/.ssh/hstream.pem"
ssh_port: 22
monitor:
node_exporter_port: 9100
cadvisor_port: 7000
grafana_disable_login: true
hserver:
- host: 172.24.47.173
- host: 172.24.47.174
- host: 172.24.47.175
hstore:
- host: 172.24.47.173
enable_admin: true
- host: 172.24.47.174
- host: 172.24.47.175
meta_store:
- host: 172.24.47.173
- host: 172.24.47.174
- host: 172.24.47.175
http_server:
- host: 172.24.47.172
prometheus:
- host: 172.24.47.172
grafana:
- host: 172.24.47.172
hstream_exporter:
- host: 172.24.47.172
Set up cluster
./hdt start
Remove cluster
./hdt remove