0% found this document useful (0 votes)
73 views96 pages

UNIT 5

Uploaded by

saratabassum043
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
73 views96 pages

UNIT 5

Uploaded by

saratabassum043
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 96

1

CLOUD ENVIRONMENTS
(PC 628 CS) –SARAAH GHORI
2
Google App Engine

 Google App Engine is a cloud computing platform as a service for developing and
hosting web applications in Google-managed data centers. Applications are
sandboxed and run across multiple servers
 Initial release: April 7, 2008; 13 years ago
 Google App Engine primarily supports Go, PHP, Java, Python, Node. js, . NET,
and Ruby applications, although it can also support other languages via "custom
runtimes".

VI SEM CC Saraah Ghori


3
GAE

 App Engine offers automatic scaling for web applications—as the number of
requests increases for an application, App Engine automatically allocates more
resources for the web application to handle the additional demand.
 The service is free up to a certain level of consumed resources and only in
standard environment but not in flexible environment. Fees are charged for
additional storage, bandwidth, or instance hours required by the application.[5] It
was first released as a preview version in April 2008 and came out of preview in
September 2011.

VI SEM CC Saraah Ghori


4
GAE

 Build highly scalable applications on a fully managed serverless platform.


• Scale your applications from zero to planet scale without having to manage
infrastructure
• Free up your developers with zero server management and zero configuration
deployments
• Stay agile with support for popular development languages and a range of
developer tools

VI SEM CC Saraah Ghori


5
BENEFITS

 Open and familiar languages and tools


 Build and deploy apps quickly using popular languages or bring your own language
runtimes and frameworks. You can also manage resources from the command line,
debug source code, and run API back ends easily.
 Just add code
 Focus on writing code without having to manage underlying infrastructure. Protect
your apps from security threats using firewall capabilities, IAM rules, and managed
SSL/ TLS certificates.
 Pay only for what you use
 Operate in a serverless environment without worrying about over or under
provisioning. App Engine automatically scales depending on your app traffic and
consumes resources only when your code is running.

VI SEM CC Saraah Ghori


6
Key features

 Popular programming languages


 Build your application in Node.js, Java, Ruby, C#, Go,
Python, or PHP—or bring your own language runtime.
 Open and flexible
 Custom runtimes allow you to bring any library and
framework to App Engine by supplying a Docker
container.
 Fully managed
 A fully managed environment lets you focus on code
while App Engine manages infrastructure concerns.

VI SEM CC Saraah Ghori


7
Characteristics
Powerful application diagnostics Use Cloud Monitoring and Cloud Logging to monitor the
health and performance of your app and Cloud Debugger
and Error Reporting to diagnose and fix bugs quickly.
Application versioning Easily host different versions of your app, and easily create
development, test, staging, and production environments.
Traffic splitting Route incoming requests to different app versions, A/B test
and do incremental feature rollouts.
Application security Help safeguard your application by defining access rules
with App Engine firewall and leverage managed SSL/TLS
certificates by default on your custom domain at no
additional cost.
Services ecosystem Tap a growing ecosystem of Google Cloud services from
your app including an excellent suite of cloud developer
tools.
VI SEM CC Saraah Ghori
8
Choosing an App Engine environment

 You can run your applications in App Engine using the flexible
environment or standard environment. You can also choose to simultaneously
use both environments for your application and allow your services to take
advantage of each environment's individual benefits.

 The App Engine Environment:


App Engine is well suited to applications that are designed using
a microservice architecture, especially if you decide to utilize both environments.
Use the following sections to learn and understand which environment best meets
your application's needs.

VI SEM CC Saraah Ghori


9
When to choose the standard environment

Application instances run in a sandbox, using the runtime environment of a supported language listed below.
Applications that need to deal with rapid scaling.
The standard environment is optimal for applications with the following characteristics:
•Source code is written in specific versions of the supported programming languages:
•Python 2.7, Python 3.7, Python 3.8, Python 3.9
•Java 8, Java 11
•Node.js 8, Node.js 10, Node.js 12, and Node.js 14
•PHP 5.5, PHP 7.2, PHP 7.3, and PHP 7.4
•Ruby 2.5, Ruby 2.6, and Ruby 2.7
•Go 1.11, Go 1.12, Go 1.13, Go 1.14, Go 1.15
•Intended to run for free or at very low cost, where you pay only for what you need and when you need it. For
example, your application can scale to 0 instances when there is no traffic.
•Experiences sudden and extreme spikes of traffic which require immediate scaling.

VI SEM CC Saraah Ghori


10
When to choose the flexible environment

Application instances run within Docker containers on Compute Engine virtual machines (VM).

Applications that receive consistent traffic, experience regular traffic fluctuations, or meet the parameters for scaling up and down gradually.

The flexible environment is optimal for applications with the following characteristics:

•Source code that is written in a version of any of the supported programming languages:

Python, Java, Node.js, Go, Ruby, PHP, or .NET

•Runs in a Docker container that includes a custom runtime or source code written in other programming languages.

•Uses or depends on frameworks that include native code.

•Accesses the resources or services of your Google Cloud project that reside in the Compute Engine network.

VI SEM CC Saraah Ghori


Comparing high-level features 11
The following table summarizes the differences between the two environments:
•For an in-depth comparison of the environments, see the guide for your language: Python, Java, Go, or PHP.

Feature Standard environment Flexible environment


Instance startup time Seconds Minutes
Maximum request timeout Depends on the runtime and type of scaling. 60 minutes
Background threads Yes, with restrictions Yes
Background processes No Yes
SSH debugging No Yes
Scaling Manual, Basic, Automatic Manual, Automatic
Scale to zero Yes No, minimum 1 instance
Writing to local disk •Java 8, Java 11, Node.js, Python 3, PHP 7, Ruby, Go 1.11, and Yes, ephemeral (disk initialized on each VM startup)
Go 1.12+ have read and write access to the /tmp directory.
•Python 2.7 and PHP 5.5 don't have write access to the disk.

Modifying the runtime No Yes (through Dockerfile)


Deployment time Seconds Minutes
Automatic in-place security patches Yes Yes (excludes container image runtime)
Access to Google Cloud APIs & Services Yes Yes
such as Cloud Storage, Cloud
SQL, Memorystore, Tasks and others.

WebSockets No Yes
Java 8, Python 2, and PHP 5 provide a proprietary Sockets API
(beta), but the API is not available in newer standard runtimes.

Supports installing third-party binaries •Yes for Java 8, Java 11, Node.js, Python 3, PHP 7, Ruby, Go Yes
VI SEM CC Saraah Ghori
1.11, and Go 1.12+.
•No for Python 2.7 and PHP 5.5.
12
Comparing the flexible environment to Compute
Engine

 The App Engine flexible environment has the following differences to Compute Engine:

• Flexible environment VM instances are restarted on a weekly basis. During restarts, Google's management services apply any

necessary operating system and security updates.

• You always have root access to Compute Engine VM instances. By default, SSH access to the VM instances in the flexible

environment is disabled. If you choose, you can enable root access to your app's VM instances.

• Code deployments can take longer as container images are built by using the Cloud Build service.

• The geographical region of a flexible environment VM instance is determined by the location that you specify for the App Engine

application of your Cloud project. Google's management services ensures that the VM instances are co-located for optimal

performance.
VI SEM CC Saraah Ghori
13
GAE ( in a minute……………………)

 https://www.youtube.com/watch?v=Xuf3J6SKVV0&list=PLIivdWyY5sqIQ4_5
PwyyXZVdsXr3wYhip

VI SEM CC Saraah Ghori


Google App Engine

 Does one thing well: running web apps

 Simple app configuration

 Scalable

 Secure

VI SEM CC Saraah Ghori 14


App Engine Does One Thing Well

 App Engine handles HTTP(S) requests, nothing else


 Think RPC: request in, processing, response out
 Works well for the web and AJAX; also for other services

 App configuration is dead simple


 No performance tuning needed

 Everything is built to scale


 “infinite” number of apps, requests/sec, storage capacity
 APIs are simple, stupid

VI SEM CC Saraah Ghori 15


16
GAE ARCHITECTURE

VI SEM CC Saraah Ghori


17
GAE ARCHITECTURE

VI SEM CC Saraah Ghori


App Engine Architecture

req/resp
Figure shows the major
stateless APIs R/O FS
building blocks of the
Google cloud platform
which as been used to
urlfech Python stdlib deliver the cloud services.

mail A VM
process app
images

stateful datastore
APIs memcache
Scaling

 Low-usage apps: many apps per physical host


 High-usage apps: multiple physical hosts per app

 Stateless APIs are trivial to replicate


 Memcache is trivial to shard

 Datastore built on top of Bigtable; designed to scale well


 Abstraction on top of Bigtable
 API influenced by scalability
 No joins
 Recommendations: denormalize schema; precompute joins

VI SEM CC Saraah Ghori 19


Security

 Prevent the bad guys from breaking (into) your app

 Constrain direct OS functionality


 no processes, threads, dynamic library loading
 no sockets (use urlfetch API)
 can’t write files (use datastore)
 disallow unsafe Python extensions (e.g. ctypes)

 Limit resource usage


 Limit 1000 files per app, each at most 1MB
 Hard time limit of 10 seconds per request
 Most requests must use less than 300 msec CPU time
 Hard limit of 1MB on request/response size, API call size, etc.
 Quota system for number of requests, API calls, emails sent, etc

VI SEM CC Saraah Ghori 20


Why Not LAMP?

 Linux, Apache, MySQL/PostgreSQL, Python/Perl/PHP/Ruby


 LAMP is the industry standard
 But management is a hassle:
 Configuration, tuning
 Backup and recovery, disk space management
 Hardware failures, system crashes
 Software updates, security patches
 Log rotation, cron jobs, and much more
 Redesign needed once your database exceeds one box

• “We carry pagers so you don’t have to”

VI SEM CC Saraah Ghori 21


Automatic Scaling to Application
Needs

 You don’t need to configure your resource needs


 One CPU can handle many requests per second
 Apps are hashed (really mapped) onto CPUs:
 One process per app, many apps per CPU
 Creating a new process is a matter of cloning a generic “model” process and then
loading the application code (in fact the clones are pre-created and sit in a queue)
 The process hangs around to handle more requests (reuse)
 Eventually old processes are killed (recycle)
 Busy apps (many QPS) get assigned to multiple CPUs
 This automatically adapts to the need
 as long as CPUs are available

VI SEM CC Saraah Ghori 22


Preserving Fairness Through Quotas

 Everything an app does is limited by quotas, for example:


 request count, bandwidth used, CPU usage, datastore call count, disk space
used, emails sent, even errors!
 If you run out of quota that particular operation is blocked (raising an
exception) for a while (~10 min) until replenished
 Free quotas are tuned so that a well-written app (light CPU/datastore
use) can survive a moderate “slashdotting”
 The point of quotas is to be able to support a very large number of small
apps (analogy: baggage limit in air travel)
 Large apps need raised quotas
 currently this is a manual process (search FAQ for “quota”)
 in the future you can buy more resources

VI SEM CC Saraah Ghori 23


Google App Engine (GAE)-Functional
Modules

 Google has pioneered cloud development by leveraging the large number of data centers it operates.
 Functional Modules of GAE
GFS is used for storing large amount of data.
 MapReduce is for use in application program development.
 Chubby is used for distributed application lock services.
 BigTable offers a storage for accessing structured data.
 The GAE platform comprises the following five major components.
 Datastoreapplication
 runtime environment
 software development kit (SDK)
 administration console
 GAE web service infrastructure

VI SEM CC Saraah Ghori 24


25
GAE Applications

 Well-known GAE applications include the


 Google Search Engine,
 Google Docs,
 Google Earth, and Gmail.
 Users can interact with Google applications via the web interface provided by
each applications.
 Third-party application providers can use GAE to build cloud applications for
providing services.
 GAE supports many web applications Public Cloud Platform

VI SEM CC Saraah Ghori


26
GAE Based Apps……

VI SEM CC Saraah Ghori


The Future

 Big things we’re working on:


 Large file uploads and downloads
 Datastore import and export for large volumes
 Pay-as-you-go billing (for resource usage over free quota)
 More languages (no I’m not telling…)
 Uptime monitoring site

 No published timeline – agile development process

VI SEM CC Saraah Ghori 27


28
AWS-Intd

 AWS (Amazon Web Services) is a comprehensive, evolving cloud computing platform


provided by Amazon that includes a mixture of infrastructure as a service (IaaS),
platform as a service (PaaS) and packaged software as a service (SaaS) offerings.
AWS services can offer an organization tools such as compute power, database
storage and content delivery services.

 AWS launched in 2006 from the internal infrastructure that Amazon.com built to handle
its online retail operations. AWS was one of the first companies to introduce a pay-as-
you-go cloud computing model that scales to provide users with compute, storage or
throughput as needed.

VI SEM CC Saraah Ghori


29
Contd……

 AWS offers many different tools and solutions for enterprises and software developers
that can be used in data centers in up to 190 countries. Groups such as government
agencies, education institutions, nonprofits and private organizations can use AWS
services.

 How AWS works

 AWS is separated into different services; each can be configured in different


ways based on the user's needs. Users should be able to see configuration
options and individual server maps for an AWS service.

VI SEM CC Saraah Ghori


30
History

 The AWS platform was originally launched in 2002 with only a few services. In 2003, AWS was re-envisioned to make Amazon's
compute infrastructure standardized, automated and web service focused. This re-envisioning included the thought of selling
access to virtual servers as a service platform. One year later, in 2004, the first publicly available AWS service -- Amazon SQS --
was launched.

 In 2006, AWS was relaunched to include three services -- including Amazon S3 cloud storage, SQS, and EC2 -- officially making
AWS a suite of online core services. In 2009, S3 and EC2 were launched in Europe, and the Elastic Block Store and Amazon
CloudFront were released and adopted to AWS. In 2013, AWS started to offer a certification process in AWS services, and 2018
saw the release of an autoscaling service.

 Over time, AWS has added plenty of services that helped make it a low-cost infrastructure platform that is highly available and
scalable. AWS now has a focus on the cloud, with data centers placed around the world, in places such as the United States,
Australia, Europe, Japan and Brazil.

VI SEM CC Saraah Ghori


31
What is AWS?

 Amazon Web Services (AWS) is the world’s most comprehensive and broadly adopted cloud platform,

offering over 200 fully featured services from data centers globally. Millions of customers—including

the fastest-growing startups, largest enterprises, and leading government agencies—are using AWS to

lower costs, become more agile, and innovate faster.

VI SEM CC Saraah Ghori


32
AWS is used for???

 Amazon Web Services (AWS) is a secure cloud services platform,

offering compute power, database storage, content delivery and other

functionality to help businesses scale and grow. Running web and application

servers in the cloud to host dynamic websites.

VI SEM CC Saraah Ghori


33
Key Features

 Services are provided over Web

 Communication is web-service based

 Communication interface API has been designed to be simple and


effective

 Three kinds of interfaces: REST, Query & SOAP based

 Authentication embedded in each message

VI SEM CC Saraah Ghori


34
Let’s get Started!

 In simple words AWS allows you to do the following things-


1. Running web and application servers in the cloud to host dynamic websites.
2. Securely store all your files on the cloud so you can access them from anywhere.
3. Using managed databases like MySQL, PostgreSQL, Oracle or SQL Server to store
information.
4. Deliver static and dynamic files quickly around the world using a Content Delivery
Network (CDN).
5. Send bulk email to your customers.

VI SEM CC Saraah Ghori


35
Basic Terminologies

1. Region — A region is a geographical area. Each region consists of 2 (or more) availability
zones.
2. Availability Zone — It is simply a data center.
3. Edge Location — They are CDN (Content Delivery Network) endpoints for CloudFront.

VI SEM CC Saraah Ghori


36
Aws Services………

 More than 100 services comprise the Amazon Web •Development tools
Services portfolio, including those for compute,
•Management
databases, infrastructure management, application
•Monitoring
development and security. These services, by category,

include: •Security

•Governance
• Compute
•Big data management
• Storage databases
•Analytics
• Data management
•Artificial intelligence (AI)
• Migration •Mobile development

• Hybrid cloud •Messages and notification,


VI SEM CC Saraah Ghori
• Networking etc…….
37
Availability

 Amazon Web Services provides services from dozens of data centers spread across availability zones (AZs) in
regions across the world. An AZ is a location that contains multiple physical data centers. A region is a collection of
AZs in geographic proximity connected by low-latency network links.

 A business will choose one or multiple availability zones for a variety of reasons, such as compliance and proximity
to end customers. For example, an AWS customer can spin up virtual machines (VMs) and replicate data in different
AZs to achieve a highly reliable infrastructure that is resistant to failures of individual servers or an entire data center.

 Amazon Elastic Compute Cloud (EC2) is a service that provides virtual servers -- called EC2 instances -- for
compute capacity. The EC2 service offers dozens of instance types with varying capacities and sizes, tailored to
specific workload types and applications, such as memory-intensive and accelerated-computing jobs. AWS also
provides an Auto Scaling tool to dynamically scale capacity to maintain instance health and performance.

VI SEM CC Saraah Ghori


38
Storage

 Amazon Simple Storage Service (S3) provides scalable object storage for data backup, collection
and analytics. An IT professional stores data and files as S3 objects -- which can range up to 5
gigabytes (GB) -- inside S3 buckets to keep them organized. A business can save money with S3
through its Infrequent Access storage tier or by using Amazon Glacier for long-term cold storage.

 Amazon Elastic Block Store provides block-level storage volumes for persistent data storage
when using EC2 instances. Amazon Elastic File System offers managed cloud-based file storage.

 A business can also migrate data to the cloud via storage transport devices, such as AWS
Snowball and Snowmobile, or use AWS Storage Gateway to enable on-premises apps to access
cloud data.

VI SEM CC Saraah Ghori


39
Databases, data management

 The Amazon Relational Database Service -- which includes options for Oracle, SQL Server,
PostgreSQL, MySQL, MariaDB and a proprietary high-performance database called Amazon Aurora --
provides a relational database management system for AWS users. AWS also offers
managed NoSQL databases through Amazon DynamoDB.

 An AWS customer can use Amazon ElastiCache and DynamoDB Accelerator as in-memory and real-
time data caches for applications. Amazon Redshift offers a data warehouse, which makes it easier for
data analysts to perform business intelligence (BI) tasks.

VI SEM CC Saraah Ghori


40
Migration, hybrid cloud

 AWS includes various tools and services designed to help users migrate applications,
databases, servers and data onto its public cloud. The AWS Migration Hub provides a
location to monitor and manage migrations from on premises to the cloud. Once in the
cloud, EC2 Systems Manager helps an IT team configure on-premises servers and AWS
instances.

 Amazon also has partnerships with several technology vendors that ease hybrid cloud
deployments. VMware Cloud on AWS brings software-defined data center technology
from VMware to the AWS cloud. Red Hat Enterprise Linux for Amazon EC2 is the product
of another partnership, extending Red Hat's operating system to the AWS cloud.

VI SEM CC Saraah Ghori


41
Networking

 An Amazon Virtual Private Cloud (Amazon VPC) gives an administrator control over a virtual network to use an isolated
section of the AWS cloud. AWS automatically provisions new resources within a VPC for extra protection.

 Admins can balance network traffic with the Elastic Load Balancing (ELB) service, which includes the Application Load
Balancer and Network Load Balancer. AWS also provides a domain name system called Amazon Route 53 that routes end
users to applications.

 An IT professional can establish a dedicated connection from an on-premises data center to the AWS cloud via AWS Direct
Connect.

VI SEM CC Saraah Ghori


42
Developer tools

 A developer can take advantage of AWS command-line tools and software development kits (SDKs) to

deploy and manage applications and services. This includes:

• The AWS Command Line Interface, which is Amazon's proprietary code interface.

• A developer can use AWS Tools for Powershell to manage cloud services from Windows environments.

• Developers can use AWS Serverless Application Model to simulate an AWS environment to test Lambda

functions.

 AWS SDKs are available for a variety of platforms and programming languages, including Java, PHP,

Python, Node.js, Ruby, C++, Android and iOS.

 Amazon API Gateway enables a development team to create, manage and monitor custom application

program interfaces (APIs) that let applications access data or functionality from back-end services. API

Gateway manages thousands of concurrent API calls at once.

VI SEM CC Saraah Ghori


43
Dev tools…

 AWS also provides a packaged media transcoding service -- Amazon Elastic Transcoder -- and a service that visualizes
workflows for microservices-based applications -- AWS Step Functions.

 A development team can also create continuous integration and continuous delivery pipelines with services like:

• AWS CodePipeline

• AWS CodeBuild

• AWS CodeDeploy

• AWS CodeStar

 A developer can also store code in Git repositories with AWS CodeCommit and evaluate the performance of microservices-
based applications with AWS X-Ray.

VI SEM CC Saraah Ghori


44
Management and monitoring

 An admin can manage and track cloud resource configuration via AWS Config and AWS Config
Rules. Those tools, along with AWS Trusted Advisor, can help an IT team avoid improperly
configured and needlessly expensive cloud resource deployments.

 AWS provides several automation tools in its portfolio. An admin can automate infrastructure
provisioning via AWS CloudFormation templates, and also use AWS OpsWorks and Chef to
automate infrastructure and system configurations.

 An AWS customer can monitor resource and application health with Amazon CloudWatch and the
AWS Personal Health Dashboard, as well as use AWS CloudTrail to retain user activity and API
calls for auditing.

VI SEM CC Saraah Ghori


45
Security and governance

 AWS provides a range of services for cloud security, including AWS Identity and Access
Management, which allows admins to define and manage user access to resources. An admin can
also create a user directory with Amazon Cloud Directory, or connect cloud resources to an
existing Microsoft Active Directory with the AWS Directory Service. Additionally, the AWS
Organizations service enables a business to establish and manage policies for multiple AWS
accounts.

 Amazon Web Services has also introduced tools that automatically assess potential security
risks. Amazon Inspector analyzes an AWS environment for vulnerabilities that might impact
security and compliance. Amazon Macie uses machine learning (ML) technology to protect
sensitive cloud data.

VI SEM CC Saraah Ghori


46
Security and governance

 AWS also includes tools and services that provide software- and hardware-based encryption, protect
against DDoS attacks, provision Secure Sockets Layer (SSL) and Transport Layer Security (TLS)
certificates and filter potentially harmful traffic to web applications.

 The AWS Management Console is a browser-based graphical user interface (GUI) for AWS. The
Management Console can be used to manage resources in cloud computing, cloud storage and security
credentials. The AWS Console interfaces with all AWS resources.

VI SEM CC Saraah Ghori


47
Big data management and analytics

 AWS includes a variety of big data analytics and application services. This
includes:

• Amazon Elastic MapReduce, which offers a Hadoop framework to process large


amounts of data.

• Amazon Kinesis, which provides several tools to process and analyze streaming
data.

• AWS Glue, which is a service that handles extract, transform and load jobs.

• Amazon Elasticsearch Serviceenables a team to perform application monitoring,


log analysis and other tasks with the open source Elasticsearch tool.

• Amazon Athena for S3, which allows analysts to query data.

• Amazon QuickSight, which help analysts visualize data.


VI SEM CC Saraah Ghori
48
Artificial intelligence

 AWS offers a range of AI model development and delivery platforms, as well as packaged AI-based
applications. The Amazon AI suite of tools includes:

• Amazon Lex for voice and text chatbot technology;

• Amazon Polly for text-to-speech translation; and

• Amazon Rekognition for image and facial analysis.

 AWS also provides technology for developers to build smart apps that rely on machine learning
technology and complex algorithms.

 With AWS Deep Learning Amazon Machine Images (AMIs), developers can create and train custom AI
models with clusters of graphics processing units (GPUs) or compute-optimized instances. AWS also
includes deep learning development frameworks for MXNet and TensorFlow.

 On the consumer side, AWS technologies power the Alexa Voice Services, and a developer can use
the Alexa Skills Kit to build voice-based apps for Echo devices.
VI SEM CC Saraah Ghori
49
Mobile development

 The AWS Mobile Hub offers a collection of tools and


services for mobile app developers, including the AWS
Mobile SDK, which provides code samples and libraries.

 A mobile app developer can also use Amazon Cognito to


manage user access to mobile apps, as well as Amazon
Pinpoint to send push notifications to application end users
and then analyze the effectiveness of those
communications.

VI SEM CC Saraah Ghori


50
Messages and notifications

 AWS messaging services provide core communication for users and


applications. Amazon Simple Queue Service (SQS) is a managed message queue
that sends, stores and receives messages between components of distributed
applications to ensure that the parts of an application work as intended.

 Amazon Simple Notification Service (SNS) enables a business to send


publish/subscribe messages to endpoints, such as end users or services. SNS
includes a mobile messaging feature that enables push messaging to mobile
devices. Amazon Simple Email Service (SES) provides a platform for IT professionals
and marketers to send and receive emails.

VI SEM CC Saraah Ghori


AR & VR (Augmented reality and 51
virtual reality)

 AWS offers augmented reality (AR) and virtual reality (VR) development tools through the Amazon Sumerian service.
Amazon Sumerian allows users to create AR and VR applications without needing to know programming or create 3D
graphics. The service also enables users to test and publish applications in-browser. Amazon Sumerian can be used in:

• 3D web applications

• E-commerce & sales applications

• Marketing

• Online education

• Manufacturing

• Training simulations

• Gaming
VI SEM CC Saraah Ghori
52
Game development

 AWS can also be used for game development. Large game developing companies, such as
Ubisoft, will use AWS services for their games, like For Honor. AWS can provide services for
each part of a game's lifecycle.

 For example, AWS will provide a developer back-end services, analytics and developer tools.
Developer tools should help aid developers in making their game, while back-end services might
be able to help with building, deploying or scaling a developer's platform. Analytics might help
developers better know their customers and how they play the game. Developers can also store
data, or host game data on AWS servers

VI SEM CC Saraah Ghori


53
Internet of Things

 AWS also has a variety of services that enable the internet of things (IoT)
deployments. The AWS IoT service provides a back-end platform to manage IoT
devices and data ingestion to other AWS storage and database services.
The AWS IoT Button provides hardware for limited IoT functionality and AWS
Greengrass brings AWS compute capabilities to IoT devices.

VI SEM CC Saraah Ghori


54
Other services

 Amazon Web Services has a range of business productivity SaaS options, including:

• The Amazon Chime service enables online video meetings, calls and text-based chats
across devices.

• Amazon WorkDocs, which is a file storage and sharing service

• Amazon WorkMail, which is a business email service with calendaring features.

 Desktop and streaming application services include Amazon WorkSpaces, a remote


desktop-as-a-service platform (DaaS), and Amazon AppStream, a service that lets a
developer stream a desktop application from AWS to an end user's web browser.

VI SEM CC Saraah Ghori


55
AWS pricing models and competition

 AWS offers a pay-as-you-go model for its cloud services, either on a per-hour or per-second basis. There is also an option to
reserve a set amount of compute capacity at a discounted price for customers who prepay in whole, or who sign up for one- or
three-year usage commitments.

 If potential customers can’t afford the costs, then AWS Free Tier is another possible avenue for using AWS services. AWS Free Tier
allows users to gain first-hand experience with AWS services for free; they can access up to 60 products and start building on the
AWS platform. Free Tier is offered in three different options: always free, 12 months free and trials.

 AWS competes primarily with Microsoft Azure, Google and IBM in the public IaaS market.

VI SEM CC Saraah Ghori


56
AWS in short

 https://www.youtube.com/watch?v=3XFODda6YXo

VI SEM CC Saraah Ghori


57
Cloud Software Environment

 In a cloud environment, consumers can deploy and run their software


applications on a sophisticated infrastructure that is owned and managed by
a cloud provider (eg, Amazon Web Services, Microsoft Azure, and Google Cloud
Platform).

VI SEM CC Saraah Ghori


58
Cloud Software Environment

 Technology has come a long way in transforming the industry. Cloud computing is one major
revolution in the process that has completely changed the way business functions.

 And, we have been witnessing the series of emerging technologies powered by cloud computing
over the years.

 The technology evolution has been happening around the cloud and for the effective cloud
utilization. In the process, these technologies are not just changing the cloud computing
environment, they are transforming the world of computing as a whole.

VI SEM CC Saraah Ghori


Here are 6 emerging technologies in the cloud 59
computing zone:

 1) Containers
 Containers rose to fame exactly at a point when the ‘speed of delivery
and complexity’ have been very important for the IT industry. Unlike
traditional Virtual Machines (VM) that hold the main OS, Container
technology arrived as a lightweight software packaging method, where a
container package carries a piece of software and its bare essentials
(libraries and configuration files) to traverse across different computing
environments.
 Docker and Kubernetes took the container popularity to the next level in
terms of adoption.
“According to the Rightscale State of the Cloud report 2019, 66 percent of
firms have already adopted containers and 60 percent have Kubernetes for
container management.”

VI SEM CC Saraah Ghori


60
2) Serverless

 That was the time when IT industry struggling with critical hardware maintenance and
software provisioning. Serverless computing answered these concerns by handling key
maintenance and scaling demands of firms, encouraging them to focus on other key
functions in their cloud-based systems.

 With serverless computing, the trend for pay-as-you-go and pay-for-use computing
models picked up addressing the majority software burden. This function-as-service
model made the cloud computing environment run faster and more efficiently.

VI SEM CC Saraah Ghori


61
3) Microservices

 Dealing with single large applications is old fashion! Componentization has been the trend to simplify the
software process. This process of breaking a larger application into small modules or components to deliver
faster is referred to as Microservice.

 A microservice architecture breaks monolithic apps into small, joined services or modules. This modular
approach makes it easy for the delivery of multiple modules by different small teams, independent of the actual
‘bulk’ application. This enables continuous delivery of fully-updated software and ultimately speeds up the app
delivery cycle.

VI SEM CC Saraah Ghori


62
4) DevOps

 This is another major trend that gave a due boost to the cloud computing environment. By bridging gaps, DevOps
culture brought together different teams with expertise in different areas, making them work for a single goal.

 Developers create codes, Operations teams work on metrics. Together, they can create wonders in a software
environment giving a competitive edge for organizations. DevOps tools and resources, security integration like
DevSecOps and more make DevOps more special!

VI SEM CC Saraah Ghori


63
5) Internet of Things (IoT)

 IoT has given a new shape to the technology trend. What we see around are the resultant, fitness trackers that come as
wristwatches, smart homes, self-driving automobiles, and more. These processes involve enormous volumes of data.
How do you process this data? The answer many businesses have is through ‘Cloud’.

 Cloud-based data analytics platforms, backed by hyper-scaling servers, facilitate effective data processing. Cloud also
offers solution to another key question about setting up IoT, which is basically expensive and complex to build from
scratch.

 No worries, major cloud platforms address this concern by giving IoT solutions part of their offering.

VI SEM CC Saraah Ghori


64
6) Artificial Intelligence (AI)

 Artificial Intelligence is now the next-generation technology solution set to present the technology world in a different
view. With its solutions that exhibit machine intelligence independent of human assistance, AI is emerging to enjoy high
market dominance among existing tools.

 However, building AI applications is complex for many businesses. This is where cloud has a crucial role. Such companies
are looking at Cloud for machine learning and other deep learning tools. Because of its wide computing and storage
options, the cloud-based AI is emerging as the most-sought solution for businesses of any size in realizing their AI efforts.

InConclusion
These promising technologies show once again how crucial the Cloud Computing platform is to the IT industry, today and for the
future.

VI SEM CC Saraah Ghori


65
Eucalyptus

 INTRODUCTION

 Eucalyptus stands for Elastic Utility Computing Architecture for Linking Your Programs to Useful Systems.

 Eucalyptus in cloud computing is an open-source software platform for carrying out IaaS or
Infrastructure-as-a-Service in a hybrid cloud computing or private cloud computing environment.

 Eucalyptus in cloud computing pools together existing virtualised framework to make cloud resources
for storage as a service, network as a service and infrastructure as a service. Elastic Utility Computing
Architecture for Linking Your Programs To Useful Systems is short known as Eucalyptus in cloud
computing.

VI SEM CC Saraah Ghori


66
Eucalyptus Intd………..

 Eucalyptus in cloud computing frameworks declared a conventional concurrence with


AWS or Amazon Web Services in March 2012, permitting overseers to move cases
between an Amazon Elastic Compute Cloud and the Eucalyptus private cloud to make a
hybrid cloud. The organisation additionally permits Eucalyptus to work with Amazon’s
product groups to create interesting Amazon Web Services viable highlights.

 It tends to be effortlessly sent in existing IT frameworks to appreciate the advantages of


both eucalyptus private cloud and eucalyptus public cloud models.

VI SEM CC Saraah Ghori


67
HISTORY

 Improvement on Eucalyptus started as an examination project at US-based Rice University


in the year 2003. In the year 2009, an organisation named Eucalyptus Systems was framed
to market Eucalyptus software. Afterwards, in the year 2012, the firm went into a
concurrence with Amazon Web Services for keeping up similarity and Application
Programming Interface support. In the year 2014, it was procured by Hewlett-Packard or
HP, which unexpectedly has its own cloud contributions under the HPE eucalyptus. The
Helion portfolio has an assortment of cloud-related items, which incorporates HP’s own
kind of OpenStack called HP Helion OpenStack. Presently, Eucalyptus is a piece of the HPE
portfolio and is known as HPE Helion Eucalyptus.

VI SEM CC Saraah Ghori


68
EUCALYPTUS ARCHITECTURE

 Eucalyptus CLIs can oversee both Amazon Web Services and their own private occasions. Clients can undoubtedly relocate cases from Eucalyptus
to Amazon Elastic Cloud. Network, storage, and compute are overseen by the virtualisation layer. Occurrences are isolated by hardware
virtualisation. The following wording is utilised by Eucalyptus architecture in cloud computing.

 1. Images: Any software application, configuration, module software or framework software packaged and conveyed in the Eucalyptus cloud is
known as a Eucalyptus Machine Image.

 2. Instances: When we run the picture and utilise it, it turns into an instance.

 3. Networking: The Eucalyptus network is partitioned into three modes: Static mode, System mode, and Managed mode.

 4. Access control: It is utilised to give limitation to clients.

 5. Eucalyptus elastic block storage: It gives block-level storage volumes to connect to an instance.

 6. Auto-scaling and load adjusting: It is utilised to make or obliterate cases or administrations dependent on necessities.

VI SEM CC Saraah Ghori


69
EUCALYPTUS COMPONENTS

 Components of eucalyptus in cloud computing:

 1. Cluster Controller: It oversees at least one Node controller and liable for sending and overseeing
occurrences on them.

 2. Storage Controller: It permits the making of depictions of volumes.

 3. Cloud Controller: It is a front end for the whole environment.

 4. Walrus Storage Controller: It is a straightforward record storage framework.

 5. Node Controller: It is an essential part of Nodes. It keeps up the life cycle of the occasions
running on every node.

VI SEM CC Saraah Ghori


70
OTHER TOOLS

 Numerous other tools can be utilised to associate with AWS and Eucalyptus in cloud computing, and they are
recorded below.

 1. Vagrant AWS Plugin: This instrument gives config records to oversee AWS instances and oversee VMs on the
local framework.

 2. s3curl: This is a device for collaboration between AWS S3 and Eucalyptus Walrus.

 3. s3fs: This is a FUSE record framework, which can be utilised to mount a bucket from Walrus or S3 as a local
document framework.

 4. Cloudberry S3 Explorer: This Windows instrument is for overseeing documents among S3 and Walrus.

VI SEM CC Saraah Ghori


71
THE ADVANTAGES OF THE EUCALYPTUS CLOUD

 The benefits of Eucalyptus in cloud computing are:

1. Eucalyptus can be utilised to benefit both the eucalyptus private cloud and the eucalyptus public
cloud.

2. Clients can run Amazon or Eucalyptus machine pictures as examples on both clouds.

3. It isn’t extremely mainstream on the lookout yet is a solid contender to CloudStack and OpenStack.

4. It has 100% Application Programming Interface similarity with all the Amazon Web Services.

5. Eucalyptus can be utilised with DevOps apparatuses like Chef and Puppet.

VI SEM CC Saraah Ghori


72
Features of eucalyptus in cloud computing are:

1. Supports both Windows and Linux virtual machines.


2. API is viable with the Amazon EC2 platform.
3. Viable with Simple Storage Service (S3) and Amazon Web Services (AWS).

VI SEM CC Saraah Ghori


73
EUCALYPTUS VS OTHER IAAS PRIVATE CLOUDS

 There are numerous Infrastructure-as-a-Service contributions accessible in the market like OpenNebula,
Eucalyptus, CloudStack and OpenStack, all being utilised as private and public Infrastructure-as-a-Service
contributions.

 Of the multitude of Infrastructure-as-a-Service contributions, OpenStack stays the most well-known, dynamic
and greatest open-source cloud computing project. At this point, eagerness for OpenNebula, CloudStack and
Eucalyptus stay strong.

VI SEM CC Saraah Ghori


74
WHAT IS THE USE OF EUCALYPTUS IN CLOUD COMPUTING?

 It is utilised to assemble hybrid, public and private cloud. It can likewise deliver your
own datacentre into a private cloud and permit you to stretch out the usefulness to
numerous different organisations.

 CONCLUSION

 Eucalyptus in cloud computing is open-source programming that carries out an AWS


viable cloud, which is financially savvy, secure and flexible. It tends to be effectively sent
in existing IT frameworks to appreciate both private and public cloud models’
advantages.

VI SEM CC Saraah Ghori


75
Why OpenNebula?

 OpenNebula is a powerful, but easy-to-use, open source platform to build and manage
Enterprise Clouds. OpenNebula provides unified management of IT infrastructure and
applications, avoiding vendor lock-in and reducing complexity, resource consumption and
operational costs.

 Released in July 24, 2008; 13 years ago

 https://www.youtube.com/watch?v=vx24uYpn3hw

VI SEM CC Saraah Ghori


76
OpenNebula Overview

 OpenNebula combines virtualization and container technologies with


multi-tenancy, automatic provision and elasticity to offer on-demand
applications and services.

• It supports both containers with virtual machines in a common shared


environment to get the best of both worlds.

• It integrates multiple virtualization technologies,


from VMware and KVM for fully virtualized clouds
to LXC and Firecracker for containerized and serverless deployments.

• It can easily deploy hybrid and edge environments with infrastructure


resources from AWS and Equinix Metal.

VI SEM CC Saraah Ghori


77
Cloud Infrastructure Deployment

 A standard OpenNebula Cloud Architecture consists of the Cloud


Management Cluster, with the Front-end node(s), and the Cloud
Infrastructure, made of one or several workload Clusters. These can be
located at multiple geographical locations, with different configurations and
technologies to better meet your needs:

• Edge Clusters that can be automatically deployed both on premise and on


public cloud or edge providers to enable true hybrid environments.

• Open Cloud Clusters based on certified combinations of open source


hypervisors, storage and networking technologies.

• VMware Clusters that use existing VMware infrastructure.

VI SEM CC Saraah Ghori


78
Expand Your Multi-cloud To The Edge

 OpenNebula brings a significant number of new edge computing features developed in the context of
the ONEedge innovation project to deploy on-demand distributed edge cloud environments. These new edge
computing features enable IT organizations to deploy true hybrid and multi-cloud environments that avoid vendor
lock-in, reducing operational costs, expanding service availability, and enabling new ultra-low-latency applications.

 OpenNebula combines the agility, scalability and simplicity of the public cloud, with the greater levels of flexibility,
performance and security of the private cloud, and leverages a geo-distributed offering of cloud and edge locations.
It provides a single control panel with centralized operations and management that abstracts cloud functionality
and ensures portability across providers.

VI SEM CC Saraah Ghori


79
Edge Clusters

VI SEM CC Saraah Ghori


80
Internal Architecture
OpenNebula Internal Architecture

•Host: Physical machine running a supported hypervisor.

•Cluster: Pool of hosts that share datastores and virtual networks.

•Template: Virtual Machine definition.

•Image: Virtual Machine disk image.

•Virtual Machine: Instantiated Template. A Virtual Machine represents one life-cycle, and several Virtual Machines can be created from a single

Template.

•Virtual Network: A group of IP leases that VMs can use to automatically obtain IP addresses. It allows the creation of Virtual Networks by

mapping over the physical ones. They will be available to the VMs through the corresponding bridges on hosts. Virtual network can be defined in

three different parts:

1.Underlying of physical network infrastructure.

2.The logical address space available (IPv4, IPv6, dual stack).

3.Context attributes (e.g. net mask, DNS, gateway). OpenNebula also comes with a Virtual Router appliance to provide networking services like

DHCP, DNS etc.


VI SEM CC Saraah Ghori
81
Components and Deployment Model

OpenNebula Deployment Model

The OpenNebula Project's deployment model resembles classic cluster

architecture which utilizes

•A front-end (master node)

•Hypervisor enabled hosts (worker nodes)

•Datastores

•A physical network

VI SEM CC Saraah Ghori


82
Front-end machine

The master node, sometimes referred to as the front-end machine, executes all the OpenNebula services. This
is the actual machine where OpenNebula is installed. OpenNebula services on the front-end machine include
the management daemon (oned), scheduler (sched), the web interface server (Sunstone server), and other
advanced components. These services are responsible for queuing, scheduling, and submitting jobs to other
machines in the cluster. The master node also provides the mechanisms to manage the entire system. This
includes adding virtual machines, monitoring the status of virtual machines, hosting the repository, and
transferring virtual machines when necessary. Much of this is possible due to a monitoring subsystem which
gathers information such as host status, performance, and capacity use. The system is highly scalable and is
only limited by the performance of the actual server

VI SEM CC Saraah Ghori


83
Hypervisor enabled-hosts

The worker nodes, or hypervisor enabled-hosts, provide the actual computing resources needed

for processing all jobs submitted by the master node. OpenNebula hypervisor enabled-hosts use a

virtualization hypervisor such as Vmware, Xen, or KVM. The KVM hypervisor is natively supported

and used by default. Virtualization hosts are the physical machines that run the virtual machines

and various platforms can be used with OpenNebula. A Virtualization Subsystem interacts with

these hosts to take the actions needed by the master node.

VI SEM CC Saraah Ghori


84
Storage

OpenNebula Storage
The datastores simply hold the base images of the Virtual Machines. The datastores must be
accessible to the front-end; this can be accomplished by using one of a variety of available
technologies such as NAS, SAN, or direct attached storage.
Three different datastore classes are included with OpenNebula, including system datastores, image
datastores, and file datastores. System datastores hold the images used for running the virtual
machines. The images can be complete copies of an original image, deltas, or symbolic links
depending on the storage technology used. The image datastores are used to store the disk image
repository. Images from the image datastores are moved to or from the system datastore when virtual
machines are deployed or manipulated. The file datastore is used for regular files and is often used for
kernels, ram disks, or context files

VI SEM CC Saraah Ghori


85
Physical networks

 Physical networks are required to support the interconnection of storage servers and virtual

machines in remote locations. It is also essential that the front-end machine can connect to all the

worker nodes or hosts. At the very least two physical networks are required as OpenNebula requires

a service network and an instance network. The front-end machine uses the service network to

access hosts, manage and monitor hypervisors, and to move image files. The instance network

allows the virtual machines to connect across different hosts. The network subsystem of

OpenNebula is easily customizable to allow easy adaptation to existing data centers.

VI SEM CC Saraah Ghori


86
Openstack

 Introduction

Openstack is a collection of software tools for managing and building cloud


computing platforms for public and private clouds. Openstack cloud is supported by
some of the largest and well-known software companies in software hosting and
development. Openstack cloud is also supported by community members, many of
whom believe that the future of cloud computing is open stack. Openstack
Foundation, a non-profit organization, looking after community-building and project
development, manages the OpenStack.

VI SEM CC Saraah Ghori


87
WHAT IS OPENSTACK CLOUD COMPUTING?

 Openstack allows users to install virtual machines that take care of different tasks for managing a cloud
environment on the go. Openstack cloud computing makes horizontal scaling easy, which means
functions that have benefit from running in parallel can serve more users by spinning up occurrences. For
example: if a mobile app wants to communicate with a remote server can share the work of
communicating with each user across many circumstances, which scales up as the application gets more
users.

 The most important aspect of the OpenStack is that it is open-source software, which means any user
who wants to access the source code can make the needed changes to the code quickly and freely share
with the community. This, in turn, is beneficial to thousands of developers who are working together to
build the most secure, robust, and safe product they can.

VI SEM CC Saraah Ghori


88
Is OpenStack Public or Private Cloud?

 To understand if the OpenStack is a public or private cloud, the OpenStack is a free

cloud computing platform, installed as a part of the infrastructure in both public

and private cloud where all resources are available to users.

VI SEM CC Saraah Ghori


89
COMPONENTS OF OPENSTACK

 Openstack is made up of various moving parts. Since its an open-source software,


additional components can be added by anyone to suit their requirements. However,
nine components have been maintained officially by the OpenStack community and are
distributed as a part of the OpenStack system. Take a look at the components.

• Nova

 Nova is the main computing engine for an OpenStack. It is used to install a large
number of virtual machines for handling the task of computing.

• Cinder

 Cinder is a block of storage component which refers to the system being able to access
specific locations on the disk drive. This can come in handy in scenarios where data
access speed is considered as most important.

VI SEM CC Saraah Ghori


90
Components

• Swift

 Swift acts as an OpenStack cloud storage for objects and files. Instead of the traditional idea of referring to the file
location, developers can refer to a unique identifier referring to the file or information and allow OpenStack to decide
where to store that information. This relieves the headache of the developer about the capacity of the system. The
system’s responsibility is to back up the data in case of an error in the machine’s network connection or failure.

• Keystone

 Keystone provides services of identity for an OpenStack. It is primarily a list of all users who are mapped to
OpenStack and the services offered by the cloud for which they have permission to use. This provides many means of
access. So developers can conveniently map existing user access methods with Keystone.

• Neutron

 Neutron provides the capacity of networking for OpenStack. This ensures that all the components of OpenStack that
are installed can communicate with one another quickly and efficiently.

VI SEM CC Saraah Ghori


91
Components
• Horizon

 Horizon is the dashboard of OpenStack, which is the only graphical interface. This is the only component that will be visible for
those users who want to try OpenStack. Developers can individually access all the components of OpenStack through an
API. Horizon allows the system admin to take a look at the happenings in the cloud and manage.

• Heat

 The heat helps manage the infrastructure needed for a cloud service to run by allowing the developers to store the cloud
application requirements in a file that defines the necessary resources for that application.

• Ceilometer

 Ceilometer provides telemetry services, allowing the cloud to provide billing services to various users of the cloud. It also keeps
track of the usage of the system by each user. Ceilometer also tracks the use of all the components of OpenStack.

• Glance

 Glance provides image services. These images refer to the hard disk. Glance lets you use the pictures as templates while
installing new virtual machines.

VI SEM CC Saraah Ghori


92
MODELS OF OPENSTACK

 There are different models developed by vendors for deploying Openstack for customers. Some of them are mentioned
below.

• Openstack as a Service.

 In this model, the vendor hosts OpenStack management software as a service without the hardware. Customers have to
sign up for the service and match with their internal network, storage, and server to get a fully functioning OpenStack
private cloud.

• Openstack based Public Cloud

 In this type of model, the vendor provides OpenStack public cloud computing system based on an open stack project.

• Openstack based Private Cloud

 The vendor provides OpenStack based private cloud, which includes hardware and OpenStack software in this model.

VI SEM CC Saraah Ghori


93
Models…….

• On-Premises Distribution

 In this type of model, the customer downloads and installs OpenStack distribution within the internal network.

• Appliance based OpenStack

 A vendor called Nebula sold appliances that could be plugged into a network that generated an OpenStack
deployment.

• Rule-based Alarm Actions

 This service can start actions based on rules against event or metric data collected by the ceilometer.

VI SEM CC Saraah Ghori


94
IMPORTANCE AND NEED OF OPENSTACK

 Openstack is an integral part of the OpenStack cloud platform because it allows communication
between the cloud environment and provides a common standard through API. The distributed
architecture of OpenStack enables next-generation services. Openstack focuses on both enterprises
and service providers.

VI SEM CC Saraah Ghori


95
CONCLUSION

 To conclude, OpenStack has multiple advantages. It has a vibrant ecosystem, and it is open
source and free. Nowadays, more companies are beginning to adopt OpenStack as a part of
their cloud tool kit. Another advantage is that a large number of people can check the source
code. Openstack is being used in many industry sectors, and more are planning to adopt,
considering its popularity and ease of use.

VI SEM CC Saraah Ghori


96

SYLLABUS COMPLETED

VI SEM CC Saraah Ghori

You might also like