Professional Documents
Culture Documents
Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that
making a false declaration is a form of malpractice.
Grading grid
P1 P2 P3 P4 M1 M2 D1
2
Assignment 1
Cloud Computing
Table of Contents
Table of Contents....................................................................................................................................4
Table of Figures.......................................................................................................................................6
Table of Tables........................................................................................................................................ 6
I. Introduction......................................................................................................................................... 7
3. Cloud Ecosystem............................................................................................................................... 12
4. Cloud architecture............................................................................................................................ 13
6. Cloud Application.............................................................................................................................. 15
1. Architecture diagram........................................................................................................................ 20
1. Deployment model........................................................................................................................... 22
2. Compare models............................................................................................................................... 25
3. Service Models.................................................................................................................................. 26
5
IX. References....................................................................................................................................... 35
6
Table of Figures
Figure 1 : A cloud is used in network diagrams to depict the Internet.......................................... 8
Figure 12 : XAMPP.........................................................................................................................31
Figure 13 : PostgreSQL.................................................................................................................. 32
Figure 14 : Git................................................................................................................................33
Figure 15 : Heroku.........................................................................................................................34
Table of Tables
Table 1 : Compare models............................................................................................................ 25
7
I. Introduction
Cloud computing gets its name as a metaphor for the Internet. Typically, the Internet is
represented in network diagrams as a cloud, as shown in Figure 1. The cloud icon
represents “all that other stuff” that makes the network work. It’s kind of like “etc.” for the
rest of the solution map. It also typically means an area of the diagram or solution that is
someone else’s concern.
So if we return to the question of what cloud computing really is, it refers to the sharing
of resources, software and information over the network. In this case, via 'Internet' or more
precisely an Internet connection. Information and data are stored on physical or virtual
servers, maintained and controlled by cloud providers, such as Amazon and their AWS
products. As a personal or business cloud user, you access your stored information on the
'cloud', via an Internet connection.
Note (Figure 1): Anthony T. Velte,Toby J. Velte ,Robert Elsenpeter et al(2009).Cloud Computing: A Practical Approach
9
Self-management on demand:
Cloud computing resources can be provided without human interaction from the
service provider. In other words, a production organization can provide additional
computing resources as needed without going through the cloud service provider.
This could be a storage space, virtual machine cases, database instances, etc.
Wide system:
Capabilities are available over the network and accessed through standard
mechanisms that promote use by heterogeneous thin or thick client platforms (for
example, mobile phones, workstations and PDAs).
Supplier registrations are pooled to serve multiple buyers using the multi-resident
model, with many physical and virtual assets strongly allocated and reassigned at the
buyer's request. . For the most part, there is a sense of regional freedom where the
customer does not have control or information over the careful area of the given
assets being able to identify the area at a higher level of reflection ( for example,
country, state or data center)
Quick flexibility:
The ability can be flexibly supplied and discharged, now and naturally, the rate
quickly turned out and the internal rate with interest. For buyers, all accounts
accessible to regular offers seem to be limitless and can be occupied with any amount
of time at any time.
Estimated administration
Deployment models describe the ways with which the cloud services can be deployed
or made available to its customers, depending on the organization structure and the
provisioning location.
Private cloud: The cloud infrastructure is provisioned for exclusive use by a single
organization comprising multiple consumers (e.g., business units). It may be owned,
managed, and operated by the organization, a third party, or some combination of
them, and it may exist on or off premises
Public cloud: The cloud infrastructure is provisioned for open use by the general public.
It may be owned, managed, and operated by a business, academic, or government
organization, or some combination of them. It exists on the premises of the cloud
provider
Hybrid cloud: The cloud infrastructure is a composition of two or more distinct cloud
infrastructures (private, community, or public) that remain unique entities but are
bound together by standardized or proprietary technology that enables data and
application portability
The three kinds of services with which the cloud-based computing resources are
available to end customers are as follows:
Cloud SaaS
The capability provided to the consumer is to use the provider’s applications running on
a cloud infrastructure, including network, servers, operating systems, storage, and even
individual application capabilities, with the possible exception of limited user-specific
application configuration settings.
12
Cloud PaaS
Consumers will not manage or control the underlying cloud infrastructure but have
control over the deployed applications and can configure the application storage
environment.
Cloud IaaS
The consumer does not manage or control the underlying cloud infrastructure but has
control over the operating systems, storage, and deployed applications and possibly limited
control of select networking components
3. Cloud Ecosystem
4. Cloud architecture
On premise resources
Cloud resources
Middleware
The entire cloud architecture aims to provide users with high bandwidth, allowing users
to access data and applications uninterrupted, fast network on demand capable of moving
quickly and efficiently between servers or even between clouds and most importantly
network security.
14
Security will be the top concern of businesses when choosing cloud service providers.
Because the cloud may contain important documents and sensibilities of businesses.
Supplier must provide strong security. Ensure vendors use firewalls, backup storage,
antivirus and encryption software, as well as custom rights and security settings. Make sure
the supplier has an administrator control panel accessible to easily contact the supplier's
technical support.
Easy to administer
Ensure that cloud storage providers provide an intuitive service that is easy to learn,
understand, and implement. If a secure, powerful platform is not easy to use, it will
consume time, money and effort to use, it will take away many advantages of cloud-based
platforms.
Cloud storage providers must provide appropriate data backup in case of emergencies,
corruption and other forms of data loss such as espionage or hackers. Choose a cloud
storage service provider with an extended backup system. Data storage and ease of access
are important components of cloud storage systems. Without effective storage, processing,
retrieval, and access to data, cloud storage is not a viable option.
Ability of extension
An expandable cloud storage platform will ensure that the business has the exact system
capabilities it needs every time. Choose a cloud storage provider that provides storage
flexibility, functionality, and system expansion. A good cloud storage service provider will
allow customers to expand or shrink services as needed, resulting in an efficient and
convenient expansion process.
Interoperability
Multitenancy
Reliability
The most important concern businesses face when choosing a cloud storage provider is
reliability. The system must consistently be capable, functional, and operational. The most
advanced, intuitive cloud storage program will basically be useless if not consistently usable
and accessible.
Portability
It is expected that a cloud service supports the portability of its features over various
underlying resources and that CSPs should be able to accommodate cloud workload
portability (e.g., VM portability) with limited service disruption.
6. Cloud Application
Cloud Application Designs: Cloud applications are usually designed in one of three ways:
A local device running the browser and application looks like a classic web solution
using HTML sent by the cloud server to the local device. A famous example of such an
application is DropBox.
The local device runs the browser, but when it starts the application, it downloads a
browser-based application, such as javascript, that runs locally for the device. The local
application then processes some processing and makes API calls to the cloud servers
for additional processing and data. An example of this is Google Docs.
The local device running the native application handles some processing, and the
native application uses the API to send and receive data to the application on the cloud
server. An example of this is when a smartphone app loaded into your phone runs most
of the program logic.
16
Over the past decade, the adoption of cloud computing has seen explosive growth - at
both the consumer and enterprise levels. The legacy software vendors such as Microsoft,
Oracle and Adobe have put a lot of effort and coordination to encourage users to provide
their on-site software to upgrade to cloud equivalent.
At the same time, we have seen a lot of cloud service providers - like Zendesk, Workday
and ServiceNow - appear with Software as Service (SaaS) services available only in the cloud.
it is not just Software as a Service that has appeared, but also the Platform is Service (PaaS),
Infrastructure is Service (IaaS), Backup as a Service (BaaS) and Disaster Recovery as a
Service (DRaaS). Nearly everything as a Service (or XaaS, as it is sold by companies like
Google and Microsoft that provide such comprehensive resources) is now available.
Over the years, cloud computing has grown from becoming something that service
providers recommend to companies they should apply, now it is the lifeblood that runs
through most Modern enterprise. As a result, organizations have become increasingly
familiar with the cloud payment model and now see IT purchases as a daily expense,
instead of one-off investments that will trapped them in the future.
In fact, the numbers have shown somewhat about the importance of cloud computing.
451 Research has found that 90% of organizations will use some form of cloud computing
service in the next two years, with 60% saying that most of their IT will have no premise.
Moreover, 49% of organizations have adopted the first cloud-based approach to deploy
new applications. The 451 study also predicts the cloud market will reach $ 53.3 billion by
2021 - up from $ 28.1 billion in 2017.
In recent years, cloud computing has revolutionized the computer industry. Accordingly,
the way of using resources, operating structure and especially the storage and distribution
of information changed completely. The popularity of cloud computing is increasing at a
dizzying pace, radically changing the way businesses do business. In a recent survey of 1800
IT professionals, the results showed that 52% of the demand for cloud computing when
setting up new applications and services.
Cost savings
17
With cloud computing, businesses can reduce or completely cut down on the initial
investment because there is no need for on-site data centers (no server installation,
hardware, software, equipment depreciation, etc.). In addition, the power used in server
operation and cooling has decreased, contributing to increased environmental friendliness.
Data can easily be stored, downloaded, restored, or processed with just a few clicks.
Users can access their accounts on the go, 24/7, via any device, anywhere in the world as
long as you're still connected to the internet.
Adaptability
Besides endless transformations, cloud computing can adapt to any change. For example,
businesses may choose to increase the number of website users support from 2,000 to
8,000 people a day during the promotion.
The application of cloud computing is extremely rich, often classified by features and
belongs to one of the following three types of services:
With cloud computing, files are centrally and consistently stored, accessed anywhere,
creating a virtual space where people directly discuss, share a file and get feedback. instant.
This makes productivity significantly improved, minimizes trouble, increases customer
satisfaction, and more.
Data security
Service providers must always ensure that the security system is updated continuously
and at the same time with all new features through rigorous testing. All operations on the
cloud will be regularly monitored and audited by third parties to ensure that safety
standards are met.
18
V. Proposed solution
Scenario
ATN is a Vietnamese company which is selling toys to teenagers in many provinces all
over Vietnam. The company has the revenue over 500.000 dollars/year. Currently each
shop has its own database to store transactions for that shop only. Each shop has to send
the sale data to the board director monthly and the board director need lots of time to
summarize the data collected from all the shops. Besides the board can’t see the stock
information update in real time
Solution
In this case, to reduce the load, minimize the time spent on the store and the director's
work, we designed an alternative system, in which: now the entire database will move to
the cloud and only The director has complete control over it. Each store must access an
application designed to provide daily transactions to the cloud database with a unique ID.
At the end of the day, the director has direct access to the cloud system to retrieve all the
data from the stores according to each individual index to summarize. In addition, directors
can also monitor and update information storage anytime, anywhere.
Previously, each store had to send sales data to the board director monthly and the
board director needed a lot of time to summarize the data. This process was repeated daily
and if If there is a problem in the data, the only way to fix it is to go back to the missing
place of repair and recovery. This is very time consuming for collecting data and
summarizing data.
But now with the arrival of cloud computing, work has been minimized. All data will be
gathered into a cloud database under the control of the director. All stores have access to
insert their own sales and sales reports and update / delete them. Each action will be saved
in real time. Therefore, stores do not need to gather data and management will not need to
waste time organizing the data.
20
1. Architecture diagram
With Figure 8, stores and managers can access the web application. They can use
features to process the data they have updated to the Cloud, such as Insert / Update /
Delete / Edit / View can handle data on the cloud when the director and store need to
fix the report.
ATN component to build the cloud: The user interface (user interface) will be
implemented in PHP, the programming language, the back-end (database) will be
implemented in the Postgres Query language. Use XAMPP to build the application's IP,
GIT to upload data, and Heroku to store data.
22
1. Deployment model
Server infrastructures belong to the service providers that manage them and manage
group resources, so the needs of companies who buy and maintain their own hardware
will be eliminated. Providers provide resources as free or pay-per-use services through
an Internet connection.
Target: Public cloud is not limited to users, it can be anyone from individual to
enterprise.
Advantages
Low cost
No need maintenance
Disadvantages
Security is an issue.
Privacy and organizational autonomy are not possible.
Compromised reliability
The lack of individual approach
Many service providers - including Amazon, IBM, Cisco, Dell and Red Hat - also
build private solutions
Advantages:
The cloud is small in size and is easy to maintain.
It provides a high level of security and privacy to the user.
It is controlled by the organization.
Storage and network components are customizable
High control of company information
Disadvantages
High cost
Scalability is limited
A community cloud deployment model is like a privacy model to a great extent; The
only difference is the user set. While a particular category implies that only one company
owns the server, in the case of a community, some organizations with similar
backgrounds share the infrastructure and related resources.
Companies can decide on community solutions that Google, Red Hat, IBM, Microsoft
or others provide.
Advantages
Disadvantages
Hybrid cloud is a cloud computing model that combines one or more public cloud
environments and private cloud through secure connection such as VPN connection or
leased line, allowing data and application sharing. between different cloud environments.
It not only protects and controls strategically important assets, but also does so in the
most cost-effective and case-specific manner. In addition, this method facilitates data
and application portability.
The hybrid cloud deployment model is only meaningful if companies can split their
data into important and insensitive tasks.
Advantages
Reasonable price
Disadvantages
2. Compare models
Through model comparisons we recommend choosing the Private cloud model for the
scenario. This is because monthly stores will transfer large amounts of data including
customer information, sales orders, income, etc. Therefore a high security and privacy
system is needed to compete with peers.
Although the cost of Private cloud is very high, this is necessary to increase the influence
and competitiveness in the market.
26
3. Service Models
Definition:
SaaS distribution:
Because SaaS's distribution model is web-based, SaaS eliminates the need for IT staff
to download and install applications on each individual computer. With SaaS, vendors
manage all potential technical issues, such as data, middleware, servers, and storage,
allowing businesses to manage and support online.
Features:
Advantages:
Help businesses focus more on business rather than handling issues, system
administration.
Suitable for:
If you use applications that do not require frequent use, such as tax software.
Example:
Definition:
PaaS provides a framework for developers that they can build and use to create
applications that can be adapted and further developed. They do not need to care about
the network, storage, server, and operating systems below. All servers, storage and
networking are managed by the enterprise or a third-party provider, while developers
can maintain the management of applications.
PaaS distribution:
PaaS's distribution model is similar to SaaS, except that instead of distributing software
over the internet, PaaS provides a platform for creating applications. The platform is
distributed over the web, and provides developers with free deployment, able to focus on
building software while not having to worry about or worry about operating systems,
updates, or updates. software updates, or infrastructure.
Features:
Advantages:
Make developing and deploying applications simpler and more cost effective.
Easy scalability
High availability
Gives developers the ability to create custom applications without the need for
headaches in maintaining software.
The environment supports many different languages: Node.js, Java, Ruby, C #, Go,
Python, or PHP, although it is a cloud solution provider.
Suitable for:
Example:
Google App Engine, Elastic Beanstalk – Amazon, Cloud Services – Azure, Openshift,ect.
Definition:
PaaS distribution:
Features:
Advantages:
Suitable for:
A startup or a small company, IaaS is an option so you don't have to spend time or
money trying to create hardware.
IaaS is also beneficial for large organizations who want full control over their
applications and infrastructure.
Example:
DigitalOcean, Linode, Compute Engine - Google, Amazon EC2, Azure Virtual Machine
By comparing features between service models. In this scenario, we will choose the PaaS
service model:
- Use the platform for the company provided by Amazon, Google, ect (Heroku is also part
of that). ATN is provided with a very powerful platform that can deploy one or more
applications. In addition, PaaS helps reduce capital costs, enabling an IT environment to
focus more on strategy than on hardware maintenance. And ATN is a new and growing
company so reducing costs at all stages is possible, which is the company's top priority.
Faster time to market: With PaaS, all ATN has to do is write code and test the
application, leaving the rest for the PaaS provider to take care of.
An end-to-end environment: PaaS allows ATN developers to build, test, debug, store
and update their applications on the same environment.
Copyright issues: PaaS providers will take care of the entire licensing section for the
operating system, development tools, and any other components on their platform.
30
In the scenario we chose the PHP language as the dominant programming language
because PHP is an open source scripting language used to develop server writing
applications. PHP files contain text, HTML, CSS, Javascript and PHP scripts. PHP is
increasingly used widely and popularly.
PHP is an open source programming language, you can develop all versions of PHP but
you do not have to pay any cost.
PHP is extendible.
PHP easily integrates with some popular databases such as MySQL, PostgreSQL, Oracle,
Sybase, Informix and Microsoft SQL Server.
In the scenario we use XAMPP as a web server. XAMPP software is a fairly common
software application and is often used by developers to build and develop PHP based
website projects. XAMPP is often used to create web server (web server) with built-in
Apache, PHP, MySQL, FTP Server, Mail Server and tools like phpMyAdmin.
XAMPP can be run on all operating systems: From Cross-platform, Window, MacOS and
Linux.
XAMPP has a simple configuration as well as many useful functions for users. Typical
include: Server emulator, Mail Server emulator, SSL support on Localhost.
In the scenario we use PostgreSQL as the database for the system. PostgreSQL is a
general-purpose object-relational database management system, the most advanced
open source database system available today.
PostgreSQL is a free and open source software. The source code for the software is
available under PostgreSQL license, a free and open source license. Accordingly, you will
be free to use, modify and distribute PostgreSQL in any form.
Open source
33
5.1. GIT
Git is the name of a Distributed Version Management System (DVCS) which is one of
the most popular distributed version management systems today.
DVCS means that the system makes it possible for each computer to store different
versions of a clone from a repository, each change to the source code on the computer
will be able to commit (commit) and then put on the server where the main repository is
located.
Benefit:
Members can still work offline, they can still commit and update on their local or even
together without going through the server.
5.2. Heroku
Heloku is a cloud platform that allows individuals and businesses to build build and
develop applications. Using Heroku is the fastest way to move from idea to URL,
bypassing all the confusing infrastructure.
34
IX. References
YULIYA SHAPTUNOVA(August 15, 2017).4 Most Popular Cloud Deployment Models You
Need to Know.
Quang Vũ (May 23, 2019).Phân biệt SaaS, PaaS và IaaS – cách lựa chọn dịch vụ hợp lý.