Not since the rise of Service Oriented Architecture (and the supporting Fusion Middleware technology) over a decade ago have we seen so much rapid change in terms of application and infrastructure architecture. Cloud, Microservices and DevOps are perhaps the most explicit examples – but many other developments in technology, architecture and even the industry at large have an impact on how enterprises consider and employ IT – such as machine learning, IoT, blockchain.
In this session for (infrastructure, solution, application, enterprise, security, data) architects – we will present the main stories, roadmaps and technologies from Oracle OpenWorld 2017 (and JavaOne) that influence, shape and enable architecture. We will brainstorm together on the consequences of the new directions outlined by Oracle – and coming our way from other quarters. We are seeing a a lot of change. New opportunities arise – that may become challenges or threats if we fail to recognize and embrace the change in time. This session will help us all to get a better handle on the winds in enterprise IT in general and in Oracle land in particular.
Among the topics we will present and discuss are:
- The Only Way is Up – the inevitable and imminent move from on premises to the cloud, and upwards in the stack – from IaaS to SaaS
- Security and Ops in a hybrid landscape (multiple clouds & on premises, multiple technologies & interaction channels)
- Autonomous Database – what, when, how
- Oracle’s cloud strategy, High PaaS and Low PaaS, Open [source] technology (star of the show: Apache Kafka) and the commodization of the traditional Oracle platform
- Container and Cloud Native at Oracle Cloud (Docker, Kubernetes Container Platform, Wercker, Istio Service Mesh, CNCF)
- Serverless
- Java Reborn – for microservices and cloud, modularized (highlights from the JavaOne conference)
- Disruptive: Blockchain, IoT, Machine Learning
Dutch Oracle Architects Platform - Reviewing Oracle OpenWorld 2017 and New Trends in Architecture
1. Reviewing
Oracle
OpenWorld 2017
and the new
architecture
trends
Dutch Oracle
Architects Platform
AMIS Oracle OpenWorld 2017 Review – October 20171
Tuesday 28th November, Nieuwegein, The Netherlands
2. Overview
• The Only Way is Up – High and Low [PaaS]
• Microservices, DevOps & Cloud Native
• The Road to the Cloud
• Hybrid: Security, H/A, Ops
• Integration
• Application Development
• Data [Store] Proliferation and Commoditization
8. The Only Way is Up
It’s not if,
it’s when
It’s not later,
it’s sooner
Titel van de presentatie8
9. Smart Business
• Organizations should only invest in things that
• Allow them to create business value
• Set them apart from the competiton
• Are close to their core expertise
• Are a unique risk
• For most organizations these things do not include
• Managing computers, investing in hardware
• Managing operating systems or databases
• Building custom software
10. In X Years’ Time
• No organization can justify to have and manage their own IT
means
• To invest capital in infrastructure & platform licenses
• To employ staff to run infrastructure, platforms (and create
custom software for non-unique functionality)
• To not leverage commodity IT with superior quality and
economies of scale based pricing
11. The only way is up
• From buy (for peak load) [software & hardware)
to usage based rent
• From on premises to cloud
• From infra and platform
to SaaS (standard applications)
• From pay based on IT metrics
to pay per Business measure IaaS
PaaS
SaaS
On Premises
12. Oracle’s Cloud Strategy
Titel van de presentatie 12
SaaS
High PaaS
Low PaaS
IaaS
CX ERPSales HCM
Management
Cloud
Analytics
Cloud Integration
Cloud
IoT
Apps &
Cloud
Block
Chain
Big
Data &
AI
Developer
Cloud
Mobile &
IB Cloud
CASB &
IDCS
Managed
Kubernetes
Container
Cloud
Managed
Serverless Event
Hub Data
Hub
MySQLACC NoSQL
Autonomous
Database (DWH,
OLTP, IoT,…)
Compute
Networking
Storage
Messaging
CDN
DNS
LB
Integration
Platform
Cloud
API Platform
Cloud
EPM Supply
Chain
Industry
specific
SaaS
Analytics
DaaS
13. Obvious Deficiencies in Oracle Cloud
• BYOL
• Truly managed services with high availability and real SLAs
• Clear insight in costs (especially before finalizing the solution)
• Free tier
• Stepless pay per use
• Monetization (aka bill on behalf)
• Full automation – APIs/scripting
• Cross cloud monitoring & alerting
• Integration between cloud services
• Obvious Generic Cloud Platform capabilities
• Great User Experience in Cloud Ops
13
14. Future Observations
• Each organization works with
hybrid multi-vendor cloud
• Many niche SaaS solutions used in any organization
• Data proliferation across clouds & across types of data store
• PaaS services increasingly similar across cloud vendors
• Some key challenges:
• Designing multi-service & multi-cloud solutions (and exit
plans)
• Integrating PaaS services and SaaS functions
• Monitoring & Ops across clouds and services
• Security
16. What is IT all about?
Application
Production Runtime
17. What is IT all about?
Application
Production Runtime
Platform
18. What is IT all about?
Application
Production Runtime
Platform
Operations
Monitoring &
Management
19. One team has Agile responsibility
through full lifecyle
Application
Production Runtime
Platform
Operations
Monitoring &
Management
Application
Preparation Runtime
Platform
Development
CD
Agile Design,
Build, Test
20. One team has Agile responsibility
through full lifecyle
Application
Production Runtime
Platform
Monitoring &
Management
Application
Preparation Runtime
Platform
CD
Agile Design,
Build, Test
21. One team has Agile responsibility
through full lifecyle
Application
Platform
Application
Platform
22. DevOps team owns and runs
one (or more) products
Application
Platform
Generic Infrastructure Platform for running DevOps Products
Floorspace, Power,
Cooling, Storage,
Compute
Monitoring, Management,
Cache, Authentication,
RDBMS, Event Hub
24. App plus platform under DevOps ==
Microservice
Generic Infrastructure Platform for running DevOps Products
µ µ µ µ µ
25. App plus platform under DevOps ==
Microservice
• Stateless
• Horizontally scalable
• Mutually Independent
• upgrade, patch, relocate
• Can expose Public API (HTTP/REST)
and/or UI
• Communicate with each other through events
• Have their own bounded data context
• Do not rely on other microservices [for the data they need]
• Serverless – do not require allocated server, can be fired up
Generic Infrastructure Platform for running DevOps Products
µ µ µ µ µ
26. Once upon a time –
a container based microservice
Container and Cloud Native & Serverless 26
µ
http requests
27. Where is the container running?
• Any Docker Host – on premises or cloud based VM - or a Container Cloud Service
• For example: Oracle Container Cloud Service
Container and Cloud Native & Serverless 27
µ
28. How did the container start running in
the runtime?
• Through a CI/CD Pipeline
• Build process
• Take a Basic runtime image – e.g. Linux plus Some Language VM
• Add application code
• Add runtime agents and tooling
• Add platform/runtime configuration
• Then Build the Image
• Test the Image
• Tag and Push Image to Registry
• Deploy the image plus applicable configuration to a specific destination
container runtime environment
• The CI/CD Process is managed manually or triggered by development
event
Container and Cloud Native & Serverless 28
µ
29. Wercker: Build, Test, Push and Deploy
Pipelines for Containers
Container and Cloud Native & Serverless 29
µ
µ
µ
30. Where is the container image stored
after build – prior to deploy?
• Somewhere in a registry
• That is secure (because runtime artefacts)
• Low latency to container runtime
• Scalable
• Smart (no duplicate images and image layers)
Container and Cloud Native & Serverless 30
31. New component in container native platform:
Oracle Container Registry Cloud Service
Container and Cloud Native & Serverless 31
µ
33. • docker run -d -it –-name ORA12201_1
–P container-registry.oracle.com/database/enterprise:12.2.0.1
Container and Cloud Native & Serverless 33
34. How is availability - scaling, patching,
fail-over, load balancing – taken care of?
• Mapping of distributed physical resources to microservices and containers
• Container Management Platform
• Does deployment, scaling, (rolling) upgrades
• Also load balancing and routing
• Injection of run time settings
• Kubernetes!
Container and Cloud Native & Serverless 34
35. Oracle Container Engine Cloud ==
Managed Kubernetes Service
Container and Cloud Native & Serverless 35
38. Operations for container native runtime platform
From ‘service mess’ to Service Mesh
• Support insight in and control over [micro]service interaction
• Service discovery, intelligent routing, staged rollouts
• Load balancing, rate limiting, circuit breaker, time out & retries
• Access policies, auditing
• Monitoring & error analysis
Container and Cloud Native & Serverless 38
µ
µ
µ
µ
µ
µ
µ
Open Service BrokerEvent ManagementAPI Registry
40. Cloud Native & Vendor Neutral
• Cloud Native Computing Foundation - CNCF
• Oracle is a platinum member since July 2017
• Cloud Native: container packaged, dynamically managed, microservices oriented
• Open technology for running container based workloads in a cross cloud vendor neutral
way
Container and Cloud Native & Serverless 40
41. “Carry water and
chop wood”
(that is how Oracle will approach
open source projects
and developer communities)
Container and Cloud Native & Serverless 41
42. Container Native at Oracle - Low PaaS
Container and Cloud Native & Serverless 42
43. Stack for Full Life Cycle of Containers
(and Microservices)
Container and Cloud Native & Serverless 43
45. Open Source Serverless
Function Platform
• Functions can be implemented in any
language
• Java, Go, PHP, JavaScript/Node,
Python, Ruby
• Functions run in their own container
• Functions can be accessed via HTTP calls
• Routing, load balancing, running is
taken care of by Fn Server platform
• Platform runs locally, on prem & in cloud
• Fn Flow orchestrates workflows across
multiple functions
• Workflow described in Java
• Includes business logic (conditional,
parallel execution, exceptions)
Container and Cloud Native & Serverless 45
µ
49. Six Oracle Journeys to the cloud
OK, Cloud... But, How? Scenario's & Connectivity 49
Actions that contribute:
• Implement / migrate to the latest versions/patches
• ODA (or other Engineered Systems) for standardization of DB’s & VM’s
• Centralize management of IT landscape
• Automate deployments of platforms (e.g. Puppet, etc.)
50. Six Oracle Journeys to the cloud
OK, Cloud... But, How? Scenario's & Connectivity 50
51. Journey 3: MAA extended with hybrid cloud solutions
Many way’s to move&improve workloads:
New hybrid solutions in Maximum Availability Architecture
• Oracle Database HA Hybrid solutions
• Prod on prem, Oracle DB backup CS to backup in cloud
• Prod on prem, Oracle Dataguard for DR in cloud
(active DG far sync for long distance)
• Prod on prem, Oracle Golden
Gate CS for DR in cloud
OK, Cloud... But, How? Scenario's & Connectivity 51
52. Six Oracle Journeys to the cloud
OK, Cloud... But, How? Scenario's & Connectivity 52
53. Possible hesitations for the journey
• Security
• Centralized management
• Data security
• Posession of on-premises licenses
• No exit strategy on product use
• Availability / SLA
Titel van de presentatie 53
54. Security@OOW2017
Requirements for a secure cloud:
• Zero-trust design
• Must prove legitimacy
• Cloud provider cannot access, modify or delete your data
Oracle cloud security guiding principles
Need better security? Move to the cloud! 54
55. Security@OOW2017: Identity SOC – Security Operation
Center
• SIEM (Security Information and Event Management)
gather all relevant information from log data, threat intelligence, etc.
• CASB (Cloud Access Security Broker)
What is happening (per identity/asset) in other clouds/systems?
• UEBA (User & Entity Behavior Analytics)
Combine and analyze to detect suspicious behavior and risks
Need better security? Move to the cloud! 55
56. Security@OOW2017: Identity SOC
• Base is IDM (IDentity Management)
• Uses Analytics and Machine Learning
• Cross-cloud & Hybrid cloud solution (multiple cloud vendors & on-premise)
Need better security? Move to the cloud! 56
60. Oracle Open World 2017 Review 60
Possible hesitation: on-premises licenses
61. Oracle Open World 2017 Review 61
Possible hesitations: pay per product
Universal Credits
• Universal access to all current and future
IaaS & PaaS services
• Monthly or annual dollar volume commitment
determines discount
• Flexibility to upgrade, expand or move
services across datacenters.
Public Cloud / Cloud@Customer
62. Oracle Open World 2017 Review 62
Possible Hesitations: Availability
Techniques Autonomous
Database:
• Active Data Guard
• Redefinition
• Flashback
• Real Application Cluster
SLA : 99.995 %
• < 2,5 minutes downtime a month
• Includes patching, upgrades, bugs, regional outages
• Minimal brownout for maintenance
63. Oracle Open World 2017 Review 63
How much? https://cloud.oracle.com/en_US/cost-estimator
65. The Only Way is Up ?
Titel van de presentatie 65
Question:
Why not ?
66. Current
Situation
<slide to
position
2019>
Current
Situation
<slide to
current
position>
66Oracle CVC visit – Henk Steendam- Sr Architect- IT services 21/11/2017
On-premise to Cloud – Oracle’s viewMaturity/Capability
time
Cloud-native
Proposition
On-Premise
Product
Generic picture
Questions to be answered:
1) Where does Oracle position itself now
2) Where does Oracle position itself in
2019
3) Which developments are in progress
for the on-premise product
(roadmaps)
4) Which developments are expected for
the on-premise product
5) What would be the right time to switch
6) What are the migration possibilities to
switch (wizard?)
7) Usage of product by Oracle itself
1 2
3 4
5
6
67. Real Case scenario – down to earth…
- Small Oracle Environment, < 15 production databases
- Hardware beyond end-of-life
- Windows 2003 /Oracle db 10 / Oracle SOA Suite 10.1 /Forms6i – cl. server
- Geographically configured RAC
- No Life Cycle Management, no cloud experience, immature IT
Management decision:
- Short term (months): risc mitigation for the hardware
- Long term: no more owner of datacenter, cost reduction, if cloud then
Azure.
- RTO / RPO 4 hours
Questions:
- Short term: cloud or not
- HA solution
Titel van de presentatie 67
69. Typical Integration Requirements
SaaS X
PaaS X
SaaS Y
Custom
App B
On Premises
3rd Parties/Public Internet
B2B Partner
Gov Agency
ERPCustom App A
Data
Warehouse
Workflow
Mobile App
for service
engineers
APIs
70. Workflow
Mobile App
for service
engineers
Data Warehouse
Addressing Integration
Challenge with Oracle PaaS
SaaS X
PaaS X
SaaS Y
Custom App B
On Premises
3rd Parties/Public Internet
B2B Partner
Gov Agency
ERPCustom App A
API
Platform
SOA
Messaging
Integration
Cloud
Event Hub
Application
CC
Container
Cloud
Functions
IOT
ICS Agent
SOA Suite
Data Integration
Platform Cloud
GG Agent
OMC
ManagementSelf Service
Integration
MCS
Big Data
Compute
71. Oracle Cloud Platform for Integration
Integration Cloud plus API Platform
Titel van de presentatie 71
76. Converter Tool from On Premises
[OSB &] SOA Suite to Integration Cloud
• Converter tool can provide a head start to go to Integration Cloud
• Imports a SOA composite model and related artifacts and creates
Integration and Process Project Models and associated connections etc.
• Placeholders for manual
modeling of alternatives
where conversion not feasible
• Scope
• SOA Suite
• OSB?
• Status
• Early days
• Timeline
Titel van de presentatie 76
78. Process
• Robotic Process Automation
• Turn simple human workflows into APIs that trigger ‘robotized UI actions’
• AuraPlayer did something similar for Oracle Forms based Uis
• Best Next Action
• Visual and Standards based Business Rules:Decision Modeling (DMN
and FEEL)
• Expose Decision Rules as REST Service
• AI powered predictive workflow intelligence
• Adaptive Case Management aka Dynamic Processes
• CMMN based visual modeling
• AI integration
• Build task UI using Visual Builder Cloud
Titel van de presentatie 78
79. API Platform Cloud
• Design
• Mock
• Implement
• “Decorate” with policies
• Route, authorize, validate, rate limit, …
• Monetize?
• Gateway rollout
• Publication
• Runtime Management & Monitoring
• Analysis
• Governance
• Note: new partnerships:
• API Fortress
• APIMATIC
Titel van de presentatie 79
80. Self Service Integration
• Hook Social Media and SaaS
• Into PaaS and SaaS
• By Business End User
• Through recipes
• Similar to IFTTT
• And WebHooks
• Connects to Oracle PaaS:
• ICS, PCS, BIC, C&E C
• And Oracle SaaS
• Eloqua, Sales Cloud, Service Cloud,
Responsys
Titel van de presentatie 80
89. UI Implementation with Oracle PaaS
SaaS X
PaaS X
SaaS Y
Custom App B
On Premises
3rd Parties/Public InternetB2B Partner Portal
WebShop &
Customer Service
Web & ChatBot
ERPCustom App A
Mobile App
for service
engineers
UI for Planning Staff
Workflow
API
Data
Visualization
Intelligent
Bots
APEX
on
DBaaS
Visual
Builder
PCS
Mobile
ADF on
JCS
JET on
ACCS
Form, ADF,
APEX, JET
Conversations
/Social
Network
MAX
Content &
Experience
Analytics
90. Most striking
• JET
• JET 4.0 (New custom element syntax, CDN, CLI, improved UI components)
• Upcoming RDK from OAUX team
• Visual Builder Cloud
• MAX
• Offline
• Mobile Cloud
• Intelligent Bots
• RDK from OAUX team for Conversational UI
• ADF
• APEX
• Forms
• SQLcl (& SQL Developer)
91. Java
• Java 9
• Fast, scalable, tailormade runtime
• Modularity
• Asynch, Reactive
• Java EE 8
• EE4J
• Java by far largest platform/language
• the switch from <...> to Java
• Graal VM
• Polyglot & Java on Java
• Twitter
Titel van de presentatie 91
92. Developer Cloud
• Organize the work
• Plan, track, document
• Manage the software artefacts
• Git, Branch/Merge/Pull Request
• Browser based code review [and edit]
• Build, Test and Deliver
• Docker, SQLcl, Maven, Ant
• WebLogic, ADF, SOA Suite, Jdeveloper libraries & deployment
• Provision, configure and operate cloud environments
through psm [PaaS Service Manager] and Stack Manager
Titel van de presentatie 92
93. News for Database Developers
• ORDS
• REST SQL, REST for OPS, REST Driver, Swagger Support
• Oracle Database 18c XE – (almost) all options incl 4 PDBs
• 12 GB storage (and compression), 2 GB SGA, 2 CPU
• Database Free Cloud Service (1 GB storage)
• Polyglot Database (powered by Graal VM)
• Expose JavaScript NPM modules as PL/SQL functions
(Download: http://www.oracle.com/technetwork/database/multilingual-engine/overview/index.html)
User Interface & SaaS Enablement 93
95. When things were simple…
95
RDBMS
SQL
ACID
Data
files
Log
Files
Backup
Backup
Backup
SAN
96. Then Stuff Happened
96
Middle Tier:
Java EE (Stateful) application
Client Tier:
Browser
Client Tier:
Browser
Client Tier:
Browser
Mobile App
(offline)
Mobile App
(offline)
Mobile App
(offline)
Data
Warehouse
XML,
JSON
Content
Management
Big Data
Fast Data
API
API
API
µ λ
97. SQL is not good at anything
• But it sucks at nothing
97
100. Differentiation
(not all data are created equal)
• Value
• TCDO
• Availability
• Freshness
• ACIDity & Consistency
• Integrity
• Location
• Security
• Volality & Speed
• Performance
• Origin & Ownership
• Retention
• Usage
100
101. Rise of CQRS - Command and Query
Responsibility Segragation
• Data manipulation and retrieval in separate places
• (physical data proliferation)
• For performance and scalability, lower license fees and TCO
102. Active Data Guard
Standby
CQRS –
Common concept in Oracle Database
SAN
Middleware Middleware Middleware
T T
MV
MV
id
x
id
x
IMDB
RAC RAC
Shard
(12c R2)
Shard
(12c R2)
SAN
SAN
dbf
SGA
104. Event Log in Event Sourcing
104
• Primary Data Source is ledger of change events
• Not a store of the current state
• However: optionally use snapshots of baseline (state up until time)
• Entity Event Store replaces Table
• Offers a simple API for creating and retrieving events
• ‘Entity Change Event’ Producer (to which consumers can subscribe)
• To correct a mistake:
• Do not remove the event! (it happened, it may already have been
distributed)
• Instead, create a compensating event (and then it unhappened)
105. • Microservices are stateless & horizontally scalable
• Microservices are isolated & independent
• Where is their data?
• What about lookup data?
• Data not owned by the microservice –
but still required by it to perform its role => bounded context
Data in microservices
µ
107. • Micoservice needs to be able to run independently
• It needs to contain & own all data required to run
• It cannot depend on other microservices
API
Customer
APIUI
OrderCustomerModified event
Bounded context
in microservices
Session structure Introduce Containers - objectives, benefits, implementation Demo of Container build, package, ship and run
Discuss Container Management systems - run time Container platforms, such as Oracle Container Cloud
Demo of deploying and running a Container first locally
then on the Oracle Container Cloud
Discussion of CD, DevOps and microservices - and how the Orace platform components fit in
(including a discussion of multitenant architecture in DB and WLS)
Introduction of Oracle Docker Images
Demonstration of building containers based on Oracle Docker Images
Run multiple containers based on various Oracle Docker Images and have them interact with each other
https://blogs.oracle.com/shay/automating-processes-with-application-builder-and-process-cloud-services
https://docs.oracle.com/en/cloud/paas/process-cloud/user/creating-decisions.html
What’s new in PCS
https://docs.oracle.com/en/cloud/paas/process-cloud/whats-new/index.html#CPRWN-GUID-502EC7D4-F9E5-4AAD-9F73-F54A6A031DCB
All data stores are distributed
Or at least distributedly available
They can be local or on cloud (latency is important)
Data in generic data store is still owned by only one microservice – no one can touch it
Only in DWH and BigData do we deliberately take copies of data and disown them