Skip to content

Commit 647717d

Browse files
maxkernbachsleto-it
authored andcommitted
Doc: move deployment + upgrade pages from arangodb/arangodb to this repo (#182)
1 parent 6e58749 commit 647717d

File tree

5 files changed

+448
-0
lines changed

5 files changed

+448
-0
lines changed
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
Using the ArangoDB Starter
2+
==========================
3+
4+
This section describes how to start an Active Failover setup the tool [_Starter_](../../Programs/Starter/README.md)
5+
(the _arangodb_ binary program).
6+
7+
Local Tests
8+
-----------
9+
10+
If you want to start a local _Active Failover_ setup quickly, use the `--starter.local`
11+
option of the _Starter_. This will start all servers within the context of a single
12+
starter process:
13+
14+
```bash
15+
arangodb --starter.local --starter.mode=activefailover --starter.data-dir=./localdata
16+
```
17+
18+
**Note:** When you restart the _Starter_, it remembers the original `--starter.local` flag.
19+
20+
Multiple Machines
21+
-----------------
22+
23+
If you want to start an Active Failover setup using the _Starter_, use the `--starter.mode=activefailover`
24+
option of the _Starter_. A 3 "machine" _Agency_ is started as well as 2 single servers,
25+
that perform asynchronous replication and failover:
26+
27+
```bash
28+
arangodb --starter.mode=activefailover --server.storage-engine=rocksdb --starter.data-dir=./data --starter.join A,B,C
29+
```
30+
31+
Run the above command on machine A, B & C.
32+
33+
The _Starter_ will decide on which 2 machines to run a single server instance.
34+
To override this decision (only valid while bootstrapping), add a
35+
`--cluster.start-single=false` to the machine where the single server
36+
instance should _not_ be started.
37+
38+
Once all the processes started by the _Starter_ are up and running, and joined the
39+
Active Failover setup (this may take a while depending on your system), the _Starter_ will inform
40+
you where to connect the Active Failover from a Browser, shell or your program.
41+
42+
For a full list of options of the _Starter_ please refer to [this](../../Programs/Starter/Options.md)
43+
section.
44+
45+
Using the ArangoDB Starter in Docker
46+
------------------------------------
47+
48+
The _Starter_ can also be used to launch an Active Failover setup based on _Docker_
49+
containers. To do this, you can use the normal Docker arguments, combined with
50+
`--starter.mode=activefailover`:
51+
52+
```bash
53+
export IP=<IP of docker host>
54+
docker volume create arangodb
55+
docker run -it --name=adb --rm -p 8528:8528 \
56+
-v arangodb:/data \
57+
-v /var/run/docker.sock:/var/run/docker.sock \
58+
arangodb/arangodb-starter \
59+
--starter.address=$IP \
60+
--starter.mode=activefailover \
61+
--starter.join=A,B,C
62+
```
63+
64+
Run the above command on machine A, B & C.
65+
66+
The _Starter_ will decide on which 2 machines to run a single server instance.
67+
To override this decision (only valid while bootstrapping), add a
68+
`--cluster.start-single=false` to the machine where the single server
69+
instance should _not_ be started.
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
Deploying using the ArangoDB Starter
2+
====================================
3+
4+
**Single Instance:**
5+
6+
- [_Starter_ using processes](../SingleInstance/UsingTheStarter.md)
7+
- [_Starter_ using Docker containers](../SingleInstance/UsingTheStarter.md#using-the-arangodb-starter-in-docker)
8+
9+
**Active Failover:**
10+
11+
- [_Starter_ using processes](../ActiveFailover/UsingTheStarter.md)
12+
- [_Starter_ using Docker containers](../ActiveFailover/UsingTheStarter.md#using-the-arangodb-starter-in-docker)
13+
14+
**Cluster:**
15+
16+
- [_Starter_ using processes](../Cluster/UsingTheStarter.md)
17+
- [_Starter_ using Docker containers](../Cluster/UsingTheStarter.md#using-the-arangodb-starter-in-docker)
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
Using the ArangoDB Starter
2+
==========================
3+
4+
This section describes how to start a Cluster using the tool [_Starter_](../../Programs/Starter/README.md)
5+
(the _arangodb_ binary program).
6+
7+
Local Tests
8+
-----------
9+
10+
If you only want a local test Cluster, you can run a single _Starter_ with the
11+
`--starter.local` argument. It will start a 3 "machine" Cluster on your local PC:
12+
13+
```
14+
arangodb --starter.local --starter.data-dir=./localdata
15+
```
16+
17+
**Note:** a local Cluster is intended only for test purposes since a failure of
18+
a single PC will bring down the entire Cluster.
19+
20+
Multiple Machines
21+
-----------------
22+
23+
If you want to start a Cluster using the _Starter_, you can use the following command:
24+
25+
```
26+
arangodb --server.storage-engine=rocksdb --starter.data-dir=./data --starter.join A,B,C
27+
```
28+
29+
Run the above command on machine A, B & C.
30+
31+
Once all the processes started by the _Starter_ are up and running, and joined the
32+
Cluster (this may take a while depending on your system), the _Starter_ will inform
33+
you where to connect the Cluster from a Browser, shell or your program.
34+
35+
For a full list of options of the _Starter_ please refer to [this](../../Programs/Starter/Options.md)
36+
section.
37+
38+
Using the ArangoDB Starter in Docker
39+
------------------------------------
40+
41+
The _Starter_ can also be used to launch Clusters based on _Docker_ containers:
42+
43+
```bash
44+
export IP=<IP of docker host>
45+
docker volume create arangodb
46+
docker run -it --name=adb --rm -p 8528:8528 \
47+
-v arangodb:/data \
48+
-v /var/run/docker.sock:/var/run/docker.sock \
49+
arangodb/arangodb-starter \
50+
--starter.address=$IP \
51+
--starter.join=A,B,C
52+
```
53+
54+
Run the above command on machine A, B & C.
55+
56+
Under the Hood
57+
--------------
58+
The first `arangodb` you ran will become the _master_ of your _Starter_
59+
setup, the other `arangodb` instances will become the _slaves_ of your _Starter_
60+
setup. Please do not confuse the terms _master_ and _slave_ above with the master/slave
61+
technology of ArangoDB. The terms above refers to the _Starter_ setup.
62+
63+
The _Starter_ _master_ determines which ArangoDB server processes to launch on which
64+
_Starter_ _slave_, and how they should communicate.
65+
66+
It will then launch the server processes and monitor them. Once it has detected
67+
that the setup is complete you will get the prompt.
68+
69+
The _Starter_ _master_ will save the setup for subsequent starts.
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
Using the ArangoDB Starter
2+
==========================
3+
4+
This section describes how to start an ArangoDB stand-alone instance using the tool
5+
[_Starter_](../../Programs/Starter/README.md) (the _arangodb_ binary program).
6+
7+
Local Start
8+
-----------
9+
10+
If you want to start a stand-alone instance of ArangoDB, use the `--starter.mode=single`
11+
option of the _Starter_:
12+
13+
```bash
14+
arangodb --starter.mode=single
15+
```
16+
17+
Using the ArangoDB Starter in Docker
18+
------------------------------------
19+
20+
The _Starter_ can also be used to launch a stand-alone instance based on _Docker_
21+
containers:
22+
23+
```bash
24+
export IP=<IP of docker host>
25+
docker volume create arangodb
26+
docker run -it --name=adb --rm -p 8528:8528 \
27+
-v arangodb:/data \
28+
-v /var/run/docker.sock:/var/run/docker.sock \
29+
arangodb/arangodb-starter \
30+
--starter.address=$IP \
31+
--starter.mode=single
32+
```

0 commit comments

Comments
 (0)