Jonah Kowall, VP of Market Development and Insights, outlines what needs to be built in terms of data extraction, analytics, and other open source technologies. Finally we’ll also discuss commercial alternatives and what features and functions are critical when monitoring microservices based applications. This presentation is from AppSphere 2015.
This presentation shares a clear understanding of:
- What is changing with software, and why?
- What challenges are faced with these changes?
- How to overcome these challenges
2. PREY
52% of Fortune 500 firms
since 2000 are gone
PREDATOR
Rate of innovation determines if you’re the
predator or the prey
3. Massive budget shift to digital
Back office
Systems of record
Digital front office
Systems of engagement
80%
2011
50%
2016
20%
2011
50%
2016
HRM
CRM ECM
ERP
5. “Microservices are an approach to developing a single
application as a suite of small, connected, services”
Martin Fowler
“Loosely coupled service orientated architecture with bounded
contexts”
Adrian Cockcroft
In computing, microservices is a software architecture style in
which complex applications are composed of small,
independent processes communicating with each other
using language-agnostic APIs. These services are small,
highly decoupled and focus on doing a small task, facilitating
a modular approach to system-building.
Wikipedia
7. Down with the monolith
• Intimidates developers with complexity
– Long ramp time
– Heavy change process
• Dev environments are difficult to manage and setup
• Scalability is a challenge due to rigid design
• Long term language and technology stack commitment
– Stagnation
– High cost
8. Properties of microservices architecture
• Flexibility
• The services are easy to replace
• Services are organized around capabilities
• Services can be implemented using different programming
languages, databases, hardware and software environment,
depending on what fits best
• Architectures are symmetrical rather than hierarchical
(producer - consumer)
9. Example : e-commerce site microservices
• Front-end components
• Catalog services
• Inventory management
• Shipping
• Payments
• Billing
• Notifications
• Search agent
• User profile
16. Challenges
• Most are horrible at automation
• Automation is fragmented
• Many moving parts must be coordinated
• You must master good engineering practices
18. Hypervizor vs docker
Courtesy of IBM (SoftLayer): http://www.slideshare.net/BodenRussell/kvm-and-docker-lxc-benchmarking-with-openstack
19. Why are people switching to docker
• Easy to package
• Easy to run anywhere (Smaller footprint)
• Fast -> Launch and Kill
• Linux or Windows (in Server 2016 Preview)
– Can use on Windows client and OSX for dev with boot2docker
• Basic contained configuration in DockerFile
• Less tools to manage each container
25. End to end visibility and transaction tracing
SOA
NOSQL
Cloud
Agile
Micro-services
IoT
ESB/MQ
WEBLOGIC
MONGODB
TOMCAT
Login
Flight Status
Search Flight
Purchase
Web
Mobile NETWORK
ORACLE
APACHE JBOSS SERVICE
ESB/MQ
NETWORK
WEBLOGIC
MONGODB
ORACLE
TOMCAT
JBOSS SERVICE
26. Current open source options
• cAdvisor
– Docker metrics only
• ELK stack
– Lots of moving parts
– Only handles log data (Docker, app logs, etc)
– Agent per host
• Sensu
– Need RabbitMQ, Redis, Sensu
– Handles metric data only (Docker, host, other plugins)
– Agent per host
• Up and coming : Prometheus, Spigo
NO TRANSACTION TRACING!
NO END USER VISIBILITY!
27. Current commercial options
• Stack of APM, infrastructure, log analytics
– Splunk
– +New Relic, Dynatrace, Ruxit
– +SevOne, ScienceLogic, Zenoss
• AppDynamics (1 install/UI for APM, infrastructure, log)
– SaaS or on premises
– Same product
33. No end-to-end perspective No situational awareness
Long time to troubleshoot and resolve issues
Escalate
Escalate
Time
Resolution
War Room
L2 Troubleshoot
L1
Troubleshoot
“Checkout is Slow”
Reactive problem identification