58 lines
2.3 KiB
Markdown
58 lines
2.3 KiB
Markdown
# home-stack-kustomize
|
|
|
|
Kubernetes deployment for home cluster.
|
|
|
|
## Deploying
|
|
|
|
Deployments are done through a `Makefile`.
|
|
|
|
Prerequisites:
|
|
* make
|
|
* terraform
|
|
* kustomize
|
|
* kubectl
|
|
* highlight (for prettying `diff`)
|
|
|
|
### Prod deployment
|
|
#### infra
|
|
``` sh
|
|
make infra
|
|
```
|
|
|
|
This will:
|
|
1. Configure external-secret to be able to sync kubernetes secrets with the secret store in AWS.
|
|
2. Configure the DNS entries in DigitalOcean
|
|
|
|
#### diff
|
|
``` sh
|
|
make
|
|
```
|
|
*or*
|
|
``` sh
|
|
make prod-diff
|
|
```
|
|
|
|
Generated kubernetes manifest will be in [./build/prod.yaml](./build/prod.yaml).
|
|
|
|
#### apply
|
|
``` sh
|
|
make prod-apply
|
|
```
|
|
|
|
Generated kubernetes manifest will be in [./build/prod.yaml](./build/prod.yaml).
|
|
|
|
Server-side resources that are not declared in the manifest will be pruned.
|
|
|
|
## Services
|
|
|
|
| service | local | prod |
|
|
| ------------------------------------------------------------------------ | ------------------------------------- | ----------------------------------------- |
|
|
| [kubernetes-dashboard](https://github.com/kubernetes/dashboard/releases) | http://kubernetes-dashboard.localhost | https://kubernetes-dashboard.badjnet.home |
|
|
| [traefik](https://github.com/traefik/traefik) | http://traefik.localhost/dashboard/ | https://traefik.badjnet.home/dashboard/ |
|
|
| [longhorn](https://github.com/longhorn/longhorn) | | https://longhorn.badjnet.home |
|
|
| [grafana](https://github.com/grafana/grafana) | http://grafana.localhost | https://grafana.badjnet.home |
|
|
| [prometheus](https://github.com/prometheus/prometheus) | http://prometheus.localhost | https://prometheus.badjnet.home |
|
|
| [gitea](https://github.com/go-gitea/gitea) | http://gitea.localhost | https://gitea.badjware.dev |
|
|
| [drone](https://github.com/drone/drone) | http://drone.localhost | https://drone.badjware.dev |
|
|
| [nextcloud](https://github.com/nextcloud/server) | http://nextcloud.localhost | https://cloud.badjware.dev |
|