devsecops with red hat containers, kubernetes,...

38
plus anything else you want to talk about... Containers, Kubernetes, and DevSecOps with Red Hat Jason Dudash Open Source Architect & Builder 1 Chris Yates DoD Solutions Architect

Upload: others

Post on 15-Aug-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

plus anything else you want to talk about...

Containers, Kubernetes, and DevSecOps with Red Hat

Jason DudashOpen Source Architect & Builder

1

Chris YatesDoD Solutions Architect

Page 2: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

Dudash

AGENDA

2

Page 3: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

What we’ll be discussing today

AGENDA

3

Deploying and Managing Software

Containers and VMs

Kubernetes

OpenShift Container Platform

DevSecOps

CI/CD Pipelines

Trusted Supply Chain

Building a Secure Software Factory

Page 4: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

4

DEVOPS

Page 5: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

5

DEVOPS

Software systems require complicated installation and integration every time they are deployed leading to:

● Slow service delivery● Reduced service quality● Frequent down times

The problem with software delivery

Page 6: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

6

DEVOPS

OPERATIONS &MAINTENANCE

DEVELOPMENTTEAM

Each team has different concerns

Page 7: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

7

DEVOPS

DevOps based software delivery

Adopting a container strategy is a modern way to allow applications to be easily shared and deployed

● Consistent env and tools● Predictable building blocks● Faster deployment

Page 8: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

8

DEVOPS

Everything as code

Automate everything

Application is always “releasable”

Continuous Integration/Delivery

Application monitoring

Rapid feedback

Delivery pipeline

Rebuild vs. Repair

DevOps Practices

Requires a consistent env and predictable building blocks

Page 9: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

9

CONTAINERS

But what are containers?

● Application processes on a shared kernel

● Simpler, lighter, and denser than VMs

● Portable across different environments

● Package apps with all dependencies

● Deploy to any environment in seconds

● Easily accessed and shared

INFRASTRUCTURE APPLICATIONS

Page 10: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

10

CONTAINERS

Virtual machines and containers?

VIRTUAL MACHINES CONTAINERS

VM isolates the hardware Container isolates the process

VM

OS Dependencies

Kernel

Hypervisor

Hardware

App App App App

Container Host (Kernel)

Container

App

OS deps

Container

App

OS deps

Container

App

OS deps

Container

App

OS deps

Hypervisor

Hardware

Page 11: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

11

CONTAINERS

Application portability with virtual machines

Virtual machines are NOT portable across hypervisor and do NOT provide portable packaging for applications

VM Type X

Application

OS dependencies

Operating System

BARE METAL PRIVATE CLOUD PUBLIC CLOUDVIRTUALIZATIONLAPTOP

Application

OS dependencies

Operating System

VM Type Y

Application

OS dependencies

Operating System

VM Type Z

Application

OS dependencies

Operating System

Guest VM

Application

OS dependencies

Operating System

Page 12: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

12

CONTAINERS

Application portability with containers

LAPTOP

Container

Application

OS dependencies

Guest VM

RHEL

BARE METAL

Container

Application

OS dependencies

RHEL

VIRTUALIZATION

Container

Application

OS dependencies

Virtual Machine

RHEL

PRIVATE CLOUD

Container

Application

OS dependencies

Virtual Machine

RHEL

PUBLIC CLOUD

Container

Application

OS dependencies

Virtual Machine

RHEL

RHEL Containers + RHEL Host = Guaranteed PortabilityAcross Any Infrastructure

Page 13: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

13

CONTAINERS

Containers are layered - enables rapid patching

Base Image

Image Layer 1

Image Layer 2

Image Layer 3

Base RHEL

OS Update Layer

Java Runtime Layer

Application Layer

Container Image Layers Example Container Image

Page 14: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

14

CONTAINERS

Containers are a key enabler to modern software delivery

Hardware

Virtual Machine

Operating System

Container

AppManaged by Developers

Managed by Operations

Page 15: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

15

CONTAINERS

Why use containers?

● Securely isolate applications and services● Eliminate inconsistencies

OPERATIONAL EFFICIENCY WORKLOAD DENSITY

● More lightweight and portable than VMs● Accelerate software delivery/deployment

PHYSICAL VIRTUAL CONTAINER

Page 16: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

CONFIDENTIAL Designator

DEMO

16

CI/CD

Page 17: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

CONFIDENTIAL Designator

OpenShift Container Platform

17

DevOps

Page 18: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

18

OPENSHIFT

Just one container is useless

Page 19: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

19

OPENSHIFT

Many containers are hard

Page 20: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

20

OPENSHIFT

OpenShift Container Platform

RED HAT ENTERPRISE LINUX (OS)

DOCKER / CRI-O (CONTAINER RUNTIME/API)

KUBERNETES (ORCHESTRATION & MANAGEMENT)

OPENSHIFTAutomatic container builds, intelligent deployments, image management,

web console, IDE plugins, and more.

Page 21: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

21

OPENSHIFT

It’s core is Kubernetes

Page 22: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

22

OPENSHIFT

Based on lessons learned at Google

“When you spend 15 years working on cloud engineering and cloud infrastructure youlearn what works and what doesn't.”

“Kubernetes is us taking the learnings of what works and what doesn't in managing production containers at scale and doing it in the open source.”

* Greg DeMichillieDirector of Product Management, Google Cloud Platform

https://www.youtube.com/watch?v=6a2Nirr8cI0

Page 23: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

23

OPENSHIFT

OpenShift = Kubernetes++

LIFECYCLE AUTOMATION

ENTERPRISE-GRADE CONTAINER OS(Red Hat Enterprise Linux & RHCoreOS)

Business AutomationCONTAINER CONTAINER

Integration

CONTAINER

Languages & Runtimes

CONTAINER

Web & Mobile

CONTAINER

3rd party frameworks

CONTAINER INFRASTRUCTURE SERVICES

OPS MANAGEMENT(CloudForms,

Satellite)

OPS AUTOMATION(Ansible)

DEV TOOLS(Developer Studio, Container Dev Kit)

STORAGE(RH Storage)

PHYSICAL VIRTUAL PRIVATE CLOUD PUBLIC CLOUD

NETWORKING

PUBLIC REGISTRY(RH Registry)

STORAGE

REGISTRY

SECURITY

SELF-SERVICE

CI/CD(Jenkins) IMAGE BUILD

CONTAINER ENGINE

CONTAINER MANAGEMENT

SERVICE CATALOG

ORCHESTRATION(Kubernetes)

MONITORING

POLICY MANAGEMENT(CloudForms) SECURITY ANALYSIS

CAPACITY MGMTPaaS

CaaS

IaaS

Red Hat Application Services

Red Hat OpenShift Container Platform (incl. CloudForms)

Red Hat Enterprise Linux & RHCoreOS

Page 24: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

24

OPENSHIFT

OpenShift high level architecture

EXISTING AUTOMATION TOOLSETS

SCM(GIT)

CI/CD

SERVICE LAYER

ROUTING LAYER

PERSISTENTSTORAGE

REGISTRY

RHEL

NODE

c

RHEL

NODE

RHEL

NODE

RHEL

NODE

RHEL

NODE

RHEL

NODE

C

C

C C

C

C

C CC C

RED HATENTERPRISE LINUX

MASTER

API/AUTHENTICATION

DATA STORE

SCHEDULER

HEALTH/SCALING

PHYSICAL VIRTUAL PRIVATE PUBLIC HYBRID

Page 25: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

CONFIDENTIAL Designator

Secure Platform andTrusted Supply Chain

25

CI/CD

Page 26: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

26

OPENSHIFT

Start with trusted sources because…You can’t inspect quality into a product

Red Hat Container Catalog Trusted ISVs

Page 27: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

CONFIDENTIAL Designator

DEMO

27

CI/CD

Page 28: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

CONFIDENTIAL Designator

Continuous IntegrationContinuous Deployment& DevSecOps

28

CI/CD

Page 29: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

29

CI/CD

An automated process to get your app delivered

Page 30: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

CONFIDENTIAL Designator

DEMO

30

CI/CD

Page 31: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

31

CI/CD

Page 32: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

32

CI/CD - JENKINS PIPELINE

Page 33: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

33

CI/CD - ENRICHING EXISTING DELIVERY PROCESS WITH OPENSHIFT

OPENSHIFTIMAGE

REGISTRY

OPENSHIFTCLUSTER

OPENSHIFTIMAGEREGISTRY

OPENSHIFTCLUSTER(S)

NON-PROD PRODDEV TEST UAT

EXISTINGDELIVERYPROCESS

EXISTINGIMAGEREGISTRY

Page 34: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

DEVSECOPS

34

● Sec○ Establish your security policy and posture before the first

line of code is written (establish quality thresholds)● Dev

○ Write your software and package it● Sec

○ Scan and enforce your security policy and posture, including quality thresholds

● Ops○ Deploy to prod and manage the system

● Sec○ Continuously monitor what is deployed for new

vulnerabilities and exploits

DevSecOps = Include security throughout DevOps

Page 35: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

Next time: Operating a cluster● Projects/Namespaces● Quotas and Limits● Role-Based Access Control● Security Context Constraints● Operators● more...

35

Cluster Operations/Adm

inistration

Page 36: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

LINKS

36

learn.openshift.com(interactive free learning portal)

developers.redhat.com(free videos/blogs/books)

Where to learn more?

Page 37: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

MONDAY TUESDAY WEDNESDAY THURSDAY

2019 SUMMIT RECAP● https://www.youtube.com/user/redhatsummit/videos● https://blog.openshift.com/openshift-commons-gathering-at-red-hat-summit-boston-2019-recap-with-slides/

VolkswagenEli Lilly

Thyssenkrupp ElevatorsBest Buy

NASASabre

MicrosoftNGA

Royal Bank of Canada UPS

OptusBell Canada

Deutsche TelekomBanco Hipotecario

Suomen AsiakastietoVMware

DeltaLockheed Martin

DBS Bank LimitedExxonMobilVolkswagen

AirbusKaloom

IBMSpark New ZealandUnitedHealth Group

Societe GeneraleMicrosoft

Sysdig

MeteorcommOptum

Volvo CarsRoyal Bank of Scotland Government of Canada Cox Communications

IntelDell

Kohl’sAvaloqSolo.io

TurbonomicDeutsche Bank

Kohl’sWorld Wide Technology

Florida BluePerficient Inc

DynatraceAtos

SIX GroupBank of Montreal (BMO)

Poste ItalianeCIBC

BPMicrosoft

BBVASabre

X by OrangeBooz Allen Hamilton

IBMCapgemini

BMWHCA HealthcareEmirates NBD

UPSNVIDIA

MicrosoftLightbend

ElsevierPenguin Computing

HealthPartnersAlly Bank

Norwegian Cruise LinesHelvetia Insurance

OptusDynatrace

SupermicroAbercrombie and Fitch

CouchbaseBoston Children's Hospital

Deutsche BankAetna

AmazonDeutsche Telekom IT

AmadeusExxonMobil

Solutions & ServicesOpenShift IntegratedAccenture | Aporeto | Appranix | Aqua Security | Arista Networks | Atos Syntel | Avi Networks | AWS | Cisco | Cloudera | Cockroach Labs |Collabnet | Couchbase | Crunchy Data | CyberArk | Dell EMC | Deloitte | Diamante | DXC Technologies | Dynatrace | F5 | Forty8Fifty Labs | H20.ai | HAProxy | HCL | Hitachi | HPE | IBM | Influx Data | InfoSys | Instana | Intel | Juniper | Lenovo | Lightbend |LINBIT | LogDNA | MariaDB | Microsoft | NeuVector | NGINX | Nuage Networks | NuoDB | OpsMX | Portworx | ProphetStor | Pupet Labs | Pure Storage | Rackspace | Redis Labs | Robin Systems | SAP | Shadow-Soft | Sonatype | Splunk | StackRox | StorageOS | Synopsys | Synk | Sysdig | Tata Consulting | Thales Security | Tigera | Tremolo Security | Trisotech | Twistlock | Vizuri | WWT | Zabbix

Page 38: DevSecOps with Red Hat Containers, Kubernetes, andpeople.redhat.com/jdudash/2019-06-ContainersAndOpenShift.pdf · Securely isolate applications and services Eliminate inconsistencies

linkedin.com/company/red-hat

youtube.com/user/RedHatVideos

facebook.com/redhatinc

twitter.com/RedHat

Red Hat is the world’s leading provider of enterprise

open source software solutions. Award-winning

support, training, and consulting services make

Red Hat a trusted adviser to the Fortune 500.

Thank you

38