@@ -54,10 +54,6 @@ scenario, the [new repository indexer](../../integration/elasticsearch.md#elasti
needs to be enabled in your GitLab configuration. [Since GitLab v12.3](https://gitlab.com/gitlab-org/gitlab/issues/6481),
the new indexer becomes the default and no configuration is required.
NOTE: **Note:** While Gitaly can be used as a replacement for NFS, it's not recommended
to use EFS as it may impact GitLab's performance. Review the [relevant documentation](../high_availability/nfs.md#avoid-using-awss-elastic-file-system-efs)
for more details.
### Network architecture
The following list depicts what the network architecture of Gitaly is:
@@ -23,32 +23,32 @@ in from some of our customers.
## Recommended Setups based on number of users
- 1 - 1000 Users: A single node Omnibus setup with frequent backups. Refer to the [requirements page](https://docs.gitlab.com/ee/install/requirements.html) for further details of the specs you will require.
- 2000 - 50000+ Users: A scaled HA environment based on one of our [Reference Architectures](#reference-architecture-recommendations) below.
- 2000 - 50000+ Users: A scaled HA environment based on one of our [Reference Architectures](#reference-architectures) below.
## GitLab Components and Installation Instructions
## GitLab Components and Configuration Instructions
Before we get into the architectures we should first detail the relevant GitLab
[components](https://docs.gitlab.com/ee/development/architecture.html#component-diagram) and
services it depends on along with our recommendations. They are presented in the order you would
typically install them:
The GitLab application depends on the following [components](https://docs.gitlab.com/ee/development/architecture.html#component-diagram)
and services. They are included in the reference architectures along with our
recommendations for their use and configuration. They are presented in the order
| [PgBouncer](https://docs.gitlab.com/ee/development/architecture.html#pgbouncer) | Database Pool Manager | [Link](pgbouncer.md) |
| [Redis](https://docs.gitlab.com/ee/development/architecture.html#redis)[^3] with Redis Sentinel | Key/Value store for shared data with HA watcher service | [Link](redis.md) |
| [Gitaly](https://docs.gitlab.com/ee/development/architecture.html#gitaly)[^2][^5] [^7] | Provides high-level storage and RPC access to Git repositories. | [Link](gitaly.md) |
| [Sidekiq](https://docs.gitlab.com/ee/development/architecture.html#sidekiq) | Asynchronous/Background jobs | |
| [S3 Object Storage service](object_storage.md)[^4] | Recommended store for shared data objects such as LFS, Uploads, Artifacts, etc... | [Link](object_storage.md) |
| [NFS](nfs.md)[^5][^7] | Shared disk storage service. Can be used as an alternative for Gitaly or Object Storage (unrecommended). Required for GitLab Pages. | [Link](nfs.md) |
| [NFS](nfs.md)[^5][^7] | Shared disk storage service. Can be used as an alternative for Gitaly or Object Storage. Required for GitLab Pages. | [Link](nfs.md) |