From cfb4f891a8eea92d152ea0c5d4ecd6e8d545f800 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Mon, 14 Apr 2014 12:09:32 -0700 Subject: [PATCH] website: intro add basic architecture --- website/source/intro/index.html.markdown | 29 ++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/website/source/intro/index.html.markdown b/website/source/intro/index.html.markdown index 452f229b0e..517eaf9986 100644 --- a/website/source/intro/index.html.markdown +++ b/website/source/intro/index.html.markdown @@ -37,6 +37,35 @@ key features: means users of Consul do not have to worry about building additional layers of abstraction to grow to multiple regions. +## Basic Architecture of Consul + +Consul is a distributed, highly available system. There is an +[in-depth architecture overview](/docs/internals/architecture.html) available, +but this section will cover the basics so you can get an understanding +of how Consul works. This section will purposely omit details to quickly +provide an overview the architecture. + +Every node that provides services to Consul runs a _Consul agent_. Running +an agent is not required for discovering other services or getting/setting +key/value data. The agent is responsible for health checking the services +on the node as well as the node itself. + +The agents talk to one or more _Consul servers_. The Consul servers are +where data is stored and replicated. The servers themselves elect a leader. +While Consul can function with one server, 3 to 5 is recommended to avoid +data loss scenarios. A cluster of Consul servers is recommended for each +datacenter. + +Components of your infrastructure that need to discover other services +or nodes can query any of the Consul servers _or_ any of the Consul agents. +The agents forward queries to the servers automatically. + +Each datacenter runs a cluster of Consul servers. When a cross-datacenter +service discovery or configuration request is made, the local Consul servers +forward the request to the remote datacenter and return the result. + +## Next Steps + See the page on [how Consul compares to other software](/intro/vs/index.html) to see just how it fits into your existing infrastructure. Or continue onwards with the [getting started guide](/intro/getting-started/install.html) to get