Slide 1

Slide 1 text

NEED SOMETHING SIMPLER THAN NEED SOMETHING SIMPLER THAN KUBERNETES? KUBERNETES? I love it but … Martin Ahrer 1

Slide 2

Slide 2 text

MARTIN AHRER MARTIN AHRER Founder and president of Working with Java since 1998 Working with Docker as of early beta releases (pre 1.0) Working in the DevOps space since 2017 Freelance so ware architect / clean-code mentor   Enterprise Java User Group Austria [email protected] @kodepreacher Martin Ahrer 2

Slide 3

Slide 3 text

CONTENT CONTENT Complexity versus Simplicity Comparison to Kubernetes Workload deployment (Job, Group, Task, Service) Demo: Container workload (Spring Boot App) Demo: Native workload (Spring Boot App) Martin Ahrer 3

Slide 4

Slide 4 text

COMPLEXITY VERSUS SIMPLICITY COMPLEXITY VERSUS SIMPLICITY Martin Ahrer 4 . 1

Slide 5

Slide 5 text

Martin Ahrer 4 . 2

Slide 6

Slide 6 text

Martin Ahrer 4 . 3

Slide 7

Slide 7 text

NOMAD VERSUS KUBERNETES NOMAD VERSUS KUBERNETES Martin Ahrer 5 . 1

Slide 8

Slide 8 text

COMPONENTS COMPONENTS Martin Ahrer 5 . 2

Slide 9

Slide 9 text

SERVER NODE SERVER NODE Martin Ahrer 5 . 3

Slide 10

Slide 10 text

CLIENT NODE CLIENT NODE Martin Ahrer 5 . 4

Slide 11

Slide 11 text

DEPLOYMENT DEPLOYMENT Martin Ahrer 5 . 5

Slide 12

Slide 12 text

DEPLOYMENT DEPLOYMENT Martin Ahrer 5 . 6

Slide 13

Slide 13 text

DEPLOYMENT DEPLOYMENT nomad agent -server starts a server agent Martin Ahrer 5 . 6

Slide 14

Slide 14 text

DEPLOYMENT DEPLOYMENT nomad agent -server starts a server agent nomad agent -client starts a client agent Martin Ahrer 5 . 6

Slide 15

Slide 15 text

DEPLOYMENT DEPLOYMENT nomad agent -server starts a server agent nomad agent -client starts a client agent nomad agent -dev starts a agent in server and client role Martin Ahrer 5 . 6

Slide 16

Slide 16 text

DEPLOYMENT DEPLOYMENT nomad agent -server starts a server agent nomad agent -client starts a client agent nomad agent -dev starts a agent in server and client role nomad binary also provides the CLI Martin Ahrer 5 . 6

Slide 17

Slide 17 text

THE 2 MILLION CONTAINER CHALLENGE THE 2 MILLION CONTAINER CHALLENGE Martin Ahrer 5 . 7

Slide 18

Slide 18 text

THE 2 MILLION CONTAINER CHALLENGE THE 2 MILLION CONTAINER CHALLENGE Kubernetes supports clusters up to 5,000 nodes and 300,000 total containers. Martin Ahrer 5 . 7

Slide 19

Slide 19 text

THE 2 MILLION CONTAINER CHALLENGE THE 2 MILLION CONTAINER CHALLENGE Kubernetes supports clusters up to 5,000 nodes and 300,000 total containers. https://kubernetes.io/docs/setup/best- practices/cluster-large/ Martin Ahrer 5 . 7

Slide 20

Slide 20 text

THE 2 MILLION CONTAINER CHALLENGE THE 2 MILLION CONTAINER CHALLENGE Kubernetes supports clusters up to 5,000 nodes and 300,000 total containers. Nomad can scale to cluster sizes exceeding 10,000 nodes. https://kubernetes.io/docs/setup/best- practices/cluster-large/ Martin Ahrer 5 . 7

Slide 21

Slide 21 text

THE 2 MILLION CONTAINER CHALLENGE THE 2 MILLION CONTAINER CHALLENGE Kubernetes supports clusters up to 5,000 nodes and 300,000 total containers. Nomad can scale to cluster sizes exceeding 10,000 nodes. In 2020 HashiCorp Nomad scheduled 2,000,000 Docker containers on 6,100 hosts in 10 AWS regions in 22 minutes. https://kubernetes.io/docs/setup/best- practices/cluster-large/ Martin Ahrer 5 . 7

Slide 22

Slide 22 text

THE 2 MILLION CONTAINER CHALLENGE THE 2 MILLION CONTAINER CHALLENGE Kubernetes supports clusters up to 5,000 nodes and 300,000 total containers. Nomad can scale to cluster sizes exceeding 10,000 nodes. In 2020 HashiCorp Nomad scheduled 2,000,000 Docker containers on 6,100 hosts in 10 AWS regions in 22 minutes. https://kubernetes.io/docs/setup/best- practices/cluster-large/ https://www.hashicorp.com/c2m Martin Ahrer 5 . 7

Slide 23

Slide 23 text

DEMO: CONTAINER WORKLOAD DEMO: CONTAINER WORKLOAD Martin Ahrer 6 . 1

Slide 24

Slide 24 text

Spring Boot 3, JDK 17 Executable Boot JAR packaged as Container Startup time ~ 7.5 sec https://github.com/MartinAhrer/continuousdelivery Martin Ahrer 6 . 2

Slide 25

Slide 25 text

DEMO: NATIVE WORKLOAD DEMO: NATIVE WORKLOAD Martin Ahrer 7 . 1

Slide 26

Slide 26 text

Spring Boot 3, JDK 17, GraalVM 22.3.r17 AOT compiled using GraalVM to native macOS binary Startup time ~ 0.4 sec https://github.com/MartinAhrer/continuousdelivery Martin Ahrer 7 . 2

Slide 27

Slide 27 text

WHY WOULD YOU WANT TO USE NOMAD? WHY WOULD YOU WANT TO USE NOMAD? Martin Ahrer 8 . 1

Slide 28

Slide 28 text

https://developer.hashicorp.com/nomad/docs/nomad-vs- kubernetes/supplement Martin Ahrer 8 . 2

Slide 29

Slide 29 text

Nomad is a supplemental strategy to Kubernetes Martin Ahrer 8 . 3

Slide 30

Slide 30 text

NOMAD ECOSYSTEM NOMAD ECOSYSTEM Just in case you are missing something Nomad pack is like helm chart Nomad levant templating engine (used by Nomad pack) Waypoint (Build and deployment management) Martin Ahrer 8 . 4

Slide 31

Slide 31 text

RESOURCES RESOURCES https://speakerdeck.com/martinahrer https://github.com/martinahrer https://developer.hashicorp.com/nomad/docs/nomad-vs- kubernetes/supplement https://developer.hashicorp.com/nomad/docs/nomad-vs-kubernetes https://www.hashicorp.com/blog/a-kubernetes-user-s-guide-to-hashicorp- nomad https://developer.hashicorp.com/nomad/docs Martin Ahrer 8 . 5

Slide 32

Slide 32 text

QUESTIONS QUESTIONS Martin Ahrer 9  Martin Ahrer  

Slide 33

Slide 33 text

No content