This repository contains code examples and documentation for learning how applications can be developed with Kubernetes

Overview

BigBitBus KAT Components

BigBitBus KAT components

Click on the diagram to enlarge, or follow this link for detailed documentation

Introduction

Welcome to the BigBitBus Kubernetes Automation Toolkit (KAT).

KAT is a set of software code and documentation to help understand the big picture of how a web application is developed for and deployed into a Kubernetes environment.

TL;DR If you want to directly deploy the KAT web application in a Kubernetes cluster on your PC, head over to our quickstart.

Most components of the Kubernetes cloud native ecosystem are extremely well documented, but its hard to find end-to-end examples that illustrate how these components work together in the context of an application. The main idea is to show you the breadth of several cloud-native technologies working together to support an application deployed on Kubernetes. We provide links to high quality documentation for deep dives on the concepts our examples illustrate. Our examples will show you how it all comes together so you can get productive, fast. You can then choose to learn more about specific parts of the cloud native stack as your situation demands.

We also provide a few Docker Compose "alternatives" in our some of our code directories so developers can compare and contrast a Docker workflow with a Kubernetes workflow.

From here, we recommend you start with a review of some Kubernetes and related concepts we have put together. Or, if you want to directly go to the code and examples you can navigate the folders in the repository, the table below will launch you right in.

What is where?

Category File or Directory Description
Documentation documentation/README.md Start here for an overview and links to other documents
Todo Django API code/app-code/api/todo-python-django Django Python todo backend; includes Helm chart deployed using Skaffold
Postgresql DB code/k8s-common-code/postgres-db Installing and configuring Postgresql database into the Kubernetes cluster using Helm charts
Vuejs Todo Single Page Application code/app-code/frontend/todo-vuejs Todo application implemented in Vuejs; includes Helm chart deployed using Skaffold
Monitoring code/k8s-common-code/monitoring Installing and configuring monitoring with Prometheus and Grafana into the Kubernetes cluster using standard Helm charts created by the Prometheus community
Kubernetes Dashboard code/k8s-common-code/k8sdashboard Deploying the Kubernetes dashboard, a browser-based GUI view of the Kubernetes cluster

Quickstart

Deployment File or Directory Description
In Cloud documentation/cloudvm.md Deploy KAT on a Cloud
Local System documentation/quickstart-vagrant.md Deploy KAT on your Local System

License

All code and configuration in the BigBitBus KAT repository (code files contained in this directory and all subdirectories) is licensed under the Apache 2.0 License.

All documentation, media and images in the BigBitBus KAT repository (non-code files contained in this directory and all subdirectories) are licensed under the CC BY-NC License.

Please click the license links for details.

You might also like...
Official Python client library for kubernetes

Kubernetes Python Client Python client for the kubernetes API. Installation From source: git clone --recursive https://github.com/kubernetes-client/py

A Kubernetes operator that creates UptimeRobot monitors for your ingresses

This operator automatically creates uptime monitors at UptimeRobot for your Kubernetes Ingress resources. This allows you to easily integrate uptime monitoring of your services into your Kubernetes deployments.

A Simple script to hunt unused Kubernetes resources.

K8SPurger A Simple script to hunt unused Kubernetes resources. Release History Release 0.3 Added Ingress Added Services Account Adding RoleBindding Re

Run Oracle on Kubernetes with El Carro

El Carro is a new project that offers a way to run Oracle databases in Kubernetes as a portable, open source, community driven, no vendor lock-in container orchestration system. El Carro provides a powerful declarative API for comprehensive and consistent configuration and deployment as well as for real-time operations and monitoring.

Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions
Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions

Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions

Chartreuse: Automated Alembic migrations within kubernetes
Chartreuse: Automated Alembic migrations within kubernetes

Chartreuse: Automated Alembic SQL schema migrations within kubernetes "How to automate management of Alembic database schema migration at scale using

Caboto, the Kubernetes semantic analysis tool
Caboto, the Kubernetes semantic analysis tool

Caboto Caboto, the Kubernetes semantic analysis toolkit. It contains a lightweight Python library for semantic analysis of plain Kubernetes manifests

Hubble - Network, Service & Security Observability for Kubernetes using eBPF
Hubble - Network, Service & Security Observability for Kubernetes using eBPF

Network, Service & Security Observability for Kubernetes What is Hubble? Getting Started Features Service Dependency Graph Metrics & Monitoring Flow V

A charmed operator for running PGbouncer on kubernetes.

operator-template Description TODO: Describe your charm in a few paragraphs of Markdown Usage TODO: Provide high-level usage, such as required config

Comments
  • postgresql db user and password config does't work

    postgresql db user and password config does't work

    postgresqlPassword: B1gB1tBu5 does NOT work as expected.

    [email protected] kubernetes-automation-toolkit$ vagrant ssh
    Last login: Wed Feb 23 14:12:58 2022 from 10.0.2.2
    [email protected]:~$ kubectl get secret --namespace pg pgdb-postgresql -o jsonpath="{.data.postgres-password}" | base64 --decode;echo
    P2zJdANSBT
    
    [email protected]:~$ microk8s kubectl get pods -n pg
    NAME                READY   STATUS    RESTARTS   AGE
    pgdb-postgresql-0   1/1     Running   0          12h
    [email protected]:~$ microk8s kubectl exec -it pgdb-postgresql-0 -n pg -- bash
    I have no [email protected]:/$ env|grep POSTGRES_
    POSTGRES_PASSWORD=P2zJdANSBT
    I have no [email protected]:/opt/bitnami/postgresql/bin$ psql -U "postgres" -h 127.0.0.1 -p 5432
    Password for user postgres: P2zJdANSBT
    psql (11.9)
    Type "help" for help.
    
    postgres=# \du
                                       List of roles
     Role name |                         Attributes                         | Member of
    -----------+------------------------------------------------------------+-----------
     postgres  | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
    
    

    vagrant_up.log

    opened by gongpengjun 1
Releases(1.0.0)
RMRK spy bot for RMRK hackathon

rmrk_spy_bot RMRK spy bot https://t.me/RMRKspyBot for rmrk hacktoberfest https://rmrk.devpost.com/ Birds and items price and rarity estimation Reports

Victor Ryabinin 2 Sep 06, 2022
CTF infrastructure deployment automation tool.

CTF infrastructure deployment automation tool. Focus on the challenges. Mirrored from

Fake News 1 Apr 12, 2022
Travis CI testing a Dockerfile based on Palantir's remix of Apache Cassandra, testing IaC, and testing integration health of Debian

Testing Palantir's remix of Apache Cassandra with Snyk & Travis CI This repository is to show Travis CI testing a Dockerfile based on Palantir's remix

Montana Mendy 1 Dec 20, 2021
Some automation scripts to setup a deployable development database server (with docker).

Postgres-Docker Database Initializer This is a simple automation script that will create a Docker Postgres database with a custom username, password,

Pysogge 1 Nov 11, 2021
Nagios status monitor for your desktop.

Nagstamon Nagstamon is a status monitor for the desktop. It connects to multiple Nagios, Icinga, Opsview, Centreon, Op5 Monitor/Ninja, Checkmk Multisi

Henri Wahl 361 Jan 05, 2023
Rancher Kubernetes API compatible with RKE, RKE2 and maybe others?

kctl Rancher Kubernetes API compatible with RKE, RKE2 and maybe others? Documentation is WIP. Quickstart pip install --upgrade kctl Usage from lazycls

1 Dec 02, 2021
Ralph is the CMDB / Asset Management system for data center and back office hardware.

Ralph Ralph is full-featured Asset Management, DCIM and CMDB system for data centers and back offices. Features: keep track of assets purchases and th

Allegro Tech 1.9k Jan 01, 2023
Ajenti Core and stock plugins

Ajenti is a Linux & BSD modular server admin panel. Ajenti 2 provides a new interface and a better architecture, developed with Python3 and AngularJS.

Ajenti Project 7k Jan 03, 2023
DataOps framework for Machine Learning projects.

Noronha DataOps Noronha is a Python framework designed to help you orchestrate and manage ML projects life-cycle. It hosts Machine Learning models ins

52 Oct 30, 2022
A cpp project template that uses CMake to build and Google Test / Github Actions to provide a CI

A cpp project template that uses CMake to build and Google Test / Github Actions to provide a CI

Martin Olivier 6 Nov 17, 2022
Dockerized service to backup all running database containers

Docker Database Backup Dockerized service to automatically backup all of your database containers. Docker Image Tags: docker.io/jandi/database-backup

Jan Dittrich 16 Dec 31, 2022
ZeroMQ bindings for Twisted

Twisted bindings for 0MQ Introduction txZMQ allows to integrate easily ØMQ sockets into Twisted event loop (reactor). txZMQ supports both CPython and

Andrey Smirnov 149 Dec 08, 2022
SSH to WebSockets Bridge

wssh wssh is a SSH to WebSockets Bridge that lets you invoke a remote shell using nothing but HTTP. The client connecting to wssh doesn't need to spea

Andrea Luzzardi 1.3k Dec 25, 2022
Tencent Yun tools with python

Tencent_Yun_tools 使用 python3.9 + 腾讯云 AccessKey 利用工具 使用之前请先填写config.ini配置文件 Usage python3 Tencent_rce.py -h Scanner python3 Tencent_rce.py -s 生成CSV

<img src="> 13 Dec 20, 2022
This repository contains code examples and documentation for learning how applications can be developed with Kubernetes

BigBitBus KAT Components Click on the diagram to enlarge, or follow this link for detailed documentation Introduction Welcome to the BigBitBus Kuberne

51 Oct 16, 2022
Copy a Kubernetes pod and run commands in its environment

copypod Utility for copying a running Kubernetes pod so you can run commands in a copy of its environment, without worrying about it the pod potential

Memrise 4 Apr 08, 2022
Emissary - open source Kubernetes-native API gateway for microservices built on the Envoy Proxy

Emissary-ingress Emissary-Ingress is an open-source Kubernetes-native API Gateway + Layer 7 load balancer + Kubernetes Ingress built on Envoy Proxy. E

Emissary Ingress 4k Dec 31, 2022
Chartreuse: Automated Alembic migrations within kubernetes

Chartreuse: Automated Alembic SQL schema migrations within kubernetes "How to automate management of Alembic database schema migration at scale using

Wiremind 8 Oct 25, 2022
Hubble - Network, Service & Security Observability for Kubernetes using eBPF

Network, Service & Security Observability for Kubernetes What is Hubble? Getting Started Features Service Dependency Graph Metrics & Monitoring Flow V

Cilium 2.4k Jan 04, 2023
Self-hosted, easily-deployable monitoring and alerts service - like a lightweight PagerDuty

Cabot Maintainers wanted Cabot is stable and used by hundreds of companies and individuals in production, but it is not actively maintained. We would

Arachnys 5.4k Dec 23, 2022