summaryrefslogtreecommitdiff
path: root/doc/administration/high_availability/README.md
diff options
context:
space:
mode:
authorDrew Blessing <drew@gitlab.com>2016-04-22 13:18:06 -0500
committerDrew Blessing <drew@gitlab.com>2016-04-22 13:18:06 -0500
commit34ea1d2cfe84e6625672e1ba20d69cb3afcc3008 (patch)
tree54fc65610d25c7476e2b6b82e61dc040eb6c109f /doc/administration/high_availability/README.md
parentc38f2645eddfcef0a26f8138665e5f7757ba9ebb (diff)
downloadgitlab-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.md35
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)