Dzone Rc82 Cloud Computing
Dzone Rc82 Cloud Computing
CONTENTS
Cloud Basics
Hybrid Clouds
AMAZON WEB SERVICES, GOOGLE CLOUD, AND MICROSOFT AZURE
Cloud Services
Cloud computing as an idea encapsulates a wide range of business • Learning Curves are Steep: It takes time and effort to be able to
and consumer services. At its most basic, cloud computing refers to use an IaaS service to its fullest potential
using resources over the Internet that are housed somewhere else in • Outside your control: The resources supporting the network are
the world for specific purposes. controlled by another company
Interacting with a cloud service is usually done through a web • Service Agreement: The agreement controlling your use of the
browser or command line interface. There is usually no software to service might require legal review
install, no hardware to set up, and no data center to rent space from.
• Subject to Network Reliability: Most IaaS vendors can boast of
Google and Amazon were two of the earliest to the field of cloud uptime in the 99% area so there is very little to worry about, but
computing, soon followed by Microsoft. The portfolio of products outages do occur
offered by cloud companies has matured and evolved over time, and
so has the competition. Firms such as IBM and Rackspace, among
SAAS (SOFTWARE AS A SERVICE)
others, have joined the fray. The field of cloud computing now includes
Software as a Service is so common in the modern Internet age that
a myriad of companies all offering services. This card will focus on
it is almost overlooked as part of the cloud computing field. Software
Google, Amazon, and Microsoft since they are the market leaders at the
as a Service describes any Internet-based product that provides a
time of this writing, and have the most mature product sets.
specific set of operations. This includes everything from email to
contact management.
TYPES OF CLOUD COMPUTING Interacting with a SaaS product had traditionally been done through
Cloud computing can be broken down into three main categories: a web browser. This has been slowly changing with the ubiquity of
IaaS, PaaS, and SaaS. Each is discussed below in more detail. mobile devices. Most SaaS products now include web and mobile
device clients.
IAAS (INFRASTRUCTURE AS A SERVICE) EXAMPLES
Infrastructure as a Service is what people usually think of when • Email services: Gmail, Outlook.com
discussing cloud computing. IaaS emulates the hardware that
companies traditionally purchased to create internal and external • Customer Relationship Management (CRM): Salesforce
networks. The chore of installing hardware and connecting it to
physical networks has been replaced with the task of creating robust • Business Productivity: Office.com, Dropbox, Box.com,
configurations. Almost every part of a traditional network is offered Google Docs
as a cloud service. • Application Support: InsideOps, Logentries, Google Forms
UNDERSTANDING CLOUD COMPUTING
EXAMPLES
• Servers
• Firewalls
• Routers
• Load Balancers
BENEFITS
• No Hardware: No need to invest in equipment
Log These 15 Events,
• Cost is a Function of Usage: Initial investments are much cheaper Spread DevOps Love
than equipment acquisition
• Reliability: Most SaaS products have uptime in the high 90% range,
but outages do happen Describes software and hardware that is housed and directly
On-premise managed inside a business’ physical location. On-premise
PAAS (PLATFORM AS A SERVICE) hardware and software is usually always on and available.
Platform as a Service products has received less attention than their SaaS
and IaaS siblings until recently. The power that a platform can provide is Physical hardware and software tied to a particular location,
becoming much more appreciated in recent days, which has led to a boom often leased space. Off-premise hardware and software is
Off-premise
in PaaS products. PaaS products sit in the middle between IaaS and SaaS. usually on and devoted to the customer using it. This can
PaaS services allow customers to create a customized experience on top of refer to offsite data centers, tape archive locations, etc.
an existing set of tools.
Physical and virtualized hardware and software that is
EXAMPLES hosted as needed on any available resource inside a farm
• Customized Interactive Running Tournaments: RaceLink of resources. A company may be using a server to run an
Cloud
application but it is not a physical server leased by the
• Application Building: Google App Engine, SAP Hana, Cloud Foundry
company. The particular server being used changes as
needed by the provider and can be in any number of locations.
BENEFITS (SIMILAR TO SAAS PRODUCTS)
• Quick and Regular Updates: The product is the main focus of the
company; the vendor is constantly improving, fixing, and patching to
improve their tool’s usefulness WHERE ARE CLOUDS LOCATED?
Consumers and businesses use different cloud services with such ease
• Portability: Applications built on enterprise-grade PaaS products will
and for so many purposes that clouds can feel very ephemeral. When you
usually work on all modern browsers and a wide range of mobile devices
begin using cloud computing with vendors directly, you are very quickly
• Customization: The ability to use the PaaS product as a starting point reminded that geography does matter. Although it may be true that most
means the applications built on it can be more closely tied to your applications can be reached anywhere, unless geography is taken into
business and its processes account, it will not be the same experience everywhere.
• RAD (Rapid Application Development): Getting applications built, Cloud computing products are generally region aware. All providers
and in the hands of your employees or customers happens much more will give you some control over where to locate your environments. The
quickly than traditional application development location and scope of a region will differ per provider.
The number and location of regions you need will largely depend on the
CONS (SIMILAR TO SAAS PRODUCTS)
scope of your application, network, latency tolerance, and SLAs. The
• Product Growth is Outside Your Control: The roadmap of the particular services required will also impact the choice of regions. Not all
tool’s development and the features being added are outside your services are available in all regions.
control. However, most vendors have a method for customers to
request features The biggest factor that often creeps into conversations about regions
is latency. The amount of time it takes data and resources to travel from Microsoft Regions (as of 3/2017)
the server to the client can make the difference between an application
• Virginia
being adopted or abandoned. An application serving static web content
• Iowa
can probably be in fewer zones. The lighter data load means transit will be
• Illinois
faster. However, an application serving large datasets should probably be
• Texas
located in the region closest to the user base. Larger data sizes traveling
• West Central US
farther distances will accrue more latency. Americas
• California
Latency is an important factor for networks as well as applications. The • West US 2
number of hops that network packets need to take can quickly impact • Quebec City
system response time. A load balancer can help with controlling traffic but • Toronto
if traffic has to go through several networks hops before hitting the load • Sao Paulo State
balancer, then the balancer’s impact is minimal. Consider network latency • Beijing
as well as application latency when choosing regions to host your network. • Busan
• Chennai
Amazon Regions (as of 3/2017)
• Hong Kong
• Mumbai • Mumbai
• New South Wales
• Seoul
Asia-Pacific • Osaka
Asia Pacific • Singapore
• Pune
• Sydney • Saitama
• Tokyo • Shanghai
• Singapore
Canada • Central • Tokyo
• Victoria
China • Beijing • Iowa
• Virginia
• Frankfurt Government
• US DoD East
Europe • Ireland • US DoD Central
• London • Cardiff
• Frankfurt
South America • São Paulo • Ireland
Europe
• London
• Northern Virginia
US East • Magdeburg
• Ohio
• Netherlands
• Northern California
US West
• Oregon
HYBRID CLOUDS
GovCloud • GovCloud
Cloud computing has evolved a lot over the last few years. What was
once an external addition to business’ infrastructure has become an
integral component. The concept of the hybrid cloud is a reflection of
Google Regions (as of 3/2017)
that evolution.
• Council Bluffs
Central US A hybrid cloud is one that integrates cloud resources with other on-
• Iowa
premise, off-premise, and third-party resources. In most cases, these
integrations are transparent to the user. For example, a local file server
• Berkeley County
Eastern US might host tomorrow’s presentation, but employees working on it are
• South Carolina
using Office.com’s cloud-based Powerpoint product.
Eastern Asia- • Changhua County Some cloud services even allow physical integrations to meet security,
Pacific • Taiwan latency, and other business needs. Vendors often refer to these
connections as connecting to a cloud’s edge. Amazon’s AWS Direct
Northeastern • Tokyo Connect, Google’s Interconnect, and Microsoft’s Express Gateway are all
Asia-Pacific • Japan examples of this configuration.
The tables below attempt to identify the most widely applicable offerings • AWS Storage
• StorSimple
in each of the big three that perform similar operations. Some of the
Gateway
categories may differ slightly as not all providers use all the same Automated On-Premise Backup - Automated backup of on-premise computers
nomenclature. The table uses the category that matches the majority and server applications to the cloud
when there is a discrepancy.
• Backup
Computing - Virtual servers, information processing, and event handling Private Cloud Recovery - Automated private cloud recovery services
Data Migration Services - Move large amounts of data around the network, or
Virtual Machines - including scaling
collect multiple data sources into one place.
• Virtual Machines • AWS Snowball
• Amazon EC2
• Compute Engine • Virtual Machine • AWS Snowball Edge
• Amazon Lightsail • AWS Snowmobile
Skill Sets
Virtual Machine Containers - i.e. Docker containers Databases - Wide range of organized data repositories from relational
• Amazon EC2 • Azure Container SQL to NoSQL to cloud caching
Container Registry • Container Engine Service AMAZON GOOGLE MICROSOFT
• Amazon EC2 • Container Registry • Azure Container
Container Service Registry Relational Databases - includes relational database environments that
support several database applications to fully managed, high availability,
Web Application Support - ranging from supporting a ready-made application enterprise grade systems
support platform to full PaaS application creation and management
• SQL Database
• AWS Elastic • SQL Server
• App Engine • App Service • Amazon Aurora • Cloud SQL
Beanstalk Stretch Database
• Amazon RDS • Cloud Spanner (Combination of
Event Handling - Serverless functions that can respond to specific event signals on premise and
cloud SQL server)
• AWS Lambda • Cloud Functions • Functions
NoSQL Databases - offerings range from simple NoSQL databases to fully
Batch Processing - Batch computing and large scale processing that can be managed, enterprise grade NoSQL instances
done off peak hours
• Amazon EBS • Persistent Storage • Storage
• AWS Batch • Batch
Caching Services - Redis-based or proprietary cache servers
Storage - Data storage structures akin to disks and tapes
• Amazon
AMAZON GOOGLE MICROSOFT • Redis Cache
Elasticache
File Storage - file system like storage • Cloud Virtual • Virtual Network
• Amazon VPC
Network • VPN Gateway
• Amazon Elastic
• Storage
File System Interconnected Services - Provides a direct connection from an on-premises
site directly to the provider’s cloud, usually through a third-party provider or
Archives - Services to store large amounts of data that don’t require immediate dedicated hardware.
and regular access
• AWS Direct
• Amazon Glacier • Interconnect • Express Gateway
Connect
Analysis Services - Analysis tools to provide searching or reporting on large Cloud services are often subject to traffic spikes due to one time events
datasets (e.g. National broadcast exposure, Super Bowl commercial, etc.). Not
only can this type of provisioning be expensive, but oftentimes difficult
to achieve.
• Amazon Athena
• Data Lake Cloud computing platforms allow applications to access additional
• Amazon
Elasticsearch • Cloud Datalab Analytics resources immediately and as needed without additional configuration.
Service • Stream Analytics In addition to peak and one time pricing, some services allow for other
• Amazon Quicksight alternative pricing structures. One example is pricing that becomes
cheaper after peak hours. If operations can occur when there is a
predictable lull in resource use, such as midnight to early morning for that
region, then those operations can sometimes be done at a cheaper rate.
they become available for however long they are available at a price Many of these providers rely on industry standard virtualization and
calculated by current resource use. For example, a large batch process can operating system technology making them competitive to the other
be scheduled to occur when computing resources at that region become cloud computing platforms. However, comparing these other providers to
available for $0.x/minute due to transitory low usage windows until Google’s, Microsoft’s, or Amazon’s cloud computing platforms can be more
resource usage returns to normal or the batch process completes. difficult due to the maturity and robustness of the big three’s platforms.
Finally, there is sometimes the option of dedicated resources. These are often Nevertheless, some of these other cloud computing providers have
the most costly of cloud resources. For some resources, such as disk storage carved out niche markets in the cloud computing market. Some do so
or servers, it is possible to engage a lease type pricing model where a by adopting more aggressive pricing structures, catering to the specific
company pays for a resource to be dedicated only to them. This is useful for: needs of certain communities (e.g. Ruby/Rails, or Linux), or providing
better customer service than their larger rivals.
• Mission critical applications, networks, and processes that cannot risk
being affected by regular virtualization or co-hosted processes
CLOUDS DO GET DISRUPTED (RARELY)
• Regulatory situations where the benefits of cloud computing are Customers should hold their cloud providers to a 99+% uptime. Cloud
necessary but co-hosting would break regulatory requirements providers are well aware of customer expectations on this point, and
do everything to meet that threshold. However, if the mind-boggling
AUTOMATED GROWTH & SCALABLE TECHNOLOGIES
number of hours that services are available is considered, then even a 1%
Cloud resources are virtualized and configured for specific requirements
downtime is likely to affect you. No technology is perfect.
but not a physical piece of hardware. This means that it is very easy
to launch more of any specific resource needed by the company. If All Cloud providers offer status pages so customers can be aware of any
a customer is in a period of rapid growth, then the cloud can easily disruptions that occur:
increase the amount of resources available without intense installation or
configuration. This is also true in reverse. If a company needs to reduce Google Cloud Status Page: status.cloud.google.com
cost, then turning off resources or using less of a resource does not require AWS Status Page: status.aws.amazon.com
much effort.
Microsoft Azure Status Page: azure.microsoft.com/status
Scaling is also extremely easy to do since cloud services can be as
permanent or temporary as needed. An application designed for high IBM Cloud Status Page: ibm.com/cloud-computing/social/maintenance
usage on a cloud provider can easily scale from a small amount of used Rackspace Status Page: status.rackspace.com
resource to a large amount without little extra configuration. The cloud
service will often instantiate additional resources as needed, for only as
long as needed. CLOUD COMPUTING TEAM BLOGS
In order to keep abreast on the latest offerings made by cloud computing
providers, we recommend you consult each platform’s team blog.
OTHER CLOUD COMPUTING PROVIDERS
Amazon’s, Google’s, and Microsoft’s cloud computing platforms may Google Cloud Platform Blog: cloudplatform.googleblog.com
dominate the cloud computing space, but other providers have also
AWS blog: aws.amazon.com/blogs/aws
emerged. Some of these providers include:
Microsoft Azure team blog: azure.microsoft.com/blog
• OpenStack Public Cloud
IBM Cloud blog: ibm.com/blogs/cloud-computing
• IBM Cloud & Bluemix
• Heroku Rackspace blog: blog.rackspace.com
DZone communities deliver over 6 million pages each month to more than 3.3 million software DZONE, INC.
developers, architects and decision makers. DZone offers something for everyone, including news, 150 PRESTON EXECUTIVE DR. REFCARDZ FEEDBACK WELCOME
tutorials, cheat sheets, research guides, feature articles, source code and more. CARY, NC 27513 [email protected]