diff options
author | Drew Blessing <drew@gitlab.com> | 2016-04-22 13:18:06 -0500 |
---|---|---|
committer | Drew Blessing <drew@gitlab.com> | 2016-04-22 13:18:06 -0500 |
commit | 34ea1d2cfe84e6625672e1ba20d69cb3afcc3008 (patch) | |
tree | 54fc65610d25c7476e2b6b82e61dc040eb6c109f /doc/administration/high_availability/README.md | |
parent | c38f2645eddfcef0a26f8138665e5f7757ba9ebb (diff) | |
download | gitlab-ce-34ea1d2cfe84e6625672e1ba20d69cb3afcc3008.tar.gz |
New HA docs [ci skip]
Diffstat (limited to 'doc/administration/high_availability/README.md')
-rw-r--r-- | doc/administration/high_availability/README.md | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/doc/administration/high_availability/README.md b/doc/administration/high_availability/README.md new file mode 100644 index 00000000000..43d85ffb775 --- /dev/null +++ b/doc/administration/high_availability/README.md @@ -0,0 +1,35 @@ +# High Availability + +GitLab supports several different types of clustering and high-availability. +The solution you choose will be based on the level of scalability and +availability you require. The easiest solutions are scalable, but not necessarily +highly available. + +## Architecture + +### Active/Passive + +For pure high-availability/failover with no scaling you can use an +active/passive configuration. This utilizes DRBD (Distributed Replicated +Block Device) to keep all data in sync. DRBD requires a low latency link to +remain in sync. It is not advisable to attempt to run DRBD between data centers +or in different cloud availability zones. + +Components/Servers Required: + +- 2 servers/virtual machines (one active/one passive) + +### Active/Active + +This architecture scales easily because all application servers handle +user requests simultaneously. The database, Redis, and GitLab application are +all deployed on separate servers. The configuration is **only** highly-available +if the database, Redis and storage are also configured as such. + +**Steps to configure active/active:** + +1. [Configure the database](database.md) +1. [Configure Redis](redis.md) +1. [Configure NFS](nfs.md) +1. [Configure the GitLab application servers](gitlab.md) +1. [Configure the load balancers](load_balancer.md) |