A highly available web application - that's Always On
(pun intended :D) - relying on an automated health check system to notify the team when something is not working as expected.
- Docker
- make
make
is pre-installed in most Linux systems.- In
macOS
it is included as part of theXcode
command line utils. It can be installed with the following command:
xcode-select --install
make run-dev
make stop-dev
make build
To list all available commands just run:
make
- Implement a simple HTTP server app
- Expose endpoints
GET /health
andGET /status
- Return random sample data to simulate
database connectivity status
- Log response errors
- On error, trigger alert notification
- query a single health check endpoint, using HTTP protocol
- get the list of endpoints from a
.env
file or env vars - get the check interval from external configuration file
- Collect request/response metrics
- make it async to query two endpoints simultaneously in random order
- Run in intervals, instead of just once
- Build docker image
- Create a docker compose file
- Build a helm chart
- Organize helm values files per environment
- Create a pulumi program
- Use pulumi to deploy helm charts to Kubernetes
- Terraform - Create
azure-aks-cluster
module - Terraform - Create project/root module to provision a CSP environment per region
- Provision managed Kubernetes cluster, using terraform
- Improve README
- Document service's endpoints using OpenAPI spec
- Plan presentation steps. Prepare a few slides, if needed
- Perhaps list and sort acceptance criterias, plus bonus point, and go through sections that cover group of related criteria? Might be a way to get the presentation organized and move fast, giving room for questions
- Improve README, branding, logo, be fun, ... AWAA ZONE, from TOW-AWAY ZONE, parking not allowed, not parking, always running, always on, ...
- Rename repo to use new name