Skip to content

Commit

Permalink
update document for getting_started
Browse files Browse the repository at this point in the history
  • Loading branch information
absolute8511 committed May 9, 2018
1 parent 6d6bd08 commit 40b2aa6
Showing 1 changed file with 77 additions and 1 deletion.
78 changes: 77 additions & 1 deletion doc/getting_started.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Build the rocksdb
<pre>
git clone https://github.com/absolute8511/rocksdb.git
cd rocksdb
USE_SSE=1 make static_lib
make static_lib
</pre>

Install the dependency:
Expand Down Expand Up @@ -44,10 +44,86 @@ If you want package the binary release run the scripts
## Deploy

* Deploy the rsync daemon which is needed on all server node to transfer the snapshot data for raft

Example config for rsync as below, and start rsync as daemon using `sudo rsync --daemon`
```
pid file = /var/run/rsyncd.pid
port = 873
log file = /var/log/rsync.log
list = yes
hosts allow= *
max connections = 1024
log format = %t %a %m %f %b
syslog facility = local3
timeout = 300
# module name must be exactly same as the data_rsync_module in zankv
[zankv]
## this path must be exactly same as the data_dir in zankv node
path = /data/zankv/
read only = yes
list=yes
log file = /data/logs/rsyncd/zankv.log
exclude = /data/zankv/myid myid /zankv/myid
```

* Deploy etcd cluster which is needed for the meta data for the namespaces

Please refer the etcd documents.

* Deploy the placedriver which is used for data placement: `placedriver -config=/path/to/config`

Example config as below:
```
## <addr>:<port> to listen on for HTTP clients
http_address = "0.0.0.0:13801"
## the network interface for broadcast, the ip will be detected automatically.
broadcast_interface = "eth0"
cluster_id = "test-default"
## the etcd cluster ip list
cluster_leadership_addresses = "http://127.0.0.1:2379,http://127.0.0.2:2379"
## the detail of the log, larger number means more details
log_level = 2
## if empty, use the default flag value in glog
log_dir = "/data/logs/zankv"
## the time period (in hour) that the balance is allowed.
balance_interval = ["1", "23"]
auto_balance_and_migrate = true
```

* Deploy the zankv for data storage server `zankv -config=/path/to/config`

Example config for zankv as below:
```
{
"server_conf": {
"broadcast_interface":"eth0",
"cluster_id":"test-default",
"etcd_cluster_addresses":"http://127.0.0.1:2379,http://127.0.0.2:2379",
"data_dir":"/data/zankv",
"data_rsync_module":"zankv",
"redis_api_port": 13381,
"http_api_port": 13380,
"grpc_api_port": 13382,
"election_tick": 30,
"tick_ms": 200,
"local_raft_addr": "http://0.0.0.0:13379",
"rocksdb_opts": {
"block_cache":0,
"use_shared_cache":true,
"use_shared_rate_limiter":true,
"rate_bytes_per_sec":50000000,
"cache_index_and_filter_blocks": false
}
}
}
```

## API

placedriver has several HTTP APIs to manager the namespace
Expand Down

0 comments on commit 40b2aa6

Please sign in to comment.