Ignite Kubernetes Community Meeting Presentation

Ignite Kubernetes Community Meeting Presentation

Presented during the Kubernetes Community Meeting
Online slides: https://docs.google.com/presentation/d/1sQHGW93t-LnZZFTTAUyPX80oDfoeTcmADiuZR8bnw90/edit
Recording: https://youtu.be/c1GzVlofSm4
Location: Online

111ac0b31c0dc219c84ddadedc8e5f67?s=128

Lucas Käldström

August 29, 2019
Tweet

Transcript

  1. 1 Fire up your VMs with Weave Ignite Lucas Käldström

    - CNCF Ambassador 29th of August, 2019 - Kubernetes Community Meeting Image credit: @ashleymcnamara
  2. 2 $ whoami Lucas Käldström, soon-to-be University Student, 19 yo

    CNCF Ambassador, Certified Kubernetes Administrator and (former) Kubernetes WG/SIG Lead KubeCon Speaker in Berlin, Austin, Copenhagen, Shanghai & Seattle KubeCon Keynote Speaker in Barcelona Kubernetes approver and subproject owner, active in the community for 3+ years. Got kubeadm to GA. Weave Ignite creator Driving luxas labs which currently performs contracting for Weaveworks
  3. 3 https://www.weave.works/blog/fire-up-your-vms-with-weave-ignite

  4. 4 Weave Ignite “An open source Virtual Machine (VM) manager

    with a container UX and built-in GitOps management” - Firecracker MicroVMs & OCI containers to unify containers and VMs. - Works in a GitOps fashion; manages VMs declaratively
  5. 5 Why? Originates from my Finnish conscription time; where I

    worked on programming tasks We needed to: a) Use open source (no “normal” VM licenses) b) Run legacy applications with “special requirements” c) Integrate with containers
  6. 6 How? BUT: Firecracker is HARD to use (for those

    who happen to not be KVM devs)
  7. 7

  8. 8 Weave Ignite User Stories “I can boot a VM

    in less than a second!” “I can run fast & secure VMs alongside containers” “I can declaratively manage a fleet of VMs through Git” “I can boot up a Kubernetes cluster in seconds”
  9. 9 # Let's run the weaveworks/ignite-ubuntu docker image as a

    VM # Use 2 vCPUs and 1GB of RAM, enable automatic SSH access and name it my-vm ignite run weaveworks/ignite-ubuntu \ --cpus 2 \ --memory 1GB \ --ssh \ --name my-vm # List running VMs ignite ps # List Docker (OCI) and kernel images imported into Ignite ignite images ignite kernels # Get the boot logs of the VM ignite logs my-vm # SSH into the VM ignite ssh my-vm Demo!
  10. 10 Ways to use Ignite - Docker-like UX - imperatively,

    using the CLI - GitOps or Manifest Directory - declaratively, using YAML/JSON files - (Future) Virtual Kubelet - declaratively, using the Kubernetes API
  11. 11 Design & Architecture Use OCI for: a) content distribution

    b) monitoring processes c) process isolation Device Mapper & DHCP bridges containers + VMs
  12. 12 Building VM images (the new way)

  13. 13 GitOps all the things! a) Store desired state in

    Git b) Run an app reconciling desired => actual state c) App writes status back to Git d) Can observe diffs between observed and desired state
  14. 14 => gitops-toolkit Prototype to make any app Git-backed Generic

    framework built upon k8s.io/apimachinery Common code broken out from Ignite
  15. 15 Run Kubernetes on top of Ignite VMs - kind

    (yet TODO) - kubeadm HA sample guide - Footloose (like docker-compose) - Cluster API providers
  16. 16 Read the Docs

  17. Thank you! @luxas on Github @luxas on Kubernetes’ Slack @kubernetesonarm

    on Twitter lucas@luxaslabs.com