cloud workload guidelines

13
Cloud Workload Guidelines LEE JEN WEI 1

Upload: jen-wei-lee

Post on 13-Jan-2017

221 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Cloud workload guidelines

Cloud WorkloadGuidelines

LEE JEN WEI

1

Page 2: Cloud workload guidelines

Cloud-Readiness Key Considerations

2

Key Application Considerations How To Address It

Performance If app does not perform in cloud, the desired savings evaporate

• Identify and fix performance constraints• Decouple compute-intensive components• Fine tune using actual usage patterns

Elasticity Applications must be designed to scale out/up for agility and scale in/down for cost savings.

• Do no design a monolithic application• Break it into scalable components to

maximize scale-up and down, out and in

Resilience Less control and visibility. Build the application ready for failure.

• Ensure the application is designed to recover from failure

• Build components loosely coupled• Perform tests for failure scenarios

Security New risk and vulnerabilities in a shared environment. Security should be built-in, verified and monitored.

• Check security, use https / VPN• Encrypt privacy sensitive information• Test all 3rd party components

Page 3: Cloud workload guidelines

Cloud Application Workloads Suitability

3

Suitable Workloads Less Suitable Workloads

Service Oriented Architecture (SOA) Applications that involve extremely sensitive data, regulatory or legal risk in disclosure. Require special treatment to run on cloud.

Development & Test, Proof of concepts

Applications that are run on the private networks or high performance hardware that are very performance- sensitive

Applications that are expected to be hit periodically/seasonally with sudden burst /surges of high traffic or load

Applications that require frequent and/or voluminous transactions against on-premise databases that cannot be migrated

Applications that run infrequently but require significant computing resource

Applications that run on legacy platforms that are typically not supported or having weak support by cloud provider

Applications that require massive storage and growth volumeApplications that run in different time zones or regions

Page 4: Cloud workload guidelines

Cloud Application Workloads Suitability

4

Suitable Workloads Less Suitable Workloads

Applications that are used by remote or mobile workers to manage their time and activityExtend storage capacity

Extend archiving capability

Page 5: Cloud workload guidelines

Cloud Workload Examples

5

Workload Examples

Web sites, Mobile Apps, Social

Web Portal sites, Mobile App backend, Mobile Web sites, Microsites, CMS, Intranet portals, etc

Proof of concepts, Development/Testing

Product/software evaluations, Personalisation (eg. Ab Initio), Distributed load/performance testing, etc

Sporadic Compute-intensive Applications

Promotions or events driven applications, high volume mass email / push notification applications

Analytics Map Reduce jobs, batch jobs, Memory/Storage/Compute resource intensive applications

Storage, Archiving Mobile app data backup,Storing high volume of static assets/objects (eg. Images, video files) on AWS S3 and access via web service provided by S3,Application archive log files, etc

Collaboration Enterprise Social Networking/collaboration apps, Web conferencing apps, File-sharing apps, etc

Page 6: Cloud workload guidelines

Cloud Architecture Best Practices

6

Best Practice Description1. Design for failure and

nothing will fail• Design for hardware/software failure• Build mechanism to handle the failures• Impervious to reboots and relaunches• Self-healing and self-recoverable from failures

2. Decouple your components

• SOA design principleo More loosely coupled, bigger and better it scales

• No tight dependencies of components• Build asynchronous systems• Enable scaling horizontally

3. Implement elasticity • Elasticity implementationo Proactive Cyclic scaling – periodic at fixed intervalso Proactive Event-based Scalingo Auto-scaling based on Demand

• Automate infrastructure• Bootstrap the server instances

4. Think parallel • Design architecture that parallelizeso Requesting datao Storing datao Processing data or executing jobs

• Multi-thread requests, asynchronous, thread-safe

Page 7: Cloud workload guidelines

Cloud Architecture Best Practices

7

Best Practice Description5. Keep dynamic data

closer to the compute andStatic data closer to end user

• Reduce latency• Reduce cost

o Charged for bandwidth in/out of cloud• Move large datasets to be processed outside into cloud

first before computation• Applications consuming data generated in cloud should

be hosted in cloudo Take advantage of in-cloud free data transfer and

lower latencies• Static data (eg. Images, video, audio, PDF, js, css files, use

content delivery serviceo Caching at edge location, lower access latencyo Faster access to popular objects

6. Security • Protect your data in transit• Protect your data at rest• Protect your access credentials• Secure your Applications

Page 8: Cloud workload guidelines

1. Design for Failure and Nothing will Fail – AWS Example

8

Design For Failure – AWS tactics

Page 9: Cloud workload guidelines

2. Decouple your Components – AWS Example

9

Decoupling Components using Queues

Page 10: Cloud workload guidelines

3. Implement Elasticity – AWS Example

10

Automate the Infrastructure

Page 11: Cloud workload guidelines

4. Think Parallel – AWS Example

11

Implementing Parallelization

Page 12: Cloud workload guidelines

5. Keep Dynamic Data closer to the Compute andStatic Data closer to End User – AWS Example

12

Implementing Data Tactics

Page 13: Cloud workload guidelines

6. Security – AWS Example

13

Securing your Applications using Security Groups