CC
CC
CC
The innovative characteristic of cloud computing lies in its ability to deliver on-demand access to a
pool of configurable computing resources, such as networks, servers, storage, applications, and services,
over the internet. This allows users to rapidly provision and release resources with minimal management
effort or service provider interaction.The major advantage of cloud computing is its scalability, flexibility,
and cost-effectiveness. With cloud computing, users can easily scale resources up or down based on
demand, pay only for what they use through a pay-as-you-go model, and benefit from the flexibility to
access resources from anywhere with an internet connection.
2. Cloud computing relies on various underlying technologies, including virtualization, which enables
the abstraction of physical resources into virtual resources, allowing for better resource utilization and
management. Additionally, technologies such as containerization, distributed computing, networking, and
automation play crucial roles in the functioning and efficiency of cloud computing systems.
4. Cloud computing can be defined as the delivery of computing services—including servers, storage,
databases, networking, software, and analytics—over the internet (the cloud) to offer faster innovation,
flexible resources, and economies of scale. Its core features include on-demand self-service, broad
network access, resource pooling, rapid elasticity, and measured service. These features enable users to
access computing resources as needed, from anywhere, with the ability to scale up or down dynamically,
and pay only for the resources consumed.
5. Several major distributed computing technologies paved the way for cloud computing. These
include:
b. Grid Computing: Grid computing involves the coordination and sharing of computational resources
across multiple administrative domains to solve large-scale computational problems.
c. Utility Computing: Utility computing provides computing resources as a metered service similar to
traditional utilities like electricity or water. Users pay for resources consumed, typically on a per-usage
basis.
d. Service-Oriented Architecture (SOA): SOA is an architectural approach where software components are
designed to be modular, reusable, and interoperable, allowing for the creation and deployment of
distributed applications.
e. Cluster Computing: Cluster computing involves the interconnected use of multiple computers (nodes)
to work together as a single, integrated system to perform tasks efficiently.
6.Parallel Computing vs. Distributed Computing:
Parallel Computing: Involves dividing a single task into smaller sub-tasks that can be executed
simultaneously on multiple processors or cores within the same machine. It aims to speed up
computation by utilizing parallel processing techniques.
Distributed Computing: Involves dividing a task into sub-tasks and distributing them across
multiple independent computers connected via a network. Each computer works on its part of the
task, and the results are combined to achieve the overall goal. Distributed computing focuses on
scalability, fault tolerance, and resource sharing across a network.
7.Remote Procedure Call (RPC): RPC is a protocol that allows a computer program to execute code on a
remote system over a network. It enables communication between client and server applications, where
the client makes a request to the server to execute a specific procedure or function, passing arguments if
necessary. The server executes the procedure and returns the result to the client. RPC abstracts the
complexity of network communication, making remote procedure invocation appear as a local procedure
call to the client.
8.SOAP vs. REST:
SOAP (Simple Object Access Protocol): A protocol used for exchanging structured information
in the form of XML messages over various transport protocols such as HTTP, SMTP, or TCP. SOAP
is based on XML and provides standards for message formatting, error handling, and security,
making it suitable for complex and enterprise-level applications.
REST (Representational State Transfer): Architectural style for designing networked
applications, emphasizing simplicity, scalability, and performance. REST uses standard HTTP
methods (GET, POST, PUT, DELETE) for CRUD (Create, Read, Update, Delete) operations on
resources. It typically utilizes lightweight data formats like JSON or XML for data interchange and
relies on stateless communication between client and server.
9.WSDL (Web Services Description Language): WSDL is an XML-based language used to describe the
interface and functionality of web services. It defines the operations supported by a service, the format of
input and output messages, and the protocol and data format used for communication (e.g., SOAP over
HTTP). WSDL enables interoperability between different platforms and programming languages by
providing a standardized way to define and discover web services.
10.XML in Web Services: XML (Extensible Markup Language) is commonly used in web services for data
representation and exchange. It provides a structured format for encoding data in a human-readable and
platform-independent manner. XML-based formats such as SOAP and WSDL are used to define the
structure of messages exchanged between clients and servers in web service interactions. XML allows for
the easy parsing, manipulation, and transformation of data, making it well-suited for communication
between heterogeneous systems.
11.HTTP Methods in RESTful Web Services:
GET: Retrieves data from a server based on a given URI. It is idempotent, meaning multiple
identical requests will have the same effect as a single request.
POST: Submits data to be processed to a specified resource. It is not idempotent, as multiple
identical requests may result in different outcomes.
PUT: Updates or replaces a resource identified by a given URI with the provided data. It is
idempotent, as multiple identical requests will have the same effect as a single request.
DELETE: Removes a resource identified by a given URI from the server. It is idempotent, meaning
multiple identical requests will have the same effect as a single request.
12.Hypervisor: A hypervisor, also known as a virtual machine monitor (VMM), is software that enables
multiple operating systems to run on a single physical machine concurrently. It virtualizes the underlying
hardware resources, such as CPU, memory, storage, and networking, allowing multiple virtual machines
(VMs) to share and access these resources independently. Hypervisors come in two types: Type 1, which
runs directly on the hardware (bare-metal), and Type 2, which runs on top of a host operating system.
13.Process of Creating a Virtual Machine:
Hypervisor Initialization: The hypervisor initializes and manages the hardware resources of the host
machine.
Virtual Machine Configuration: The user configures the virtual machine settings, including CPU,
memory, storage, and networking parameters.
Guest OS Installation: The user installs the guest operating system (OS) on the virtual machine,
similar to installing it on a physical machine.
Hypervisor Interaction: The hypervisor creates a virtual environment for the guest OS, abstracting
the physical hardware and providing virtualized resources.
VM Startup: The virtual machine is started, and the guest OS boots up within the virtual environment
created by the hypervisor.
Operation: Once running, the virtual machine operates like a physical machine, executing
applications and interacting with users or other systems as configured.
1.Cloud Computing Security Fundamentals:
Data Protection: Ensure sensitive data is encrypted during transmission and storage.
Identity and Access Management (IAM): Implement strong authentication and authorization
mechanisms to control access to cloud resources.
Compliance: Adhere to industry regulations and standards to protect data privacy and maintain
compliance.
Threat Detection and Prevention: Employ security tools and techniques to detect and mitigate
potential threats, such as malware and unauthorized access.
Incident Response: Establish procedures for responding to security incidents and breaches
promptly and effectively.
2. Cloud Security Design Principles:
Defense in Depth: Implement multiple layers of security controls to protect against various threats.
Least Privilege: Grant users and applications only the minimum level of access necessary to
perform their tasks.
Isolation: Ensure logical and physical separation of resources to prevent unauthorized access and
data leakage.
Resilience: Design systems to withstand and recover from security incidents and failures.
Transparency: Provide visibility and auditability into security controls and activities for monitoring
and compliance purposes.