SlideShare a Scribd company logo
DevOps with ActiveMQ,
Camel, Fabric8 and HawtIO
Christian Posta
6/11/14
RED HAT | ADD NAME2
Agenda
•  DevOps… What is that?
•  Enterprise Integration
•  Automated Delivery
•  To the Cloud
RED HAT | ADD NAME3
Your speaker
Christian Posta
http://christianposta.com/blog
@christianposta
christian@redhat.com
•  Principal Middleware Specialist
•  Based in Phoenix, AZ
•  Committer on Apache Camel, ActiveMQ, Apollo, PMC on ActiveMQ
•  Author: Essential Camel Components DZone Refcard
Shorten the lifecycle from inception
to production so that the business
can make money!
Developers and Operations must
cooperate.
Rely on tools/frameworks to
automate, automate, and automate.
DevOps
RED HAT | ADD NAME6
“WTF is DevOps?”
•  IT is a core competency
•  Set of principles
•  There’s more to applications than coding!
•  Feedback
•  Repetition
•  Communication
•  People!
RED HAT | ADD NAME7
Shorten the feedback loop
•  Developers
•  QA
•  Operations
•  Business
•  Customers!!!
Enterprise Integration
RED HAT | ADD NAME9
Integration is easy!
RED HAT | ADD NAME10
•  Off the shelf? Home Grown? Acquisition?
•  Platforms
•  Protocols / Data Formats
•  Data Formats
•  Timing
•  Organizational mismatch
Why is integration hard?
RED HAT | ADD NAME11
•  Light-weight integration library
•  Domain Specific Language
•  Enterprise Integration Patterns
•  Components
•  Routing and Mediation (like an ESB?)
•  Runs in any container (or stand alone)
What is Apache Camel?
RED HAT | ADD NAME12
•  Message Routing
•  Transformation
•  Aggregation
•  Splitting
•  Resequencer
•  Routing Slip
•  Enricher
•  All 65 from the book!
Enterprise Integration Patterns
RED HAT | ADD NAME13
Components
•  ActiveMQ, Websphere, Weblogic (JMS)
•  AMQP
•  ATOM feeds
•  AWS (S3, SQS, SNS, others)
•  Bean
•  Cache (EHCache)
•  CXF (JAX-WS, JAX-RS)
•  EJB
•  Drools
•  File
•  FTP/SFTP
•  Google App Engine
•  GMail
•  HTTP
•  IRC
•  jclouds
•  JDBC
•  Jetty
•  Twitter
•  MQTT
•  MyBatis
•  JPA
•  Spring Integration
•  Spring Web Services
http://camel.apache.org/components.html
To see list of all
components!!
RED HAT | ADD NAME14
Java DSL
public class OrderProcessorRouteBuilder extends RouteBuilder {	
	
@Override	
public void configure() throws Exception {	
	
from(“activemq:orders”)	
	 .choice()	
.when(header(“customer-rating”).isEqualTo(“gold”))	
.to(“ibmmq:topic:specialCustomer”)	
.otherwise()	
.to(“ftp://user@host/orders/regularCustomers”)	
.end()	
.log(“received new order ${body.orderId}”)	
.to(“ibatis:storeOrder?statementType=Insert”);	
}	
}
RED HAT | ADD NAME15
Spring XML DSL
<route id=“processOrders”>
<from uri=“activemq:orders”/>
<choice>
<when>
<simple>${header.customer-rating} == ‘gold’</simple>
<to uri=“ibmmq:topic:specialCustomer”>
</when>
<otherwise>
<to uri=“ftp://user@host/orders/regularCustomers” />
</otherwise>
</choice>
<log message=“received new order ${body.orderId}”/>
<to uri=“ibatis:storeOrder?statementType=Insert”/>
</route>
RED HAT | ADD NAME16
•  Batch file transfers
•  Shared Database
•  RPC
•  Messaging
Integration Options
RED HAT | ADD NAME17
•  Asynchronous architectures
•  Reliable message passing
•  Loose coupling
•  Heterogeneous integration
•  Fault tolerant
•  Scalable
•  Real-time data
Why messaging?
RED HAT | ADD NAME18
•  The most widely used open-source
messaging broker
•  Highly configurable
•  Friendly license (no license fees!)
•  Vibrant community (TLP)
•  Backbone of top enterprises in retail, e-retail,
financial services, shipping, many others!
Apache ActiveMQ
RED HAT | ADD NAME19
•  High performance
•  High availability
•  Light-weight
•  Multi-protocol (AMQP, MQTT, STOMP)
•  Multi-transport (TCP,SSL,WS,VM,HTTP)
•  JMS compliant
•  Supported in production by Red Hat!
ActiveMQ Features
RED HAT | ADD NAME20
Network of Master/Slave
RED HAT | ADD NAME21
High-performance, real-time systems
Head Office
STORE
STORE
outlet
shop
24 houra
STORE
shop
Broker
Clusters
•  Clustering, Network of Brokers
•  Client-aware failover
•  Master/Slave HA
•  Fabric
RED HAT | ADD NAME22
Ingestion for BigData Architecture
Broker
Cluster
Broker
Cluster
Web Servers
Web Servers
Web Servers
Web Servers
Camel
HTTP Log
Reader
Camel
HTTP Log
Reader
Camel
HTTP Log
Reader
Camel
HTTP Log
Reader
ESB
ESB
Camel
HBase/HDFS
Camel
Hbase/HDFS
HDFS
RED HAT | ADD NAME23
Integration Everywhere – Internet of Things
Connecting Things
• mobile devices
• meters
• industrial controls
• smart buildings
• asset tracking
• traffic control
• monitors
• sensors
• actuators
Broker
Clusters
Arrival
Airport 1
RED HAT | ADD NAME24
JBoss Fuse
Integrate Everything!
RED HAT | ADD NAME25
More info on JBoss Fuse…
https://www.redhat.com/products/jbossenterprisemiddleware/fuse/
http://www.jboss.org/products/fuse
Demo
Management
RED HAT | ADD NAME28
RED HAT | ADD NAME29
Current issues with deployments
•  Installation
•  SSH, download, unpack, install, permissions, ENV var
•  Configuration
•  Container, individual apps/services, brokers, security
•  Upgrading
•  Install, configure, rollback
•  Introspection
•  Big picture statistics (JVM/OS memory usage, CPU)
•  JMX (jconsole, visualVM)
RED HAT | ADD NAME30
Clients aware of Topology
•  Brokers
•  failover:(tcp://host1:port1,tcp://host2:port2)
•  Camel endpoints
•  from(“jetty:http://22.33.44.55:8080/endpoint”)
•  to(“http4://11.22.33.44:9000/endpoint”)
•  Web service endpoints
•  Access a specific endpoint: http://22.33.44.55:9091/endpoint
RED HAT | ADD NAME31
Current best practices
•  Use templates for configuration w/ template engine
•  Puppet/Chef and/or Capistrano/Ansible
•  Store configuration (templates + values) in SCM
•  Separate configuration from binary deployments
•  Verifiable build and release process
RED HAT | ADD NAME32
•  Simplifies deployments
•  Provides management tools for centralized
configuration
•  Visualize your middleware with HawtIO
•  Polycontainer
•  Blurs the line of PaaS
http://fabric8.io
RED HAT | ADD NAME33
•  Provides cluster capabilities, coordination
•  Service discovery, load balancing, failover
•  Deploy to cloud (IaaS, PaaS)
•  Supported as JBoss Fuse (managed)
•  fabric8 1.0 is in Fuse 6.1
•  1.1 about to be released
•  RC1 released 6/10
http://fabric8.io
RED HAT | ADD NAME34
fabric8 1.1 release
•  Java Container
•  Tomcat, TomEE, Jetty
•  Spring Boot
•  fabric:watch * with various containers
•  Profile import/export
•  fabric8 maven plugin enhancements
RED HAT | ADD NAME35
Architecture
Clustered Registry
Agent
Agent
Zookeeper
Agent
Zookeeper
Agent
Zookeeper
Version 1.0
Profile CXFProfile Camel
Profile Default
Features Configuration
Registry Content
containers that form an “ensemble”
Pulls	
  profile	
  data	
  
Registers	
  /	
  Listens	
  for	
  changes	
  
RED HAT | ADD NAME36
Core concepts
•  Fabric registry
•  Holds all configuration data
•  Runtime registry for looking up distributed services
•  Profile
•  Describes the container set up
•  Features, Bundles, ConfigAdmin PIDs, system properties
•  Hierarchical structure
•  Container versioning
•  Agent
•  Runs on each container
•  Communicates with registry to make sure container provisioned
correctly
RED HAT | ADD NAME37
How’s fabric8 different than Puppet/Chef?
•  Middleware centric
•  Container agnostic
•  Deep knowledge about the running processes
•  Consistent configuration
•  Visualizations
•  Versioning built in, upgrades, rollbacks, selective
upgrade, etc
•  Use puppet/chef to provision your machines, use
fabric8 to provision and manage your middleware/
apps
RED HAT | ADD NAME38
Fuse Management Console
RED HAT | ADD NAME39
HawtIO http://hawt.io
RED HAT | ADD NAME40
HawtIO http://hawt.io
RED HAT | ADD NAME41
FuFuse Management Console
Demo
Continuous Delivery
RED HAT | ADD NAME44
Continuous Delivery
•  Builds on continuous integration
•  Establish a concrete pipeline to production
•  Build/Test/Release often!
•  Bottlenecks?
•  Involves Dev and Ops to be successful
•  Every build is a “release candidate”
RED HAT | ADD NAME45
Automate everything!
•  Developers
•  Unit tests
•  Integration tests
•  Builds
•  Deployments in dev
•  Operations
•  VMs
•  Provisioning software
•  Deployments in QA/UAT/PROD
RED HAT | ADD NAME46
Tools for a CD pipeline
•  Puppet/Chef to provision VMs
•  Git for SCM
•  Gerrit/Gitlab for code reviews
•  Maven
•  Jenkins + plugins
•  and of course… Fabric8!
•  What’s this Docker thingy?
RED HAT | ADD NAME47
Fabric8 maven plugin
•  fabric8:deploy
•  fabric8:zip
•  fabric8:aggregate-zip
•  fabric8:branch
•  fabric8:script (for karaf only)
•  http://fabric8.io/gitbook/mavenPlugin.html
RED HAT | ADD NAME48
Sample flow
•  Check your code in
•  Gerrit for code reviews
•  Jenkins for build + CD pipeline
•  Use fabric8:zip to deploy profiles to Maven repo
•  Use fabric8:branch to automate deploying multiple
profiles to QA/UAT/PROD
•  Can use profile-import to manually import zips
•  Build the binary once!
Demo
Containers
RED HAT | ADD NAME51
Docker
•  http://docker.io
•  Open source
•  Lightweight VEs
•  Linux containers (LXC)
•  Portable packaging
•  Versioned
•  Repositories
RED HAT | ADD NAME52
How different than VMs?
RED HAT | ADD NAME53
Fabric8 Docker support
•  Docker images
•  Build docker containers for your java apps
•  Flat classpath
•  Microservices
Demo
OpenShift PaaS
RED HAT | ADD NAME56
What is OpenShift?
Red Hat’s free platform as a service for applications in the cloud.
RED HAT | ADD NAME57
What’s supported?
RED HAT | ADD NAME58
Flavors
origin
Public
Cloud
Service
On-
premise
or Private
Cloud
Software
Open
Source
Project
RED HAT | ADD NAME59
Terminology
l  Broker – Management host, orchestration of Nodes
l  Node – Compute host containing Gears
l  Gear – Allocation of fixed memory, compute, and
storage resources for running applications
l  Cartridge – A technology/framework (PHP, Perl, Java/
JEE, Ruby, Python, MySQL, etc.) to build applications
l  Application – Instantiation of a Cartridge
l  Client Tools – CLI, Eclipse Plugin, Web Console,
Java API, REST API
RED HAT | ADD NAME60
xPaaS/iPaaS
l  xPaaS
-  Cartridges for Entire JBoss & Fuse Portfolio
-  EAP and EWS Enterprise Cartridges Today
-  Several Community Cartridges Available Today
l  iPaaS
-  Integration PaaS
-  Fuse/Fabric Cartridge
RED HAT | ADD NAME61
More Info
http://fabric8.io
http://hawt.io
http://docker.io
http://jboss.org/products/fuse
http://activemq.apache.org
http://camel.apache.org
RED HAT | ADD NAME62
Questions?
http://christianposta.com/blog
@christianposta
christian@redhat.com

More Related Content

What's hot

[KubeCon EU 2020] containerd Deep Dive
[KubeCon EU 2020] containerd Deep Dive[KubeCon EU 2020] containerd Deep Dive
[KubeCon EU 2020] containerd Deep Dive
Akihiro Suda
 
DPDK KNI interface
DPDK KNI interfaceDPDK KNI interface
DPDK KNI interface
Denys Haryachyy
 
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Wars of MySQL Cluster ( InnoDB Cluster VS Galera ) Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Mydbops
 
DPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet ProcessingDPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet Processing
Michelle Holley
 
Understanding DPDK
Understanding DPDKUnderstanding DPDK
Understanding DPDK
Denys Haryachyy
 
Hive+Tez: A performance deep dive
Hive+Tez: A performance deep diveHive+Tez: A performance deep dive
Hive+Tez: A performance deep dive
t3rmin4t0r
 
Managing enterprise users in Hadoop ecosystem
Managing enterprise users in Hadoop ecosystemManaging enterprise users in Hadoop ecosystem
Managing enterprise users in Hadoop ecosystem
DataWorks Summit
 
Managing PostgreSQL with Ansible
 Managing PostgreSQL with Ansible Managing PostgreSQL with Ansible
Managing PostgreSQL with Ansible
EDB
 
OVN 設定サンプル | OVN config example 2015/12/27
OVN 設定サンプル | OVN config example 2015/12/27OVN 設定サンプル | OVN config example 2015/12/27
OVN 設定サンプル | OVN config example 2015/12/27
Kentaro Ebisawa
 
Deploying IPv6 on OpenStack
Deploying IPv6 on OpenStackDeploying IPv6 on OpenStack
Deploying IPv6 on OpenStack
Vietnam Open Infrastructure User Group
 
Ceph Performance and Sizing Guide
Ceph Performance and Sizing GuideCeph Performance and Sizing Guide
Ceph Performance and Sizing Guide
Jose De La Rosa
 
HAProxy
HAProxy HAProxy
HAProxy
Arindam Nayak
 
Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기
NeoClova
 
YOW2018 Cloud Performance Root Cause Analysis at Netflix
YOW2018 Cloud Performance Root Cause Analysis at NetflixYOW2018 Cloud Performance Root Cause Analysis at Netflix
YOW2018 Cloud Performance Root Cause Analysis at Netflix
Brendan Gregg
 
MySQL Database Architectures - InnoDB ReplicaSet & Cluster
MySQL Database Architectures - InnoDB ReplicaSet & ClusterMySQL Database Architectures - InnoDB ReplicaSet & Cluster
MySQL Database Architectures - InnoDB ReplicaSet & Cluster
Kenny Gryp
 
最近のOpenStackを振り返ってみよう
最近のOpenStackを振り返ってみよう最近のOpenStackを振り返ってみよう
最近のOpenStackを振り返ってみよう
Takashi Kajinami
 
PostgreSQL and Benchmarks
PostgreSQL and BenchmarksPostgreSQL and Benchmarks
PostgreSQL and Benchmarks
Jignesh Shah
 
TripleO Deep Dive 1.1
TripleO Deep Dive 1.1TripleO Deep Dive 1.1
TripleO Deep Dive 1.1
Takashi Kajinami
 
Using galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wanUsing galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wan
Codership Oy - Creators of Galera Cluster
 
Hot tutorials
Hot tutorialsHot tutorials
Hot tutorials
Kanagaraj M
 

What's hot (20)

[KubeCon EU 2020] containerd Deep Dive
[KubeCon EU 2020] containerd Deep Dive[KubeCon EU 2020] containerd Deep Dive
[KubeCon EU 2020] containerd Deep Dive
 
DPDK KNI interface
DPDK KNI interfaceDPDK KNI interface
DPDK KNI interface
 
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Wars of MySQL Cluster ( InnoDB Cluster VS Galera ) Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
 
DPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet ProcessingDPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet Processing
 
Understanding DPDK
Understanding DPDKUnderstanding DPDK
Understanding DPDK
 
Hive+Tez: A performance deep dive
Hive+Tez: A performance deep diveHive+Tez: A performance deep dive
Hive+Tez: A performance deep dive
 
Managing enterprise users in Hadoop ecosystem
Managing enterprise users in Hadoop ecosystemManaging enterprise users in Hadoop ecosystem
Managing enterprise users in Hadoop ecosystem
 
Managing PostgreSQL with Ansible
 Managing PostgreSQL with Ansible Managing PostgreSQL with Ansible
Managing PostgreSQL with Ansible
 
OVN 設定サンプル | OVN config example 2015/12/27
OVN 設定サンプル | OVN config example 2015/12/27OVN 設定サンプル | OVN config example 2015/12/27
OVN 設定サンプル | OVN config example 2015/12/27
 
Deploying IPv6 on OpenStack
Deploying IPv6 on OpenStackDeploying IPv6 on OpenStack
Deploying IPv6 on OpenStack
 
Ceph Performance and Sizing Guide
Ceph Performance and Sizing GuideCeph Performance and Sizing Guide
Ceph Performance and Sizing Guide
 
HAProxy
HAProxy HAProxy
HAProxy
 
Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기
 
YOW2018 Cloud Performance Root Cause Analysis at Netflix
YOW2018 Cloud Performance Root Cause Analysis at NetflixYOW2018 Cloud Performance Root Cause Analysis at Netflix
YOW2018 Cloud Performance Root Cause Analysis at Netflix
 
MySQL Database Architectures - InnoDB ReplicaSet & Cluster
MySQL Database Architectures - InnoDB ReplicaSet & ClusterMySQL Database Architectures - InnoDB ReplicaSet & Cluster
MySQL Database Architectures - InnoDB ReplicaSet & Cluster
 
最近のOpenStackを振り返ってみよう
最近のOpenStackを振り返ってみよう最近のOpenStackを振り返ってみよう
最近のOpenStackを振り返ってみよう
 
PostgreSQL and Benchmarks
PostgreSQL and BenchmarksPostgreSQL and Benchmarks
PostgreSQL and Benchmarks
 
TripleO Deep Dive 1.1
TripleO Deep Dive 1.1TripleO Deep Dive 1.1
TripleO Deep Dive 1.1
 
Using galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wanUsing galera replication to create geo distributed clusters on the wan
Using galera replication to create geo distributed clusters on the wan
 
Hot tutorials
Hot tutorialsHot tutorials
Hot tutorials
 

Similar to DevOps with ActiveMQ, Camel, Fabric8, and HawtIO

Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-ServiceMigrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
David Currie
 
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Jack-Junjie Cai
 
.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles
VMware Tanzu
 
DevNexus 2015
DevNexus 2015DevNexus 2015
DevNexus 2015
Christian Posta
 
ITB2017 - Keynote
ITB2017 - KeynoteITB2017 - Keynote
ITB2017 - Keynote
Ortus Solutions, Corp
 
Cloud Foundry: Hands-on Deployment Workshop
Cloud Foundry: Hands-on Deployment WorkshopCloud Foundry: Hands-on Deployment Workshop
Cloud Foundry: Hands-on Deployment Workshop
Manuel Garcia
 
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Mandi Walls
 
Intro to Docker October 2013
Intro to Docker October 2013Intro to Docker October 2013
Intro to Docker October 2013
Docker, Inc.
 
SOLID Programming with Portable Class Libraries
SOLID Programming with Portable Class LibrariesSOLID Programming with Portable Class Libraries
SOLID Programming with Portable Class Libraries
Vagif Abilov
 
Staying on Topic - Invoke OpenFaaS functions with Kafka
Staying on Topic - Invoke OpenFaaS functions with KafkaStaying on Topic - Invoke OpenFaaS functions with Kafka
Staying on Topic - Invoke OpenFaaS functions with Kafka
Richard Gee
 
Afs manager
Afs managerAfs manager
Afs manager
Manfred Furuholmen
 
Benefits of an Open environment with Wakanda
Benefits of an Open environment with WakandaBenefits of an Open environment with Wakanda
Benefits of an Open environment with Wakanda
Alexandre Morgaut
 
12 Factor App Methodology
12 Factor App Methodology12 Factor App Methodology
12 Factor App Methodology
laeshin park
 
.NET Cloud-Native Bootcamp
.NET Cloud-Native Bootcamp.NET Cloud-Native Bootcamp
.NET Cloud-Native Bootcamp
VMware Tanzu
 
12 Factor Scala
12 Factor Scala12 Factor Scala
12 Factor Scala
Joe Kutner
 
Roll your own FOSS cloud hosting
Roll your own FOSS cloud hostingRoll your own FOSS cloud hosting
Roll your own FOSS cloud hosting
Russell Searle
 
DevOps Unleashed: Strategies that Speed Deployments
DevOps Unleashed: Strategies that Speed DeploymentsDevOps Unleashed: Strategies that Speed Deployments
DevOps Unleashed: Strategies that Speed Deployments
ForgeRock
 
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
Perficient, Inc.
 
Grails in the Cloud (2013)
Grails in the Cloud (2013)Grails in the Cloud (2013)
Grails in the Cloud (2013)
Meni Lubetkin
 
Phase2 - Large Drupal Multisites (GTA Case Study)
Phase2 - Large Drupal Multisites (GTA Case Study)Phase2 - Large Drupal Multisites (GTA Case Study)
Phase2 - Large Drupal Multisites (GTA Case Study)
Robert Bates
 

Similar to DevOps with ActiveMQ, Camel, Fabric8, and HawtIO (20)

Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-ServiceMigrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
 
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
 
.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles
 
DevNexus 2015
DevNexus 2015DevNexus 2015
DevNexus 2015
 
ITB2017 - Keynote
ITB2017 - KeynoteITB2017 - Keynote
ITB2017 - Keynote
 
Cloud Foundry: Hands-on Deployment Workshop
Cloud Foundry: Hands-on Deployment WorkshopCloud Foundry: Hands-on Deployment Workshop
Cloud Foundry: Hands-on Deployment Workshop
 
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
 
Intro to Docker October 2013
Intro to Docker October 2013Intro to Docker October 2013
Intro to Docker October 2013
 
SOLID Programming with Portable Class Libraries
SOLID Programming with Portable Class LibrariesSOLID Programming with Portable Class Libraries
SOLID Programming with Portable Class Libraries
 
Staying on Topic - Invoke OpenFaaS functions with Kafka
Staying on Topic - Invoke OpenFaaS functions with KafkaStaying on Topic - Invoke OpenFaaS functions with Kafka
Staying on Topic - Invoke OpenFaaS functions with Kafka
 
Afs manager
Afs managerAfs manager
Afs manager
 
Benefits of an Open environment with Wakanda
Benefits of an Open environment with WakandaBenefits of an Open environment with Wakanda
Benefits of an Open environment with Wakanda
 
12 Factor App Methodology
12 Factor App Methodology12 Factor App Methodology
12 Factor App Methodology
 
.NET Cloud-Native Bootcamp
.NET Cloud-Native Bootcamp.NET Cloud-Native Bootcamp
.NET Cloud-Native Bootcamp
 
12 Factor Scala
12 Factor Scala12 Factor Scala
12 Factor Scala
 
Roll your own FOSS cloud hosting
Roll your own FOSS cloud hostingRoll your own FOSS cloud hosting
Roll your own FOSS cloud hosting
 
DevOps Unleashed: Strategies that Speed Deployments
DevOps Unleashed: Strategies that Speed DeploymentsDevOps Unleashed: Strategies that Speed Deployments
DevOps Unleashed: Strategies that Speed Deployments
 
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
 
Grails in the Cloud (2013)
Grails in the Cloud (2013)Grails in the Cloud (2013)
Grails in the Cloud (2013)
 
Phase2 - Large Drupal Multisites (GTA Case Study)
Phase2 - Large Drupal Multisites (GTA Case Study)Phase2 - Large Drupal Multisites (GTA Case Study)
Phase2 - Large Drupal Multisites (GTA Case Study)
 

More from Christian Posta

Move Auth, Policy, and Resilience to the Platform
Move Auth, Policy, and Resilience to the PlatformMove Auth, Policy, and Resilience to the Platform
Move Auth, Policy, and Resilience to the Platform
Christian Posta
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
Christian Posta
 
Understanding Wireguard, TLS and Workload Identity
Understanding Wireguard, TLS and Workload IdentityUnderstanding Wireguard, TLS and Workload Identity
Understanding Wireguard, TLS and Workload Identity
Christian Posta
 
Compliance and Zero Trust Ambient Mesh
Compliance and Zero Trust Ambient MeshCompliance and Zero Trust Ambient Mesh
Compliance and Zero Trust Ambient Mesh
Christian Posta
 
Cilium + Istio with Gloo Mesh
Cilium + Istio with Gloo MeshCilium + Istio with Gloo Mesh
Cilium + Istio with Gloo Mesh
Christian Posta
 
Multi-cluster service mesh with GlooMesh
Multi-cluster service mesh with GlooMeshMulti-cluster service mesh with GlooMesh
Multi-cluster service mesh with GlooMesh
Christian Posta
 
Multicluster Kubernetes and Service Mesh Patterns
Multicluster Kubernetes and Service Mesh PatternsMulticluster Kubernetes and Service Mesh Patterns
Multicluster Kubernetes and Service Mesh Patterns
Christian Posta
 
Cloud-Native Application Debugging with Envoy and Service Mesh
Cloud-Native Application Debugging with Envoy and Service MeshCloud-Native Application Debugging with Envoy and Service Mesh
Cloud-Native Application Debugging with Envoy and Service Mesh
Christian Posta
 
Kubernetes Ingress to Service Mesh (and beyond!)
Kubernetes Ingress to Service Mesh (and beyond!)Kubernetes Ingress to Service Mesh (and beyond!)
Kubernetes Ingress to Service Mesh (and beyond!)
Christian Posta
 
The Truth About the Service Mesh Data Plane
The Truth About the Service Mesh Data PlaneThe Truth About the Service Mesh Data Plane
The Truth About the Service Mesh Data Plane
Christian Posta
 
Deep Dive: Building external auth plugins for Gloo Enterprise
Deep Dive: Building external auth plugins for Gloo EnterpriseDeep Dive: Building external auth plugins for Gloo Enterprise
Deep Dive: Building external auth plugins for Gloo Enterprise
Christian Posta
 
Role of edge gateways in relation to service mesh adoption
Role of edge gateways in relation to service mesh adoptionRole of edge gateways in relation to service mesh adoption
Role of edge gateways in relation to service mesh adoption
Christian Posta
 
Navigating the service mesh landscape with Istio, Consul Connect, and Linkerd
Navigating the service mesh landscape with Istio, Consul Connect, and LinkerdNavigating the service mesh landscape with Istio, Consul Connect, and Linkerd
Navigating the service mesh landscape with Istio, Consul Connect, and Linkerd
Christian Posta
 
Chaos Debugging for Microservices
Chaos Debugging for MicroservicesChaos Debugging for Microservices
Chaos Debugging for Microservices
Christian Posta
 
Leveraging Envoy Proxy and GraphQL to Lower the Risk of Monolith to Microserv...
Leveraging Envoy Proxy and GraphQL to Lower the Risk of Monolith to Microserv...Leveraging Envoy Proxy and GraphQL to Lower the Risk of Monolith to Microserv...
Leveraging Envoy Proxy and GraphQL to Lower the Risk of Monolith to Microserv...
Christian Posta
 
Service-mesh options with Linkerd, Consul, Istio and AWS AppMesh
Service-mesh options with Linkerd, Consul, Istio and AWS AppMeshService-mesh options with Linkerd, Consul, Istio and AWS AppMesh
Service-mesh options with Linkerd, Consul, Istio and AWS AppMesh
Christian Posta
 
Intro Istio and what's new Istio 1.1
Intro Istio and what's new Istio 1.1Intro Istio and what's new Istio 1.1
Intro Istio and what's new Istio 1.1
Christian Posta
 
API Gateways are going through an identity crisis
API Gateways are going through an identity crisisAPI Gateways are going through an identity crisis
API Gateways are going through an identity crisis
Christian Posta
 
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...
Christian Posta
 
PHX DevOps Days: Service Mesh Landscape
PHX DevOps Days: Service Mesh LandscapePHX DevOps Days: Service Mesh Landscape
PHX DevOps Days: Service Mesh Landscape
Christian Posta
 

More from Christian Posta (20)

Move Auth, Policy, and Resilience to the Platform
Move Auth, Policy, and Resilience to the PlatformMove Auth, Policy, and Resilience to the Platform
Move Auth, Policy, and Resilience to the Platform
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
Understanding Wireguard, TLS and Workload Identity
Understanding Wireguard, TLS and Workload IdentityUnderstanding Wireguard, TLS and Workload Identity
Understanding Wireguard, TLS and Workload Identity
 
Compliance and Zero Trust Ambient Mesh
Compliance and Zero Trust Ambient MeshCompliance and Zero Trust Ambient Mesh
Compliance and Zero Trust Ambient Mesh
 
Cilium + Istio with Gloo Mesh
Cilium + Istio with Gloo MeshCilium + Istio with Gloo Mesh
Cilium + Istio with Gloo Mesh
 
Multi-cluster service mesh with GlooMesh
Multi-cluster service mesh with GlooMeshMulti-cluster service mesh with GlooMesh
Multi-cluster service mesh with GlooMesh
 
Multicluster Kubernetes and Service Mesh Patterns
Multicluster Kubernetes and Service Mesh PatternsMulticluster Kubernetes and Service Mesh Patterns
Multicluster Kubernetes and Service Mesh Patterns
 
Cloud-Native Application Debugging with Envoy and Service Mesh
Cloud-Native Application Debugging with Envoy and Service MeshCloud-Native Application Debugging with Envoy and Service Mesh
Cloud-Native Application Debugging with Envoy and Service Mesh
 
Kubernetes Ingress to Service Mesh (and beyond!)
Kubernetes Ingress to Service Mesh (and beyond!)Kubernetes Ingress to Service Mesh (and beyond!)
Kubernetes Ingress to Service Mesh (and beyond!)
 
The Truth About the Service Mesh Data Plane
The Truth About the Service Mesh Data PlaneThe Truth About the Service Mesh Data Plane
The Truth About the Service Mesh Data Plane
 
Deep Dive: Building external auth plugins for Gloo Enterprise
Deep Dive: Building external auth plugins for Gloo EnterpriseDeep Dive: Building external auth plugins for Gloo Enterprise
Deep Dive: Building external auth plugins for Gloo Enterprise
 
Role of edge gateways in relation to service mesh adoption
Role of edge gateways in relation to service mesh adoptionRole of edge gateways in relation to service mesh adoption
Role of edge gateways in relation to service mesh adoption
 
Navigating the service mesh landscape with Istio, Consul Connect, and Linkerd
Navigating the service mesh landscape with Istio, Consul Connect, and LinkerdNavigating the service mesh landscape with Istio, Consul Connect, and Linkerd
Navigating the service mesh landscape with Istio, Consul Connect, and Linkerd
 
Chaos Debugging for Microservices
Chaos Debugging for MicroservicesChaos Debugging for Microservices
Chaos Debugging for Microservices
 
Leveraging Envoy Proxy and GraphQL to Lower the Risk of Monolith to Microserv...
Leveraging Envoy Proxy and GraphQL to Lower the Risk of Monolith to Microserv...Leveraging Envoy Proxy and GraphQL to Lower the Risk of Monolith to Microserv...
Leveraging Envoy Proxy and GraphQL to Lower the Risk of Monolith to Microserv...
 
Service-mesh options with Linkerd, Consul, Istio and AWS AppMesh
Service-mesh options with Linkerd, Consul, Istio and AWS AppMeshService-mesh options with Linkerd, Consul, Istio and AWS AppMesh
Service-mesh options with Linkerd, Consul, Istio and AWS AppMesh
 
Intro Istio and what's new Istio 1.1
Intro Istio and what's new Istio 1.1Intro Istio and what's new Istio 1.1
Intro Istio and what's new Istio 1.1
 
API Gateways are going through an identity crisis
API Gateways are going through an identity crisisAPI Gateways are going through an identity crisis
API Gateways are going through an identity crisis
 
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...
 
PHX DevOps Days: Service Mesh Landscape
PHX DevOps Days: Service Mesh LandscapePHX DevOps Days: Service Mesh Landscape
PHX DevOps Days: Service Mesh Landscape
 

Recently uploaded

Intro to Amazon Web Services (AWS) and Gen AI
Intro to Amazon Web Services (AWS) and Gen AIIntro to Amazon Web Services (AWS) and Gen AI
Intro to Amazon Web Services (AWS) and Gen AI
Ortus Solutions, Corp
 
How to Make a Living as a (ColdFusion) Freelancer?
How to Make a Living as a (ColdFusion) Freelancer?How to Make a Living as a (ColdFusion) Freelancer?
How to Make a Living as a (ColdFusion) Freelancer?
Ortus Solutions, Corp
 
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
Hironori Washizaki
 
Migrate your Infrastructure to the AWS Cloud
Migrate your Infrastructure to the AWS CloudMigrate your Infrastructure to the AWS Cloud
Migrate your Infrastructure to the AWS Cloud
Ortus Solutions, Corp
 
Web Hosting with CommandBox and CommandBox Pro
Web Hosting with CommandBox and CommandBox ProWeb Hosting with CommandBox and CommandBox Pro
Web Hosting with CommandBox and CommandBox Pro
Ortus Solutions, Corp
 
Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...
Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...
Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...
Asher Sterkin
 
How to Break Your App with Playwright Tests
How to Break Your App with Playwright TestsHow to Break Your App with Playwright Tests
How to Break Your App with Playwright Tests
Ortus Solutions, Corp
 
Navigating the New Era of Adaptive PPM with OnePlan - Webinar 27Jun24.pdf
Navigating the New Era of Adaptive PPM with OnePlan - Webinar 27Jun24.pdfNavigating the New Era of Adaptive PPM with OnePlan - Webinar 27Jun24.pdf
Navigating the New Era of Adaptive PPM with OnePlan - Webinar 27Jun24.pdf
OnePlan Solutions
 
BoxLang Developer Tooling: VSCode Extension and Debugger
BoxLang Developer Tooling: VSCode Extension and DebuggerBoxLang Developer Tooling: VSCode Extension and Debugger
BoxLang Developer Tooling: VSCode Extension and Debugger
Ortus Solutions, Corp
 
Ortus Solutions - Headless Content for the Win!
Ortus Solutions - Headless Content for the Win!Ortus Solutions - Headless Content for the Win!
Ortus Solutions - Headless Content for the Win!
Ortus Solutions, Corp
 
LIVE DEMO: CCX for CSPs, a drop-in DBaaS solution
LIVE DEMO: CCX for CSPs, a drop-in DBaaS solutionLIVE DEMO: CCX for CSPs, a drop-in DBaaS solution
LIVE DEMO: CCX for CSPs, a drop-in DBaaS solution
Severalnines
 
一比一原版宾夕法尼亚大学毕业证(UPenn毕业证书)学历如何办理
一比一原版宾夕法尼亚大学毕业证(UPenn毕业证书)学历如何办理一比一原版宾夕法尼亚大学毕业证(UPenn毕业证书)学历如何办理
一比一原版宾夕法尼亚大学毕业证(UPenn毕业证书)学历如何办理
eydbbz
 
Build a Complex Web Form with RuleBox and TestBox
Build a Complex Web Form with RuleBox and TestBoxBuild a Complex Web Form with RuleBox and TestBox
Build a Complex Web Form with RuleBox and TestBox
Ortus Solutions, Corp
 
Enterprise Resource Planning in India - NYGGS
Enterprise Resource Planning in India - NYGGSEnterprise Resource Planning in India - NYGGS
Enterprise Resource Planning in India - NYGGS
NYGGS Construction ERP Software
 
Revolutionizing Task Scheduling in ColdBox
Revolutionizing Task Scheduling in ColdBoxRevolutionizing Task Scheduling in ColdBox
Revolutionizing Task Scheduling in ColdBox
Ortus Solutions, Corp
 
Austere Systems Company Portfolio (ASPL).pdf
Austere Systems Company Portfolio (ASPL).pdfAustere Systems Company Portfolio (ASPL).pdf
Austere Systems Company Portfolio (ASPL).pdf
support433113
 
How to debug ColdFusion Applications using “ColdFusion Builder extension for ...
How to debug ColdFusion Applications using “ColdFusion Builder extension for ...How to debug ColdFusion Applications using “ColdFusion Builder extension for ...
How to debug ColdFusion Applications using “ColdFusion Builder extension for ...
Ortus Solutions, Corp
 
Security Assessment (SECA)_English_PDF.pdf
Security Assessment (SECA)_English_PDF.pdfSecurity Assessment (SECA)_English_PDF.pdf
Security Assessment (SECA)_English_PDF.pdf
Q-Advise
 
Securing Your Application with Passkeys and cbSecurity
Securing Your Application with Passkeys and cbSecuritySecuring Your Application with Passkeys and cbSecurity
Securing Your Application with Passkeys and cbSecurity
Ortus Solutions, Corp
 
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data PlatformAlluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio, Inc.
 

Recently uploaded (20)

Intro to Amazon Web Services (AWS) and Gen AI
Intro to Amazon Web Services (AWS) and Gen AIIntro to Amazon Web Services (AWS) and Gen AI
Intro to Amazon Web Services (AWS) and Gen AI
 
How to Make a Living as a (ColdFusion) Freelancer?
How to Make a Living as a (ColdFusion) Freelancer?How to Make a Living as a (ColdFusion) Freelancer?
How to Make a Living as a (ColdFusion) Freelancer?
 
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
COMPSAC 2024 D&I Panel: Charting a Course for Equity: Strategies for Overcomi...
 
Migrate your Infrastructure to the AWS Cloud
Migrate your Infrastructure to the AWS CloudMigrate your Infrastructure to the AWS Cloud
Migrate your Infrastructure to the AWS Cloud
 
Web Hosting with CommandBox and CommandBox Pro
Web Hosting with CommandBox and CommandBox ProWeb Hosting with CommandBox and CommandBox Pro
Web Hosting with CommandBox and CommandBox Pro
 
Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...
Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...
Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...
 
How to Break Your App with Playwright Tests
How to Break Your App with Playwright TestsHow to Break Your App with Playwright Tests
How to Break Your App with Playwright Tests
 
Navigating the New Era of Adaptive PPM with OnePlan - Webinar 27Jun24.pdf
Navigating the New Era of Adaptive PPM with OnePlan - Webinar 27Jun24.pdfNavigating the New Era of Adaptive PPM with OnePlan - Webinar 27Jun24.pdf
Navigating the New Era of Adaptive PPM with OnePlan - Webinar 27Jun24.pdf
 
BoxLang Developer Tooling: VSCode Extension and Debugger
BoxLang Developer Tooling: VSCode Extension and DebuggerBoxLang Developer Tooling: VSCode Extension and Debugger
BoxLang Developer Tooling: VSCode Extension and Debugger
 
Ortus Solutions - Headless Content for the Win!
Ortus Solutions - Headless Content for the Win!Ortus Solutions - Headless Content for the Win!
Ortus Solutions - Headless Content for the Win!
 
LIVE DEMO: CCX for CSPs, a drop-in DBaaS solution
LIVE DEMO: CCX for CSPs, a drop-in DBaaS solutionLIVE DEMO: CCX for CSPs, a drop-in DBaaS solution
LIVE DEMO: CCX for CSPs, a drop-in DBaaS solution
 
一比一原版宾夕法尼亚大学毕业证(UPenn毕业证书)学历如何办理
一比一原版宾夕法尼亚大学毕业证(UPenn毕业证书)学历如何办理一比一原版宾夕法尼亚大学毕业证(UPenn毕业证书)学历如何办理
一比一原版宾夕法尼亚大学毕业证(UPenn毕业证书)学历如何办理
 
Build a Complex Web Form with RuleBox and TestBox
Build a Complex Web Form with RuleBox and TestBoxBuild a Complex Web Form with RuleBox and TestBox
Build a Complex Web Form with RuleBox and TestBox
 
Enterprise Resource Planning in India - NYGGS
Enterprise Resource Planning in India - NYGGSEnterprise Resource Planning in India - NYGGS
Enterprise Resource Planning in India - NYGGS
 
Revolutionizing Task Scheduling in ColdBox
Revolutionizing Task Scheduling in ColdBoxRevolutionizing Task Scheduling in ColdBox
Revolutionizing Task Scheduling in ColdBox
 
Austere Systems Company Portfolio (ASPL).pdf
Austere Systems Company Portfolio (ASPL).pdfAustere Systems Company Portfolio (ASPL).pdf
Austere Systems Company Portfolio (ASPL).pdf
 
How to debug ColdFusion Applications using “ColdFusion Builder extension for ...
How to debug ColdFusion Applications using “ColdFusion Builder extension for ...How to debug ColdFusion Applications using “ColdFusion Builder extension for ...
How to debug ColdFusion Applications using “ColdFusion Builder extension for ...
 
Security Assessment (SECA)_English_PDF.pdf
Security Assessment (SECA)_English_PDF.pdfSecurity Assessment (SECA)_English_PDF.pdf
Security Assessment (SECA)_English_PDF.pdf
 
Securing Your Application with Passkeys and cbSecurity
Securing Your Application with Passkeys and cbSecuritySecuring Your Application with Passkeys and cbSecurity
Securing Your Application with Passkeys and cbSecurity
 
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data PlatformAlluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
 

DevOps with ActiveMQ, Camel, Fabric8, and HawtIO

  • 1. DevOps with ActiveMQ, Camel, Fabric8 and HawtIO Christian Posta 6/11/14
  • 2. RED HAT | ADD NAME2 Agenda •  DevOps… What is that? •  Enterprise Integration •  Automated Delivery •  To the Cloud
  • 3. RED HAT | ADD NAME3 Your speaker Christian Posta http://christianposta.com/blog @christianposta christian@redhat.com •  Principal Middleware Specialist •  Based in Phoenix, AZ •  Committer on Apache Camel, ActiveMQ, Apollo, PMC on ActiveMQ •  Author: Essential Camel Components DZone Refcard
  • 4. Shorten the lifecycle from inception to production so that the business can make money! Developers and Operations must cooperate. Rely on tools/frameworks to automate, automate, and automate.
  • 6. RED HAT | ADD NAME6 “WTF is DevOps?” •  IT is a core competency •  Set of principles •  There’s more to applications than coding! •  Feedback •  Repetition •  Communication •  People!
  • 7. RED HAT | ADD NAME7 Shorten the feedback loop •  Developers •  QA •  Operations •  Business •  Customers!!!
  • 9. RED HAT | ADD NAME9 Integration is easy!
  • 10. RED HAT | ADD NAME10 •  Off the shelf? Home Grown? Acquisition? •  Platforms •  Protocols / Data Formats •  Data Formats •  Timing •  Organizational mismatch Why is integration hard?
  • 11. RED HAT | ADD NAME11 •  Light-weight integration library •  Domain Specific Language •  Enterprise Integration Patterns •  Components •  Routing and Mediation (like an ESB?) •  Runs in any container (or stand alone) What is Apache Camel?
  • 12. RED HAT | ADD NAME12 •  Message Routing •  Transformation •  Aggregation •  Splitting •  Resequencer •  Routing Slip •  Enricher •  All 65 from the book! Enterprise Integration Patterns
  • 13. RED HAT | ADD NAME13 Components •  ActiveMQ, Websphere, Weblogic (JMS) •  AMQP •  ATOM feeds •  AWS (S3, SQS, SNS, others) •  Bean •  Cache (EHCache) •  CXF (JAX-WS, JAX-RS) •  EJB •  Drools •  File •  FTP/SFTP •  Google App Engine •  GMail •  HTTP •  IRC •  jclouds •  JDBC •  Jetty •  Twitter •  MQTT •  MyBatis •  JPA •  Spring Integration •  Spring Web Services http://camel.apache.org/components.html To see list of all components!!
  • 14. RED HAT | ADD NAME14 Java DSL public class OrderProcessorRouteBuilder extends RouteBuilder { @Override public void configure() throws Exception { from(“activemq:orders”) .choice() .when(header(“customer-rating”).isEqualTo(“gold”)) .to(“ibmmq:topic:specialCustomer”) .otherwise() .to(“ftp://user@host/orders/regularCustomers”) .end() .log(“received new order ${body.orderId}”) .to(“ibatis:storeOrder?statementType=Insert”); } }
  • 15. RED HAT | ADD NAME15 Spring XML DSL <route id=“processOrders”> <from uri=“activemq:orders”/> <choice> <when> <simple>${header.customer-rating} == ‘gold’</simple> <to uri=“ibmmq:topic:specialCustomer”> </when> <otherwise> <to uri=“ftp://user@host/orders/regularCustomers” /> </otherwise> </choice> <log message=“received new order ${body.orderId}”/> <to uri=“ibatis:storeOrder?statementType=Insert”/> </route>
  • 16. RED HAT | ADD NAME16 •  Batch file transfers •  Shared Database •  RPC •  Messaging Integration Options
  • 17. RED HAT | ADD NAME17 •  Asynchronous architectures •  Reliable message passing •  Loose coupling •  Heterogeneous integration •  Fault tolerant •  Scalable •  Real-time data Why messaging?
  • 18. RED HAT | ADD NAME18 •  The most widely used open-source messaging broker •  Highly configurable •  Friendly license (no license fees!) •  Vibrant community (TLP) •  Backbone of top enterprises in retail, e-retail, financial services, shipping, many others! Apache ActiveMQ
  • 19. RED HAT | ADD NAME19 •  High performance •  High availability •  Light-weight •  Multi-protocol (AMQP, MQTT, STOMP) •  Multi-transport (TCP,SSL,WS,VM,HTTP) •  JMS compliant •  Supported in production by Red Hat! ActiveMQ Features
  • 20. RED HAT | ADD NAME20 Network of Master/Slave
  • 21. RED HAT | ADD NAME21 High-performance, real-time systems Head Office STORE STORE outlet shop 24 houra STORE shop Broker Clusters •  Clustering, Network of Brokers •  Client-aware failover •  Master/Slave HA •  Fabric
  • 22. RED HAT | ADD NAME22 Ingestion for BigData Architecture Broker Cluster Broker Cluster Web Servers Web Servers Web Servers Web Servers Camel HTTP Log Reader Camel HTTP Log Reader Camel HTTP Log Reader Camel HTTP Log Reader ESB ESB Camel HBase/HDFS Camel Hbase/HDFS HDFS
  • 23. RED HAT | ADD NAME23 Integration Everywhere – Internet of Things Connecting Things • mobile devices • meters • industrial controls • smart buildings • asset tracking • traffic control • monitors • sensors • actuators Broker Clusters Arrival Airport 1
  • 24. RED HAT | ADD NAME24 JBoss Fuse Integrate Everything!
  • 25. RED HAT | ADD NAME25 More info on JBoss Fuse… https://www.redhat.com/products/jbossenterprisemiddleware/fuse/ http://www.jboss.org/products/fuse
  • 26. Demo
  • 28. RED HAT | ADD NAME28
  • 29. RED HAT | ADD NAME29 Current issues with deployments •  Installation •  SSH, download, unpack, install, permissions, ENV var •  Configuration •  Container, individual apps/services, brokers, security •  Upgrading •  Install, configure, rollback •  Introspection •  Big picture statistics (JVM/OS memory usage, CPU) •  JMX (jconsole, visualVM)
  • 30. RED HAT | ADD NAME30 Clients aware of Topology •  Brokers •  failover:(tcp://host1:port1,tcp://host2:port2) •  Camel endpoints •  from(“jetty:http://22.33.44.55:8080/endpoint”) •  to(“http4://11.22.33.44:9000/endpoint”) •  Web service endpoints •  Access a specific endpoint: http://22.33.44.55:9091/endpoint
  • 31. RED HAT | ADD NAME31 Current best practices •  Use templates for configuration w/ template engine •  Puppet/Chef and/or Capistrano/Ansible •  Store configuration (templates + values) in SCM •  Separate configuration from binary deployments •  Verifiable build and release process
  • 32. RED HAT | ADD NAME32 •  Simplifies deployments •  Provides management tools for centralized configuration •  Visualize your middleware with HawtIO •  Polycontainer •  Blurs the line of PaaS http://fabric8.io
  • 33. RED HAT | ADD NAME33 •  Provides cluster capabilities, coordination •  Service discovery, load balancing, failover •  Deploy to cloud (IaaS, PaaS) •  Supported as JBoss Fuse (managed) •  fabric8 1.0 is in Fuse 6.1 •  1.1 about to be released •  RC1 released 6/10 http://fabric8.io
  • 34. RED HAT | ADD NAME34 fabric8 1.1 release •  Java Container •  Tomcat, TomEE, Jetty •  Spring Boot •  fabric:watch * with various containers •  Profile import/export •  fabric8 maven plugin enhancements
  • 35. RED HAT | ADD NAME35 Architecture Clustered Registry Agent Agent Zookeeper Agent Zookeeper Agent Zookeeper Version 1.0 Profile CXFProfile Camel Profile Default Features Configuration Registry Content containers that form an “ensemble” Pulls  profile  data   Registers  /  Listens  for  changes  
  • 36. RED HAT | ADD NAME36 Core concepts •  Fabric registry •  Holds all configuration data •  Runtime registry for looking up distributed services •  Profile •  Describes the container set up •  Features, Bundles, ConfigAdmin PIDs, system properties •  Hierarchical structure •  Container versioning •  Agent •  Runs on each container •  Communicates with registry to make sure container provisioned correctly
  • 37. RED HAT | ADD NAME37 How’s fabric8 different than Puppet/Chef? •  Middleware centric •  Container agnostic •  Deep knowledge about the running processes •  Consistent configuration •  Visualizations •  Versioning built in, upgrades, rollbacks, selective upgrade, etc •  Use puppet/chef to provision your machines, use fabric8 to provision and manage your middleware/ apps
  • 38. RED HAT | ADD NAME38 Fuse Management Console
  • 39. RED HAT | ADD NAME39 HawtIO http://hawt.io
  • 40. RED HAT | ADD NAME40 HawtIO http://hawt.io
  • 41. RED HAT | ADD NAME41 FuFuse Management Console
  • 42. Demo
  • 44. RED HAT | ADD NAME44 Continuous Delivery •  Builds on continuous integration •  Establish a concrete pipeline to production •  Build/Test/Release often! •  Bottlenecks? •  Involves Dev and Ops to be successful •  Every build is a “release candidate”
  • 45. RED HAT | ADD NAME45 Automate everything! •  Developers •  Unit tests •  Integration tests •  Builds •  Deployments in dev •  Operations •  VMs •  Provisioning software •  Deployments in QA/UAT/PROD
  • 46. RED HAT | ADD NAME46 Tools for a CD pipeline •  Puppet/Chef to provision VMs •  Git for SCM •  Gerrit/Gitlab for code reviews •  Maven •  Jenkins + plugins •  and of course… Fabric8! •  What’s this Docker thingy?
  • 47. RED HAT | ADD NAME47 Fabric8 maven plugin •  fabric8:deploy •  fabric8:zip •  fabric8:aggregate-zip •  fabric8:branch •  fabric8:script (for karaf only) •  http://fabric8.io/gitbook/mavenPlugin.html
  • 48. RED HAT | ADD NAME48 Sample flow •  Check your code in •  Gerrit for code reviews •  Jenkins for build + CD pipeline •  Use fabric8:zip to deploy profiles to Maven repo •  Use fabric8:branch to automate deploying multiple profiles to QA/UAT/PROD •  Can use profile-import to manually import zips •  Build the binary once!
  • 49. Demo
  • 51. RED HAT | ADD NAME51 Docker •  http://docker.io •  Open source •  Lightweight VEs •  Linux containers (LXC) •  Portable packaging •  Versioned •  Repositories
  • 52. RED HAT | ADD NAME52 How different than VMs?
  • 53. RED HAT | ADD NAME53 Fabric8 Docker support •  Docker images •  Build docker containers for your java apps •  Flat classpath •  Microservices
  • 54. Demo
  • 56. RED HAT | ADD NAME56 What is OpenShift? Red Hat’s free platform as a service for applications in the cloud.
  • 57. RED HAT | ADD NAME57 What’s supported?
  • 58. RED HAT | ADD NAME58 Flavors origin Public Cloud Service On- premise or Private Cloud Software Open Source Project
  • 59. RED HAT | ADD NAME59 Terminology l  Broker – Management host, orchestration of Nodes l  Node – Compute host containing Gears l  Gear – Allocation of fixed memory, compute, and storage resources for running applications l  Cartridge – A technology/framework (PHP, Perl, Java/ JEE, Ruby, Python, MySQL, etc.) to build applications l  Application – Instantiation of a Cartridge l  Client Tools – CLI, Eclipse Plugin, Web Console, Java API, REST API
  • 60. RED HAT | ADD NAME60 xPaaS/iPaaS l  xPaaS -  Cartridges for Entire JBoss & Fuse Portfolio -  EAP and EWS Enterprise Cartridges Today -  Several Community Cartridges Available Today l  iPaaS -  Integration PaaS -  Fuse/Fabric Cartridge
  • 61. RED HAT | ADD NAME61 More Info http://fabric8.io http://hawt.io http://docker.io http://jboss.org/products/fuse http://activemq.apache.org http://camel.apache.org
  • 62. RED HAT | ADD NAME62 Questions? http://christianposta.com/blog @christianposta christian@redhat.com