Professional Documents
Culture Documents
ASM1 - CloudComputing
ASM1 - CloudComputing
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
❒ Summative Feedback: ❒ Resubmission Feedback:
1. Cloud Computing
Cloud computing is a technology that puts your entire computing infrastructure in both hardware and software
applications online. It uses the internet, remote central servers to maintain data & applications. Gmail, Yahoo mail,
Facebook, Hotmail, Orkut, etc are all the most basic and widely used examples of cloud computing. One does not
need his own PC or laptop to check some stored mail/data/photos in the mailbox but any computer with an internet
connection since the data is stored with the mail service provider on a remote cloud. The technology, in essence, is
a geographical shift in the location of our data from personal computers to a centralized server or ‘cloud’. Typically,
cloud services charge its customers on a usage basis. Hence it is also called Software as a Service (SaaS). It aims to
provide infrastructure and resources online in order to serve its clients; Dynamism, Abstraction and Resource
Sharing.
The term “cloud” was actually derived from telephony. The telecommunication companies offered Virtual Private
Network with good quality at affordable prices. The symbol of the cloud represented the demarcation point which
was the sole responsibility of the provider. Cloud computing manages servers and network infrastructure
management.
2. Cloud Solution
It has essentially evolved from various computing technologies like grid computing, utility computing, parallel
computing, and virtualization. The most recent development of cloud computing has evolved from the Web2.0
technology which caters to web applications that facilitate participatory information sharing, interoperability &
user-centered design, etc. Examples of Web 2.0 include wikis, blogs, social networking & video sharing.
• 1960’s: One of the renowned names in Computer Science, John McCarthy, enabled enterprises to use
expensive mainframe and introduced the whole concept of time-sharing. This turned out to be a huge
contribution to the pioneering of Cloud computing concept and establishment of Internet.
• 1969: With the vision to interconnect the global space, J.C.R. Licklider introduced the concepts of “Galactic
Network” and “Intergalactic Computer Network” and also developed Advanced Research Projects Agency
Network- ARPANET.
• 1970: By this era, it was possible to run multiple Operating Systems in isolated environment.
• 1997: Prof. Ramnath Chellappa introduced the concept of “Cloud Computing” in Dallas.
• 1999: Salesforce.com started the whole concept of enterprise applications through the medium of simple
websites. Along with that, the services firm also covered the way to help experts deliver applications via the
Internet.
• 2003: The Virtual Machine Monitor (VMM), that allows running of multiple virtual guest operating systems
on single device, paved way ahead for other huge inventions.
• 2006: Amazon also started expanding in cloud services. From EC2 to Simple Storage Service S3, they
introduced pay-as-you-go model, which has become a standard practice even today.
• 2013: With IaaS, (Infrastructure-as-a-Service), the Worldwide Public Cloud Services Market was totaled at
£78bn, which turned out to be the fastest growing market services of that year.
4. The evolution of cloud computing can be bifurcated into three basic phases:
• The Idea Phase: This phase incepted in the early 1960s with the emergence of utility and grid computing
and lasted till pre-internet bubble era. Joseph Carl Robnett Licklider was the founder of cloud computing.
• The Pre-cloud Phase: The pre-cloud phase originated in 1999 and extended to 2006. In this phase the
internet as the mechanism to provide Application as Service.
• The Cloud Phase: The much talked about real cloud phase started in the year 2007 when the classification
of IaaS, PaaS, and SaaS development got formalized. The history of cloud computing has witnessed some
very interesting breakthroughs launched by some of the leading computer/web organizations of the world.
5. Client – Server
A client-server system is a software architecture that consists of both a client and a server, with the client sending
requests and the server responding to them. Because it entails the exchange of data from both the client and the
server, each of which performs different activities, client-server communication enables inter-process
communication.
5.1. Client
The client, often known as a workstation, is where requests are sent to the server. That is, at the workstation, the
Client will organize communication with the user, the Server, and the external environment. It also accepts the
user's request and creates the query string that will be sent to the server. The Client will organize and show the
results received from the Server.
5.2. Server
A server is a computer or system that, across a network, distributes resources, data, services, or programs to other
computers known as clients. In theory, machines that share resources with clients are referred to as servers. Web
servers, mail servers, and virtual servers are just a few examples of server types.
Advantages Disadvantages
No need for specialist staff such as network Files and resources are not centrally organized into a
technicians because each user sets their own specific 'shared area'. They are stored on individual
permissions as to which files, they are willing to computers and might be difficult to locate if the
share. computer's owner doesn't have a logical filing system.
Advantages Disadvantages
Much easier to set up than a client-server network - Ensuring that viruses are not introduced to the network
does not need specialist knowledge is the responsibility of each individual user
Bitcoin: Bitcoin also uses the peer-to-peer payment network, and in which cryptographic protocol is used for
operating that helps to users for sending and receiving bitcoins.
7. Varieties of Cloud Computing
Cloud Computing is classified under various heads. On the basis of the type, usage & location, it is classified under
the following head:
• Server safety
• High-speed reliable internet connection
• Continuous availability of power
• Physical Security
The environment may be a rented data-center or privately owned by the provider. The data-center has everything
that ensures high availability of IT resources as listed above.
1. Services offered by a cloud provider
Once the infrastructure (hardware and network) is in place, the provider will most likely be stumped as to what to
do with them. This is where new items are created to fulfill the needs of customers who are willing to subscribe.
There are services such as Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS),
and others, as you may have heard.
1.1. Infrastructure as a service (IaaS)
Subscribing to the use of physical or virtual computers as a service entails paying according to the pricing plans
chosen by the provider. It can be done monthly, annually, or in any other way.
Many firms, for example, employ IaaS to cope with workload spikes during peak seasons (like holidays).
3.1. Scalability
With Cloud hosting, it is easy to grow and shrink the number and size of servers based on the need. This is done by
either increasing or decreasing the resources in the cloud. This ability to alter plans due to fluctuation in business
size and needs is a superb benefit of cloud computing especially when experiencing a sudden growth in demand.
3.2. Instant
Whatever you want is instantly available in the cloud.
Off-site hardware reduces internal power expenses and saves space in addition to the purchase price. Large data
centers can consume a lot of office space and generate a lot of heat. Moving to cloud applications or storage can
help you save space while also lowering your energy costs.
3.4. Reliability
Instead of being given on a single instance of a physical server, hosting is delivered on a virtual partition that takes
its resources, such as disk space, from a large network of underlying physical servers. If one server goes down, the
virtual servers will continue to draw resources from the remaining network of servers, so there will be no impact on
availability.
Users can utilize infrastructure as a service (IaaS) to access cloud-based servers, storage, and network resources: a
whole infrastructure available via cloud virtualization technologies. It means that consumers don't have to build or
buy their own infrastructure; instead, they can use the virtualized version. Most people have heard of Software as
a Service (SaaS), which is software that is abstracted from hardware and accessed via the cloud.
With all of these distinct sorts of virtualizations, you'll need software or a program that can manage and monitor
your virtual machines. I recommend SolarWinds Virtualization Manager, which integrates with your hypervisors and
virtual machines to provide better visibility across your whole virtual domain. SolarWinds Virtualization Manager is
designed to give all of these capabilities and more.
The size and volume of data that enterprises must work with is expanding dramatically as technologies such as the
Internet of Things (IoT), artificial intelligence (AI), and 3-D imaging advance. The capacity to analyse data in real time
is critical for a variety of tasks, including live streaming a sporting event, following a growing storm, testing new
goods, and evaluating stock movements.
• Compute
• Network
• Storage
To build a high-performance computing architecture, compute servers are networked together into a cluster.
Software programs and algorithms are run simultaneously on the servers in the cluster. The cluster is networked to
the data storage to capture the output. Together, these components operate seamlessly to complete a diverse set
of tasks.
1. Overview 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.
2. Overview Solution
The data from all branches is very non-recoverable, according to the scenario and my investigation for the major
revenue corporation ATN. Currently, each store has its own database that holds part of its own data, and the store
must send someone to the board to provide data to the board on a regular basis. The board must then spend a
significant amount of time screening and consolidating data for each branch. It takes a long time, and the feature
flexibility is limited. As a result of this issue, ATN should use cloud computing services for the following reasons:
2.1. Cost
Cloud computing itself is affordable, but tuning the platform according to the company’s needs can be expensive.
Furthermore, the expense of transferring the data to public clouds can prove to be a problem for short-lived and
small-scale projects.
ATN can save some money on system maintenance, management, and acquisitions. But they also have to invest in
additional bandwidth, and the absence of routine control in an infinitely scalable computing platform can increase
costs.
2.4. Security
In cloud security, diligent password supervision is critical. The more people who have access to your cloud account
through ATN, the less secure it is. Anyone who knows your passwords will have access to the information you save
there.
Multi-factor authentication should be used by ATN, and passwords should be protected and changed on a regular
basis, especially when employees leave. Only individuals with a need for passwords and usernames should have
access to them.
Here are some benefits from the cloud when disaster strikes that ATN has considered:
• Faster turnaround time. A good cloud computing system regularly backs up company computer programs
and data. When disaster strikes, it can take just a few minutes to clone or move a backed-up system so your
company can get back up and running immediately.
• Minimal downtime costs. Because cloud computing works quickly, the company saves on system repair
costs, as well as financial losses incurred due to significant downtime.
• Less complicated. With traditional systems, replacement software and programs must be combined with
leveraged programs. In addition, if irreversible, new hardware and software should be tested and reviewed
to ensure all components are functioning properly.
3. Deployment Model
There are many types of Cloud Computing being published by service providers, they differ in their forms, and the
effects they bring. Besides, for the needs of ATN I have given some requirements and suggestions about using cloud
computing:
First, ATN is a mid-sized company with over $500,000 USD/year in revenue. To optimize profits, the company should
deploy a small and medium-sized model that is suitable for consumption needs as well as at low cost. ATN can also
run its web applications without incurring any fixed costs for servers, software, hardware, setup or maintenance.
Besides, cloud computing will maintain 24/7 availability and storage scalability without having to worry about any
other infrastructure costs.
Second, due to the convenience of cloud computing, connecting and setting up the system will only take a few
hours. ATN's IT professionals will easily configure and manage the system setup remotely and easily manage the
databases in their branches and stores with just the internet.
Finally, the Cloud Computing service provider will be in charge of providing the hardware, software and network of
the cloud, ATN will not have to worry about infrastructure and frequent system maintenance issues, nor such as
reducing a lot of risks and costs for the company.
In this project with ATN, I will use a cloud computing system with Public Cloud. This system will allow me to easily
set up and control at any time, any place, and other cloud computing professionals can also easily access and handle
them. In this article, I will use the Amazon Web Service - EC2 system to perform the data storage process.
4. The service models for an adequate model
In order for the product to be optimally user-friendly and cost-effective for my ATN business. I will choose to
combine 2 PaaS and IaaS platforms to implement this website publishing process.
5. Technical Specs
Here are 8 reasons why we suggest you should consider Laravel for your next project:
5.1.1. It’s quick and simple
Being the number one PHP framework, means that Laravel is already a framework with which most web developers
are familiar with; not to mention the range of built-in templates which makes development simpler and easier for
developers. This means an expert Laravel developer could even build a 5- or 6-page website in a day or two. A fast
development time means lower costs and quicker results for the business.
Advantages of MySQL:
Heroku is a cloud service provider and software development platform which facilitates fast and effective building,
deploying and scaling of web applications. It has 140 inbuilt add-ons, ranging from alerts, analytic tools security
services which are used for purpose like monitoring, caching and mailing or networking add-ons.
You should opt for AWS when you have DevOps teams who can configure and manage the infrastructure
You have very little time to spend on the deployment of a new version of your web or mobile app.
AWS offers easy deployment process for an app
AWS web service is an ideal option when your project needs high computing power
Helps you to improve the productivity of the application development team
A range of automated functionalities including the configuration, scaling, setup, and others
Use AWS you have full control over the resources.
AWS allows organizations to use the already familiar programming models, operating systems, databases,
and architectures.
It is a cost-effective service that allows you to pay only for what you use, without any up-front or long-
term commitments.
You will not require to spend money on running and maintaining data centers
5.5 GitHub
#: https://github.com/Tunniez/ASM-CloudComputing/tree/master
GitHub, can be divided into the Git, and the Hub. The service includes access controls as well as a number of
collaboration features like tools for basic task management and for all projects you handle. GitHub hosts your
source code projects in a variety of different programming languages and keeps track of the various changes made
to every iteration.
Documentation
By using GitHub, you make it easier to get excellent documentation. Their help section and guides have articles for
nearly any topic related to git that you can think of.
Are you a developer who wishes to attract recruiters? GitHub is the best tool you can rely on for this. Today, when
searching for new recruits for their project, most companies look into the GitHub profiles. If your profile is
available, you will have a higher chance of being recruited even if you are not from a great university or college.
Markdown
Markdown allows you to use a simple text editor to write formatted documents. GitHub has revolutionized writing
by channeling everything through Markdown: the issue tracker, user comments, everything. With so many other
programming languages to learn for setting up projects, it’s really a big benefit to have your content inputted in a
format without having to learn yet another system.
GitHub is a Repository
This was already mentioned before, but it’s important to note, GitHub is a repository. Moreover, GitHub is one of
the largest coding communities around right now, so it’s wide exposure for your project.
When multiple people collaborate on a project, it’s hard to keep track revisions—who changed what, when, and
where those files are stored. GitHub takes care of this problem by keeping track of all the changes that have been
pushed to the repository. Much like using Microsoft Word or Google Drive, you can have a version history of your
code so that previous versions are not lost with every iteration.
Integration Options
GitHub can integrate with common platforms such as Amazon and Google Cloud, services such as Code Climate to
track your feedback, and can highlight syntax in over 200 different programming languages.
6. Technical Solution for ATN
With the types of service models presented in section II.1 – I have given the advantages and disadvantages of each
type of model. With ATN, according to the requirements and resources to implement the project, I have some
suggestions to help ATN have the most optimal usage model.
For source code administration: I will use the PaaS platform to do system Deploy work through a GitHub. More
specifically the platform I put to use this time is “Heroku”.
For database management: I will use the IaaS platform to do the work of connecting the MySQL database through
Amazon EC2 and connecting to Heroku. <<Open Port 3306>>
6.1. The deciding factor to choose a cloud platform
Our company ATN decided to use the Heroku public cloud instead of AWS because of the following factors:
AWS and Heroku are not interchangeable terms. AWS is an IaaS company that manages huge shared data centers
in the cloud. IaaS is a service provided by companies such as Amazon Web Services, Microsoft Azure, and Google
that allows developers to host their applications on these data centers rather than on their own servers. However,
IaaS providers appear to be more concerned with data center operations than with client experience due to the
nature of their company. As a result, in order to deal with AWS directly, the company's technological employees
must have AWS experience. Heroku, on the other hand, is a PaaS that runs on AWS. This platform was created with
the intention of making app development easier.
To deploy a project on Heroku, for example, you simply need to know a few Heroku CLI and Dashboard instructions.
The Heroku documentation contains these commands. Heroku, on the other hand, is less expensive than AWS and
offers a variety of services that aren't quite as good as AWS's, but are adequate for ATN's needs.
MySQL has a reputation for being a lightning-fast database for big workloads. Posture calls itself "the world's most
advanced open-source relational database." Extensibility, standards compliance, scalability, and data integrity are
all built into Postgres, often at the sacrifice of speed. As a result, Postgres may be a poor choice for simple, read-
heavy operations when compared to MySQL.
As a result, MySQL is still extremely fast when it comes to reading data. For enterprise applications such as corporate
ATN, this capability is crucial. MySQL, on the other hand, has been optimized to shorten the distance while writing
large amounts of data. MySQL is also an Oracle-sponsored moderated database with which many programmers and
data engineers are familiar. As a result, all technicians will be able to deploy it correctly now.
V. Conclusion
Finally, with cloud computing, with constantly evolving and renewing technologies. Many developers consider
prices, equipment, installation, the implementation process, and maintenance as a result of continuous upgrades.
There are numerous drawbacks to not using cloud computing. Cloud computing is slowly but steadily increasing
throughout the world, and it is assisting organizations in general, and ATN in particular, in reducing risks and
unnecessary costs during deployment. This will make it easier for specialists to handle correct data, decrease risks
to the bare minimum, and, of course, catastrophic damage will have explicit and unambiguous remediation plans in
place. Cloud computing, on the other hand, will change the future once global standards and laws are in place.
VI. References
Geeksforgeeks, 2018. Cloud Computing. [Online]
Available at: https://www.geeksforgeeks.org/cloud-computing/
[Accessed 10 April 2022].
Stephen Watts, Muhammad Raza, 2019. SaaS vs PaaS vs IaaS: What’s The Difference & How To Choose. [Online]
Available at: https://www.bmc.com/blogs/saas-vs-paas-vs-iaas-whats-the-difference-and-how-to-choose/
[Accessed 10 April 2022].
Uschi, 2022. History & Evolution of Cloud Computing: What to Expect in 2025. [Online]
Available at: https://www.seasiainfotech.com/blog/history-and-evolution-cloud-computing/
[Accessed 10 April 2022].