Course Content
The Rise of the Cloud
- Where did Cloud Computing originate?
- Cloud Computing
- Wikipedia Entry
- Gartner on Cloud
- The NIST Perspective
- Five Characteristics
- The Cloud Computing Spectrum / Service Models
- Cloud Deployment Models
- Understanding by Phone Service Analogy
- Understanding by Electrical Power Grid Service Analogy
- What is so special about Cloud?
- Synergy is Powerful
- Moving to the cloud
- Capacity Planning
- Challenge – Measuring Capacity
- Capacity Planning Concepts and Challenges
- Capacity Planning – Utilization Risk
- Utilization Risk – Mitigation
- Capacity Planning – Different Workloads
- Multi-Tenancy Model
- Common Characteristics of Multi-tenant Applications (1/2)
- Common Characteristics of Multi-tenant Applications (2/2)
- Data Management in the Cloud
- Data Physics
- By the Numbers
Cloud Computing Value Proposition
- Why does Cloud matter?
- Cloud Value Proposition
- Cloud Value Business Case #1
- Cloud Value Business Case #2
- Cloud Value Business Case #3
- Cloud Value Business Case #4
- Cloud Business Cases
- Cloud economics
- Do Clouds Compute?
- Select Expected Benefits
- Identify applicable cost scenario
- Calculate initial, simple return
- Calculate returns for on-going usage
Cloud Computing Myths
- Myth #1: Cloud == Virtualization
- Myth #2: Cloud == Grid
- Myth #3: Cloud == SAAS
- Myth #4: Cloud == SOA
- Myth #5: Cloud == Security Risk
Cloud Computing Components
- The Cloud Computing Stack
- Cloud Computing Components
- Tightly Coupled Enterprise
- Breaking the Silos
- Understanding SOA
- Applying SOA to the Cloud
- Cloud Computing without SOA
- Cloud Component - Virtualization
- Hypervisors
- Hypervisor Types
- Type 1 hypervisors
- Type 2 hypervisors
- Applying Virtualization to the Cloud
- Cloud Component - SaaS
- Applying SaaS to the Cloud
- Web 2.0 – Should I upgrade?
- Web 1.0 vs Web 2.0
- Applying Web 2.0 to the Cloud
Categorizing Clouds
- Consider the kind of cloud
- Cloud Scope – Public clouds
- Cloud Scope – Private clouds
- Cloud Scope – Hybrid clouds
- Discussing Cloud Scope
- Cloud Type - User Interface
- Cloud Type – Application Service
- Cloud Type – Data Services
- Discussing Cloud Types
- Intersection of Scope & Type
- Cloud Role
- Discussing Cloud Categories
- Cloud Integration
- Cloud Integration
Real World Case Study Analysis
- Case Study – Amazon Web Services (AWS)
- Amazon EC2 Value
- Discussing Amazon
- Case Study – TuneCore
- TuneCore’s Value
- Discussing TuneCore
- Case Study – Salesforce.com
- Salesforce.com Value
- Discussing SalesForce
- Case Study – Google Apps
- Google Apps Value
- Discussing Google
- Case Study – Pitney Bowes
- Pitney Bowes Value
- Discussing Pitney Bowes
- Case Study – X.Commerce/OpenStack
- OpenStack Value
- Discussing X.Commerce/OpenStack
Cloud Risks and Risk Mitigation
- Failure-As-A-Service in 2009
- Failure-As-A-Service in 2010
- Notable Breaches in 2011
- Notable Breach # 2
- Notable Breach # 3
- Notable Breach # 4 & # 5
- Notable Breach # 6
- The Cost of Failed Clouds
- Risks When Consuming Clouds: Service Reliability
- Service Quality
- Problem Resolution
- Data Back-up
- Total Cost of Ownership (TCO)
- Risks When Supporting Clouds: Provisioning
- The Scale of Scale
- Financial Management
- How to Practically Estimate Your Cloud Bill?
- Managing Service Levels
- Redundancy / Failover
- Vendor Lock-In
- Liability
- Security
- Cloud Security
- Access Control
- Application Security
- Application Multi-Layer Security Design
- Information and Data Security
- Network Security
- Operational Security
- Mitigating Cloud Computing Risks: Identifying Cloud-ready Solutions
- Governing Cloud Services
- Business alignment
- Asset Ownership
- Contract-driven Services
- Financial Management and Tracking
- Governance and Risk Mitigation
- Some Best Practice
Cloud Standards
- What Exactly Are We Standardizing?
- Standardizing on a Definition
- Why Standardize?
- Simple Concept, Difficult Implementation
- Perspective #1 – Turf Wars
- Turf Wars
- Turf Wars
- Other Groups Defining Standards
- Recent Progress
- Perspective #2 – Let the Market Decide
- Standardization is Restrictive not Creative
- Fostering Creativity
- Survival of the Fittest
- OpenStack Foundation Model
- Perspective #3 – The Simple View
- Standards to Date
- OCCI Details
- OCCI Client Handshake
- OCCI Server Response…
- OCCI Cloud Infrastructure Categories
- Best Practices for Working with Cloud Standards: Building Cloud Solutions Today
- Advice #1 – Build on Proven Standards
- Advice #2 – Focus on Solid Design
- Advice #3 – Good Standards Take Time
Cloud Computing Infrastructure
- Does It Really Matter?
- Cloud Infrastructure Categories
- Understanding Virtualization
- Cloud Management
- Controllers and Agents
- More Cloud Management Strategies
- Abstracted Networking
- Abstracted Computing
- Abstracted Storage
- Pulling it all together
- Eucalyptus
- OpenStack
- What is OpenStack?
- OpenStack main components
- OpenStack Conceptual Architecture
Looking Under the Cloud Hood
- Amazon Cloud Overview
- Working with Amazon Web Services (AWS)
- Building an Amazon Cloud Service
- Google Cloud Overview
- Google Cloud Storage
- Working with the Google App Engine
- Building a Google App
- Microsoft Azure Overview
- Working with Windows Azure
- Building an Azure Cloud Service
- OpenStack Overview
- Working with OpenStack
- Building OpenStack Environment
- Building OpenStack environment by hand
- Using automated configurators
- Creating OpenStack VM Instances
- Managing OpenStack Clouds
Cloud Services
- Defining Cloud Services
- The Typical Cloud Services
- Application Services
- Messaging Application Service
- Email Application Service
- Cache Application Service
- Specialized Application Service
- Storage Services
- Object Storage
- Archive Storage
- Relational Storage
- NoSQL Storage
- Monitoring Services
Cloud Computing Sanity Check
- The Cloud Shift
- Adapting to a Broader Market
- Before You Leap to the Cloud
- Cloud Sanity Check #1
- Cloud Sanity Check #2
- Cloud Sanity Check #3
- Cloud Sanity Check #4
Adopting Your Very Own Cloud
- How can my organization explore Cloud?
- Cloud Adoption Best Practices
- Cloud Adoption – Phase 1
- Identify your business drivers
- Get Educated
- Articulate a Value Proposition
- Define one or more scenarios
- Cloud Adoption – Phase 1
- Cloud Adoption – Phase 2
- Produce a Road Map
- Gain Stakeholder Buy-in
- Cloud Adoption – Phase 2
- Cloud Adoption – Phase 3
- Establish Governance
- Invest in Infrastructure
- Cloud Pilot
- Scoping the Pilot Project
- Pilot Project Scope (cont’d)
- Enterprise Roll-out
- Start small and grow incrementally
Cloud Reference Model
- Parsing the Cloud Service Model
- Cloud Reference Model
- Cloud Infrastructure
- Cloud Infrastructure – Vendor Comparison
- Cloud Infrastructure - Cloud Storage
- Cloud Platform
- Cloud Software
- SaaS - Cloud Services
- SaaS - Cloud Applications
- OpenStack Solution Stack
- OpenStack main components/services
- Compute (Nova)
- Main Compute (Nova) modules/services
- Image (Glance)
- Object Store (Swift)
- Components of Swift
- Block Storage (Cinder)
- Identity (Keystone)
- Network (Quantum)
- Dashboard (Horizon)
- Pulling It All Together
Cloud Layering
- Cloud Layering
- Cloud Layering Overview
- Content Services
- Logic Services
- Orchestration in the Cloud
- Utility - Security Services
- Security Service Example
- Utility - Data Services
- Layering Example – 1/5
- Layering Example – 2/5
- Layering Example – 3/5
- Layering Example – 4/5
- Layering Example – 5/5
SDLC in the Cloud
- Software Development Lifecycle Phases
- Software Development Lifecycle Phases (Cont.)
- SDLC Models
- Waterfall
- RAD SDLC Practices
- The Criticisms of RAD
- Enterprise Technology Delivery Frameworks
- ETDF Phases
- Project Initiation
- Project Classification
- Requirements Discovery
- Analysis and Design
- Development
- Testing
- Production Implementation
- Post-implementation Monitoring of Cloud Solutions
- Retirement
Requirements Discovery
- Discovering Cloud Requirements
- Discovery Workshops
- Running a Discovery Workshop
- Cloud Requirements
- Scoping Cloud Requirements
- Documenting Expected, Average and Peak Usage
- Defining Cloud Service Levels
- Discovery Best Practices
- What is Six Sigma?
- Discovery Gotchas
Analysis and Design
- Analysis and Design in the Cloud
- Analyzing Cloud Requirements
- Requirements Management
- Analysis Workflow
- Mapping Cloud Requirements to Usage Scenarios
- "Good/Not so Good" Use Cases for the Cloud
- Introduction to Cloud Design
- Designing Cloud Service Solutions
- Design the Cloud Service Interface
- Designing for Cloud Non-Functional Requirements
- Analysis and Design Best Practices
- A&D Best Practices - Prototyping
- A&D Best Practices – System Partitioning
- A&D Best Practices -Leveraging Cloud Platform Services
- A&D Best Practices -
- Using Asynchronous Communication Patterns
- A&D Best Practices -
- Design for Failure
- A&D Best Practices -
- Caching
- A&D Best Practices - Staying Hands-On
- Analysis and Design Gotchas
- More Design Gotchas
Cloud Design Strategies
- Cloud Design Strategies
- Designing for Cloud Availability
- Designing for Cloud Security
- Designing for Cloud Security - OWASP 10
- Designing for Cloud Security – Multi-Factor Security
- Designing for Cloud Storage
- Stepping Across Site Silos
- Stepping Across Site Silos – SAML and OpenID
- Stepping Across Site Silos – OAuth
- Selecting the Right Storage
- Cloud Storage Model
- Designing for Cloud Management
- Designing for Cloud Maintainability
- Designing for Cloud Service Reuse
- Designing for Cloud Agility
- Designing for Cloud Usability
- Additional Usability Considerations
Cloud Development
- Implementing Cloud Services
- Common Pitfalls for Cloud Developers
- Building Composite Solutions
- Cloud Development Stacks
- Creating Services for Amazon WS
- AWS Toolkit for Eclipse
- AWS Explorer
- AWS Toolkit for Visual Studio
- Testing in the Amazon Cloud
- Deploying Amazon Web Services
- Consuming Amazon Web Services
- Creating Services for OpenStack
- Creating Applications for OpenStack
- Testing OpenStack Solutions
- Consuming OpenStack Solutions
- Creating Services for Google
- Testing Google Cloud Services
- Deploying Google Services
- Consuming Google Services
Cloud Governance
- IT Governance
- Agile IT in the Cloud
- SOA Governance Overview
- SOA Governance in Practice
- Cloud Governance
- Top Cloud Computing Consumer Risks
- Top Cloud Computing Provider Risks
- Risk Mitigation
- Defining Cloud Governance
- Cloud Governance Model
- Key Artifacts
- Governance Life Cycle
- Policies and Procedures
- Roles and Responsibilities
- Governance Best Practices
- Governance Gotchas
Cloud SLAs
- The Importance of Cloud SLAs
- What Belongs in a Cloud SLA?
- Minimal Cloud SLA
- Robust Cloud SLA
- More SLA Items...
- Governing Cloud Service Quality
- Supporting Clouds