Skip to content

Commit 5112b2c

Browse files
committed
Update README.md
1 parent 3ac4876 commit 5112b2c

File tree

2 files changed

+18
-6
lines changed

2 files changed

+18
-6
lines changed

README.md

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,22 @@ This repository contains ArgoCD, Helm, and Terraform files for declarative deplo
88

99
You can use these files to stand up your own on-prem Kubernetes cluster. While this repository was built to be run on Raspberry Pi devices, it should be equally valid anywhere Kubernetes can run.
1010

11+
If you want to implement this for yourself, please follow the [setup document](./SETUP.md) (which is actively being updated).
12+
1113
## 🎖️ Features
1214

1315
- App-of-apps: A root Argo CD Application deployment schema which recursively manages child apps
14-
- Namespace deployments: `argocd`, `cert-manager`, `kube-system`, `logging`, `longhorn-system`, and `monitoring`
16+
- Namespace deployments: `argocd`, `cert-manager`, `kube-system`, `logging`, `longhorn-system`, `monitoring`, and `applications-eng`
1517
- Cert-manager: X.509 certificate management for Kubernetes
16-
- Longhorn: Distributed on-prem file storage
18+
- Longhorn: Distributed on-prem file storage with multiple storage classes
1719
- Metal LB: An on-prem native software load balancer
1820
- Monitoring: Prometheus Operator with Grafana using storage PVC through Longhorn
21+
- n8n: Workflow automation platform with persistent storage
1922
- Dashboard UI for:
2023
- Argo CD: For controlling deployments and rollbacks
2124
- Grafana: For building dashboards against Prometheus data
2225
- Longhorn: For controlling the distributed block storage setup
26+
- n8n: For creating and managing automated workflows
2327
- Prometheus: For querying against raw data from pods/nodes/deployment resources
2428

2529
## 🧱 Project Management
@@ -31,6 +35,7 @@ Work for this repository is housed in this [Trello board](https://trello.com/b/H
3135
```bash
3236
├── argocd/ # ArgoCD application definitions
3337
│ ├── apps/ # Application-level deployments
38+
│ │ ├── applications/ #
3439
│ │ ├── argocd/ #
3540
│ │ ├── cert-manager/ #
3641
│ │ ├── kube-system/ #
@@ -44,12 +49,14 @@ Work for this repository is housed in this [Trello board](https://trello.com/b/H
4449
│ ├── cert-manager/ #
4550
│ ├── grafana/ #
4651
│ ├── longhorn/ #
52+
│ ├── n8n/ #
4753
│ ├── prometheus/ #
4854
│ ├── prometheus-operator/ #
4955
│ └── prometheus-service-monitors/ #
50-
└── terraform/ # Terraform configurations (WIP)
51-
├── namespaces.tf #
52-
└── provider.tf #
56+
└── terraform/ # Terraform configurations
57+
├── namespaces.tf # Kubernetes namespace definitions
58+
├── provider.tf # Terraform provider configuration
59+
└── storage-classes.tf # Longhorn storage class definitions
5360
```
5461

5562
## 🛠️ Built With
@@ -64,6 +71,10 @@ Here's the hardware list of what each of the control/worker nodes is using:
6471
3. [Samsung 2TB NVMe SSD](https://www.amazon.com/dp/B0DHLCRF91)
6572
4. [256gb Micro SD Card](https://www.amazon.com/dp/B08TJZDJ4D)
6673

74+
> It's worth noting that one of my nodes is a computer running Ubuntu with a nice GPU, but that's really outside the scope of any guides I'd give for deploying this repository. The only part of this that will impact you is any apps that have node affinity for that setup, but you can easily remove that from your own deployments.
75+
>
76+
> The rest of the nodes are Raspberry Pi 5s as described above.
77+
6778
### Software
6879

6980
- [Argo CD](https://argo-cd.readthedocs.io/en/stable/)
@@ -75,6 +86,7 @@ Here's the hardware list of what each of the control/worker nodes is using:
7586
- [Kubernetes](https://kubernetes.io/), specifically [K3s](https://k3s.io/)
7687
- [Longhorn](https://longhorn.io/)
7788
- [Metal LB](https://metallb.io/)
89+
- [n8n](https://n8n.io/)
7890
- [OpenFaaS](https://www.openfaas.com/) (coming soon)
7991
- [Prometheus](https://prometheus.io/) (including Prometheus Operator)
8092
- [Sealed Secrets](https://github.com/bitnami-labs/sealed-secrets)

terraform/namespaces.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
resource "kubernetes_namespace" "applications_eng" {
1+
resource "kubernetes_namespace" "applications" {
22
metadata {
33
name = "applications"
44
labels = {

0 commit comments

Comments
 (0)