Skip to content
Aleksei Sviridkin edited this page Apr 22, 2025 · 2 revisions

Kubernetes Cluster Documentation

Welcome to the documentation wiki for this Kubernetes cluster configuration. This repository serves as both a production GitOps repository and a learning resource for Kubernetes.

Contents

Core Infrastructure

  1. Cluster Architecture
  2. K3s Configuration - Why components are disabled and custom-deployed
  3. GitOps Workflow - How ArgoCD is used for deployments

Networking

  1. Network Configuration - Overall networking design
  2. Calico Configuration - Pod networking with Tigera operator
  3. MetalLB Configuration - Load balancing setup
  4. External Access - Cloudflare and Tor integration

Storage

  1. Storage Configuration - Longhorn and NFS storage options

Workloads

  1. Application Deployment - How applications are structured and deployed
  2. Applications - Overview of deployed applications
  3. Monitoring - Monitoring stack configuration

Operations

  1. Maintenance and Operations - Day-to-day cluster management
  2. Security Considerations - Security best practices

Getting Started

If you're new to this repository:

  1. Start with the README.md for installation basics
  2. Review the Cluster Architecture for an overview
  3. Explore the GitOps Workflow to understand how changes are deployed

Learning Kubernetes

This repository can be used as a learning resource for Kubernetes concepts:

  • Networking: See how CNI (Calico), load balancing (MetalLB), and ingress (Traefik) work together
  • Storage: Learn about persistent storage with Longhorn and NFS
  • GitOps: Understand declarative configuration with ArgoCD
  • Security: Explore network policies, RBAC, and other security considerations

Production Use

While this repository is configured for a specific environment, it can be adapted for your needs:

  1. Fork the repository
  2. Update references to domains and IP addresses
  3. Modify application choices and configurations
  4. Follow the installation steps in the README

External Documentation

Rather than duplicating comprehensive documentation for each component, refer to the original documentation:

Clone this wiki locally