Anurag CC LAB File Complete
Anurag CC LAB File Complete
Anurag CC LAB File Complete
The cloud environment provides an easily accessible online portal that makes handy for the user to
manage the compute, storage, network, and application resources. Some cloud service providers are
in the following figure.
Scalability: We can increase or decrease the requirement of resources according to the business
requirements.
Cloud computing 1
Department of Science and Computing 2119182
Productivity: While using cloud computing, we put less operational effort. We do not need to
apply patching, as well as no need to maintain hardware and software. So, in this way, the IT team
can be more productive and focus on achieving business goals.
Reliability: Backup and recovery of data are less expensive and very fast for business continuity.
Security: Many cloud vendors offer a broad set of policies, technologies, and controls that
strengthen our data security.
Private Cloud: The cloud computing resources that are exclusively used inside a single business or
organization are termed as a private cloud. A private cloud may physically be located on the company’s
on-site datacentre or hosted by a third-party service provider.
Hybrid Cloud: It is the combination of public and private clouds, which is bounded together by
technology that allows data applications to be shared between them. Hybrid cloud provides
flexibility and more deployment options to the business.
1.Infrastructure as a Service (IaaS): In IaaS, we can rent IT infrastructures like servers and
virtual machines (VMs), storage, networks, operating systems from a cloud service vendor. We can
create VM running Windows or Linux and install anything we want on it. Using IaaS, we don’t
need to care about the hardware or virtualization software, but other than that, we do have to
manage everything else. Using IaaS, we get maximum flexibility, but still, we need to put more
effort into maintenance.
Cloud computing 2
Department of Science and Computing 2119182
2.Platform as a Service (PaaS): This service provides an on-demand environment for developing,
testing, delivering, and managing software applications. The developer is responsible for the
application, and the PaaS vendor provides the ability to deploy and run it. Using PaaS, the
flexibility gets reduce, but the management of the environment is taken care of by the cloud
vendors.
3.Software as a Service (SaaS): It provides a centrally hosted and managed software services to
the end-users. It delivers software over the internet, on-demand, and typically on a subscription
basis. E.g., Microsoft One Drive, Dropbox, WordPress, Office 365, and Amazon Kindle. SaaS is
used to minimize the operational cost to the maximum extent.
Cloud computing 3
Department of Science and Computing 2119182
Business continuity
In the event of disaster or unforeseen circumstances, do you have an effective backup plan? If not,
relying on cloud computing services can benefit your organization. Cloud computing uses infinite
data storage space and systems that can be activated remotely if necessary to ensure business
continuity.
1. Data Security and Privacy: Data security is a major concern when switching to cloud
computing. User or organizational data stored in the cloud is critical and private. Even if the cloud
service provider assures data integrity, it is your responsibility to carry out user authentication and
authorization, identity management, data encryption, and access control. Security issues on the
cloud include identity theft, data breaches, malware infections, and a lot more which eventually
decrease the trust amongst the users of your applications.
Cloud computing 4
Department of Science and Computing 2119182
2. Cost Management
Even as almost all cloud service providers have a “Pay As You Go” model, which reduces the
overall cost of the resources being used, there are times when there are huge costs incurred to the
enterprise using cloud computing. When there is under optimization of the resources, let’s say that
the servers are not being used to their full potential, add up to the hidden costs.
7. Lack of Knowledge and Expertise: Due to the complex nature and the high demand
for research working with the cloud often ends up being a highly tedious task. It requires immense
knowledge and wide expertise on the subject. Although there are a lot of professionals in the field
they need to constantly update themselves. Cloud computing is a highly paid job due to the
extensive gap between demand and supply.
Cloud computing 5
Department of Science and Computing 2119182
Practical No: -1
Aim: - Enlist various companies in cloud business and the corresponding services provided by
them and tag them under SaaS, PaaS & IaaS.
SaaS: -
Software as a service (SaaS) is a software distribution model in which a cloud provider hosts
applications and makes them available to end users over the internet. In this model, an independent
software vendor (ISV) may contract a third-party cloud provider to host the application.
A range of IT professionals, business users and personal users use SaaS applications. Products
range from personal entertainment, such as Netflix, to advanced IT tools.
Cloud computing 6
Department of Science and Computing 2119182
PaaS: -
PaaS (platform-as-a-service) is a form of cloud computing that enables software developers to
build, run, and manage software applications easily, without worrying about underlying
infrastructure.
The simplification inherent in PaaS enables faster and easier software development, reducing the
scope of a developer’s work by hiding the underlying compute, storage, database, operating
system, and network resources required to run the application.
Google App Engine (GAE) App Identity, URL Fetch, Cloud storage
client library, Logservice
Cloud computing 7
Department of Science and Computing 2119182
Cloud computing 8
Department of Science and Computing 2119182
Cloud computing 9
Department of Science and Computing 2119182
Practical-
2 Aim: Explain Warehouse in Cloud Computing
What is a Data Warehouse?
In the context of cloud computing, a "warehouse" typically refers to a "data warehouse." A data
warehouse is a specialized type of database that is used for the storage, management, and analysis
of large volumes of structured and semi-structured data. It's designed to support business
intelligence (BI) activities, reporting, and data
analysis.
A data warehouse, also called an enterprise data warehouse (EDW), is an enterprise data platform
used for the analysis and reporting of structured and semi-structured data from multiple data
sources, such as point-of-sale transactions, marketing automation, customer relationship
management, and more.
1. Centralized Storage: Data warehouses consolidate data from various sources into a
single, centralized repository. This makes it easier to access and analyze data for reporting
and decision-making.
2. Structured Data : Data in a data warehouse is typically structured and organized in a way
that facilitates querying and analysis. It is often transformed and cleaned to ensure data
quality.
3. Scalability : Cloud-based data warehouses are designed to scale easily to accommodate
large datasets and varying workloads. They can handle the storage and processing needs of
organizations of all sizes.
4. Integration: Data warehouses can integrate data from various sources, such as
transactional databases, external data feeds, and other cloud-based services.
5. Analytical Capabilities : Data warehouses often include tools for performing complex
analytical queries and generating reports. They are optimized for read-heavy workloads.
1.Business Intelligence (BI) and Analytics: Data warehouses are frequently used for storing and
managing large volumes of data generated by businesses. They provide a centralized repository for
historical and real-time data, which can be analyzed to gain insights and make data-driven
decisions. BI tools and analytics platforms can connect to these warehouses to generate reports,
dashboards, and visualizations.
2. E-commerce: Online retailers use data warehouses to store information about customer
transactions, order history, website activity, and more. Analyzing this data can help improve
customer experiences, optimize pricing, and manage inventory effectively.
Cloud computing 10
Department of Science and Computing 2119182
3. Healthcare: Healthcare organizations use data warehouses to store patient records, medical
history, and clinical data. These warehouses are crucial for healthcare analytics, predictive
modeling, and research. They can help in identifying patterns, trends, and potential healthcare
outcomes.
4.Financial Services: Banks and financial institutions use data warehouses to manage and analyze
transaction data, customer information, and market data. This is essential for risk management,
fraud detection, and investment analysis.
5.Manufacturing: Manufacturers use data warehouses to store data from sensors and IoT devices
on the factory floor. This data can be analyzed to optimize production processes, monitor
equipment health, and reduce downtime.
6.Retail: Retailers leverage data warehouses to manage inventory, track sales, and analyze
customer behavior. This information is vital for demand forecasting, inventory management, and
personalization.
7. Supply Chain Management: Data warehouses assist in supply chain management by storing
and processing information related to the movement of goods, supplier performance, and demand
forecasting.
8.Media and Entertainment: Media companies use data warehouses to track user engagement and
content consumption. This data helps in content recommendations, advertising targeting, and
content production decisions.
Cloud computing 11
Department of Science and Computing 2119182
8) Teradata Vantage: Teradata Vantage is a Cloud Analytics platform that combines Analytics,
Data Lakes, Data Warehouses, and new data sources, among other platforms.
Example of Warehouse:
Microsoft Azure is a cloud computing service from Microsoft. Azure offers a range of software
as a service (SaaS), platform as a service (PaaS) and infrastructure as a service ( IaaS) options for
deploying applications and services on Microsoft-managed data center infrastructure. Azure’s 50
operating regions are more than any other cloud provider.
Creating a warehouse: -
Some steps that are needed for building any data warehouse are as following below:
1. To extract the data (transnational) from different data sources: For building a data
warehouse, a data is extracted from various data sources and that data is stored in central
storage area. For extraction of the data Microsoft has come up with an excellent tool. When
you purchase Microsoft SQL Server, then this tool will be available at free of cost.
2. To transform the transnational data: There are various DBMS where many of the
companies stores their data. Some of them are: MS Access, MS SQL Server, Oracle,
Sybase etc. Also, these companies save the data in spreadsheets, flat files, mail systems etc.
Relating a data from all these sources is done while building a data warehouse.
Cloud computing 12
Department of Science and Computing 2119182
3. To load the data (transformed) into the dimensional database: After building a
dimensional model, the data is loaded in the dimensional database. This process combines
the several columns together or it may split one field into the several columns. There are
two stages at which transformation of the data can be performed and they are: while loading
the data into the dimensional model or while data extraction from their origins.
4. To purchase a front-end reporting tool: There are top notch analytical tools are available
in the market. These tools are provided by the several major vendors. A cost-effective tool
and Data Analyzer is released by the Microsoft on its own.
Creates a new virtual in the system.
warehouse
Initial creation of a virtual
unless the warehouse warehouse
is created initiallymight
in take some time to provision the compute resources,
a SUSPENDED state.
Syntax
CREATE [ OR REPLACE ] WAREHOUSE [ IF NOT EXISTS ] <name>
[ [ WITH ] objectProperties ]
[ objectParams ]
Where:
objectProperties ::=
MAX_CLUSTER_COUNT = <num>
MIN_CLUSTER_COUNT = <num>
Cloud computing 13
Department of Science and Computing 2119182
RESOURCE_MONITOR = <monitor_name>
COMMENT = '<string_literal>'
QUERY_ACCELERATION_MAX_SCALE_FACTOR = <num>
Cloud computing 14
Department of Science and Computing 2119182
Practical-3
Virtualization
Virtualization is a process that allows for more efficient utilization of physical computer hardware
and is the foundation of cloud computing.
Virtualization uses software to create an abstraction layer over computer hardware that allows the
hardware elements of a single computer—processors, memory, storage and more—to be divided
into multiple virtual computers, commonly called virtual machines (VMs). Each VM runs its own
operating system (OS) and behaves like an independent computer, even though it is running on just
a portion of the actual underlying computer hardware
Para Virtualization
With paravirtualization, virtual machines can be accessed through interfaces that are similar to the
underlying hardware. This capacity minimizes overhead and optimizes system performance by
supporting the use of VMs that would otherwise be underutilized in conventional or full hardware
virtualization.
Advantages of paravirtualization
• Direct communication between the guest kernel and the hypervisor improves performance
levels.
• The thin software layer created in paravirtualization controls virtual server traffic by
allowing a single guest OS to gain access to the physical hardware device while ceasing
access for all other guest OS.
• Paravirtualization does not include device drivers because it utilizes the drivers already
present in the guest OS.
Disadvantages of paravirtualization
• Modifications of the guest OS are necessary for any interaction with the paravirtualization
interfaces to take place, thus limiting support to open source OSes, such as Linux.
• Since paravirtualization cannot perform with unmodified guest OS, its compatibility and
portability is minimal with systems like Microsoft Windows.
Cloud computing 15
Department of Science and Computing 2119182
• Significant support and maintenance issues may arise since the production environment
requires complex guest kernel modifications.
Advantages of virtualization
• Cheap: IT infrastructures find virtualization to be a more affordable implementation option
because it doesn't require the use or installation of actual hardware components. Dedicating
substantial amounts of space and money to create an on-site resource is no longer required.
• Efficient: By downloading the new versions of the software and hardware from a thirdparty
supplier, efficient virtualization also enables automatic upgrades of both.
Cloud computing 16
Department of Science and Computing 2119182
• Disaster recovery: When servers are virtualized, disaster recovery is relatively simple
thanks to fast backup restoration and current snapshots of your virtual machines.
Organizations were better able to create a low-cost replication location thanks to
virtualization.
• Deployment: Resources may be deployed much more quickly when employing
virtualization technology. It is feasible to significantly reduce the amount of time required
for setting up physical devices or creating local networks.
• Encourages digital entrepreneurship: Prior to widespread virtualization, the average
person found it nearly impossible to start a digital business.
• Saves energy: Both individuals and businesses can save energy by using virtualization. The
rate of energy consumption can be reduced because no local hardware or software
alternatives are being employed.
• Improved uptime: Virtualization technologies have increased uptime dramatically. An
uptime of 99.9999% is offered by some providers. Even low-cost carriers now offer uptime
at a rate of 99.99%.
• Consistent cost: People and corporations can have predictable expenses for their IT
requirements because third-party vendors frequently offer choices for virtualization.
Disadvantages of virtualization
• Exorbitant costs of implementation: Virtualization would result in very low costs for the
common person or business. In a virtualization environment, the suppliers, however, may
incur very significant implementation expenses
• Restraints: Virtualization is hampered by a number of issues. Virtualization cannot be used
with every server and application currently in existence.
• Problems with availability: The accessibility of a company is another important factor.
Long-term data linking is required. If not, the business would become less competitive in
the market. Because every document from and for the client is essential to the service
provider, availability difficulties might be seen as one of the drawbacks of virtualization.
• Time-intensive: In comparison to local systems, virtualization takes less time to
implement, but it ultimately costs user’s time. This is due to the fact that there are
additional procedures that need to be completed in order to attain the desired result.
• Threats to security: Information is our current currency. Having money allows you to
make money. Without it, people will forget about you. The success of a corporation
depends on information; hence it is frequently targeted.
• Problems with scalability: People can grow a business or opportunity quickly owing to
virtualization, but won't be able to grow it as large as they would like.
Cloud computing 17
Department of Science and Computing 2119182
• A Number of links must interact: If users have access to local equipment, they have
complete control over their options. With virtualization, people lose control because
numerous ties are required to cooperate in order to complete the same task.
Creating VM in windows
Before getting started with any hypervisor, there are a few things you will want to check on your
host computer. Checking these before attempting to install and run your virtual machine reduces
the chance that something will go wrong.
WARNING: We only rigorously test our new Virtual Machines on up-to-date versions of
VirtualBox. We encourage everyone to use that hypervisor if they can.
Cloud computing 18
Department of Science and Computing 2119182
Step 3: Import a Virtual Machine: The first step is to download the Virtual Machine for
your course from our Course Virtual Machines page. This will download a .ova file. The
.ova file is actually a compressed (zipped) tarball of a Virtual Machine exported from
VirtualBox
Step 4: Start the Virtual Machine:Tostart up a Virtual Machine guest in most hypervisors, you
simply click on the desired guest and click the Start button (often double-clicking the guest icon
will work as well).
IMPORTANT: Some of our larger Virtual Machines can take up to a minute to start up the Linux
operating system and show you the login screen. If the start-up is a lot slower, or if the
performance when logged into the Virtual Machine Desktop or Shell is poor, then consult the
Trouble-Shooting section below.
Step 5: Using the Virtual Machine: How you use a Virtual Machine will depend on your
course, so consult your TAs. Some useful things to know:
• Sharing files between the guest and host: To learn about different ways of sharing files,
check out this guide.
• Run a command with sudo (root) privileges: Open a terminal and type any command
with sudo in front to run that command as root.
Example: sudo apt-get install vim – will install the vim text editor package on an Ubuntu
Linux Virtual Machine
• Find the IP address of your guest: Open a terminal and type ifconfig | more – The | more
(pronounced “pipe more”) will “pipe” the output of the ifconfig command to
the more command, which will show the results one page at a time, so it doesn’t scroll by
before you see it all.
If you have a Host-Only Network IP address, you will see an IP of 192.168.56.101 (or
something similar). Check the Trouble-Shooting section below for more information about
the Host-Only Network.
Step 6: Shut down the Virtual Machine: When you are done using a guest Virtual Machine,
regardless of hypervisor, you need to shut it down properly. This can be done in three
ways:
Cloud computing 19
Department of Science and Computing 2119182
1. Press the shut down button found on the desktop, taskbar, or task menu of the guest
operating system
2. Open a terminal and type the command: sudo shutdown -h now
3. In the guest window, click Machine (menu) -> ACPI Shut down – This will simulate the
power button being pressed
WARNING: If you shut down a guest operating system any other way, such as by just pressing the
“X” button on the guest window or File (menu) -> Close, this can have unintended consequences.
In some cases, this can be the same as pulling the power cord out of your desktop computer. This
can result in hard drive errors depending on what the guest’s operating system was doing when you
killed it.
NOTE: Some of our VMs can take as much as a minute to shut down depending on what the
system was doing, please be patient.
Cloud computing 20
Department of Science and Computing 2119182
Practical No: -4
Aim: -Usage of SaaS, PaaS and IaaS cloud services under public cloud tools
Asana: A project management tool that allows teams to coordinate and manage their work tasks
and projects online.
Xero: Another popular cloud-based accounting software for managing invoicing, bank
reconciliation, and other financial tasks.
Cloud computing 21
Department of Science and Computing 2119182
SaaS cloud services under public cloud tools provide businesses with the flexibility to access
powerful software applications without the burden of managing and maintaining complex
infrastructure, making collaboration and productivity more efficient and accessible.
1.Application Development
Development Frameworks: PaaS provides developers with access to development frameworks for
building applications. These frameworks often include libraries, code samples, and APIs to
accelerate development.
Integrated Development Environments (IDEs): PaaS platforms often offer web-based IDEs
where developers can write, test, and debug their code in the cloud without needing to set up a local
development environment.
2.Database Management:
Managed Database Services: PaaS offerings include managed database services that handle
database management tasks such as backups, scaling, and patching. Developers can focus on
application logic without worrying about database maintenance.
3. Middleware Integration:
Message Queues and Middleware: PaaS platforms offer middleware services, such as message
queues and integration tools, to facilitate communication between different components of an
application. This ensures smooth data flow and coordination between services.
Automatic Scaling: PaaS services often provide automatic scaling based on demand. Applications
can automatically scale up or down to handle varying workloads without manual intervention.
Load Balancing: PaaS platforms include load balancing services that distribute incoming network
traffic across multiple servers. This ensures high availability and reliability of applications.
Collaboration Tools: PaaS environments often integrate collaboration tools, enabling teams to
work together, share code, and collaborate on projects in real-time.
6. API Management:
Cloud computing 22
Department of Science and Computing 2119182
API Gateways: PaaS platforms offer API management services, allowing developers to create,
publish, secure, analyze, and scale APIs. This is crucial for building applications that interact with
external services.
Development and Testing: Developers can provision virtual machines quickly for coding, testing,
and debugging applications.
Web Hosting: Hosting websites and web applications on scalable virtual machines.
Batch Processing: Running batch jobs and data processing tasks on virtual servers.
2.Storage Solutions:
Data Backup and Recovery: Storing backups of critical data in the cloud for disaster recovery
purposes.
File Storage: Storing and sharing files securely across teams or with external clients.
Database Storage: Hosting databases in the cloud for easy scalability and accessibility.
3. Networking Services:
Load Balancing: Distributing incoming network traffic across multiple servers to ensure no single
server is overwhelmed.
Content Delivery Network (CDN): Accelerating the delivery of web content to users by caching
it in multiple locations.
Virtual Private Networks (VPNs): Creating secure connections between remote users and
corporate networks.
Software Development: Providing developers with virtualized environments to develop and test
applications without physical hardware constraints.
Cloud computing 23
Department of Science and Computing 2119182
Continuous Integration and Deployment (CI/CD): Automating the process of integrating code
changes and deploying applications in a controlled manner.
Big Data Processing: Running large-scale data analytics and processing tasks on virtual clusters.
Data Warehousing: Storing and analyzing large datasets in a scalable and cost-effective manner.
Disaster Recovery: Using IaaS for backup and recovery in hybrid cloud setups, ensuring data
redundancy and business continuity.
Bursting: Scaling applications from on-premises infrastructure to the cloud during periods of high
demand.
Cloud computing 24
Department of Science and Computing 2119182
Practical No: -5
Aim: -What is OpenStack? Steps to create private cloud in OpenStack.
OpenStack is an open-source cloud computing platform that allows businesses and individuals to
build and manage public and private clouds. It provides a set of software tools for building and
managing cloud computing platforms for public and private clouds. OpenStack components
include computing, storage, and networking resources, along with various other services such as
identity and image services. Here are key aspects of OpenStack:
1.Open-Source Nature:
OpenStack is open-source software, meaning its source code is freely available to the public. This
openness encourages collaboration and allows developers to modify and enhance the software
according to their needs.
2.Modular Architecture:
OpenStack is modular, with various components designed to handle different tasks. Some of the
core components include:
Nova: Manages computing resources, providing virtual machines on demand.
Swift: Offers object storage for scalable and redundant storage of large amounts of unstructured
data.
Neutron: Handles networking services, enabling users to create and manage network devices and
connections.
Cinder: Manages block storage, providing persistent storage volumes to VMs.
Keystone: Provides identity services, including authentication and authorization for all OpenStack
services.
Glance: Manages virtual machine images.
Cloud computing 25
Department of Science and Computing 2119182
OpenStack is highly scalable and can accommodate a large number of virtual machines and
storage. It is designed to be flexible, allowing users to integrate it with existing technologies and
customize it to suit their needs.
5. Community-Driven Development:
OpenStack benefits from a large and active community of developers and users who contribute to
its development and share knowledge and best practices.
Use Cases: -
Enterprise Clouds: OpenStack is used by businesses to create private clouds for internal use,
providing on-demand resources for their applications and services.
Public Cloud Providers: Some public cloud providers use OpenStack to offer cloud services to
external users.
Research and Academia: OpenStack is used in research and educational institutions for various
scientific computing and research projects.
OpenStack's modular design, open-source nature, and wide community support make it a popular
choice for organizations looking to build and manage their cloud infrastructure.
Creating a private cloud using OpenStack involves several steps. Below is a general outline of the
process, though please note that the specific steps and commands might vary based on the version
of OpenStack you are using and your chosen Linux distribution. Here's a basic guide to setting up a
private cloud with OpenStack:
1.Prepare Your Environment:
Hardware: Set up servers with sufficient resources (CPU, RAM, storage) for your cloud nodes
(controller node, compute nodes, network node).
Networking: Plan your network architecture, including IP addressing and connectivity between
nodes. Ensure network interfaces are properly configured.
Software: Install a compatible Linux distribution (such as Ubuntu, CentOS) on your servers.
2.Install and Configure Identity Service (Keystone):
Install and configure Keystone, which provides authentication and authorization services for other
OpenStack services.
Cloud computing 26
Department of Science and Computing 2119182
Install and configure Glance, which manages virtual machine images. Upload images that you'll use
to launch instances.
4. Install and Configure Compute Service (Nova):
Install and configure Nova, the compute service responsible for creating and managing virtual
machines.
5. Install and Configure Networking Service (Neutron):
Install and configure Neutron, which provides networking services. Set up networks, subnets,
routers, and security groups.
6.Install and Configure Block Storage Service (Cinder):
Install and configure Cinder, which provides block storage services. Configure storage backends
and create volumes.
7.Set Up Horizon Dashboard (Optional but Recommended):
Install and configure the Horizon dashboard, which provides a web-based interface for managing
your OpenStack cloud.
8. Security and Access Control:
Configure security settings, including firewalls and access controls, to ensure the private cloud is
secure.
9.Integration and Testing:
Integrate different services, perform thorough testing, and ensure all components work together
seamlessly.
10.Documentation and Monitoring:
Document your setup thoroughly for future reference. Implement monitoring and logging to keep
track of your cloud infrastructure's health and performance.
11.Scaling and Maintenance:
Plan for scalability and consider future expansion. Implement regular maintenance tasks, updates,
and backups to ensure the cloud's smooth operation.
Cloud computing 27