Cloud computing is no longer a fad that is going around. It is for real and is perhaps the most talked about subject. Various players in the cloud eco-system have provided a definition that is closely aligned to their sweet spot –let it be infrastructure, platforms or applications.
This presentation will provide an exposure of a variety of cloud computing techniques, architecture, technology options to the participants and in general will familiarize cloud fundamentals in a holistic manner spanning all dimensions such as cost, operations, technology etc
2. § We have INSTRUCTOR LED - both Online LIVE & Classroom Session
§ Present for classroom sessions in Bangalore & Delhi (NCR)
§ We are the ONLY Education delivery partners for Mulesoft, Elastic,
Pivotal & Lightbend in India
§ We have delivered more than 5000 trainings and have over 400 courses
and a vast pool of over 200 experts to make YOU the EXPERT!
FOLLOW US ON SOCIAL MEDIA TO STAY UPDATED ON THE
UPCOMING WEBINARS
3. Any definitions?
• Style of computing in which massively scalable IT
related capabilities are provided “as a service” using
internet technologies to multiple “external
customers” – Gartner
• Pool of abstracted, highly scalable, and managed
compute infrastructure capable of hosting end-customer
applications and billed by consumption – Forrester
▶
4. Myths of cloud computing
• There’s one single“Cloud”
• All you need is your credit card
• The cloud always saves you money
• The cloud always reduces your workload
• Integration (two versions)
• You can seamlessly blend your private “Cloud” (your virtualized
datacenters) with public providers
• You won’t ever be able to seamlessly blend your public and private
clouds
• A cloud provider can guarantee security
• If you are using virtualization, you are doing cloud computing
• Cloud Computing is only about technology
▶
5. Service delivery models
Provided by Replaces / Uses / Enhances
Applica'ons
Layer
Google
Microso3
Salesforce.com
Webstore.Amazon
So$ware as a Service
Service Oriented Architecture
Mul6-tenancy
WebApps - Access from Anywhere
Gartner: a style of computing where massively scalable IT-enabled capabilities are
delivered 'as a service' to external customers using Internet technologies.
Cloud
Computing
“Everything as a Service” Public or Private Cloud?
Infrastructure
Layer
Amazon Web Services
Scalable Datacenters
Grid Compu6ng
Hardware Virtualiza6on U6lity-style Metering & Billing
Online Storage
On-demand Compu6ng
Infrastructure Outsourcing
Infrastructure As A Service
Rack Space
Google Compute Engine
Azure
Linode
Click and Administer
PlaAorm
Layer
Google App Engine
Force.com
Mul6-tenancy
WebApps - Access from Anywhere
PlaKorm as a Service
Founda6on Components
Cloud Foundry
Jelas'c Click and Administer
Big Data PlaKorm Managed Web App Infrastructure
▶
7. Service subscription
• Customers avoid large upfront capital expense.
• Pay as an ongoing operational expense.
• Easily and quickly scale up or down based on business demand and only
pay for what is needed (Economies of scale)
• Better matches today’s financial drivers
▶
Subscription
12. Modern applications can leverage IaaS or PaaS for scaling only the layers that
demand it!
Load
Balancer
Tier 1
Web Servers
Tier 2
App Servers
Database / Datastore
Servers
▶
Growth Servers
Scaling Model
13. Scaling in Google & AWS
A script simulated load and
Google spun up instances to
handle it automatically.
AWS configuration
allowing 1 min 4 max
instances of certain
type with specific
rules of scalability
14. Specialized hardware Vs Commodity
1. Large OPEX
2. Wasted/Idle resource
3. Failure takes out a large chunk
4. Expensive redundancy model
5. One shoe fitting all model
6. Too much co-existence
1. Low OPEX (rent on IaaS)
2. Maximum resource utilization
3. Failure takes out a small chunk
4. Inexpensive redundancy
5. Specific h/w for specific tasks
6. Very less to no co-existence
vs
Ver6cal scalability
Horizontal scalability
This is what Google,
LinkedIn, Facebook do. The
norm is now being adopted
by large corpora6ons as
well.
“Just in time” expansion; stay in tune with the load. No need to build ahead in time in anticipation
▶
16. Virtualization
• Virtualization of the computing resources, including servers, network, and
storage, allows dynamic flexibility.
• Capacity can be more efficiently utilized.
• Easy to turn on or off virtual servers to handle scalability.
• Networking equipment and storage is virtualized as well.
Virtualization Fabric
Physical Servers
Virtual Servers
▶
17. • At the end of the day what's the real purpose of virtualization?
– Run more applications
– Give applications the environment it deserves
– Create a sandbox for each so that no one steps on each other
• Enter "Container" (most popular is Docker)
– Application focused bundling
– Common aspects (os, lib et al) are shared
– Smaller footprints
– Quick load time
– Also known as LXC (LinuX Containers)
• Container based virtualization is the contemporary option being
adopted by most PaaS cloud players
▶
Next Gen Virtualization
18. Container vis-a-vis virtualization
Bare Metal
Hypervisor (1)
GuestOS
GuestOS
GuestOS
Runtime Runtime Runtime
Shared
Libs
Shared
Libs
Shared
Libs
App B
Libs
App A
Libs
App A
Libs
App BApp AApp A
Bare Metal
Host OS
Docker
Runtime
Shared Libs
App A Libs App B Libs
App A App A App BApp A
VM
Container
▶
3a
3x
3b
y'
x
y''
a
b
y' >> y''
19. Managing containers
• It is easy to manage a handful of containers but in a
data center there can be 1000s of containers!
• Enter "Kubernetes" - the container manager
– Kubernetes (the Greek term for "helmsman" of a
ship) is a lighter-weight version of Google's own
internal technology it calls Omega
– It is an open source orchestration system for
Docker containers
– It handles scheduling onto nodes in a compute
cluster and actively manages workloads to ensure
that their state matches the users declared
intentions
– Using the concepts of "labels" and "pods", it
groups the containers which make up an
application into logical units for easy management
and discovery
• Read more at http://kubernetes.io
▶
21. PaaS Overview
• Needs an operational IaaS to be "effective"
• Abstracts the infrastructure layer completely
• Provides monitoring at two levels
• Infrastructure
• Application
▶
23. Data to Information xform velocity
Business wants
1. Business agility
2. Data prolifera6on
3. User generated content
4. Social, near real 6me analysis
5. U0lity based pricing, pay as you go, Low CAPEX
Traditional IT
1. Tradi6onal licensing model
2. Large ini0al CAPEX
3. Pre-planning
4. Batch, time lag to insights
Technology Lag / Delayed
insights
Time
Growth
Internet & social era
Tac-cal Informa-on
Strategic Insights
Opera-onal Data
To stay several steps ahead of the competition
organizations all over the world are asking a
simple question
“Can we get some insights out of our data?
Quickly please!”
We need "Big Data & Analytics"
▶
24. Types of NoSQL
• Wide Row - Also known as wide-column stores, these databases store data in rows and users
are able to perform some query operations via column-based access. A wide-row store offers
very high performance and a highly scalable architecture. Examples include: Cassandra,
HBase, and Google BigTable.
• Columnar - Also known as column oriented store. Here the columns of all the rows are stored
together on disk. A great fit for analytical queries because it reduces disk seek and encourages
array like processing. Amazon Redshift, Google BigQuery, Teradata (with column partitioning).
• Key/Value - These NoSQL databases are some of the least complex as all of the data within
consists of an indexed key and a value. Examples include Amazon DynamoDB, Riak, and
Oracle NoSQL database
• Document - Expands on the basic idea of key-value stores where "documents" are more
complex, in that they contain data and each document is assigned a unique key, which is used
to retrieve the document. These are designed for storing, retrieving, and managing document-
oriented information, also known as semi-structured data. Examples include MongoDB and
CouchDB
• Graph - Designed for data whose relationships are well represented as a graph structure and
has elements that are interconnected; with an undetermined number of relationships between
them. Examples include: Neo4J, OrientDB and TitanDB ▶
25. Choice of database or datastore
1. Database, Relational, strict
models
2. Data in rows, pre-defined schema,
sql supports join
3. Vertically scalable
4. Random access pattern support
5. Good fit for online transactional
systems
6. Master slave model
7. Periodic data replication as read
only copies in slave
8. Availability model includes a slight
downtime in case of outages
1. Data store, distributed & Non
relational, flexible schema
2. Data in key value pairs, no joins
3. Horizontally scalable
4. Designed for access patterns
5. Good for optimized read based
system or high availability write
systems
6. Can have masterless model
7. Seamless data replication
8. Masterless allows for no downtime
▶
26. CAP Theorem
• ACID
– Atomicity - Atomicity requires that each transaction be "all or nothing"
– Consistency - The consistency property ensures that any transaction
will bring the database from one valid state to another
– Isolation - The isolation property ensures that the concurrent execution
of transactions result in a system state that would be obtained if
transactions were executed serially
– Durability - Durability means that once a transaction has been
committed, it will remain so under all circumstances
• What is it? Can I have all?
– Consistency - all nodes have the same data at all times
– Availability - Request must receive a response
– Partition tolerance - Should run even if there is a part failure
• CAP leads to BASE theory
– Basically Available, Soft state, Eventual consistency
▶
27. Map-reduce fundamentals
• Data comes to the compute OR Compute goes to data?
• What is a mapper?
• What is a reducer?
• How do they work together?
▶
28. Challenges with Distributed Computing
• Heterogeneity
• Fault handling
• Consistency
• Global concurrency
• Upgrades and maintenance
• Local resources - file system
• Application sessions & transient data
• Clock synchronization
▶
29. Designing applications for cloud
• Evaluate enterprise architecture impact
• Choice of the right service provider
• Defining the business process and integration touch points
• Security fabric cutting across all providers – 0Auth2 is the standard
• Think stateless, adapters, foundation
• Micro service approach
▶
31. Example of an analytics stack
Virtualization Fabric
Physical Servers
Virtual Servers Growth Servers
IaaS
Hadoop Distributed File System (DFS)
Yahoo Pig (Analytics
Core)
Hadoop Map-
Reduce
Generic Analytics with Map-Reduce
DFS Growth
(Auto provisioning)
Platform
PaaS
Visualization Engine (Dashboards)
Hadoop HBase
User Interface
High
Performance
Computing
+ Logic
Biz Hooks
Analytics Capability OthersBusiness Solution SaaS
Analytics as a Service
▶
32. Cloud adoption strategies
Suitable for applications that still have a lifetime and need minimal re
engineering to adapt to the cloud. Provides extended benefits through reduced
operational costs and improved scalability and associated cloud benefits
Re Engineer for the Cloud
Maturity
Suitable for new application development where the application can be built
specifically to make use of the cloud platforms.
Architect for the Cloud
Maturity
Approach suitable for applications that can be hosted on a cloud provider’s
premises without much changes. Provides immediate benefits as application
runs on the providers infrastructure.
Lift n Shift
Maturity
Adoption approaches
▶
33. Cloud computing concerns
• Progressive Architecture Development is where the overall architecture
vision is broken into piece meal and developed over a period of time. The
cloud approach should follow a similar approach.
• This is particularly important because the cloud applications space is still
maturing barring a few select players. The following are the typical
impediments perceived by organizations when it comes to cloud application
implementations.
• Current enterprise apps can't be migrated conveniently
• Lock in with proprietary architecture
• Risks – Legal, regulatory, and business
• Difficulty of managing cloud applications
• Lack of clarity of SLA ownership
• Unclear ROI
▶
34. Internet of Things (IoT)
The Internet of Things (IoT) is the network of physical objects or "things"
embedded with electronics, software, sensors and connectivity to enable it to
achieve greater value and service by exchanging data with the manufacturer,
operator and/or other connected devices.
-Wikipedia
How do these work?
• Interactive smart tables
• Smart refrigerators
• Smart air conditioners
• Mood based Ambiance
• Smart water heaters
• Control window shades from IP phones
• Mars robots!
▶
36. IaaS - key aspects
• Enterprise infrastructure
• Cloud hosting
• Virtual Data Centers (VDC)
• Scalability
• No investment in hardware
• Utility style costing
• Location independence
• Physical security of data center locations
• No single point of failure
▶
37. PaaS - key aspects
• Managed services, foundation, APIs
• Managed runtime, no need to start, stop
• Managed infrastructure, agnostic on the nature of hardware the application
runs on, though the user can get some control of picking the type of
machine
• Extensive monitoring & Dashboards, allows for monitoring and also
identifying application bottlenecks and helps in debugging
• Auto scalability, can specify some limits to protect from malitious access
• Billing thresholds to keep a tab on the expenditure
• Alerts, always good to get informed "before" an outage
• Choice of programming language, customers have the ability to create
teams as per organizational strengths
▶
38. SaaS - key aspects
• Allows for hosting and management of applications to a 3rd party provider
• Usually a complete business process that can be used in isolation or in
conjuntion with another business process to create composite macro
business processes
• 3rd party provider is responsible for delivery SLA, L1 to L4 support etc
• Does not require any installation at the client location on any machine on
any device
• Pricing can be per seat or fixed price depending on the provider
• The provider typically has a multitenant architecture for one instance to
many client delivery models. This allows for economy of scale and reduces
cost of usage
• These are usually online applications, however there can be offline
applications too using contemporary browser capabilities
▶