blob: 9155cba5e16a2fb65c998f4cc7491d910ab3d87b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
# AnshulG Clusters
A collection of clusters, servers, and configurations for all things me.
# Components
## [`./terraform`](./terraform/)
Terraform deployment for GKE and GCP resources.
Deployed using Terraform Cloud.
Sets up:
- GKE Cluster with node pools
- Auth Server Instance
- Storage Buckets
- Private Certificate Authority
- DNS
- anshulg.com
- anshulg.direct
- Load Balancers and CDN
## [`./auth-server`](./auth-server/)
KanIDM Auth Server for managing users and authentication.
Runs on a dedicated `n1-standard-1` running OpenSUSE Leap 15.6.
Deployed using Docker Compose.
Deployed via Github Actions.
The `deploy.sh` script copies the required files to the server
and runs the `setup.sh` script to setup and run the server.
Server Architecture:
```mermaid
architecture-beta
group GCP(cloud)[GCP]
group instance(server)[N1 Standard 1] in GCP
group docker[Docker] in instance
service server(server)[Auth Server] in docker
service caddy(server)[Caddy] in instance
service privateca(disk)[Private CA] in GCP
service internet(internet)[Internet]
service letsencrypt(internet)[LetsEncrypt]
internet:R -- L:caddy
letsencrypt:T -- B:caddy
caddy:R -- L:server
privateca:L -- R:server
```
|