Code Monkey home page Code Monkey logo

kubernetes1-day1's Introduction

kubernetes 1 day 1

  • Class intro and expectations
  • Intro to container orchestration
  • Why kubernetes?
  • Phippy goes to the zoo
  • Install Docker with Kubernetes
  • Deploy a kubernetes app

introductions

  • Keep it quick
  • Who are you?
  • What do you do?
  • What do you want to do with Kubernetes?

intro to container orchestration

Container orchestration automates the deployment, management, scaling, and networking of containers. Together these features form the basis for a distributed operating system.

A more in depth look at these features:

  • Provisioning and deployment
  • Configuration and scheduling
  • Resource allocation
  • Container availability
  • Scaling or removing containers based on balancing workloads across your infrastructure
  • Load balancing and traffic routing
  • Monitoring container health
  • Configuring applications based on the container in which they will run
  • Keeping interactions between containers secure

Popular Orchestrators:

  • Kubernetes - Kubernetes continues to gain popularity with DevOps practitioners because it allows them to deliver a self-service Platform-as-a-Service (PaaS) that creates a hardware layer abstraction for development teams. Kubernetes is also extremely portable.

  • Docker Swarm - Slightly less extensible and complex than Kubernetes, it’s a good choice for Docker enthusiasts who want an easier and faster path to container deployments.

  • Apache Mesos - Mesos’ lightweight interface lets it scale easily up to 10,000 nodes (or more) and allows frameworks that run on top of it to evolve independently.

  • Google Borg - Google's Borg system is a cluster manager that runs hundreds of thousands of jobs, from many thousands of different applications, across a number of clusters each with up to tens of thousands of machines. This private infrastructure runs the lion share of Google's services.

Links:

why kubernetes?

Containers are a good way to bundle and run your applications. In a production environment, you need to manage the containers that run the applications and ensure that there is no downtime. For example, if a container goes down, another container needs to start. Wouldn't it be easier if this behavior was handled by a system?

That's how Kubernetes comes to the rescue! Kubernetes provides you with a framework to run distributed systems resiliently. It takes care of scaling and failover for your application, provides deployment patterns, and more. For example, Kubernetes can easily manage a canary deployment for your system.

Links:

intro to kubernetes

The Illustrated Children’s Guide to Kubernetes is a simple, gentle answer a father gave his daughter when she inquisitively asked about Kubernetes. It’s dedicated to all the parents who try to explain software engineering to their children.

The star of The Illustrated Children’s Guide to Kubernetes, Phippy and her friends explain the core concepts of Kubernetes in simple terms.

Links:

install docker

Install and start docker so you can start playing with it

Once docker has been installed go into settings and enable the kubernetes checkbox. Wait for it to start. It will also install kubectl for interacting with kubernets.

It is also acceptable to use mini-kube or any other kubernetes cluster you can access for this class.

Past install issues:

deploy your first kubernetes app

Get comfortable building and deploying a kubernetes app

build your container

docker build . -t helloworld:v0.1

view the config for your local kubectl instance

kubectl config view

deploy application

kubectl apply -f deployment.yml

view the deployment

kubectl get deployments

view the pods

kubectl get pods

view events related to the application spinning up

kubectl get events

deploy a service so that you can access your application

kubectl apply -f service.yml

view the service

kubectl get svc

navigate to http://localhost:8080/ to see the application output

kubernetes1-day1's People

Contributors

allen13 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.