/tf4k8s

Random experiments with Terraform and Kubernetes

Primary LanguageHCLApache License 2.0Apache-2.0

Terraform for Kubernetes

An exploration into the use of Terraform to provision Kubernetes clusters on popular IaaS.

Vision

Launch a relatively comprehensive end-to-end demo environment for discussion purposes and/or hands-on workshops in under an hour.

Getting Started

Choose your own adventure on one of the following cloud providers

Or provision new / attach existing Kubernetes clusters via

  • VMWare Tanzu Mission Control

Current experiments

Organization

Sub-directories of this repository contain

  • bom
    • Bill of materials; what do you need to get started?
  • experiments
    • Progressively build out a platform to deliver software delivery agility underpinned by Kubernetes
  • modules
    • Building blocks to be composed as you see fit
  • ytt-libs
    • YAML-based templates consumed by ytt then deployed with kapp

Roadmap

Above-mentioned experiments will evolve to include automating base configuration and installation of an additional complement of capabilities/components aimed at modeling a modern enterprise software factory / product delivery supply chain.

Cloud Foundry

Administration

  • Stratos

Open Service Broker-compatible API servers

Provision your own collection of services

Provision managed services in a public cloud and bind them to applications

Service catalog

Deploy and manage application and services with ease through an administrative interface

Distributed Version Control

  • Gitea
  • Gitlab

CI/CD

  • Argo CD
  • Jenkins
  • Gitlab
  • VMWare Tanzu Build Service
  • Concourse
  • Tekton

Reference Pipelines

Logging/Monitoring/Metrics

  • FluentBit
  • Elasticsearch, Kibana
  • Prometheus
  • Grafana
  • VMWare Tanzu Observability

Cluster/Policy Management

  • VMWare Tanzu Mission Control

Additional "building blocks" and maintenance

Services

Blob stores

  • Minio
  • Amazon S3
  • Google Cloud Storage Bucket
  • Azure Blob Storage

Stream Processing

Caching

Databases

Spring Cloud