.. | ||
app | ||
README.md |
Hammerhead Configuration
Roadmap
-
Prior
- The OS is fully installed and configured using the
os/config
Ansible scripts. - Since Hammerhead is its own one-node cluster, Consul and Nomad have been reconfigured wth
bootstrap_expect == 1
manually.
- The OS is fully installed and configured using the
-
Base components: things that need to be installed before services
-
Dummy HTTP server to have something to work with.
-
Reverse-proxy/load-balancer: nginx is a good match for a one-node deployment. Installing it with Nomad/Consul will make me practice Consul Template etc.
-
Generate services configuration outside the nginx service definition.
Can't do because of separation of concerns: files needed by nginx need to be defined in the nginx job specification.
Solution: each new service needs to add its nginx configuration to
app/nginx/config
. -
The services URL should be accessible from Consul using tags, instead of being hard-coded in configuration files.
-
The dummy HTTP server replicas must not be accessible through the Internet.
-
TLS: Let's Encrypt will probably be part of the same job definition as nginx.
-
-
Gitea migration
- Postgres database: needs to be its own Nomad job.
- Gitea: setting it up on Nomad.
- Migrating data from Serenity, where the DB is MySQL. Expect fun times.
- Database & files periodic backups
-
Synapse migration
- Postgres already setup
- Migrating from a Postgres on Serenity (easier)
- Backups
-
[Own/Next]cloud: Adrien needs it for himself.
- Compare distribution capabilities / S3-compatibility between the two solutions. The assumption is that Owncloud's Go rewrite is the better fit.
- Do the things.