Agile Integration - Cloud Native
Development
Christina Lin
Technical Evangelist
1
Christina Lin
CORPORATE SLIDE TEMPLATES
2
Technical
Marketing
Manager
Twitter: @Christina_wm
Email: clin@redhat.com
● Workshops
● Demos
● Blogs
Technical
Evangelist
3
Cloud Native
Empower organizations to build and run scalable
application on modern dynamic environment such as
public, private and hybrid clouds.
--CNCF Charter https://github.com/cncf/foundation/blob/master/charter.md
Speed
Access
Scale
4
The Wizards
ContainerOrchestration
Fault tolerance
Microservice
Bounded Context
Kubernetes
Streaming
Change Data Capture
Immutable
Automation
Service Mesh
Resiliency
CircuitBreaker
Event Sourcing
Observibility
Canary Release
Blue Green deployment
Telemetry
TracingService Discovery
Application
Lifecycle
API
Kafla
Agile
Integration
12 factors
OpenTracing
Distributed
Eventual Consistency
CI/CD
5
6
700 BC(Before Cloud-Native)
7
Cloud Native Reference Architecture
7
Data
● Data Integration
● Change Data Capture
Events
● Event driven System
Kafka (Streaming)
● Change Data Capture
Event Sourcing
Service Mesh (Istio)
● API management for Service Mesh
● EIP and Service Mesh
● Container/Cloud Native Dev
Architecture
API
● API Lifecycle
● API as a Product
● API management for
Service Mesh
● Data Integration
● Low Code Integration
Microservices
● DDD
● Event driven System
Kafka (Streaming)
● Reactive (system VS
programing)
Serverless
● Serverless (KNative) Camel K
● Event driven System
Integration/iPaaS
● Low Code Integration
● Data Integration
Security
● Security
● API management e
8
Microservices & Bounded Context
9
Microservices & Bounded Context
10
Microservice and Containers
11
Agile Integration
12
Agile Integration
13
Core
14
Control & Dispatch
15
CODE First
Backend
Services
Integrate and
implement
service
Provide
Contract for
consumers
Back and forth
testing and
negotiating
Back and
forth update
changes
CODE FIRST
16
API First
Backend
Services
Integrate and
implement
contracts
Back and forth
testing and
negotiating
CONTRACT FIRST
API First
Bounded Context
Bounded Context
External Gateway
CONTRACT-FIRST
CODE FIRSTBrown Field
API First
CONTROL
➔ Security
➔ Key management
➔ Rate limiting
➔ Policy enforcement
➔ User management
➔ Provisioning
VISIBILITY
➔ Analytics
➔ App tracking
➔ User tracking
➔ Traffic alerts
➔ Engagement
➔ Developer support
MANAGEMENT
➔ Testing
➔ Release
➔ Versions
➔ Deployment
➔ SLA
LIFECYCLE
19
Composite
20
EVENTS
21
22
23
Event Driven Services
24
What About Data Consistency?
Booking
Payment
Hotel
Flight
LRA
camel:
service:
lra:
enabled: true
coordinator-url: http://lra-coordinator.rhte.svc:46000
local-participant-url: http://${project.artifactId}:8080/api
.saga()
.propagation(SagaPropagation.MANDATORY)
.compensation("direct:cancelBooking")
.to("sql:INSERT INTO FLIGHT (custid, traveldatestart, traveldateend ) VALUES (:#id, :#traveldatestart,
:#traveldateend)?dataSource=dataSource")
.toD("http4://rhte-creditcard.rhte.svc:8080/credircard/pay/${header.id}/${header.payamt}?bridgeEndpoint=true")
.saga()
.setHeader(Exchange.HTTP_METHOD, constant("POST"))
.toD("http4://rhte-flight.rhte.svc:8080/api/book?bridgeEndpoint=true")
.toD("http4://rhte-hotel.rhte.svc:8080/api/book?bridgeEndpoint=true")
compensation
compensation
Saga Pattern
26
Event Sourcing
27
Change Data Capture
28
Change Data Capture Topology
DBZ
MySQL
DBZ
Postgres
ES
Connector
MySQL
PostgreSQL
ElasticsearchKafka Connect Kafka ConnectApache Kafka
29
Agile Integration
30
Container Orchestration Platform
31
Automations
32
Automations
33
Container Orchestration Platform
34
Container Orchestration Platform
35
Closer look at microservice?
Versioning?
Security?
Control?
Release?
36
Closer look at microservice?
37
Closer look at microservice?
38
Networking Layer
39
Networking Layer
40
Istio Service Mesh
Data Plane
Control Plane
41
Service Mesh
42
Observability Open Tracing - Jaeger
43
Observability
Logging - Kibana
44
Cloud Native

Agile integration cloud native developement