GitSwarm 2016.3-2 Documentation


Configuring Redis for GitSwarm HA

You can choose to install and manage Redis yourself, or you can use GitSwarm package installations to help.

Configure your own Redis server

If you're hosting GitSwarm on a cloud provider, you can optionally use a managed service for Redis. For example, AWS offers a managed ElastiCache service that runs Redis.

Note: Redis does not require authentication by default. See Redis Security documentation for more information. We recommend using a combination of a Redis password and tight firewall rules to secure your Redis service.

Configure the package installation

  1. Download/install GitSwarm package installation using steps 1 and 2 from GitSwarm downloads. Do not complete other steps on the download page.
  2. Create/edit /etc/gitswarm/gitswarm.rb and use the following configuration. Be sure to change the external_url to match your eventual GitSwarm front-end URL.

      external_url 'https://gitswarm.example.com'
    
      # Disable all components except Redis
      redis['enable'] = true
      bootstrap['enable'] = false
      nginx['enable'] = false
      unicorn['enable'] = false
      sidekiq['enable'] = false
      postgresql['enable'] = false
      gitlab_workhorse['enable'] = false
      mailroom['enable'] = false
    
      # Redis configuration
      redis['port'] = 6379
      redis['bind'] = '0.0.0.0'
    
      # If you wish to use Redis authentication (recommended)
      redis['password'] = 'Redis Password'
  3. Run sudo gitswarm-ctl reconfigure to install and configure PostgreSQL.

    Note: This reconfigure step will result in some errors. That's OK - don't be alarmed.

  4. Run touch /etc/gitswarm/skip-auto-migrations to prevent database migrations from running on upgrade. Only the primary GitSwarm application server should handle migrations.


Read more on high-availability configuration:

  1. Configure the database
  2. Configure NFS
  3. Configure the GitSwarm application servers
  4. Configure the load balancers