Welcome!
For general information and context, please see our Wiki, here
To use this project to provision an Arvados cluser you will need Docker Compose.
There are two parts to this project. A provisioning mechanism and a configuration management system.
This project uses salt-cloud to provision the infrastructure required by an Arvados Cluster. To encapsulate the technicalities of salt-cloud from your workstation, we have wrapped them in Docker containers that can be run using Docker Compose for convenience.
Before you can use this facility, you will need to configure your cloud provider. Salt-cloud supports a variety of cloud providers natively, for which you should only need to add a config file to the directory linked previously.
Example:
- Provision a brand new cluster:
docker-compose run provision
- To destroy an Arvados cluster:
docker-compose run destroy
When provisioning a new cluster, the provisioning system will preinstall Salt minions to all of the virtual machines configured and configure the salt "master" (we will use the term orchestrator from now on). It will also accept the salt-keys of all the minions. It will then run salt once to configure the entire cluster.
Should nothing go awry, you should have a functioning cluster after running the above command. Because this project is a work in progress, expect things to go awry.
This project depends on the repositories shown in the gitfs_remotes
section of the roots.conf file.
Feel free to clone those and glance over them to become familiar with the structure of the project.
How these dependencies fit together is described in the formula's top file and the pillar top file.
The structure of the provisioned infrastructure is described in the salt-cloud map file
See cloud/map
fast disk for database
0+ nodes Depends on workload; scaled dynamically in the cloud
0+ Depends on workload