Idea #21376
Updated by Peter Amstutz about 1 year ago
Installer pieces:
* Terraform (on AWS only)
* installer.sh
** initial setup, copying templates
** pushes the template repository to each node and invokes provision.sh
* provision.sh
** templates the templates
** installs salt formulas and salt itself
** invokes salt in master-less mode
* salt formula
** configures package repositories
** installs & configures nginx
** installs & arvados packages
* Packaging and post-install scripts
Configurations we should test:
* single host, single hostname
* single host, multiple hostname
* multiple host, multiple hostname
* installation on each supported distribution
Ideal stack (?):
* Terraform (on AWS only)
* installer.sh
** configures package repositories on each node
** installs & configures arvados packages on each node
* Packaging and post-install scripts
* Arvados process supervisor (arvados-server boot)
** handles configuring & launching nginx
** launching Arvados services configured for that particular node
Points to consider:
* How to pass config customizations from user level down to the configuration files of nginx, prometheus, etc
* Arvados would need its own orchestration features, e.g. generating config files from templates