installing-and-configuring-kubernetes-slides
installing-and-configuring-kubernetes-slides
Anthony E. Nocentino
ENTERPRISE ARCHITECT @ CENTINO SYSTEMS
@nocentino www.centinosystems.com
Course Overview
Introduction
Exploring Kubernetes Architecture
Installing and Configuring Kubernetes
Working with Your Kubernetes Cluster
Installation Considerations
Overview
Installation Overview
Getting Kubernetes
Installing a Cluster with kubeadm
Creating a Cluster in the Cloud
Installation Considerations
Where to install?
Cloud
IaaS - Virtual Machines
PaaS - Managed Service
On-Premises
Bare Metal
Virtual Machines
Which one should you choose?
Installation Considerations (con’t)
Cluster Networking
Scalability
High Availability
Disaster Recovery
Installation Methods
Container Runtime
Linux - Ubuntu/RHEL Interface (CRI)
Connectivity between all Nodes
API Server
Control etcd 2379-2380 API/etcd
Scheduler
Plane Scheduler 10251 Self
Node Controller
Controller Manager
10252 Self
Manager
Kubelet 10250 Control Plane
Kubelet
Maintained on GitHub
https://github.com/kubernetes/kubernetes
Install and Configure Create Your Cluster Configure Pod Join Nodes to Your
Packages Networking Cluster
Required Packages
containerd
kubelet
kubeadm
kubectl
apt-get update
apt-get install -y kubelet kubeadm kubectl
apt-mark hold kubelet kubeadm kubectl containerd
Control
Plane Node Node Node
Node
https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/
kubeadm Created kubeconfig Files
Used to define how to connect to your Cluster
Client certificates
Cluster API Server network location
/etc/kubernetes
admin.conf (kubernetes-admin)
kubelet.conf
controller-manager.conf
scheduler.conf
Static Pod Manifests
Manifest describes a configuration
/etc/kubernetes/manifests
etcd
API Server
Controller Manager
Scheduler
Watched by the kubelet started automatically when
the system starts and over time
Overlay networking
https://kubernetes.io/docs/concepts/cluster-administration/networking/
Creating a Control Plane Node
wget https://docs.projectcalico.org/manifests/calico.yaml
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
Download Cluster
Install Packages kubeadm join
Information
https://aws.amazon.com/getting-started/projects/deploy-kubernetes-app-amazon-
eks/
https://cloud.google.com/kubernetes-engine/docs/how-to/
https://docs.microsoft.com/en-us/azure/aks/kubernetes-walkthrough
Demo
Creating a Managed Service Cluster
• Azure Kubernetes Services (AKS)
Installation Considerations
Summary
Installation Overview
Getting Kubernetes
Installing a Cluster with kubeadm
Creating a Cluster in the Cloud
What’s Next!
Working With Your Cluster