2. Agenda
Platform As A Service
What’s about
OCP Components
Nodes, Masters and more
Openshift Features
Building and operating apps
Demo
Overview, Build, Blue Green
6. Platform As A Service
“A platform allowing customers to
develop, run, and manage applications
without the complexity of building and
maintaining the infrastructure typically
associated with developing and
launching an app”
7. How applications can run on a PAAS ?
● VMs (a bit on the edge…)
● Containers
● Code (functions)
Or a mix of that...
8. Cloud & PAAS
● Good match
● Overlaps
● PAAS for multicloud
13. So what is Openshift giving me?
● Web Gui, CLI, api
○ Create and manage applications
● Predefined template
○ Languages and MW
● Lots of goodies
○ Networking, builds, log aggregation, monitoring, security...
22. RHEL
NODE
RHEL
NODE
RHEL
NODE
DESIRED AND CURRENT STATE
RHEL
NODE
RHEL
NODE
RHEL
NODE
PHYSICAL VIRTUAL PRIVATE PUBLIC HYBRID
RED HAT
ENTERPRISE LINUX
MASTER
API/AUTHENTICATION
DATA STORE
PHYSICAL VIRTUAL PRIVATE PUBLIC HYBRID
28. PERSISTENT DATA IN CONTAINERS
SERVICE LAYER
PERSISTENT
STORAGE
REGISTRY
RHEL
NODE
C
C
RHEL
NODE
C C
RHEL
NODE
c
C
C
RHEL
NODE
C C
RHEL
NODE
C
RHEL
NODE
C
RED HAT
ENTERPRISE LINUX
MASTER
API/AUTHENTICATION
DATA STORE
SCHEDULER
HEALTH/SCALING
PHYSICAL VIRTUAL PRIVATE PUBLIC HYBRID
29. ROUTING AND LOAD-BALANCING
SERVICE LAYER
ROUTING LAYER
PERSISTENT
STORAGE
REGISTRY
RHEL
NODE
C
C
RHEL
NODE
C C
RHEL
NODE
c
C
C
RHEL
NODE
C C
RHEL
NODE
C
RHEL
NODE
C
RED HAT
ENTERPRISE LINUX
MASTER
API/AUTHENTICATION
DATA STORE
SCHEDULER
HEALTH/SCALING
PHYSICAL VIRTUAL PRIVATE PUBLIC HYBRID
30. ACCESS VIA WEB, CLI, IDE AND API
EXISTING
AUTOMATION
TOOLSETS
SCM
(GIT)
CI/CD
SERVICE LAYER
ROUTING LAYER
PERSISTENT
STORAGE
REGISTRY
RHEL
NODE
C
C
RHEL
NODE
C C
RHEL
NODE
c
C
C
RHEL
NODE
C C
RHEL
NODE
C
RHEL
NODE
C
RED HAT
ENTERPRISE LINUX
MASTER
API/AUTHENTICATION
DATA STORE
SCHEDULER
HEALTH/SCALING
PHYSICAL VIRTUAL PRIVATE PUBLIC HYBRID
41. Developers write code using
existing development tools
such as Maven, NPM, Bower,
PIP, Dockerfile and Git and
then access the OpenShift
Web, CLI or IDE to create an
app from the code
DEPLOY SOURCE CODE WITH
SOURCE-TO-IMAGE (S2I)
codeGit
Repository
CODE
DEV
42. S2I combines source code
with a builder image
(language and application
runtimes) and stores the
resulting application image
in the image registry
DEPLOY SOURCE CODE WITH
SOURCE-TO-IMAGE (S2I)
codeGit
Repository
Source-to-Image
(S2I)
Builder
Image
Image
Registry
BUILD
DEV
43. OpenShift automates the
deployment of application
containers across multiple
hosts via the Kubernetes.
Users can trigger
deployments, rollback,
configure A/B or other
custom deployments
DEPLOY SOURCE CODE WITH
SOURCE-TO-IMAGE (S2I)
codeGit
Repository
Source-to-Image
(S2I)
deploy
Builder
Image
Image
Registry
OPSDEV
DEPLOY
Application
Container
46. Developers use the existing
build process and tools (e.g.
Maven, Gradle, Jenkins, Nexus)
to build the app binaries (e.g.
JAR, WAR, EAR) and use
OpenShift CLI to create an app
from the app binaries
DEPLOY APP BINARY WITH
SOURCE-TO-IMAGE (S2I)
Application
Binary
(e.g. WAR)
DEV
BUILD APP Existing Build
Process
...
build
47. DEPLOY APP BINARY WITH
SOURCE-TO-IMAGE (S2I)
Application
Binary
(e.g. WAR)
Source-to-Image
(S2I)
Builder
Image
Image
Registry
DEV
build
Existing Build
Process
BUILD IMAGE
S2I combines app binaries
(e.g. JAR, WAR, EAR) with a
builder image (language
and application runtimes)
and stores the resulting
application image in the
image registry
48. DEPLOY APP BINARY WITH
SOURCE-TO-IMAGE (S2I)
Application
Binary
(e.g. WAR)
Source-to-Image
(S2I)
deploy
Builder
Image
Image
Registry
OPSDEV
Existing Build
Process
DEPLOY
Application
Container
OpenShift automates the
deployment of application
containers across multiple
hosts via the Kubernetes.
Users can trigger
deployments, rollback,
configure A/B or other
custom deployments
build
50. App images are built using an
existing image build process.
OpenShift automates the
deployment of app containers
across multiple hosts via the
Kubernetes. Users can trigger
deployments, rollback,
configure A/B, etc
DEPLOY
DEPLOY DOCKER IMAGE
build
Application
Container
deploy
Application
Image
Image
Registry
OPSDEV
BUILD
Existing Image
Build Process
53. ROUTE SPLIT TRAFFIC
SERVICE A
App A App A
SERVICE B
App B App B
ROUTE
10% traffic90% traffic
Split Traffic Between
Multiple Services For A/B
Testing, Blue/Green and
Canary Deployments
55. A PLATFORM THAT GROWS WITH YOUR BUSINESS
Data
Virtualization
Real Time
Decision
Intelligent
Process
Integration Messaging Data Grid
Java EE
Application
Web
Application
Single
Sign-On
Mobile
API
Management
Micro
services
56. CrunchyData
GitLab
Iron.io
Couchbase
Sonatype
EnterpriseDB
NuoDB
Fujitsu
and many more
...and virtually
any docker
image
out there!
TRUE POLYGLOT PLATFORM
PHPPythonJava NodeJS Perl Ruby
.NET
Core
Apache
HTTP
Server
MySQL Redis
nginx TomcatVarnish
JBoss
EAP
JBoss
A-MQ
JBoss
Fuse
JBoss
BRMS
JBoss
BPMS
JBoss
Data Grid
JBoss
Data Virt
RH
Mobile
RH SSO
3SCALE
API mgmt
JBoss
Web
Server
Spring
Boot
Wildfly
Swarm
Vert.x
PostgreSQL MongoDB
Phusion
Passenger
Third-party
Language
Runtimes
Third-party
Databases
Third-party
App
Runtimes
Third-party
Middleware
Third-party
Middleware
LANGUAGES
DATABASES
WEB SERVERS
MIDDLEWARE
58. Openshift Online
Code, Push and Run!
manage.openshift.com/
Free account quota: 1 project, 4
POD, 2 vCPU, 1 GB di RAM, 1 GB
Storage, 75% activity time
59. CDK & OC Cluster Up
● GOT DOCKER? GET STARTED
INSTANTLY:
oc cluster up --version=latest
● NO DOCKER? NO PROBLEM!
USE A VM:
developers.redhat.com/products/cdk
60. WANT TO TRY OPENSHIFT
OUT IN YOUR BROWSER?
openshift.katacoda.com
KATACODA