right-size deployment instances to meet enterprise demand
DESCRIPTION
TRANSCRIPT
![Page 1: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/1.jpg)
Deliver a mission-critical, production grade architecture and infrastructure
Right-Size Deployment Instances to Meet Enterprise Demand
© WSO2 2012. Not for redistribution. Commercial in Confidence.
Asanka Abeysinghe - Director, Solutions Architecture, WSO2
![Page 2: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/2.jpg)
Mission-critical Deployment Webinar Series
![Page 3: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/3.jpg)
We are going to look at
- Deployment Patterns
- Deployment Architecture
- Capacity Planning
- Best Practices
Picture Credit : http://www.ibtimes.com/
![Page 4: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/4.jpg)
Why ?
Production System
Business stakeholders Consumers
Business Objectives
IT Capabilities
Architecture
Standards SDLC
Reviews
SLAs
![Page 5: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/5.jpg)
Patterns Find a catalog
![Page 6: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/6.jpg)
Deployment Patterns : Standalone with individual runtimes
![Page 7: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/7.jpg)
Deployment Patterns : Standalone with shared runtime
![Page 8: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/8.jpg)
Break : Icons
![Page 9: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/9.jpg)
Deployment Patterns : Shared Registry – JDBC mode
![Page 10: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/10.jpg)
Deployment Patterns : Shared Registry – WS-* mode
![Page 11: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/11.jpg)
Deployment Patterns : Cluster for high-availability
A P
- Stateful Cluster - Enable Carbon Clustering - Multicasting - WKA
- Stateless Cluster - Rely on load-balancer
![Page 12: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/12.jpg)
Deployment Patterns : Cluster for scalability
- Static - Use any load-balancer
- Elastic - Use WSO2 ELB A A
![Page 13: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/13.jpg)
Deployment Patterns : Cluster for scalability Elastic
A A A
![Page 14: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/14.jpg)
Deployment Patterns : Cluster with Deployment-Sync
A A A
Admin Node Worker Nodes
Deployment Synchronizer - SVN
![Page 15: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/15.jpg)
Architecture Draw the blueprints
![Page 16: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/16.jpg)
Things to consider before go to the whiteboard - Infrastructure
- Physical / Virtual / Cloud / Hybrid
- Infrastructure Policies
- Non Functional
- Performance
- Security
- High-availability
- Recovery
![Page 17: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/17.jpg)
Things to consider before go to the whiteboard - Make it simple
- Manageable (TechOps)
- Change control and configuration management
- Governance
- Future proof
- Unexpected business demand
![Page 18: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/18.jpg)
Build the architecture visually
![Page 19: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/19.jpg)
Deployment Architecture – Reference architecture 1
![Page 20: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/20.jpg)
Deployment Architecture – Reference architecture 2
![Page 21: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/21.jpg)
Deployment Architecture – Reference architecture 3
![Page 22: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/22.jpg)
Deployment Architecture – Reference architecture 4
![Page 23: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/23.jpg)
Deployment Architecture – Reference architecture 5
![Page 24: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/24.jpg)
Capacity Planning How to Scale
![Page 25: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/25.jpg)
Gather Data : Sources
- From monitoring systems - From business marketing stats - Current data - Future / Projected data
![Page 26: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/26.jpg)
Gather Data : Types
- Expected maximum throughput/TPS - Expected latency - Size of messages - Work done per transaction
![Page 27: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/27.jpg)
Expected Maximum TPS / Peak load
- You have to know TPS or TPM (per minute). Transactions per day is useless unless we have some store and process model in the architecture. Often, most messages in a day come within minutes.
- When there is no numbers to refer try to get a rough idea, is it 10s, 100s 1000s or 10000s?
- Remember, this is Maximum value, not the average
![Page 28: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/28.jpg)
Size of Messages
- Try to classify them to following - Small (<50k) - Moderate (<1M) - Large (<5M) - Extra large (> 5M)
- If messages greater than 1M, better to a trial run as results are very unreliable
![Page 29: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/29.jpg)
Transaction : Identify the CPU cycles
![Page 30: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/30.jpg)
Apply to each deployment architecture layer
Component Capacity Planning Guidelines
API Gateway Peak load of the API calls
Auth Server Peak load of the API calls
API Store Peak load of the subscriptions and browsing
API Publisher Peak load of the API publishing and LCM tasks
Analytics System load of the API calls
Example : API Manager Capacity Planning
![Page 31: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/31.jpg)
Refer available performance numbers
![Page 32: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/32.jpg)
Compute the instances Pattern With WSO2 Analytics With WSO2 LB
Minimum Internal Store
5 [ 2 GW + 2 Auth + 1 (Store + Publisher) ]
7 [ 2 GW + 2 Auth + 1 (Store + Publisher) + 2 BAM (DC + DS, DB + DS + DA ]
9 [ 2 LB + 2 GW + 2 Auth + 1 (Store + Publisher) + 2 BAM (DC + DS, DB + DS + DA ]
Minimum External Store
6 [ 2 GW + 2 Auth + 1 Store + 1 Publisher ]
8 [ 2 GW + 2 Auth + 1 Store + 1 Publisher + 2 BAM (DC + DS, DB + DS + DA ]
10 [ 2 LB + 2 GW + 2 Auth + 1 Store + 1 Publisher + 2 BAM (DC + DS, DB + DS + DA ]
Extend = n1 GW + n2 Auth + n3 Store + n4 Publisher
= n1 GW + n2 Auth + n3 Store + n4 Publisher + n5 Analytics
= n1 LB + n2 GW + n3 Auth + n4 Store + n5 Publisher + n6 Analytics
![Page 33: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/33.jpg)
But … try it on your environment with the use-cases
- Performance test - Actual use-cases - Message sizes - Infrastructure - Tools (Jmeter/SOAP-UI/Grinder ….)
![Page 34: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/34.jpg)
Work with a WSO2 Consultant
- Fill the capacity planning sizing parameter doc - Work with a WSO2 consultant
![Page 35: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/35.jpg)
Things to consider
- Keep a buffer of 30% - Should not load servers beyond 25% of normal instantaneous peak load - Allocate 2GB memory per Carbon instance/ JVM - Keep minimum 2GB memory for the OS and system utilities - Use system load (TPD/TPY) for data / log growth - Keep performance test (2x) and long running test as part of the
acceptance test
![Page 36: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/36.jpg)
Extend the deployment
- Secure vault - Headless worker nodes - Connect to the existing user-store (LDAP/AD/RDBMS) - Fine-tune , thread pools, throttling - Command-line tools - Connect to SDLC, change control
![Page 37: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/37.jpg)
Summary
- Identify the deployment patterns - Consider the deployment needs and constraints - Draw the deployment architecture (logical)
- Identify the architecture layers
- Gather data - Current - Future
- Refer performance statistics for a given HW and use-case(s) - Compute the instance count per each layer - Identify the physical architecture
![Page 38: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/38.jpg)
Future webinars on Mission-critical Deployment
![Page 39: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/39.jpg)
API Management Webinar Series
![Page 40: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/40.jpg)
More Info
§ Corporate website: http://wso2.com
§ Solution Architecture Blog: http://wso2.com/blogs/architecture/
§ Business development team: [email protected]
§ Asanka Abeysinghe
§ Blog : http://asanka.abeysinghe.org
§ Twitter : @asankama
![Page 41: Right-size Deployment Instances to Meet Enterprise Demand](https://reader033.vdocument.in/reader033/viewer/2022042613/5492295eac795920288b46cb/html5/thumbnails/41.jpg)
41
lean . enterprise . middleware