760 likes | 1.67k Views
Getting Started with Kubernetes and Rancher 2.0. Rancher Labs Training. #rancherk8s. Today’s objectives. Technical introduction to Kubernetes using Rancher Keep the slides to a minimum Demo, then demo some more Questions are always welcome
E N D
Getting Started with Kubernetes and Rancher 2.0 Rancher Labs Training #rancherk8s
Today’s objectives Technical introduction to Kubernetes using Rancher Keep the slides to a minimum Demo, then demo some more Questions are always welcome We won’t leave until all your questions are answered!
Matthew Scheer Community Advocate @matthew_scheer Slack: @matthew • RajashreeMandaogane • Software Engineer • Twitter: @rajashree_28 • Slack: rajashree • Github: mrajashree
For the purpose of this training, we’re assuming you understand basic Docker concepts…. #rancherk8s
Resources - docs • https://rancher.com/docs/rancher/v2.x/en/quick-start-guide/ #rancherk8s
Resources - forums http://slack.rancher.io http://forums.rancher.com #rancherk8s
Rancher & Kubernetes - better together Open source container manager used to run Kubernetes in production Easy-to-use interface for k8s configuration and deployment Infrastructure management across multiple clusters and clouds Automated deployment of the latest k8s release Workload, RBAC, policy, and project management 24x7 enterprise-grade support Rancher Kubernetes Distribution Certified and supported distribution that closely follows the upstream Kubernetes project Rancher Infrastructure Services Storage, networking, load balancing, security, etc.
Kubernetes 101 Pods Deployments Services Config maps Ingresses #rancherk8s
Pods Smallest unit that can be deployed in Kubernetes Consist of one or more containers that are always scheduled together Each pod is given a unique IP address Containers in a pod can speak to each other via localhost #rancherk8s
Pods are confusing If the explanation is confusing, don’t worry too much Pods typically contain only a single container Try to think of pods as containers for the remainder of the training #rancherk8s
Replication Controller and Replica Set Defines the desired scale and state of a group of pods SOT for driving the current state to the desired state (in controller manager)
Deployments Level of abstraction above ReplicaSets Deployments create and update ReplicaSets Allow you to easily scale and perform rolling upgrades #rancherk8s
Services Define a DNS entry that can be used to refer to a group of pods Provide a consistent endpoint for the group of pods Different types: nodePort, clusterIP, loadbalancer #rancherk8s
Services 123.456.789 Service IP
Config maps Allow storing of arbitrary configuration values and files Exposed in pods as either environment variables or as local storage Decoupled storage of configuration from pod spec #rancherk8s
Config Maps apiVersion: v1 kind: ConfigMap metadata: name: dev-config namespace: default data: Item1: qa-stuff Item2: more qa stuff apiVersion: v1 kind: ConfigMap metadata: name: dev-config namespace: default data: Item1: prod-stuff Item2: more prod stuff apiVersion: v1 kind: ConfigMap metadata: name: dev-config namespace: default data: Item1: dev-stuff Item2: more dev stuff
Ingresses Define how traffic outside the cluster is routed to inside the cluster Used to expose Kubernetes services to the world Route traffic to internal services based on factors such as host and path Ingress is usually implemented by a load balancer (Nginx, HAProxy, AWS ELB, etc…) #rancherk8s
Ingresses Ingress Controller Service IP https://my-nginx-app.cluster.comhttps://cluster.com/my-nginx-app
Rancher 2.0 101 Setting up Rancher Clusters Authentication & Security Storage Projects Namespaces Catalogs CLI/API/Kubectl
Join other Rancher users in Slack https://slack.rancher.io #Kubernetes channel
Thank you rancher.com/kubernetes #rancherk8s