Update
This commit is contained in:
parent
5f3c3b0e91
commit
b5508eab97
@ -1,4 +1,6 @@
|
||||
|
||||
- This time I won't be doing a "walkthrough" from the process, but instead a progress list.
|
||||
|
||||
The plan is to replace the `srv` server that is currently used as standalone docker/NFS server, with a Proxmox instance as it would allow some more flexibility.
|
||||
|
||||
My current requirements are:
|
||||
@ -55,7 +57,6 @@ I'm so good that I already was building an image with DHCP both for `amd64` and
|
||||
|
||||
Could create a new NFS pool for media related, specially when some data could b stored in an HDD and other could be stored in a SSD.
|
||||
|
||||
|
||||
# Steps
|
||||
|
||||
## Make the DHCP server work in/from the Kubernetes cluster
|
||||
@ -499,9 +500,23 @@ Meanwhile, it's certainly not a requirement (and I only use the monitor on emerg
|
||||
|
||||
- [x] Configured Jellyfin with GPU acceleration
|
||||
|
||||
## Deploy master node on the Proxmox server
|
||||
## Make Cluster HA
|
||||
|
||||
2 Cores + 4GB RAM
|
||||
- [ ] Done
|
||||
- [x] Aborted
|
||||
|
||||
Since it would mostly require to recreate the cluster, I would like to have the DNS/DHCP service externalized to the cluster, or a Load Balancer external to the cluster, etc etc.
|
||||
|
||||
So, I rather have a cluster with 2 points of failure:
|
||||
|
||||
- Single control plane
|
||||
- No HA NFS/NAS
|
||||
|
||||
Then to having an Uroboros for Cluster.
|
||||
|
||||
I also just thought on having a DNS failover
|
||||
|
||||
But it's not the current case, as
|
||||
|
||||
## Update rest of the stuff/configs as required to match the new Network distribution
|
||||
|
||||
@ -509,4 +524,30 @@ Which stuff?
|
||||
|
||||
IDK. It's an OS in case I'm forgetting something
|
||||
|
||||
- [x] Done Aka. everything seems to be running correctly
|
||||
|
||||
## Migrade Jenkins
|
||||
|
||||
https://devopscube.com/jenkins-build-agents-kubernetes/
|
||||
|
||||
https://www.jenkins.io/doc/book/installing/kubernetes/
|
||||
|
||||
- [x] Done
|
||||
|
||||
## Skaffold
|
||||
|
||||
- Learned to use Skaffold, yet requires manual execution.
|
||||
|
||||
- It's great tho
|
||||
|
||||
https://skaffold.dev/docs/references/yaml/
|
||||
|
||||
https://skaffold.dev/docs/builders/cross-platform/
|
||||
|
||||
## CI/CD Container creation
|
||||
|
||||
I have decided dump my old Jenkins architecture and rely on Skaffold, it's great.
|
||||
|
||||
I will work on integrating it with Jenkins.
|
||||
|
||||
|
||||
|
128
README.md
128
README.md
@ -3,14 +3,17 @@ gitea: none
|
||||
include_toc: true
|
||||
---
|
||||
|
||||
## Older patch notes/version
|
||||
|
||||
Select different tags.
|
||||
|
||||
## TLDR Changelog
|
||||
|
||||
- Pi4 joined the Kubernetes cluster as a Master, and moved the old/previous Orange Pi 5 that was working as a master to a slave role.
|
||||
- Replaced the old standalone Docker/NFS server for a Proxmox/NFS instance.
|
||||
|
||||
- The main reverse proxy (Traefik) that was running in the Pi4 has been replaced for Istio running in the Kubernetes cluster.
|
||||
- Added 2 VMs as worker nodes to the cluster, they will be used/are intended for x64 bit images.
|
||||
|
||||
- Services where reorganized into the server or Kubernetes cluster.
|
||||
- One of the new added worker VMs receives a GPU through Proxmox PCI pass through.
|
||||
|
||||
- Some services might have been removed or added.
|
||||
|
||||
@ -22,112 +25,83 @@ include_toc: true
|
||||
|
||||
```yaml
|
||||
Gateway: 192.168.1.1
|
||||
Srv: 192.168.1.3
|
||||
Proxmox/NFS: somwhere.
|
||||
```
|
||||
|
||||
### Kluster
|
||||
|
||||
> Kubernetes Cluster
|
||||
|
||||
A Pi 4 with 4GB running as a Master.
|
||||
A set of Orange PI 5, so far all of them are the 8GB of RAM version.
|
||||
- Pi 4 with 4GB running as a Master. (Masterk/Pi4)
|
||||
|
||||
- A pair of Orange PI 5, so far all of them are the 8GB of RAM version. (Slave01-2)
|
||||
|
||||
- Proxmox VMs, both with 3 CPU cores and 8GB of RAM (Slave03-4)
|
||||
|
||||
- `Slave04` contains a GPU through Proxmox CPU pass through.
|
||||
|
||||
```yaml
|
||||
Masterk: 192.168.1.9
|
||||
Slave01: 192.168.1.10
|
||||
Slave02: 192.168.1.11
|
||||
Slave03: 192.168.1.12
|
||||
Slave04: 192.168.1.13
|
||||
```
|
||||
|
||||
## Which services are running where.
|
||||
```yaml
|
||||
Node Available(GPUs) Used(GPUs)
|
||||
pi4.filter.home 0 0
|
||||
slave01.filter.home 0 0
|
||||
slave02.filter.home 0 0
|
||||
slave03.filter.home 0 0
|
||||
slave04.filter.home 1 0
|
||||
```
|
||||
|
||||
### Srv (main media server)
|
||||
## Which services I'm hosting
|
||||
|
||||
> Initially the server would contain media services and some with higher load, like Minecraft and factorio servers. Right now this server is the designated media server provider, and as well contains other more generalized services, as currently in planning a migration to reorganize the infrastructure.
|
||||
|
||||
Services run on `docker` / `docker-compose`.
|
||||
|
||||
#### Home Network
|
||||
### Home Network
|
||||
|
||||
- CoreDNS
|
||||
- DHCPd
|
||||
|
||||
#### Containerization
|
||||
### Discord Bots
|
||||
|
||||
- Traefik
|
||||
- Portainer
|
||||
- Registry
|
||||
- Registry-UI
|
||||
- Jenkins agent
|
||||
- containrrr/watchtower
|
||||
- zcube/cadvisor
|
||||
- https://gitea.filterhome.xyz/ofilter/Steam_Invite_Discord (both Master and Dev branches)
|
||||
- Shlink + ShlinkUI (deployed as it has functionality with the Steam Discord Bot from above)
|
||||
|
||||
#### Git Servers
|
||||
### Public DNS
|
||||
|
||||
- Gitea
|
||||
- Godaddy
|
||||
- Duckdns
|
||||
|
||||
#### Media
|
||||
### CRDs
|
||||
|
||||
- kizaing/kavita
|
||||
- prologic/tube
|
||||
- gotson/komga
|
||||
- lscr.io/linuxserver/qbittorrent
|
||||
- grafana
|
||||
- lscr.io/linuxserver/jellyfin
|
||||
- difegue/lanraragi
|
||||
- filebrowser/filebrowser
|
||||
|
||||
### Kluster
|
||||
|
||||
#### Clusterwise
|
||||
|
||||
- Cilium
|
||||
- Istio Service Mesh
|
||||
- Cert Manager
|
||||
- Istio
|
||||
- Nvidia Gpu Operator
|
||||
- NFS Volume Provisioner
|
||||
- MetalLB
|
||||
- Cert-Manager
|
||||
|
||||
#### CI/CD
|
||||
|
||||
- Jenkins Controller
|
||||
|
||||
#### Monitoring
|
||||
|
||||
### Observability
|
||||
|
||||
- Grafana
|
||||
- Prometheus
|
||||
- Jaeger
|
||||
- Kiali
|
||||
- Jaeger
|
||||
|
||||
#### Home Network
|
||||
### CI/CD
|
||||
|
||||
- CoreDNS
|
||||
- DHCPd
|
||||
- Jenkins master + dynamic agent(s)
|
||||
- Docker Registry
|
||||
|
||||
#### Misc
|
||||
### Git servers
|
||||
|
||||
- DuckDNS (updates the DNS records)
|
||||
- GoDaddy (updates the DNS records)
|
||||
- [Steam_Invite_Discord](https://gitea.filterhome.xyz/ofilter/Steam_Invite_Discord)
|
||||
- Gitea
|
||||
|
||||
#### Notes
|
||||
### Media related
|
||||
|
||||
Cert-Manager generates public certificates automatically
|
||||
|
||||
> https://cert-manager.io/docs/configuration/acme/
|
||||
|
||||
### Depracated
|
||||
|
||||
- bind9 DNS
|
||||
- [Internet speedtest metrics](https://github.com/nickmaccarthy/internet-speed-test-metrics)
|
||||
- kanboard
|
||||
- mantis
|
||||
- minecraft server + [Minecraft Discord Bot](https://gitea.filterhome.xyz/ofilter/Minecraft_Discord_Bot)
|
||||
- [FGO Tools](https://github.com/OriolFilter/FGO_tools)
|
||||
- muximix
|
||||
- openvpn
|
||||
- Plex
|
||||
- Protainer
|
||||
- mantis
|
||||
- [speedtest_container](https://gitea.filterhome.xyz/ofilter/speedtest_contiainer)
|
||||
- splunk
|
||||
- vaultwarden
|
||||
- alert manager
|
||||
- chesscorp/chess-club
|
||||
- Tube
|
||||
- Firebrowser
|
||||
- Filebrowser
|
||||
- Jellyfin
|
||||
- qBitTorrent
|
||||
|
@ -1,42 +0,0 @@
|
||||
https://github.com/mikeroyal/Self-Hosting-Guide#backups
|
||||
|
||||
https://github.com/mikeroyal/Self-Hosting-Guide#snapshots-managementsystem-recovery
|
||||
|
||||
https://github.com/mikeroyal/Self-Hosting-Guide#file-systems
|
||||
|
||||
https://github.com/mikeroyal/Self-Hosting-Guide#storage
|
||||
|
||||
https://goteleport.com/
|
||||
|
||||
|
||||
|
||||
---
|
||||
|
||||
Volumes
|
||||
|
||||
|
||||
https://github.com/seaweedfs/seaweedfs
|
||||
|
||||
|
||||
---
|
||||
DNS
|
||||
|
||||
https://github.com/awesome-selfhosted/awesome-selfhosted#dns
|
||||
|
||||
https://github.com/awesome-foss/awesome-sysadmin#dns---control-panels--domain-management
|
||||
|
||||
---
|
||||
#3dp
|
||||
|
||||
https://github.com/Floppy/van_dam
|
||||
|
||||
---
|
||||
|
||||
? https://goteleport.com/
|
||||
|
||||
|
||||
---
|
||||
|
||||
Gitea thingies
|
||||
|
||||
https://docs.gitea.com/awesome?_highlight=content#sdk
|
Loading…
x
Reference in New Issue
Block a user