Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Knee Deep in Microservices

Knee Deep in Microservices

Don't fear the demons of microservices but be prepared for them. Cloud native technology and software delivery practices make you prepared for the fight. This talk will bring you the hard won wisdom of building distributed applications while playing Doom. How to apply the awesome arsenal of cloud native technologies to battle monsters like the application packaging demon or the imps of distributed computing? Do you want to stand at the gates of microservice hell ready to fight and modernise your application for the cloud era? This talk will show you how the next generation of tools like Docker and Kubernetes can be used to tackle problems of microservice architectures. It's an overview talk aimed at newcomers to cloud native technologies and those hungry for some Doom nostalgia.

Avatar for Ádám Sándor

Ádám Sándor

October 30, 2017

Other Decks in Technology

Transcript

  1. FrontEnd 1.0.5 Accounting 2.0.4 Batch 1.2.0 Insights 0.9.3 Code Test

    Build Deploy to Test Deploy to Production Code Test Build Deploy to Test Deploy to Production Code Test Build Deploy to Test Deploy to Production Code Test Build Deploy to Test Deploy to Production
  2. Master Node Node Node 10.8.4.1 10.8.4.2 10.8.4.3 FrontEnd-1 3000 BackEnd-1

    3020 FrontEnd-2 3000 FrontEnd-3 3001 BackEnd-2 3020
  3. Master Node 1 FrontEnd-1 BackEnd-1 Node 2 FrontEnd-2 FrontEnd-3 Node

    3 BackEnd-2 10.8.4.1 10.8.4.2 10.8.4.3 80 80 80 80 80 10.10.8.1 10.10.8.2 10.10.8.3 10.10.8.4 10.10.8.5
  4. Service (VIP) Node 1 FrontEnd-1 BackEnd-1 Node 2 FrontEnd-2 FrontEnd-3

    Node 3 BackEnd-2 10.8.4.1 10.8.4.2 10.8.4.3 80 80 80 80 80 10.10.8.1 10.10.8.2 10.10.8.3 10.10.8.4 10.10.8.5 FrontEnd 80 10.10.8.10 frontend.internal
  5. apiVersion: extensions/v1beta1 kind: Deployment metadata: name: front-end spec: replicas: 3

    template: spec: containers: - name: hello-node image: hello-node:v1 ports: - containerPort: 8080 livenessProbe: httpGet: path: /healthz port: 3000 initialDelaySeconds: 60 periodSeconds: 10 timeoutSeconds: 10 env: - name: LOG_LEVEL valueFrom: configMapKeyRef: name: jupiter-config key: LOG_LEVEL