GitXplorerGitXplorer
k

using-kubernetes-the-hard-way

public
3 stars
0 forks
0 issues

Commits

List of commits on branch master.
Unverified
27147e9d4a20bf79f635d0a9be56ee80b2ce64ed

Remove config delete (not there)

committed 5 years ago
Unverified
938e5cffce7499601997563d1b20e9035c2fa8b3

Delete Docker config after test

committed 5 years ago
Unverified
7744492fd13c9e2b47a4c4553d90aaa59aa1e8c2

Add unit tests

committed 5 years ago
Unverified
90095434a8304322a83aa735923db2a221524ac3

Initial import

committed 5 years ago
Verified
2774d4774d8e10cda92765b3dafa2b3a5a2351d3

Initial commit

kkarlkfi committed 5 years ago

README

The README file for this repository.

Using Kubernetes The Hard Way

This tutorial walks you through using Kubernetes the hard way.

This guide is not for people looking to learn how to deploy and operate Kubernetes clusters. If that's you, then check out Kubernetes The Hard Way.

Usage Kubernetes The Hard Way is optimized for learning, which means taking the long route to ensure you understand each task required to deploy and operate a web app on Kubernetes.

Prerequisites

Goals

  • Go
    • Write a web app in Go
    • TODO: Build a Go binary
    • TODO: Go Modules for Dependency Management
    • TODO: Unit Tests
    • Health check endpoint (for Kubernetes Readiness Check)
    • Graceful Termination with Connection Draining on SIGTERM
  • Linting
    • TODO: YAML linting
    • TODO: JSON linting
    • TODO: Shell linting
    • TODO: Goimports (incl go fmt) linting
  • Container Image Building
    • TODO: Docker Hub Image GitOps using GitHub Actions
    • TODO: Image builds for master and version tags
    • TODO: Image builds for branches (for end-to-end testing)
    • TODO: Image builds for CI (for test tool installation)
    • Multi-stage builds for smaller images
  • GitHub Actions
    • GitHub Actions config GitOps
    • TODO: Trigger on PRs/branches
    • TODO: Integration tests on Kubernetes for master and branches
    • TODO: Deployment Promotion Dev -> Staging -> Prod
    • TODO: Container Image Garbage Collection (new image on every push)
    • TODO: Automated Canary Deployment Testing
    • TODO: Terraform Module GitOps
  • Vault
    • TODO: App Secrets in Vault (Kubernetes read, Team write)
  • Kubernetes
    • Zero Downtime Deployments
    • Ingress Load Balancing
    • Pod Disruption Budget
    • Deployment Rollout Strategy
    • Liveness & Readiness Checks
    • TODO: App-specific Kubernetes Service Account
    • TODO: Daytona sidecar App Secrets injection
    • TODO: Resource requests & limits (cpu, memory, ephemeral-storage)
    • TODO: Ephemeral Storage EmptyDir Volume
    • TODO: Version Rollbacks
    • TODO: Horizontal Autoscaling
    • TODO: Vertical Autoscaling
  • Templating (envsubst)
  • DNS
    • Namecheap DNS GitOps
  • TODO: Blackbox Endpoint Monitoring (ex: CULA)
  • TODO: Metrics Dashboards
  • TODO: Monitoring & Alerting
  • TODO: Distributed Tracing

Setup