Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

To split the Worker application to a separate host from the rest of Avalon, essentially, you want to set up two identically-configured Avalon deployments -- but some services are not installed, or are disabled, on each.

Avalon Host should run

  • Avalon application
  • Redis
  • Avalon DB (needs to be accessible from the Worker host)
  • SOLR/Fedora (although these may be on separate hosts if desired)

The Avalon host should *not* be running this service (it needs to be explicitly disabled)

  •  Sidekiq

Worker Host should run

  • Sidekiq
  • Redis

Worker host should have these disabled or simply not installed:

...

There are mixed reports about the best place to run Redis. It can be run on either the Web host or the Worker.

Connecting the two instances

  • The Avalon Web and Worker hosts have basically identical configurations, just with different services enabled.
  • At the very least, they need to point to the same Avalon DB (which must be reachable from both hosts)
    • Configured in config/database.yml
  • You *might* need to have identical Fedora configs on both hosts. It's unclear whether this is required on the Worker.
    •  Configured in config/fedora.yml

Web Host

  • Install full Avalon rails app
  • Configure app to connect to database, solr, fedora
  • In `settings.yml`
    • comment-out ffmpeg section
  • Change redis section to connect to redis on worker node

Enable:

  • Avalon application
  • SOLR/Fedora (although these may be on separate hosts if desired)
  • Redis (unless running it on the Worker)

Configure:

  • Database (open to Worker host)
  • Redis (if running on Worker)

Stop and disable:

  •  Sidekiq

Worker Host

  •  Install full Avalon rails app (or just clone the Web node)
  • Configure app to connect to same database as the web node in `config/database.yml`
  • Comment-out all content in:
    • blacklight.yml
    • solr.yml
    • fedora.yml

Worker Host should run:

  • Sidekiq
  • Redis (unless running it on the Web host)

Stop and disable:

  • Avalon rails app
  • Avalon DB (the Worker should not be running its own db, but it does need to be able to reach the Avalon DB)
  • SOLR
  • Fedora


Mount NFS shares

  • should be mounted at the same paths as Web node):
    • dropbox
    • derivatives
    • masterfiles
    • supplementalfiles