View
25
Download
1
Category
Preview:
Citation preview
DEVOPS AUTOMATIONManaging containers with OpenShift
Renato PucciniOpenShift Technical Account Manager
ENCONTRO DE TECNOLOGIA E INOVAÇÃO2
DIGITAL TRANSFORMATIONIMPACTAR THE WAT WE BUILD, DEPLOY AND MANAGE SOFTWARE
HOW
WHAT
WHERE
TRADITIONALNOW | JUST
PASSEDTREND | NOW
WATERFALL
CLIENT-SERVER
SERVERS
AGILE
N-TIER
PRIVATE
VMs
DEVOPS
MICROSERVICES
PRIVATE PUBLIC
CONTAINERS
MOBILE
OPENSHIFT5
PORTAL SELF-SERVICE
VERSION CONTROL
DEPLOY AUTOMATED
MONITORINGAND FEEDBACK
STANDARDIZATION BETWEEN ENVIRONMENTS
ORCHESTRATION AND MANAGEMENT
HEALTH CHECKS AUTOMATED
OPENSHIFT IS THE FOUNDATIONAL BASE FOR A DEVOPS ADOPTION
DEVOPS, CONTAINERS AND MICROSERVICES
6
Container Runtime & Packaging(docker)
Enterprise Container Host
Red Hat Enterprise LinuxAtomic Host
Trusted by Fortune Global 500 companies
OPENSHIFT CONTAINER PLATFORM
7
Infrastructure Automation & Cockpit
Networking Storage Registry Logs & Metrics
Security
Container Orchestration & Cluster Management(kubernetes)
Container Runtime & Packaging(docker)
Enterprise Container Host
Red Hat Enterprise LinuxAtomic Host
Enterprise Kubernetes++container orchestration
Trusted by Fortune Global 500 companies
OPENSHIFT CONTAINER PLATFORM
8
OpenShift Application Lifecycle Management
Build Automation Deployment Automation
Service Catalog(Language Runtimes, Middleware, Databases)
Self-Service
Infrastructure Automation & Cockpit
Networking Storage Registry Logs & Metrics
Security
Container Orchestration & Cluster Management(kubernetes)
Container Runtime & Packaging(docker)
Enterprise Container Host
Red Hat Enterprise LinuxAtomic Host
Developer Experience
Enterprise Kubernetes++container orchestration
Trusted by Fortune Global 500 companies
OPENSHIFT CONTAINER PLATFORM
Service allows that apps communicates internally
Examples:
● postgresql:5432● <service>.<pod_namespace>
.svc.cluster.local:<port>● Internal variables
OPENSHIFT NETWORK PLUGINS
OPENSHIFT
KUBERNETES CNI
OpenShift Plugin Flannel
Plugin*NuagePlugin
TigeraCalicoPlugin
JuniperContrailPlugin
CiscoContivPlugin
Big SwitchPlugin
Certified Plugin Validated Plugin
VMwareNSX-TPlugin
In-Progress
DEFAULT
OpenDaylightPlugin
FLAT NETWORK (Default)
● All pods can communicate with each other across projects
MULTI-TENANT NETWORK
● Project-level network isolation● Multicast support● Egress network policies
NETWORK POLICY (Tech Preview)
● Granular policy-based isolation
OPENSHIFT SDN
NODE
POD POD
PODPOD
NODE
POD POD
PODPOD
PROJECT A PROJECT B
DEFAULT NAMESPACE
✓
PROJECT C
Multi-Tenant Network
Via Hawkular, Heapster and Cassandra and Prometheus (3.11+)
CONTAINER METRICS
RHEL
NODE
POD POD
PODPOD
FLU
EN
TD
RHEL
NODE
POD POD
PODPOD
FLU
EN
TDHEAPSTER
RHEL
NODE
POD POD
PODPOD
CA
DV
ISO
RHAWKULAR
ELASTICELASTICCASSANDRA
CUSTOMDASHBOARDS
API OPENSHIFTWEB CONSOLE
RED HATCLOUDFORMS
USER
OpenShift has the EFK stack
APPLICATION LOGS
OPERATION LOGS
ELASTICELASTIC
RHEL
NODE
POD POD
PODPODFL
UE
NTD
RHEL
NODE
POD POD
PODPOD
FLU
EN
TDELASTICSEARCH
RHEL
NODE
POD POD
PODPOD
FLU
EN
TD
USER
ELASTICELASTIC
KIBANA
ELASTICELASTIC
ELASTICSEARCH
ELASTICELASTIC
KIBANA
ADMIN
With the most important technologies in the industry
NFS
GlusterFS
OpenStack Cinder
Ceph RBD
AWS EBS
GCE Persistent Disk
iSCSI
Fiber Channel
Azure Disk
Azure File FlexVolume
VMWare vSphere VMDK
Supported with:
● Persistent Volume (PV) is tied to a piece of network storage● Provisioned by an administrator (static or dynamically)● Allows admins to describe storage and users to request storage● Assigned to pods based on the requested size, access mode, labels and type
PROJECT
PERSISTENT VOLUMES POOL
NFSPV
iSCSIPV
NFS PV
Admin
Dev
Creates PV
Ask for storage via PVC (claim)
NFSPV
GlusterFSPV
Pod
claim
Pod
claim
Pod
claim
CephRBDPV
Use of static storage
And also dynamic storage
Admin
Dev
Define StorageClass
Ask for PVC (claim): Fastest
SlowAzure-Disk
FastAWS-SSD
FastestNetApp-Flash
NetAppProvisioner
AWSProvisioner
Pod
claim
PV
OpenShiftPV Controller
provision
AzureProvisioner
bound
And also does the rollback manually or automatically
v1.0 v1.0
v2.0 v2.0
v2.0
v2.0
v1.0
v1.0 v1.0 v1.0
They can run on OpenShift using StatefulSet
● Unique network ids● Predicted Persistent
Storage● Order Deployment ● Order Soft delete● Order Rolling update
S
S
S
And has access to the service catalog
OpenShift AnsibleBroker
OpenShiftTemplateBroker
AWSServiceBroker
OtherServiceBrokers
ANSIBLE
OPENSHIFT
AWS
OTHER COMPATIBLE SERVICES
Ansible Playbook Bundles
OpenShiftTemplates
AWSServices
OtherServices
Including Amazon!
● Top 10 AWS Services
● Use Ansible Playbook Bundles
● Available in OpenShift 3.7
SQS
RDS
DynamoDB
AWS Batch
S3SNS
EMR
Redshift SES
ElastiCache Route 53
Allows to use the most important middleware-as-service...
Data Virtualization
Real Time Decision
IntelligentProcess
Integration Messaging Data Grid
Java EE Application
WebApplication
SingleSign-On MobileAPI
Management
Micro services
In a polyglot platform
...and virtually any docker
image out there!
PHPPythonJava NodeJS Perl Ruby .NETCore
ApacheHTTPServer
MySQL Redis
nginx TomcatVarnish
JBossEAP
JBossA-MQ
JBossFuse
JBossBRMS
JBossBPMS
JBossData Grid
JBossData Virt
RH Mobile RH SSO3SCALE
API mgmt
JBossWeb
Server
SpringBoot
Wildfly Swarm Vert.x
PostgreSQL MongoDB
Phusion Passenger
Third-partyLanguage Runtimes
Third-partyDatabases
Third-partyApp
Runtimes
Third-partyMiddleware
Third-partyMiddleware
LANGUAGES
DATABASES
WEB SERVERS
MIDDLEWARE
Recommended