Monday, June 01, 2009

2009-06-01 Monday - JavaOne 2009 - Cloud Computing Patterns

2:40PM, sitting in the presentation, more notes to follow shortly...



Cloud Compute Instance Provisioning

Provisioning Elements
- Base OS
- Utilities & agents
- Platforms and frameworks
- Custom application code
- configuration files
- Data and volumes

Provisioning Participants
- Console
- Cloud interface
- Comopute instance
- Image repository
- ...


Static Image Provisioning
- very simple scripted provisioning
- deploys full stack to cloud compute image with little customization
- appropriate for low-complexity, low volatility code
- easy integration into existing monitoring processes
- may be more secure - could run keyless
- external orchestration left to console (load balancer)
- requires very good Test/QA procedures


Push Provisioning
- Builds on static pattern by "pushing" additional provisioning informaiton / configuration
- still have to do a fair amount of error checking in the deployment script
- have to know a fair amount of OS and platform / environment

Pull Provisioning
- builds on static pattern / introduces client/server interactions
- appropriate for high codebase volatility and architectural complexity at great scale
- adds several new participants which introduce administrative overhead and points of failure
- provisioning server handles external orchestration



Monitoring Apps in the Cloud
- Crucial Function of Application Service Operations
- Forces (Business Inputs)
-- SLA
-- Margin Analysis
- Primary Strategies (some overlap)
-- Agent Based: detects events in real-time
-- Polling: simple health checks, synthetic round-trip


Agent Based:
Pros:
- Rich data
- HIgh control over what is observed
- Realtime event detection
Cons:
- Resource overhead on every instance
- Data traverses public network
- Lifecycle sustaining implications

Watch Polling (example: Amazon Cloud Watch)
Pros
- No resource overhead
- Simple
- Scope is dimensionable
- No sustaining implications
Cons
- Costs 0.015 / Instance / hour (Amazon?)
- Limited data
- Lock-in

No comments: