K8s Study Prep - K8s Tasks by Administrative Topic

Mindwatering Incorporated

Author: Tripp W Black

Created: 11/30/2019 at 06:14 PM

 

Category:
Linux
Kubernetes

K8s Administrative Tasks/Bookmarks by Topic

Notes:
This learning guide reuses the LF exam prep doc's study tasks and tries to locate kubernetes.io doc pages with tasks under each of those topics.
The idea was to help me learn where to find stuff on various admin tasks while learning K8s and taking the LFS458 class.

Some of the pages w/in the k8s.io search are outside the docs and tasks section. I included those here so I knew where I found info on tasks I was trying to complete, but couldn't find, within the k8s.io site docs.
??? - Indicates documentation content linked to Github or other external sites and not w/in kubernetes.io.


Scheduling (5%)
Use label selectors to schedule Pods.
Labels - https://kubernetes.io/blog/2017/03/advanced-scheduling-in-kubernetes/
Labels/Selectors with Scheduling - https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
Init Containers - https://kubernetes.io/docs/concepts/workloads/pods/init-containers/

The role of DaemonSets.
DaemonSet - https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/

How resource limits can affect Pod scheduling.
Limits by Namespace - https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/
Limits by Pod/Deployment - https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resource/

How to run multiple schedulers and how to configure Pods to use them.
Configure Multiple Schedulers - https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/

Manually schedule a pod without a scheduler.
Static Pods - https://kubernetes.io/docs/tasks/configure-pod-container/static-pod/
CronJob - https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/
Job (Run Pods to Completion) - https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/

Display scheduler events.
Display Pod/Node Events (kubectl get pods & kubectl get events) - https://kubernetes.io/docs/tasks/debug-application-cluster/#example-debugging-pending-pods

How to configure the K8s scheduler.
K8s Scheduler - https://kubernetes.io/docs/concepts/scheduling/kube-scheduler/#kube-scheduler-implementation
Scheduler Performance Tuning - https://kubernetes.io/docs/concepts/scheduling/scheduler-perf-tuning/



Logging/Monitoring (5%)
How to monitor all cluster components.
General Logging (K8s does none itself) - https://kubernetes.io/docs/concepts/cluster-administration/logging/
Monitor Node Health - https://kubernetes.io/docs/tasks/debug-application-cluster/monitor-node-health/#use-in-other-environment
Monitor Node Kernel - https://kubernetes.io/docs/tasks/debug-application-cluster/monitor-node-health/#kernel-monitor
Resource Usage Monitoring - https://kubernetes.io/docs/tasks/debug-application-cluster/resource-usage-monitoring/
Use Kubectl JSONPath - https://kubernetes.io/docs/reference/kubectl/jsonpath/

How to monitor applications.
Application Introspection/Debugging - https://kubernetes.io/docs/tasks/debug-application-cluster/
View Container Logs and Exec - https://kubernetes.io/docs/reference/kubectl/cheatsheet/#interacting-with-running-pods

Manage cluster component logs.
Troubleshooting - Listing Cluster - https://kubernetes.io/docs/tasks/debug-application-cluster/debug-cluster/
Troubleshooting - Raw Log Locations - https://kubernetes.io/docs/tasks/debug-application-cluster/debug-cluster/#looking-at-logs
< this seems to be in transition:
- Raw log locations moving from /var/log/<file> to /var/log/pods/<task/pod folder/<files>
- heapster deprecated. New alpha prometheus replacements look most promising >

Manage application logs.
View Container Logs and Exec - https://kubernetes.io/docs/reference/kubectl/cheatsheet/#interacting-with-running-pods
Debug App Pods/Controllers - https://kubernetes.io/docs/tasks/debug-application-cluster/debug-application/



App. Lifecycle Mgmt (8%)
Use Deployments, perform rolling updates and rollbacks.
Create Deployment - https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#creating-a-deployment
Updating Deployment - https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#updating-a-deployment
Rolling Back Deployment - https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#rolling-back-a-deployment
Pause/Resume Deployment - https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#pausing-and-resuming-a-deployment
Create Stateless App via Deployment - https://kubernetes.io/docs/tasks/run-application/run-stateless-application-deployment/
Create Single-Instance App via Deployment with PersistentVolume - https://kubernetes.io/docs/tasks/run-application/run-single-instance-stateful-application/
Create Replicated Stateful (StatefulSet) Application - https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/
Scale a StatefulSet - https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/#scaling-statefulsets
Delete a StatefulSet - https://kubernetes.io/docs/tasks/run-application/delete-stateful-set/#deleting-a-statefulset

Various ways to configure applications.
kubectl create deployment - https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#-em-deployment-em-
Kubectl apply - https://kubernetes.io/docs/reference/kubectl/cheatsheet/#apply
kubectl apply - https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#apply
Kubectl run - https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#run
Kubectl edit - https://kubernetes.io/docs/reference/kubectl/cheatsheet/#editing-resources
kubectl edit (deployment) - https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#edit
kubectl replace (deployment) - https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#replace
kubectl scale (deployment) - https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commanmwln1213#
kubectl run/generate convention - https://kubernetes.io/docs/reference/kubectl/conventions/#best-practices

Manage/Restrict Pod Resources - https://kubernetes.io/docs/concepts/cluster-administration/manage-deployment/
Configure Liveness/Readiness/Startup Probes - https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/
Configure Pod with Init Container - https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-initialization/#create-a-pod-that-has-an-init-container
Configure Handlers to Container Lifecycle Events - https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/
Decouple image configs with ConfigMaps - https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/#create-a-configmap
Secrets and ConfigMaps Generators from Files - https://kubectl.docs.kubernetes.io/pages/app_management/secrets_and_configmaps.html
Secret Data Base-64 Encode - https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/#convert-your-secret-data-to-a-base-64-representation

Scale applications.
Scale Deployment - https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#scaling-a-deployment
Autoscale Deployment with Kubectl - https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#support-for-horizontal-pod-autoscaler-in-kubectl
Horizontal Pod Autoscaler Walkthrough - https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/
Scale a StatefulSet - https://kubernetes.io/docs/tasks/run-application/scale-stateful-set/#scaling-statefulsets

Primitives necessary to create a self-healing application.
Pod Workloads - https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/
Configure Liveness/Readiness/Startup Probes - https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/



Cluster Maintenance (11%)
K8s cluster upgrade process.
Upgrade Kubeadm Clusters - https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/
Kubeadm Certificates Updates - https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/#check-certificate-expiration
TLS Certificate Rotation - https://kubernetes.io/docs/tasks/tls/certificate-rotation/#overview
DaemonSet Rolling Updates - https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/
Urgent Upgrade Notes - https://kubernetes.io/docs/setup/release/notes/#urgent-upgrade-notes
DaemonSet Rolling Update - https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/#daemonset-update-strategy
DaemonSet Rollback - https://kubernetes.io/docs/tasks/manage-daemon/rollback-daemon-set/#performing-a-rollback-on-a-daemonset

Facilitate operating system upgrades.
Cluster Node Upgrade of Kubeadm and Kubelet - https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/

Implement backup and restore methodologies.
Backup and Restoring ETCD - https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/#backing-up-an-etcd-cluster
Built-in ETCDCTL Snapshot - https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/#built-in-snapshot



Security (12%)
Configure authentication and authorization.
Cluster Security Overview (General) - https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/
Pod Security Policies - https://kubernetes.io/docs/concepts/policy/pod-security-policy/
Pod Security Context/Implementation - https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
RBAC (Role-Based Access Control) Rules - https://kubernetes.io/docs/reference/access-authn-authz/rbac/
Kubectl Role and ClusterRole Commands - https://kubernetes.io/docs/reference/access-authn-authz/rbac/#command-line-utilities
Node Kubelet Authentication - https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet-authentication-authorization/
Programmatic API Access - https://kubernetes.io/docs/tasks/administer-cluster/access-cluster-api/#programmatic-access-to-the-api
ServiceAccount Token API Access - https://kubernetes.io/docs/reference/access-authn-authz/authentication/#service-account-tokens
API Auth. Static Password File - https://kubernetes.io/docs/reference/access-authn-authz/authentication/#static-password-file
API Auth. Token File - https://kubernetes.io/docs/reference/access-authn-authz/authentication/#static-token-file

Use K8s security primitives.
Authorization Overview - https://kubernetes.io/docs/reference/access-authn-authz/authorization/
RBAC Authorization - https://kubernetes.io/docs/reference/access-authn-authz/rbac/
RBAC Auth. Role Bind - https://kubernetes.io/docs/reference/access-authn-authz/rbac/#rolebinding-and-clusterrolebinding
ABAC Authorization - https://kubernetes.io/docs/reference/access-authn-authz/abac/
Node Authorization - https://kubernetes.io/docs/reference/access-authn-authz/node/
Webhook Mode - https://kubernetes.io/docs/reference/access-authn-authz/webhook/

Configure network policies.
Declare Network Policy (Pod-to-Pod) - https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy/
Calico Network Policy - https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/calico-network-policy/
Cilium Network Policy - https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/cilium-network-policy/
Kube-router Network Policy - https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/kube-router-network-policy/
Romana Network Policy - https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/romana-network-policy/
Weave Net Network Policy - https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/weave-network-policy/

Create and manage TLS certificates for cluster components.
Kubelet Certs Rotation - https://kubernetes.io/docs/tasks/tls/certificate-rotation/
Manage TLS Cluster Certs - https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster/
Setup Ingress TLS - https://kubernetes.io/docs/concepts/services-networking/ingress/#tls

Work with images securely.
Images and Updating Settings - https://kubernetes.io/docs/concepts/containers/images/
Image Tagging and Naming - https://kubectl.docs.kubernetes.io/pages/app_management/container_images.html
Pull Private Repository Image - https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/

Define security contexts.
Pod/Container Security Context Config. - https://kubernetes.io/docs/tasks/configure-pod-container/security-context/

Secure persistent key value store.
Secrets for Apps - https://kubernetes.io/docs/concepts/configuration/secret/
Distribute/Inject Secrets - https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/
Encrypt Data at Rest - https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/



Storage (7%)
Creating and using persistent volumes.
Configure Pod Persistent Storage with PersistentVolume (PV) and Claim (PVC) - https://kubernetes.io/docs/tasks/configure-pod-container/configure-persistent-volume-storage/

Using access modes with volumes.
Access Modes - https://kubernetes.io/docs/concepts/storage/persistent-volumes/#persistent-volumes
Using Group ID (GID) for Access to Volume - https://kubernetes.io/docs/tasks/configure-pod-container/configure-persistent-volume-storage/#access-control

Using persistent volume claims primitive.
Pod Persistent Volume - PV - https://kubernetes.io/docs/tasks/configure-pod-container/configure-persistent-volume-storage/#create-a-persistentvolume
Pod Claim - PVC - https://kubernetes.io/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims

Using K8s storage objects.
Storage Volumes - https://kubernetes.io/docs/concepts/storage/volumes/
Life of Pod EmptyDir - https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/#configure-a-volume-for-a-pod
Raw Block Volume Support - https://kubernetes.io/docs/concepts/storage/persistent-volumes/#raw-block-volume-support
Snapshot and Restore (CSI Only) - https://kubernetes.io/docs/concepts/storage/persistent-volumes/#volume-snapshot-and-restore-volume-from-snapshot-support

Configure apps with persistent storage.
Writing Portable Volume Configs - https://kubernetes.io/docs/concepts/storage/persistent-volumes/#writing-portable-configuration
Local Host Path - https://kubernetes.io/docs/tasks/configure-pod-container/configure-persistent-volume-storage/#create-a-persistentvolume
Storage Volume Plugins - https://kubernetes.io/docs/concepts/storage/storage-classes/#provisioner
NFS Example - https://kubernetes.io/docs/concepts/storage/volumes/#nfs
??? NFS Example - https://github.com/kubernetes/examples/tree/master/staging/volumes/nfs
ISCSI Example - https://kubernetes.io/docs/concepts/storage/volumes/#iscsi
??? ISCSI K8s Example - https://github.com/kubernetes/examples/tree/master/volumes/iscsi



Troubleshooting (10%)
Troubleshoot app failure.
Debugging/Troubleshooting Apps - https://kubernetes.io/docs/tasks/debug-application-cluster/debug-application/
Debugging Apps - https://kubernetes.io/docs/tasks/debug-application-cluster/debug-application-introspection/#example-debugging-pending-pods
App Shell for Troubleshooting - https://kubernetes.io/docs/tasks/debug-application-cluster/get-shell-running-container/#getting-a-shell-to-a-container
Debug App Services - https://kubernetes.io/docs/tasks/debug-application-cluster/debug-service/
App Introspection/Debugging - https://kubernetes.io/docs/tasks/debug-application-cluster/
Debug Pods - https://kubernetes.io/docs/tasks/debug-application-cluster/debug-pod-replication-controller/
Debug Init Controller/Containers - https://kubernetes.io/docs/tasks/debug-application-cluster/debug-init-containers/
Kubectl Logs - https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#logs

Troubleshoot control plane failure.
Troubleshoot Clusters - https://kubernetes.io/docs/tasks/debug-application-cluster/debug-cluster/
Troubleshoot Cluster Master Logs - https://kubernetes.io/docs/tasks/debug-application-cluster/debug-cluster/#master
Troubleshoot Worker Logs - https://kubernetes.io/docs/tasks/debug-application-cluster/debug-cluster/#worker-nodes

Troubleshoot worker node failure.
Debug Worker Node Example - https://kubernetes.io/docs/tasks/debug-application-cluster/debug-application-introspection/#example-debugging-a-down-unreachable-node

Troubleshoot networking.
DNS Troubleshooting - https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/#known-issues
Few Cluster Networking Overlays Incl. Troubleshooting - https://kubernetes.io/docs/concepts/cluster-administration/networking/#how-to-implement-the-kubernetes-networking-model
Display Pod Net. Events (kubectl get pods & kubectl get events) - https://kubernetes.io/docs/tasks/debug-application-cluster/#example-debugging-pending-pods
??? - Troubleshoot Networking Github - https://github.com/feiskyer/kubernetes-handbook/blob/master/en/troubleshooting/network.md



Core Concepts (19%)
Understand K8s API primitives.
Basic Objects:
- Pods
- - Overview - https://kubernetes.io/docs/concepts/workloads/pods/pod-overview/
- - Overview - https://kubernetes.io/docs/concepts/workloads/pods/pod/
- - Init Containers - https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
- - Ephemeral Containers - https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/
- Services (Controller)
- - Overview - https://kubernetes.io/docs/concepts/services-networking/service/
- Volumes
- - Overview - https://kubernetes.io/docs/concepts/storage/volumes/
- - Persistent Volumes - https://kubernetes.io/docs/concepts/storage/persistent-volumes/
- - Volume Snapshots - https://kubernetes.io/docs/concepts/storage/volume-snapshots/
- - Node Volume Limits - https://kubernetes.io/docs/concepts/storage/storage-limits/
- Namespaces
- - Overview - https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
- - Process Namespace - https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/
- Deployments
- - Overview - https://kubernetes.io/docs/concepts/workloads/controllers/deployment/

Higher-level Abstractions (Rely on Controllers):
- Replica Sets
- - Overview - https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/
- - ReplicationController - https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/
- StatefulSets
- - Overview - https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/
- DaemonSets
- - Overview - https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/
- Job
- - Job Run to Completion - https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/

Other Objects:
- RBAC (Role-Based Access Control)
- - API Authorization - https://kubernetes.io/docs/reference/access-authn-authz/rbac/
- Secrets (Controller)
- - Overview - https://kubernetes.io/docs/concepts/configuration/secret/
- - Secret Data Encryption at Rest - https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/
- ConfigMaps
- - Configuring for Pods - https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/

Understand K8s cluster architecture.
Pod/Cluster Network Model - https://kubernetes.io/docs/concepts/cluster-administration/networking/#the-kubernetes-network-model
Components - https://kubernetes.io/docs/concepts/overview/components/
Container Images - https://kubernetes.io/docs/concepts/containers/images/
Container Environmental Variables - https://kubernetes.io/docs/concepts/containers/container-environment-variables/
Master-Node Communication - https://kubernetes.io/docs/concepts/architecture/master-node-communication/
Cloud Controller Manager Concepts - https://kubernetes.io/docs/concepts/architecture/master-node-communication/

Understand Services and other network primitives.
Master Components - https://kubernetes.io/docs/concepts/overview/components/#master-components


Networking (11%)
Understand the networking configuration on the cluster nodes.
K8s Services - https://kubernetes.io/docs/concepts/services-networking/service/

Understand Pod networking concepts.
K8s Container to Service Networking - https://kubernetes.io/docs/concepts/services-networking/connect-applications-service/
What is POD and Shared IP - https://kubernetes.io/docs/concepts/workloads/pods/pod/#what-is-a-pod

Understand service networking.
Expose/Publish Services (ServiceTypes- All Four) - https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types

Deploy and configure network load balancer.
LoadBalancer (External Cloud) - https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer

Know how to use ingress rules.
Ingress Rules - https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-rules
Ingress Controllers Available for Ingress Resources - https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/

Know how to configure and use the cluster DNS.
Customize DNS Service - https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/
DNS Services/Pods Overview - https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/
DNS Debugging/Troubleshooting - https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/

Understand CNI.
CNI w/Project Calico - Romana - Weave - Flannel - https://kubernetes.io/docs/concepts/cluster-administration/networking/#the-kubernetes-network-model



Installation, Configuration, and Validation (12%)
Design a K8s cluster.
Design/Plan a Cluster - https://kubernetes.io/docs/concepts/cluster-administration/cluster-administration-overview/#planning-a-cluster
PKI Certificates and Manual Configuration - https://kubernetes.io/docs/setup/best-practices/certificates/
Large Cluster Limits - https://kubernetes.io/docs/setup/best-practices/cluster-large/
Container Runtimes (Docker/Cri-O/Containerd/frankti) - https://kubernetes.io/docs/setup/production-environment/container-runtimes/
K8s Deployment Assistance Tools-KOPS on AWS - https://kubernetes.io/docs/setup/production-environment/tools/kops/
K8s Deployment Assistance Tools-KRIB (Rebar) on Baremetal - https://kubernetes.io/docs/setup/production-environment/tools/krib/
K8s Deployment Assistance Tools-Kubespray GCE/AWS/vSphere/Baremetal - https://kubernetes.io/docs/setup/production-environment/tools/kubespray/
K8s Deployment - On Prem VM - Cloudstack - https://kubernetes.io/docs/setup/production-environment/on-premises-vm/cloudstack/
K8s Deployment - On Prem VM - oVirt - https://kubernetes.io/docs/setup/production-environment/on-premises-vm/ovirt/
K8s Deployment - Adding Windows Node - https://kubernetes.io/docs/setup/production-environment/windows/user-guide-windows-nodes/

Install K8s masters and nodes.
Kubeadm Install (incl. kubelet and kubectl) - https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/
Single Master Control Plane w/Kubeadm - https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/
Kubectl Only Install - https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl-on-linux
Kubelet Config w/Kubeadm (incl local binary path locations) - https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/kubelet-integration/

Configure secure cluster communications.
PKI Certificates Overview - https://kubernetes.io/docs/setup/best-practices/certificates/
Kubeadm Certificate Mgmt. - https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/

Configure a highly-available K8s cluster.
HA Cluster Setup w/Kubeadm - https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/
HA ETC Cluster Setup w/Kubeadm - https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm/

Know where to get the K8s release binaries.
Binary Locations - https://kubernetes.io/docs/setup/release/notes/#downloads-for-v1-16-0

Provision underlying infrastructure to deploy a K8s cluster.
Host/Node Prerequisites - https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/#before-you-begin

Choose a network solution.
Networking/Network Policy Options - https://kubernetes.io/docs/concepts/cluster-administration/addons/#networking-and-network-policy
Calico w/Kubeadm - https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/calico-network-policy/#creating-a-local-calico-cluster-with-kubeadm
Roman w/Kubeadm -https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/romana-network-policy/#installing-romana-with-kubeadm
Weave w/Kubeadm - https://kubernetes.io/docs/tasks/administer-cluster/network-policy-provider/weave-network-policy/

Choose your K8s infrastructure configuration.
ETCD HA Stacked/External Options - https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/ha-topology/
Large Cluster - https://kubernetes.io/docs/setup/best-practices/cluster-large/

Run end-to-end tests on your cluster.
Kubectl Cluster Mgmt. - Cluster-Info - https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#cluster-info
Kubectl Get ComponetStatus -o yaml - https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.16/#list-componentstatus-v1-core
Node Conformance Test - https://kubernetes.io/docs/setup/best-practices/node-conformance/#running-node-conformance-test
??? E2E Testing - https://kubernetes.io/blog/2019/03/22/kubernetes-end-to-end-testing-for-everyone/

Analyze end-to-end tests results.
??? Kubetest - https://github.com/kubernetes/test-infra/tree/master/kubetest

Run Node end-to-end tests.
Validate Node Setup - https://kubernetes.io/docs/setup/best-practices/node-conformance/
??? Node E2E Testing - https://github.com/kubernetes/community/blob/master/contributors/devel/e2e-node-tests.md

Install and use kubeadm to install, configure, and manage K8s clusters.
Kubeadm Install (incl. kubelet and kubectl) - https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/
Kubeadm Install and teardown - https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/
Single Master Control Plane w/Kubeadm - https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/
HA Cluster Setup w/Kubeadm - https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/
HA ETC Cluster Setup w/Kubeadm - https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm/






previous page

×