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)
IP address management (IPAM) and data center infrastructure management (DCIM) tool.

NetBox is an IP address management (IPAM) and data center infrastructure management (DCIM) tool. Initially conceived by the network engineering team a

NetBox Community 11.8k Jan 07, 2023
Simple ssh overlay for easy, remote server management written in Python GTK with paramiko

Simple "ssh" overlay for easy, remote server management written in Python GTK with paramiko

kłapouch 3 May 01, 2022
Remote Desktop Protocol in Twisted Python

RDPY Remote Desktop Protocol in twisted python. RDPY is a pure Python implementation of the Microsoft RDP (Remote Desktop Protocol) protocol (client a

Sylvain Peyrefitte 1.6k Dec 30, 2022
Universal Command Line Interface for Amazon Web Services

aws-cli This package provides a unified command line interface to Amazon Web Services. Jump to: Getting Started Getting Help More Resources Getting St

Amazon Web Services 13.3k Jan 01, 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
Ingress patch example by Kustomize

Ingress patch example by Kustomize

Jinu 10 Nov 14, 2022
Webinar oficial Zabbix Brasil. Uma série de 4 aulas sobre API do Zabbix.

Repositório de scripts do Webinar de API do Zabbix Webinar oficial Zabbix Brasil. Uma série de 4 aulas sobre API do Zabbix. Nossos encontros [x] 04/11

Robert Silva 7 Mar 31, 2022
Python job scheduling for humans.

schedule Python job scheduling for humans. Run Python functions (or any other callable) periodically using a friendly syntax. A simple to use API for

Dan Bader 10.4k Jan 02, 2023
CDK Template of Table Definition AWS Lambda for RDB

CDK Template of Table Definition AWS Lambda for RDB Overview This sample deploys Amazon Aurora of PostgreSQL or MySQL with AWS Lambda that can define

AWS Samples 5 May 16, 2022
DC/OS - The Datacenter Operating System

DC/OS - The Datacenter Operating System The easiest way to run microservices, big data, and containers in production. What is DC/OS? Like traditional

DC/OS 2.3k Jan 06, 2023
Tools and Docker images to make a fast Ruby on Rails development environment

Tools and Docker images to make a fast Ruby on Rails development environment. With the production templates, moving from development to production will be seamless.

1 Nov 13, 2022
🐳 RAUDI: Regularly and Automatically Updated Docker Images

🐳 RAUDI: Regularly and Automatically Updated Docker Images RAUDI (Regularly and Automatically Updated Docker Images) automatically generates and keep

SecSI 534 Dec 29, 2022
The low-level, core functionality of boto 3.

botocore A low-level interface to a growing number of Amazon Web Services. The botocore package is the foundation for the AWS CLI as well as boto3. On

the boto project 1.2k Jan 03, 2023
Containerize a python web application

containerize a python web application introduction this document is part of GDSC at the university of bahrain you don't need to follow along, fell fre

abdullah mosibah 1 Oct 19, 2021
Cado Response Integration with Amazon GuardDuty using AWS Lambda

Cado Response Integration with Amazon GuardDuty using AWS Lambda This repository contains a simple example where: An alert is triggered by GuardDuty T

Cado Security 4 Mar 02, 2022
Daemon to ban hosts that cause multiple authentication errors

__ _ _ ___ _ / _|__ _(_) |_ ) |__ __ _ _ _ | _/ _` | | |/ /| '_ \/ _` | ' \

Fail2Ban 7.8k Jan 09, 2023
Quick & dirty controller to schedule Kubernetes Jobs later (once)

K8s Jobber Operator Quickly implemented Kubernetes controller to enable scheduling of Jobs at a later time. Usage: To schedule a Job later, Set .spec.

Jukka Väisänen 2 Feb 11, 2022
MicroK8s is a small, fast, single-package Kubernetes for developers, IoT and edge.

MicroK8s The smallest, fastest Kubernetes Single-package fully conformant lightweight Kubernetes that works on 42 flavours of Linux. Perfect for: Deve

Ubuntu 7.1k Jan 08, 2023