Skip to content

tamaw/launchk8

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

launchk8

About

Highlights

^ Docker in docker (dind) building an image. Then deploying image to a repository in the cluster.

^ Playing my friends mud game, deployed infra & container. Accessed from pod with open ports.

Approach

  • Workbooks - workbooks.sh show the journey I took to make the product. Including, some of the mistakes I made along the way.
  • Runbooks - runbook.sh are the simplified set of commands to recreate the project from scratch. The commands are to be run individually and not in a batch.

Learnings

Workbook Includes lecture notes and commands to run examples

  • Pods
    • Names, Labels, Querying with labels
    • Namespaces, creating with namespaces
  • Controllers
  • Services
  • Additional Kubectl commands
    • patch, apply, attach, copy, port-forward, top
  • Liveness Probes
    • Handlers, Probe types
    • Lifecycle
      • PostStart, PreStop
      • handlers
  • Volumes
  • Jobs
    • Fixed
      • parallel / nonparallel
      • fixed completions
      • restart policies
    • Queued
      • termination, scaling
    • CronJobs
      • schedule, handle overruns
  • Stateful Pods
    • DNS, ClusterIP, Rescheduling Order, number names
  • Secrets
    • Assigned Secret
    • files, certificates or generic values
    • access by volume, env vars
    • Config Maps
  • Ingress
    • for http, tls termination, name-based virtual hosting
  • NetworkPolicy
    • egress, ingress, rules w/ ip tables
  • Security Context
    • read only root, kernel capabilities, runAsUser
  • Resource Limits
    • unit types, upper/lower bounds, node requests
    • quality of service types
    • limits & requests
    • pod eviction
  • Horizontal AutoScaling
    • object, metrics, controllers, custom metrics
  • Affinity
    • Pod
    • Node
    • node, pod & and anti
    • weight, topology
  • Taints & Tolerances
    • types of effects
    • add labels to nodes

DevOps Project

A mini project which creates a GitHub build isolated inside of Kubernetes.

Architecture

  • Docker in Docker
    • builds docker images
    • publishes them to the repo
  • GitHub agent
    • runs workflow commands triggered by GitHub
    • can trigger builds on docker
    • can make deployments to the node
  • Registry
    • Stores the built images
    • Accessible by the node to deploy

TODO

  • Improve resource allocation
  • Add liveliness
  • Central logging would be good

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages