Skip to content

Commit

Permalink
stable version can do basic tests
Browse files Browse the repository at this point in the history
  • Loading branch information
freddie committed Dec 5, 2019
1 parent 0fe8765 commit cccc3a8
Show file tree
Hide file tree
Showing 23 changed files with 687 additions and 251 deletions.
6 changes: 3 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
*/.DStore
docker/data/
docker/logs/
nebula/.hgignore
docker/secret/*
nebula/store/
pom.xml
pom.xml.asc
*.class
/classes/
nebula/target
/target/
/checkouts/
.lein-deps-sum
.lein-repl-history
.lein-plugins/
.lein-failures
.nrepl-port
.cpcache/
.cpcache/
18 changes: 10 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,13 @@
Jepsen testing framework for Nebula Graph

## Get started
- Run dockers
change directory to ```nebula-jepsen/```
run ```./start.sh```
wait until all nodes started and you are now in the container of control node.
follow the instructions showed on welcome page like below:
- Run the test
```cd nebula```
```lein run test```
- Run docker containers
- Change directory to ```nebula-jepsen/```, run ```./up.sh``` to start
- A space named 'test' will be automatically created, with default setting of ```partition_num=5, replica_factor=3```, can be changed by editting ```nebula-jepsen/docker/create_space.txt```
- Wait until all nodes started and you are now in the container of control node.


- Run the test
```cd nebula```
```lein run test ```

12 changes: 12 additions & 0 deletions docker/Dockerfile.node
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
FROM vesoft/nebula-storaged:nightly

COPY run.sh /
COPY start-stop-daemon /usr/bin/

RUN yum install -y openssh* sudo net-tools wget curl vim iptables initscripts make gcc gcc-c++ ncurses-devel

COPY ./conf/sshd_config /etc/ssh/sshd_config

RUN service sshd restart

ENTRYPOINT ["/run.sh"]
58 changes: 58 additions & 0 deletions docker/conf/1/nebula-storaged.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
########## basics ##########
# Whether to run as a daemon process
--daemonize=true
# The file to host the process id
--pid_file=/root/pids/nebula-storaged.pid

########## logging ##########
# The directory to host logging files, which must already exists
--log_dir=/logs
# Log level, 0, 1, 2, 3 for INFO, WARNING, ERROR, FATAL respectively
--minloglevel=0
# Verbose log level, 1, 2, 3, 4, the higher of the level, the more verbose of the logging
--v=0
# Maximum seconds to buffer the log messages
--logbufsecs=0

########## networking ##########
# Meta server address
--meta_server_addrs=172.28.1.1:45500
# Local ip
--local_ip=172.28.2.1
# Storage daemon listening port
--port=44500
# HTTP service ip
--ws_ip=172.28.2.1
# HTTP service port
--ws_http_port=12000
# HTTP2 service port
--ws_h2_port=12002

########## storage ##########
# Root data path, multiple paths should be splitted by comma.
# One path per instance, if --engine_type is `rocksdb'
--data_path=/data/storage
# The type of part manager, [memory | meta]
--part_man_type=memory
# The default reserved bytes for one batch operation
--rocksdb_batch_size=4096
# The default block cache size used in BlockBasedTable.
# The unit is MB.
--rocksdb_block_cache=4
# The type of storage engine, `rocksdb', `memory', etc.
--engine_type=rocksdb
# The type of part, `simple', `consensus'...
--part_type=simple

############## rocksdb Options ##############
--rocksdb_disable_wal=true
# rocksdb DBOptions in json, each name and value of option is a string, given as "option_name":"option_value" separated by comma
--rocksdb_db_options={}
# rocksdb ColumnFamilyOptions in json, each name and value of option is string, given as "option_name":"option_value" separated by comma
--rocksdb_column_family_options={}
# rocksdb BlockBasedTableOptions in json, each name and value of option is string, given as "option_name":"option_value" separated by comma
--rocksdb_block_based_table_options={}

--storage_kv_mode=true
--raft_heartbeat_interval_secs=1
--load_data_interval_secs=5
58 changes: 58 additions & 0 deletions docker/conf/2/nebula-storaged.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
########## basics ##########
# Whether to run as a daemon process
--daemonize=true
# The file to host the process id
--pid_file=/root/pids/nebula-storaged.pid

########## logging ##########
# The directory to host logging files, which must already exists
--log_dir=/logs
# Log level, 0, 1, 2, 3 for INFO, WARNING, ERROR, FATAL respectively
--minloglevel=0
# Verbose log level, 1, 2, 3, 4, the higher of the level, the more verbose of the logging
--v=0
# Maximum seconds to buffer the log messages
--logbufsecs=0

########## networking ##########
# Meta server address
--meta_server_addrs=172.28.1.1:45500
# Local ip
--local_ip=172.28.2.2
# Storage daemon listening port
--port=44500
# HTTP service ip
--ws_ip=172.28.2.2
# HTTP service port
--ws_http_port=12000
# HTTP2 service port
--ws_h2_port=12002

########## storage ##########
# Root data path, multiple paths should be splitted by comma.
# One path per instance, if --engine_type is `rocksdb'
--data_path=/data/storage
# The type of part manager, [memory | meta]
--part_man_type=memory
# The default reserved bytes for one batch operation
--rocksdb_batch_size=4096
# The default block cache size used in BlockBasedTable.
# The unit is MB.
--rocksdb_block_cache=4
# The type of storage engine, `rocksdb', `memory', etc.
--engine_type=rocksdb
# The type of part, `simple', `consensus'...
--part_type=simple

############## rocksdb Options ##############
--rocksdb_disable_wal=true
# rocksdb DBOptions in json, each name and value of option is a string, given as "option_name":"option_value" separated by comma
--rocksdb_db_options={}
# rocksdb ColumnFamilyOptions in json, each name and value of option is string, given as "option_name":"option_value" separated by comma
--rocksdb_column_family_options={}
# rocksdb BlockBasedTableOptions in json, each name and value of option is string, given as "option_name":"option_value" separated by comma
--rocksdb_block_based_table_options={}

--storage_kv_mode=true
--raft_heartbeat_interval_secs=1
--load_data_interval_secs=5
58 changes: 58 additions & 0 deletions docker/conf/3/nebula-storaged.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
########## basics ##########
# Whether to run as a daemon process
--daemonize=true
# The file to host the process id
--pid_file=/root/pids/nebula-storaged.pid

########## logging ##########
# The directory to host logging files, which must already exists
--log_dir=/logs
# Log level, 0, 1, 2, 3 for INFO, WARNING, ERROR, FATAL respectively
--minloglevel=0
# Verbose log level, 1, 2, 3, 4, the higher of the level, the more verbose of the logging
--v=0
# Maximum seconds to buffer the log messages
--logbufsecs=0

########## networking ##########
# Meta server address
--meta_server_addrs=172.28.1.1:45500
# Local ip
--local_ip=172.28.2.3
# Storage daemon listening port
--port=44500
# HTTP service ip
--ws_ip=172.28.2.3
# HTTP service port
--ws_http_port=12000
# HTTP2 service port
--ws_h2_port=12002

########## storage ##########
# Root data path, multiple paths should be splitted by comma.
# One path per instance, if --engine_type is `rocksdb'
--data_path=/data/storage
# The type of part manager, [memory | meta]
--part_man_type=memory
# The default reserved bytes for one batch operation
--rocksdb_batch_size=4096
# The default block cache size used in BlockBasedTable.
# The unit is MB.
--rocksdb_block_cache=4
# The type of storage engine, `rocksdb', `memory', etc.
--engine_type=rocksdb
# The type of part, `simple', `consensus'...
--part_type=simple

############## rocksdb Options ##############
--rocksdb_disable_wal=true
# rocksdb DBOptions in json, each name and value of option is a string, given as "option_name":"option_value" separated by comma
--rocksdb_db_options={}
# rocksdb ColumnFamilyOptions in json, each name and value of option is string, given as "option_name":"option_value" separated by comma
--rocksdb_column_family_options={}
# rocksdb BlockBasedTableOptions in json, each name and value of option is string, given as "option_name":"option_value" separated by comma
--rocksdb_block_based_table_options={}

--storage_kv_mode=true
--raft_heartbeat_interval_secs=1
--load_data_interval_secs=5
58 changes: 58 additions & 0 deletions docker/conf/4/nebula-storaged.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
########## basics ##########
# Whether to run as a daemon process
--daemonize=true
# The file to host the process id
--pid_file=/root/pids/nebula-storaged.pid

########## logging ##########
# The directory to host logging files, which must already exists
--log_dir=/logs
# Log level, 0, 1, 2, 3 for INFO, WARNING, ERROR, FATAL respectively
--minloglevel=0
# Verbose log level, 1, 2, 3, 4, the higher of the level, the more verbose of the logging
--v=0
# Maximum seconds to buffer the log messages
--logbufsecs=0

########## networking ##########
# Meta server address
--meta_server_addrs=172.28.1.1:45500
# Local ip
--local_ip=172.28.2.4
# Storage daemon listening port
--port=44500
# HTTP service ip
--ws_ip=172.28.2.4
# HTTP service port
--ws_http_port=12000
# HTTP2 service port
--ws_h2_port=12002

########## storage ##########
# Root data path, multiple paths should be splitted by comma.
# One path per instance, if --engine_type is `rocksdb'
--data_path=/data/storage
# The type of part manager, [memory | meta]
--part_man_type=memory
# The default reserved bytes for one batch operation
--rocksdb_batch_size=4096
# The default block cache size used in BlockBasedTable.
# The unit is MB.
--rocksdb_block_cache=4
# The type of storage engine, `rocksdb', `memory', etc.
--engine_type=rocksdb
# The type of part, `simple', `consensus'...
--part_type=simple

############## rocksdb Options ##############
--rocksdb_disable_wal=true
# rocksdb DBOptions in json, each name and value of option is a string, given as "option_name":"option_value" separated by comma
--rocksdb_db_options={}
# rocksdb ColumnFamilyOptions in json, each name and value of option is string, given as "option_name":"option_value" separated by comma
--rocksdb_column_family_options={}
# rocksdb BlockBasedTableOptions in json, each name and value of option is string, given as "option_name":"option_value" separated by comma
--rocksdb_block_based_table_options={}

--storage_kv_mode=true
--raft_heartbeat_interval_secs=1
--load_data_interval_secs=5
58 changes: 58 additions & 0 deletions docker/conf/5/nebula-storaged.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
########## basics ##########
# Whether to run as a daemon process
--daemonize=true
# The file to host the process id
--pid_file=/root/pids/nebula-storaged.pid

########## logging ##########
# The directory to host logging files, which must already exists
--log_dir=/logs
# Log level, 0, 1, 2, 3 for INFO, WARNING, ERROR, FATAL respectively
--minloglevel=0
# Verbose log level, 1, 2, 3, 4, the higher of the level, the more verbose of the logging
--v=0
# Maximum seconds to buffer the log messages
--logbufsecs=0

########## networking ##########
# Meta server address
--meta_server_addrs=172.28.1.1:45500
# Local ip
--local_ip=172.28.2.5
# Storage daemon listening port
--port=44500
# HTTP service ip
--ws_ip=172.28.2.5
# HTTP service port
--ws_http_port=12000
# HTTP2 service port
--ws_h2_port=12002

########## storage ##########
# Root data path, multiple paths should be splitted by comma.
# One path per instance, if --engine_type is `rocksdb'
--data_path=/data/storage
# The type of part manager, [memory | meta]
--part_man_type=memory
# The default reserved bytes for one batch operation
--rocksdb_batch_size=4096
# The default block cache size used in BlockBasedTable.
# The unit is MB.
--rocksdb_block_cache=4
# The type of storage engine, `rocksdb', `memory', etc.
--engine_type=rocksdb
# The type of part, `simple', `consensus'...
--part_type=simple

############## rocksdb Options ##############
--rocksdb_disable_wal=true
# rocksdb DBOptions in json, each name and value of option is a string, given as "option_name":"option_value" separated by comma
--rocksdb_db_options={}
# rocksdb ColumnFamilyOptions in json, each name and value of option is string, given as "option_name":"option_value" separated by comma
--rocksdb_column_family_options={}
# rocksdb BlockBasedTableOptions in json, each name and value of option is string, given as "option_name":"option_value" separated by comma
--rocksdb_block_based_table_options={}

--storage_kv_mode=true
--raft_heartbeat_interval_secs=1
--load_data_interval_secs=5
Loading

0 comments on commit cccc3a8

Please sign in to comment.