Und was kann es? Was ist das eigentlich?

58
Was ist das eigentlich? Und was kann es? Sebastian Dehn Solution Architect Partner Enablement [email protected]

Transcript of Und was kann es? Was ist das eigentlich?

Page 1: Und was kann es? Was ist das eigentlich?

Was ist das eigentlich?Und was kann es?Sebastian DehnSolution Architect Partner [email protected]

Page 2: Und was kann es? Was ist das eigentlich?

Wer bin ich?

Page 3: Und was kann es? Was ist das eigentlich?

Worüber reden wir heute?

3

Die Idee hinter OpenShiftWieso, weshalb warum…?

Lasst uns über Technik reden!Das wichtigste in Kürze

Proof it! Ein kurzer Einblick in die reale OpenShift Welt

Q&AIch beantworte eure Fragen. Habt ihr welche?

Page 4: Und was kann es? Was ist das eigentlich?

Wer kennt es nicht?

Page 5: Und was kann es? Was ist das eigentlich?

Bill - VP IT

Chris - VP AppDev

Steve - CEO

Parts Unlimited

Page 6: Und was kann es? Was ist das eigentlich?

Steve - die Kosten minimieren/Ressourcen effizient nutzen

Bill - Modernisierung Infrastruktur & Standardisierung der IT Prozesse

Chris - Modern AppDev & Innovative Technologien

Der Fokus

Page 7: Und was kann es? Was ist das eigentlich?

Automated operations

A consistent container application platform

Multi-tenant Networktraffic control

Over-the-airupdates

Bare metal, VMware vSphere, Red Hat Virtualization, Red Hat OpenStack Platform, Amazon Web Services, Microsoft Azure, Google, IBM Cloud

Pluggable architecture

Monitoring& chargeback

Secure by default

From your data center, to the cloud, to the edge

Page 8: Und was kann es? Was ist das eigentlich?

CONFIDENTIAL Designator

8

Zeit für Praxis!

Page 9: Und was kann es? Was ist das eigentlich?

CONFIDENTIAL Designator

9

Die TechnikWas sich unter der Haube versteckt

Page 10: Und was kann es? Was ist das eigentlich?

10

Empowering developers to innovate

Zeit für Innovationen!

Page 11: Und was kann es? Was ist das eigentlich?

OpenShift enables developer productivity

SPRING & JAVA™ EE MICROSERVICES FUNCTIONS

LANGUAGES DATABASES APPLICATION SERVICES

LINUX WINDOWS*

* coming soon

CODE

BUILD TEST DEPLOY

MONITORREVIEW

Self-service provisioning

Automatedbuild & deploy

CI/CDpipelines

Consistentenvironments

Configuration management

App logs & metrics

Page 12: Und was kann es? Was ist das eigentlich?

BUILD AND DEPLOY CONTAINER IMAGES

DEPLOY YOURSOURCE CODE

DEPLOY YOURCONTAINER IMAGE

DEPLOY YOURAPP BINARY

Page 13: Und was kann es? Was ist das eigentlich?

DEPLOY SOURCE CODE WITH SOURCE-TO-IMAGE (S2I)

GitRepositoryBUILD APP

(OpenShift)Developer

code

Source-to-Image(S2I)

Builder Image

ImageRegistry

BUILD IMAGE(OpenShift)

DEPLOY(OpenShift)

deployApplication Container

OpenShift DoesUser/Tool Does

Page 14: Und was kann es? Was ist das eigentlich?

DEPLOY APP BINARY WITH SOURCE-TO-IMAGE (S2I)Application

Binary(e.g. WAR)BUILD APP

(Build Infra) Existing Build Process

build

Source-to-Image(S2I)

Builder Image

ImageRegistry

BUILD IMAGE(OpenShift)

DEPLOY(OpenShift)

deployApplication Container

OpenShift DoesUser/Tool Does

Page 15: Und was kann es? Was ist das eigentlich?

DEPLOY(Openshift)

DEPLOY DOCKER IMAGE

build

Application Container

deploy

Application Image

ImageRegistry

BUILD IMAGE (Build Infra) Existing Image

Build Process

PUSH(Build Infra)

OpenShift DoesUser/Tool Does

Page 16: Und was kann es? Was ist das eigentlich?

16

BuildConfigSource

Dockerfile

Jenkinsfile

Builder Pod Base

Image

App Image Registry

Registry

Push

Pull

DeploymentConfig/Deployment

Deployer Pod

Node

Pull

App Image

1

2

3

4 4

3

5

66

7

Build and Deploy Process

Page 17: Und was kann es? Was ist das eigentlich?

17

OpenShift 4 Architecture

Und so sieht die

Architektur der Plattform

aus!

Page 18: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

18

STORAGENETWORKCOMPUTE

your choice of infrastructure

Page 19: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

19

WORKER

STORAGENETWORKCOMPUTE

WORKER

workers run workloads

Page 20: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

20

MASTER

STORAGENETWORKCOMPUTE

masters are the control plane

Page 21: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

21

everything runs in pods

CONTAINERIMAGE

POD

CONTAINER

10.140.4.44

Page 22: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

22

MASTER

STORAGE

etcd

NETWORKCOMPUTE

state of everything

Page 23: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

23

MASTER

STORAGE

Kubernetesservices

etcd

NETWORKCOMPUTE

core kubernetes components

KubernetesAPI server

Scheduler

Cluster Management

Page 24: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

24

MASTER

OpenShiftservices

STORAGE

Kubernetesservices

etcd

NETWORKCOMPUTE

core OpenShift components

OpenShiftAPI server

Operator Lifecycle Management

Web Console

Page 25: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

25

MASTER

OpenShift Services

STORAGE

Kubernetesservices

Infrastructureservices

etcd

NETWORKCOMPUTE

internal and support infrastructure services

Monitoring | Logging | Tuned | SDN | DNS | Kubelet

Page 26: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

26

WORKERMASTER

OpenShift Services

STORAGE

Kubernetesservices

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Infrastructureservices

etcd

NETWORKCOMPUTE

WORKER

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

run on all hosts

Page 27: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

27

WORKERMASTER

OpenShift Services

STORAGE

Kubernetesservices

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Infrastructureservices

etcd

NETWORKCOMPUTE

Registry

WORKER

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Registry

integrated image registry

Page 28: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

28

WORKERMASTER

OpenShift Services

STORAGE

Kubernetesservices

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Infrastructureservices

etcd

NETWORKCOMPUTE

Registry

Prometheus | Grafana Alertmanager

WORKER

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Registry

Prometheus | Grafana Alertmanager

cluster monitoring

Page 29: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

29

WORKERMASTER

OpenShift Services

STORAGE

Kubernetesservices

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Infrastructureservices

etcd

NETWORKCOMPUTE

Registry

Prometheus | Grafana Alertmanager

Kibana | Elasticsearch

WORKER

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Registry

Prometheus | Grafana Alertmanager

Kibana | Elasticsearch

log aggregation

Page 30: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

30

WORKERMASTER

OpenShift Services

STORAGE

Kubernetesservices

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Infrastructureservices

etcd

NETWORKCOMPUTE

Registry

Prometheus | Grafana Alertmanager

Kibana | Elasticsearch

Router

WORKER

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Registry

Prometheus | Grafana Alertmanager

Kibana | Elasticsearch

Router

integrated routing

Page 31: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

31

EXISTING AUTOMATION

TOOLSETS

SCM(GIT)

CI/CD

WORKERMASTER

OpenShift Services

STORAGE

Kubernetesservices

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Infrastructureservices

etcd

NETWORKCOMPUTE

Registry

Prometheus | Grafana Alertmanager

Kibana | Elasticsearch

RouterDevelopers

Admins

WORKER

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Registry

Prometheus | Grafana Alertmanager

Kibana | Elasticsearch

Router

dev and ops via web, cli, API, and IDE

Page 32: Und was kann es? Was ist das eigentlich?

32

Red Hat Enterprise Linux CoreOS

Und was ist die Basis?

Page 33: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

33

EXISTING AUTOMATION

TOOLSETS

SCM(GIT)

CI/CD

WORKERMASTER

OpenShift Services

STORAGE

Kubernetesservices

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Infrastructureservices

etcd

NETWORKCOMPUTE

Registry

Prometheus | Grafana Alertmanager

Kibana | Elasticsearch

RouterDevelopers

Admins

WORKER

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Registry

Prometheus | Grafana Alertmanager

Kibana | Elasticsearch

Router

Page 34: Und was kann es? Was ist das eigentlich?

Immutable Operating SystemOPENSHIFT PLATFORM

Red Hat Enterprise Linux CoreOS is versioned with OpenShiftCoreOS is tested and shipped in conjunction with the platform. Red Hat runs thousands of tests against these configurations.

Red Hat Enterprise Linux CoreOS is managed by the clusterThe Operating system is operated as part of the cluster, with the config for components managed by Machine Config Operator:● CRI-O config● Kubelet config● Authorized registries● SSH config

v4.1.6

v4.1.6

RHEL CoreOS admins are responsible for:Nothing.

Page 35: Und was kann es? Was ist das eigentlich?

OpenShift Architecture

35

A lightweight, OCI-compliant container runtime

Minimal and Secure Architecture

Optimized for Kubernetes

Runs any OCI-compliant image

(including docker)

Page 36: Und was kann es? Was ist das eigentlich?

OpenShift Architecture

36

podman

A docker-compatible CLI for containers● Remote

management API via Varlink

● Image/container tagging

● Advanced namespace isolation

Page 37: Und was kann es? Was ist das eigentlich?

OpenShift Architecture

37

buildah

Secure & flexible OCI container builds

● Integrated into OCP build pods

● Performance improvements for knative enablement

● Image signing improvements

Page 38: Und was kann es? Was ist das eigentlich?

kubelet static containers scheduled containerssystemd-managed

native binaries

CoreOS “pod” architecture

kubelet CRI-O

etcd

kube-scheduler

kubecontroller-manager

kube-apiserver

coredns

openshift-apiserver

openshiftcontroller-manager

openshift-oauth

Page 39: Und was kann es? Was ist das eigentlich?

39

OpenShift Monitoring

Das allsehende Auge!

Page 40: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

40

EXISTING AUTOMATION

TOOLSETS

SCM(GIT)

CI/CD

WORKERMASTER

OpenShift Services

STORAGE

Kubernetesservices

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Infrastructureservices

etcd

NETWORKCOMPUTE

Registry

Prometheus | Grafana Alertmanager

Kibana | Elasticsearch

RouterDevelopers

Admins

WORKER

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Registry

Prometheus | Grafana Alertmanager

Kibana | Elasticsearch

Router

Page 41: Und was kann es? Was ist das eigentlich?

OPENSHIFT MONITORING | Solution Overview

41

OpenShift Cluster Monitoring

Metrics collection and storage via Prometheus, an

open-source monitoring system time series database.

Metrics visualization via Grafana, the leading metrics

visualization technology.

Alerting/notification via Prometheus’ Alertmanager, an open-source tool that handles

alerts send by Prometheus.

Page 42: Und was kann es? Was ist das eigentlich?

42

OPENSHIFT MONITORING | Operator & Operand Relationships

cluster-monitoring-operator

prometheus-operator

Grafana

kube-state-metrics

node-exporter

openshift-state-metrics(4.2)

prometheus-adapter telemeter-client

Prometheus Alertmanager

Page 43: Und was kann es? Was ist das eigentlich?

43

OPENSHIFT MONITORING | Prometheus, Grafana and Alertmanager Wiring

Infra/Worker (“hardware”)

Grafana Prometheus Alertmanager

Node (kubelet)

node-exporter

kube-state-metrics

Worker (“hardware”)

Node (kubelet)

node-exporter

Control Plane (API)

Page 44: Und was kann es? Was ist das eigentlich?

44

OpenShift Logging

Ihr sucht, ihr findet!

Page 45: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

45

EXISTING AUTOMATION

TOOLSETS

SCM(GIT)

CI/CD

WORKERMASTER

OpenShift Services

STORAGE

Kubernetesservices

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Infrastructureservices

etcd

NETWORKCOMPUTE

Registry

Prometheus | Grafana Alertmanager

Kibana | Elasticsearch

RouterDevelopers

Admins

WORKER

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Registry

Prometheus | Grafana Alertmanager

Kibana | Elasticsearch

Router

Page 46: Und was kann es? Was ist das eigentlich?

Observability via log exploration and corroboration with EFK

OPENSHIFT LOGGING | Solution Overview

Components

○ Elasticsearch: a search and analytics engine to store logs○ Fluentd: gathers logs and sends to Elasticsearch.○ Kibana: A web UI for Elasticsearch.

Access control

○ Cluster administrators can view all logs○ Users can only view logs for their projects

Ability to forward logs elsewhere

○ External elasticsearch, Splunk, etc

46

Page 47: Und was kann es? Was ist das eigentlich?

47

OPENSHIFT LOGGING | Operator & Operand Relationships

ElasticSearchOperator

Cluster LoggingOperator

ElasticSearchCluster

Kibana

...

Fluentd(per node)

Curator CronJob

Curator

Page 48: Und was kann es? Was ist das eigentlich?

Node

FluentdNode

Fluentd

Log data flow in OpenShift

OPENSHIFT LOGGING | Architecture

Node

Fluentd

Elasticsearch Kibana

Application Logs

48

TLSTLS

Page 49: Und was kann es? Was ist das eigentlich?

Node (OS)

Log data flow in OpenShift

OPENSHIFT LOGGING | Architecture

49

Elasticsearch

CRI-O

stdoutstderr

OS DISK

Fluentd

kubelet

journald

TLS

Page 50: Und was kann es? Was ist das eigentlich?

50

Persistent Storage

Connecting real-world

storage to your

containers to enable

stateful applications

Page 51: Und was kann es? Was ist das eigentlich?

OPENSHIFT CONTAINER PLATFORM | Architectural Overview

51

EXISTING AUTOMATION

TOOLSETS

SCM(GIT)

CI/CD

WORKERMASTER

OpenShift Services

STORAGE

Kubernetesservices

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Infrastructureservices

etcd

NETWORKCOMPUTE

Registry

Prometheus | Grafana Alertmanager

Kibana | Elasticsearch

RouterDevelopers

Admins

WORKER

Monitoring | Logging | Tuned

SDN | DNS | Kubelet

Registry

Prometheus | Grafana Alertmanager

Kibana | Elasticsearch

Router

Page 52: Und was kann es? Was ist das eigentlich?

A broad spectrum ofstatic and dynamic storage endpoints

OPENSHIFT CONTAINER PLATFORM | Persistent Storage

NFS

GlusterFS

OpenStack Cinder

Ceph RBD

AWS EBS

GCE Persistent Disk

iSCSI

Fiber Channel

Azure Disk

Azure File

FlexVolume

VMWare vSphere VMDK

Container Storage Interface (CSI)**NetApp Trident*

Page 53: Und was kann es? Was ist das eigentlich?

PV Consumption

OPENSHIFT CONTAINER PLATFORM | Persistent Storage

Node

POD

CONTAINER

ClaimZ

apiVersion: v1kind: Podmetadata: name: mypodspec: containers: - name: myfrontend image: nginx volumeMounts: - mountPath: "/var/www/html" name: mypd volumes: - name: mypd persistentVolumeClaim: claimName: z

PV

Kubelet

Storage

/foo/bar

Page 54: Und was kann es? Was ist das eigentlich?

iSCSIPV

iSCSIPVNFS

PV

NFSPV

Static Storage Provisioning

OPENSHIFT CONTAINER PLATFORM | Persistent Storage

AdminPersistentVolumes

NFSPV

iSCSIPV ...

ClaimZ

2Gi RWX

Bind

User

POD

CONTAINER

...VolumeMount: Z

Pod Definition

Mount

Define/Map

2Gi NFS

Page 55: Und was kann es? Was ist das eigentlich?

Dynamic Storage Provisioning

OPENSHIFT CONTAINER PLATFORM | Persistent Storage

Admin

StorageClass

ClaimZ

2Gi RWXGood

Bind

User

...VolumeMount: Z

Pod Definition

MountFast

NetApp Flash

BlockVMware VMDK

GoodNetApp SSD

Master

NetApp SSD

2Gi NFS

PV

Crea

te

Map

POD

CONTAINER

Page 56: Und was kann es? Was ist das eigentlich?

CONFIDENTIAL Designator

56

Eure Fragen!

Page 57: Und was kann es? Was ist das eigentlich?

Nützliches

57

OpenShift Blog

Lerne OpenShift

Mein YouTube Channel

Page 58: Und was kann es? Was ist das eigentlich?

CONFIDENTIAL Designator

linkedin.com/company/red-hat

youtube.com/user/RedHatVideos

facebook.com/redhatinc

twitter.com/RedHat

Danke!

58