Skip to content

Conversation

@ewoutp
Copy link
Contributor

@ewoutp ewoutp commented Jun 22, 2018

Docs intended to describe the architecture highlights and some deep dives into "cluster of Starters".

@ewoutp ewoutp self-assigned this Jun 22, 2018
@ewoutp ewoutp requested review from neunhoef and sleto-it June 22, 2018 14:12
Copy link
Contributor

@neunhoef neunhoef left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Only typos. I did not understand one of the sentences.

## What does the Starter do

The ArangoDB Starter is a program used to create ArangoDB database deployments
on bare-metal (or virtual machines) with easy.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

easy -> ease

ArangoDB deployments with ArangoDB version `3.2.<something>` as well
as deployments with ArangoDB version `3.3.<something>`.

It also means that you can update the Starter independent from the ArangoDB
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

independently

1. Active failover
1. Cluster

Note: Datacenter replication is an option for the the `cluster` deployment mode.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove one "the"

The Starter can run as normal processes directly on the host operating system,
or as containers in a docker runtime.

When running as normal process directly on the host operatoring system,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"operatoring" -> "operating"


## Starter data-directory

The Starters use a single directory with a well known structure to store
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Starters use" -> "Starter uses"

The Starters running on those machines need to know about each others existence.
In order to do so, the Starters form a "cluster" of their own (not to be confused
with the ArangoDB database cluster).
This cluster of Starters is form from the values given to the `--starter.join`
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"form" -> "formed"

is aborted and all Starters go directly to the `running` phase described below.
1. All Starters create a unique ID
1. The list of `--starter.join` arguments is sorted
1. All Starters compare their unique ID with the ID their request from the first server
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I do not understand this sentence.

1. All Starters create a unique ID
1. The list of `--starter.join` arguments is sorted
1. All Starters compare their unique ID with the ID their request from the first server
in the sorter `--starter.join` list.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"sorter" -> "sorted"

1. The `bootstrap slaves` keep asking the `bootstrap master` about its state.
As soon as they receive confirmation to do so, they also continue with the `running` phase.

In the `running` all Starters launch the desired servers and keeps monitoring those
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

running -> running phase


In the `running` all Starters launch the desired servers and keeps monitoring those
servers. Once a functional agency is detected, all Starters will try to be
`running master` by trying to write their ID in a well know location in the agency.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"know" -> "known"

@ewoutp ewoutp merged commit 807e834 into master Jun 25, 2018
@ewoutp ewoutp deleted the documentation/starter-architecture branch June 25, 2018 17:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants