Terraforming Kubernetes: Github Actions
This course is a practical implementation of enabling others to leverage your Kubernetes resources with a practical hands-on example by giving GitHub Actions the correct permissions to provision a PostgreSQL database on Kubernetes.
Yup, you read that right PostgresSQL on Kubernetes. That's the hidden gem in this course -- learning how to deploy PostgreSQL to Kubernetes.
To do this, we'll be covering the following topics:
- Kubernetes Service Accounts
- Kubernetes Roles & Role Bindings
- Config files for Service Accounts
- StatefulSets and Persistent Volume claims
- Automating updates via GitHub Actions
- And more!
Kubernetes is an incredible platform and this course is meant to help you dive deeper into using it and get better at deploying your software in the process!
Prerequisites
- Watch Terraforming Kubernetes on Linode or have experience with Kubernetes clusters
- Git installed
- Terraform installed
- Kubectl installed
Resources
Lessons
1
Welcome
2:09
2
Overview and Live Run Through
9:57
3
Clone The Rapid-Fire Terraforming Kubernetes Repo
9:09
4
Creating our Service Account
5:11
5
A Kubernetes Role
7:05
6
RoleBinding for Service Account
4:48
7
Iterating on Role Permissions
7:51
8
Kubenertes Config File for a Service Account
7:17
9
Github Actions Verify Workflow
9:40
10
ConfigMaps for the Postgres Deployment
4:25
11
Persistent Volume Clains on LKE
6:03
12
StatefulSets for PostgreSQL Databases
10:37
13
LoadBalancing Service for PostgreSQL
4:52
14
PSQL Pod for Testing Cluster IPs
12:41
15
Port Forwarding
3:29
16
On or Off via Github Actions
8:01
17
Thank you and next steps
2:14