0% found this document useful (0 votes)
5 views44 pages

Papers

Uploaded by

kalpityonig
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)
5 views44 pages

Papers

Uploaded by

kalpityonig
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/ 44

1,2 papers

1.a. Classify the following into IaaS, PaaS, and SaaS models with
proper justification
1. AWS EC2 (Elastic Compute Cloud):

IaaS (Infrastructure as a Service)

Justification: AWS EC2 provides virtual servers which users can configure
and control, making it a core infrastructure service where users manage
their own software applications and operating systems.

2. Google App Engine:

PaaS (Platform as a Service)

Justification: Google App Engine provides a platform with pre-configured


environments, enabling developers to deploy and run applications without
managing underlying infrastructure like servers and networks.

3. Office 365:

SaaS (Software as a Service)

Justification: Office 365 offers software applications (like Word, Excel,


and Outlook) over the internet, which users can access without worrying
about hardware or software maintenance.

4. AWS RDS (Relational Database Service):

PaaS (Platform as a Service)

Justification: AWS RDS provides managed database services, allowing


users to use databases without managing the actual database server
infrastructure.

5. Shopify (eCommerce software):

1,2 papers 1
SaaS (Software as a Service)

Justification: Shopify offers a complete eCommerce solution that includes


website building tools and hosting, so users can create online stores
without dealing with server management.

6. AWS S3 (Simple Storage Service):

IaaS (Infrastructure as a Service)

Justification: AWS S3 provides scalable storage infrastructure, allowing


users to store and retrieve data, handling their own file management and
access controls.

1.b. What is elasticity? How is it different from scalability? Give an


example each to clearly distinguish these concepts
Elasticity:

The ability of a system to automatically adjust resources (like CPU,


memory) to match the current demand.

Example: An online store that automatically adds more servers during a


big sale and reduces them when the sale is over to handle varying traffic.

Scalability:

The capacity of a system to handle a growing amount of work by adding


more resources.

Example: A social media platform that increases its server capacity to


support more users as its user base grows.

Difference:

Elasticity focuses on dynamically adjusting resources based on real-time


demand, ensuring efficiency and cost-effectiveness.

Scalability is about designing a system to handle increased load over time by


adding resources, ensuring growth capability.

1.c. What are the differences between monolithic and


microservices applications? What are the challenges associated
with migrating monolithic operations?

1,2 papers 2
Monolithic Applications:

A single, unified codebase where all components are interconnected and


dependent on each other.

Easier to develop and deploy initially but becomes complex and difficult to
manage as it grows.

Microservices Applications:

Composed of small, independent services, each handling a specific


business function.

Easier to scale and update independently, but requires good management


of inter-service communication and data consistency.

Challenges in Migration:

Complexity: Splitting a monolithic application into smaller, independent


services is technically challenging.

Data Management: Ensuring consistent and reliable data flow between


various services.

Service Coordination: Managing the interactions and dependencies between


numerous microservices.

Cultural Shift: Requires changes in development practices, team organization,


and operational processes.

1.d. What is serverless computing? Give one example of a


serverless computing service. What are the benefits associated
with serverless computing
Serverless Computing:

A cloud computing model where the cloud provider automatically manages


the infrastructure, allowing developers to focus solely on code.

Example:

AWS Lambda: A service that runs code in response to events without


provisioning or managing servers.

Benefits:

1,2 papers 3
Cost Efficiency: Pay only for the compute resources used during the
execution of the code, reducing idle time costs.

Scalability: Automatically scales to handle the load, managing resource


allocation based on demand.

Simplified Management: Eliminates the need to manage and maintain servers,


allowing developers to focus on application logic.

2.a. What are controller-manager, kubelets, and pods in


Kubernetes? Explain with a diagram where each of them executes
– on master or worker?
Controller-Manager:

Runs on the master node.

Manages different controllers, which handle routine tasks such as node


health checks, maintaining desired state of replicas, and handling job
executions.

Kubelets:

Run on worker nodes.

Ensure that containers described in Pod specifications are running and


healthy, monitoring their status.

Pods:

Run on worker nodes.

The smallest deployable units in Kubernetes, containing one or more


containers that share resources and network.

Diagram Description:

Master Node: Contains API server, Controller-Manager, and Scheduler.

Worker Node: Contains Kubelet and Pods.

2.b. How are paravirtualization and full virtualization techniques


used to virtualize x86?
Paravirtualization:

1,2 papers 4
The guest operating system is aware of the virtualization environment and
communicates with the hypervisor using special API calls.

Example: Xen hypervisor, which requires modifications to the guest OS.

Full Virtualization:

The guest operating system is unaware of the virtualization and interacts


with virtual hardware emulated by the hypervisor.

Example: VMware ESXi, which provides complete hardware emulation


allowing unmodified guest OS to run.

Differences:

Paravirtualization requires changes to the guest OS for optimized


performance.

Full Virtualization does not require changes to the guest OS, as it fully
emulates the underlying hardware.

2.c. What is VM Migration? What are the different types of VM


Migration? State the difference between these types of VM
Migration. Explain pre-copy and post-copy techniques of
migration
VM Migration:

The process of moving a virtual machine from one physical host to


another, often to balance loads or for maintenance purposes.

Types:

1. Live Migration:

Moves VMs without downtime, maintaining service availability during the


migration process.

2. Cold Migration:

Moves VMs while they are powered off, typically used for system
maintenance or upgrades.

Differences:

1,2 papers 5
Live Migration maintains service continuity with no downtime.

Cold Migration requires shutting down the VM, leading to some downtime.

Techniques:

Pre-copy:

Initial Copy: Most of the VM's memory is copied to the destination while
the VM continues running on the source.

Final Copy: The remaining memory and state changes are copied after the
initial transfer, minimizing downtime.

Post-copy:

Initial Copy: Minimal VM state is transferred to the destination.

Execution Start: The VM starts running at the destination with the basic
state.

Final Copy: The remaining memory pages are fetched from the source as
needed, potentially reducing initial migration time but may increase overall
transfer duration.

1.a. Explain the different deployment models of cloud computing.


Give a real-time usage scenario for each deployment model.
1. Public Cloud:

Explanation: Cloud resources like servers and storage are provided over
the internet by third-party providers and shared by multiple users.

Real-Time Scenario: A small business uses Microsoft Azure to host its


website and applications, sharing resources with other users, which
reduces costs.

2. Private Cloud:

1,2 papers 6
Explanation: Cloud resources are used exclusively by one organization,
either on-premises or hosted by a third-party provider.

Real-Time Scenario: A bank uses a private cloud to store sensitive


financial data, ensuring enhanced security and control.

3. Hybrid Cloud:

Explanation: Combines public and private clouds, allowing data and


applications to be shared between them.

Real-Time Scenario: A retail company uses a private cloud for customer


data and a public cloud to handle website traffic during sales.

4. Community Cloud:

Explanation: Cloud resources are shared by several organizations with


common interests or requirements.

Real-Time Scenario: Several universities share a community cloud for


research collaboration, meeting shared security and compliance needs.

1.b. i) Explain REST operations.


REST (Representational State Transfer) is a set of rules for designing web
services. The main operations are:

1. GET:

Explanation: Retrieves data from the server.

Example: Viewing a user’s profile on a website.

2. POST:

Explanation: Sends data to the server to create a new resource.

Example: Submitting a registration form to sign up for a new account.

3. PUT:

Explanation: Updates an existing resource on the server.

Example: Editing user profile information.

4. DELETE:

1,2 papers 7
Explanation: Removes a resource from the server.

Example: Deleting a user account.

ii) Explain distributed system model with an example.


Distributed System Model:

Explanation: A system where multiple computers work together to


perform tasks as a single system, sharing resources and coordinating
through network communication.

Example:

Online Banking System: Uses multiple servers to manage different


functions like transactions, user accounts, and customer service. This
ensures the system is scalable, reliable, and available even if one
server fails.

1.c. List and explain the benefits of moving applications to the


cloud.
1. Cost Savings:

Explanation: Reduces the need for buying and maintaining physical


hardware.

Benefit: Businesses save money by only paying for the resources they
use.

2. Scalability:

Explanation: Easily increase or decrease resources based on demand.

Benefit: Companies can handle varying workloads without


overprovisioning.

3. Accessibility:

Explanation: Access applications and data from anywhere with internet


access.

1,2 papers 8
Benefit: Employees can work from different locations, improving flexibility
and collaboration.

4. Disaster Recovery:

Explanation: Provides backup and recovery options to protect data.

Benefit: Ensures data is safe and can be restored quickly in case of a


disaster.

5. Automatic Updates:

Explanation: Cloud providers handle software updates and security


patches.

Benefit: Keeps systems up-to-date without manual intervention.

2.a. Explain Docker architecture with a neat diagram.


Docker Architecture:

Components:

1. Docker Client:

Explanation: The interface through which users interact with


Docker.

2. Docker Daemon:

Explanation: The background service that manages Docker


containers.

3. Docker Images:

Explanation: Templates used to create Docker containers.

4. Docker Containers:

Explanation: Lightweight, isolated environments where


applications run.

5. Docker Registry:

Explanation: A repository for storing and distributing Docker


images.

1,2 papers 9
Diagram Description:

Client -> Daemon -> Images -> Containers

Registry: Stores and retrieves images.

2.b. Consider a situation where you are required to apply any one
of these types of virtualization. Mark the appropriate
virtualization type for each requirement and justify your answer.
(i) Run some dedicated applications on the VMs created on the guest OS and
run some other applications on the host OS directly:

Type: Host-based Virtualization

Justification: This allows running a guest OS on top of the host OS, enabling
the use of applications on both the guest and host OS simultaneously.

(ii) Run special APIs requiring substantial OS modifications in a VM:

Type: Para Virtualization

Justification: This type requires modifications to the guest OS, making it


suitable for running special APIs that need significant OS changes.

(iii) Run non-critical instructions on the hardware directly while critical


instructions are discovered and replaced with traps into the VMM to be
emulated by software:

Type: Full Virtualization

Justification: This method fully emulates hardware, allowing the guest OS to


run unmodified while critical instructions are managed by the VMM.

(iv) Install the virtualization software directly on the hardware:

Type: Bare Metal Virtualization

Justification: The hypervisor is installed directly on the physical hardware,


providing better performance and efficiency without a host OS.

2.c. List any 2 similarities and any 2 differences between a Docker


container and a VM.

1,2 papers 10
Similarities:

1. Isolation:

Explanation: Both Docker containers and VMs provide isolated


environments for running applications securely.

2. Portability:

Explanation: Both can be easily moved across different environments,


facilitating flexible deployment.

Differences:

1. Resource Utilization:

Docker Containers: Share the host OS kernel, making them lightweight


and efficient in resource usage.

VMs: Include a full guest OS, consuming more resources.

2. Startup Time:

Docker Containers: Start up quickly due to their lightweight nature.

VMs: Take longer to start because they need to boot a complete operating
system.

1.a. List out and explain the Features/Characteristics of Cloud


Computing
1. On-Demand Self-Service:

Explanation: Users can automatically get and manage cloud resources,


like storage or computing power, whenever they need, without human help
from the provider.

Example: A developer can launch a new virtual machine through a cloud


provider's web portal without waiting for IT support.

2. Broad Network Access:

1,2 papers 11
Explanation: Cloud services are accessible over the internet from various
devices, like laptops, smartphones, and tablets.

Example: Accessing cloud-based email from any device connected to the


internet.

3. Resource Pooling:

Explanation: Cloud providers use a pool of resources (like servers and


storage) to serve multiple customers, allocating resources dynamically as
needed.

Example: A cloud provider dynamically allocates storage and processing


power to different customers based on their current needs.

4. Rapid Elasticity:

Explanation: Cloud services can quickly scale up or down to match


demand, providing more resources when needed and reducing them when
not.

Example: An online store automatically adds more servers during a major


sale and reduces them afterward.

5. Measured Service:

Explanation: Cloud usage is monitored, controlled, and reported, so


customers pay only for what they use.

Example: A company pays for the exact amount of storage and computing
power they used in a month.

6. Multi-Tenancy and Resource Sharing:

Explanation: Multiple customers share the same cloud infrastructure while


keeping their data separate and secure.

Example: Different businesses use the same cloud-based CRM system but
have their data securely separated.

1.b. Describe with the help of examples the various service


models and deployment models of cloud computing.
Service Models:

1,2 papers 12
1. IaaS (Infrastructure as a Service):

Explanation: Provides basic computing resources like virtual servers,


storage, and networks over the internet.

Example: Amazon EC2 offers virtual servers that users can configure and
manage.

Scenario: A startup uses IaaS to host its website, renting virtual machines
and storage instead of buying physical hardware.

2. PaaS (Platform as a Service):

Explanation: Provides a platform with tools and services for developers to


build, test, and deploy applications without managing the underlying
hardware and software.

Example: Google App Engine provides a platform for developers to deploy


applications.

Scenario: A developer uses PaaS to create and deploy a web application


quickly without managing server infrastructure.

3. SaaS (Software as a Service):

Explanation: Delivers software applications over the internet, accessible


via a web browser, typically on a subscription basis.

Example: Microsoft Office 365 provides online access to Office


applications like Word and Excel.

Scenario: A company uses SaaS for email services, allowing employees to


access email from anywhere with an internet connection.

Deployment Models:

1. Public Cloud:

Explanation: Cloud resources are owned and operated by a third-party


cloud provider and shared among multiple customers.

Example: Google Cloud Platform offers various cloud services to the


public.

1,2 papers 13
Scenario: A business uses a public cloud to host its online services,
sharing resources with other users to reduce costs.

2. Private Cloud:

Explanation: Cloud resources are used exclusively by one organization,


either on-premises or hosted by a third-party provider, offering more
control and security.

Example: A company's private cloud within its own data center.

Scenario: A financial institution uses a private cloud to store sensitive


customer data securely.

3. Hybrid Cloud:

Explanation: Combines public and private clouds, allowing data and


applications to be shared between them for greater flexibility and
deployment options.

Example: A company uses a private cloud for sensitive data and a public
cloud for less sensitive data.

Scenario: An online retailer uses a private cloud for customer information


and a public cloud to handle website traffic spikes.

4. Community Cloud:

Explanation: Cloud resources are shared by several organizations with


similar requirements, often managed by the organizations or a third party.

Example: A cloud for multiple healthcare providers to share patient data


securely.

Scenario: Universities collaborate using a community cloud to share


research data and resources.

1.c. List out and explain the REST architectural style with four
principles
1. Stateless:

Explanation: Each request from a client to the server must contain all the
information needed to understand and complete the request. The server

1,2 papers 14
does not store any session information about the client.

Example: When a client requests a webpage, it includes all necessary


information, like user authentication tokens, in the request.

2. Client-Server:

Explanation: The client and server are separate entities that communicate
over a network. This separation allows each to evolve independently.

Example: A web browser (client) requests data from a web server (server)
via HTTP requests.

3. Cacheable:

Explanation: Responses from the server should define themselves as


cacheable or not to improve performance by reducing the need for
repeated requests.

Example: A server response includes cache control headers indicating


that the response can be cached for a specified duration.

4. Uniform Interface:

Explanation: A consistent way of interacting with resources, simplifying


and decoupling the architecture by using standardized methods.

Example: Using HTTP methods like GET, POST, PUT, and DELETE to
perform operations on resources identified by URLs.

2.a. Explain Type 2 Hypervisor (Hosted Hypervisor)


Type 2 Hypervisor:

Explanation: A type of hypervisor that runs on top of a host operating


system, allowing multiple virtual machines (VMs) to run on a single
physical machine.

Features:

1. Runs on Host OS: Installed as an application on the existing operating


system, using the host’s resources.

1,2 papers 15
2. Supports Multiple VMs: Can create and manage several VMs, each
running its own operating system and applications.

3. User-Friendly: Often comes with a graphical user interface for easy


management of VMs.

Example:

VMware Workstation or Oracle VirtualBox: Software that allows users to run


multiple operating systems simultaneously on their desktops or laptops, each
in its own virtual machine.

Diagram Description:

Host OS -> Type 2 Hypervisor -> Guest OS (VMs)

2.b. Explain Shadow page table using a neat diagram. What are
usually faced challenges in shadow page table?
Shadow Page Table:

Explanation: A technique used by hypervisors to map guest virtual


memory addresses to host physical memory addresses. It maintains a
copy (shadow) of the guest’s page table to manage this translation.

Function: Ensures the guest OS believes it is interacting directly with


physical memory, while the hypervisor controls the actual mapping to
physical memory.

Challenges:

1. Performance Overhead:

Explanation: Maintaining shadow page tables can be computationally


expensive, affecting system performance.

2. Complexity:

Explanation: Implementing and synchronizing shadow page tables with


the guest’s page tables is complex, increasing the complexity of the
hypervisor.

Diagram Description:

1,2 papers 16
Guest OS -> Guest Page Table -> Shadow Page Table -> Host Physical
Memory

2.c. Explain Live migration process of a VM from one host to


another
Live Migration:

Explanation: The process of moving a running virtual machine (VM) from


one physical host to another with minimal downtime, ensuring continuous
service availability.

Steps:

1. Preparation:

Explanation: The destination host is prepared to receive the VM, ensuring


it has sufficient resources and is properly configured.

2. Pre-Copy Phase:

Explanation: Most of the VM’s memory is copied from the source host to
the destination host while the VM continues to run on the source.

3. Iterative Memory Copy:

Explanation: Memory pages modified during the initial copy are re-copied
to the destination, reducing the number of changes that need to be
transferred later.

4. Stop-and-Copy Phase:

Explanation: The VM is briefly paused, and the remaining memory and


state changes are copied to the destination. This phase is very short to
minimize downtime.

5. Resume Phase:

Explanation: The VM is resumed on the destination host, and users can


continue their work with minimal disruption.

Diagram Description:

1,2 papers 17
Source Host (VM Running) -> Memory Copy -> Destination Host (VM
Running)

1.a. List and explain briefly the relative merits and demerits of
SaaS, IaaS, and PaaS models of cloud deployment.
1. SaaS (Software as a Service):

Merits:

1. Ease of Use: Applications are ready to use immediately, with no need for
installation or maintenance.

Example: Using Google Workspace for email and document


collaboration.

2. Cost-Effective: Users often pay a subscription fee, reducing the need for
large upfront investments.

Example: Paying monthly for Microsoft Office 365.

Demerits:

1. Limited Customization: Users have limited ability to alter the software to


fit specific needs.

Example: Cannot modify the core functionality of Salesforce.

2. Dependence on Internet: Requires a reliable internet connection.

Example: Difficulty accessing SaaS applications during internet


outages.

2. PaaS (Platform as a Service):

Merits:

1. Development Efficiency: Provides tools and frameworks that simplify app


development.

1,2 papers 18
Example: Using Google App Engine to build web applications quickly.

2. Automatic Scaling: Easily adjusts resources to handle varying loads.

Example: Heroku automatically scales web apps based on traffic.

Demerits:

1. Potential Vendor Lock-In: Applications may become dependent on the


specific platform.

Example: Difficulty moving an app from Azure PaaS to another


platform.

2. Less Control: Users have limited control over the underlying hardware.

Example: Cannot customize the server configuration on AWS Elastic


Beanstalk.

3. IaaS (Infrastructure as a Service):

Merits:

1. High Flexibility: Users have control over the entire infrastructure, including
operating systems and storage.

Example: Configuring custom virtual machines on Amazon EC2.

2. Scalable Resources: Easily add or remove resources as needed.

Example: Scaling up virtual machines during peak business hours.

Demerits:

1. Management Overhead: Requires users to manage and maintain the


infrastructure.

Example: Regularly updating and patching VMs on Google Compute


Engine.

2. Security Responsibility: Users are responsible for securing their


applications and data.

Example: Configuring firewalls and monitoring security on Microsoft


Azure VMs.

1,2 papers 19
1.b. What is serverless computing? List the advantages of
serverless computing. Give an example real-world cloud service
that employs serverless computing.
Serverless Computing:

Explanation: A cloud computing model where the cloud provider


automatically handles the infrastructure, allowing developers to focus only
on writing code.

Advantages:

1. Cost Efficiency: Pay only for the compute time used, reducing costs when the
application is idle.

Example: AWS Lambda charges based on the number of requests and


compute time.

2. Automatic Scaling: Scales resources automatically based on demand,


ensuring efficient resource use.

Example: Functions automatically handle spikes in traffic without manual


intervention.

3. Simplified Management: No need to manage or maintain servers, freeing


developers to focus on coding.

Example: No server maintenance required when using Azure Functions.

4. Faster Deployment: Allows for quicker deployment and iteration of functions.

Example: Rapidly deploying new features in Google Cloud Functions.

Example Service:

AWS Lambda: Executes code in response to events such as HTTP requests,


database updates, or file uploads.

1.c. What is the difference between SOA and microservices?


What are REST APIs? What role do they play in implementing
SOA/microservices?
SOA (Service-Oriented Architecture):

1,2 papers 20
Explanation: An architectural style where different services communicate
over a network to provide functionality. Services are usually larger and can
be reused across multiple applications.

Example: A banking system where services like account management,


transaction processing, and customer support communicate via an
enterprise service bus (ESB).

Microservices:

Explanation: An architectural style where an application is built as a


collection of small, independent services, each responsible for a specific
business function.

Example: An e-commerce application with separate microservices for user


authentication, product catalog, and order processing, each running
independently.

Differences:

1. Granularity:

SOA: Services are typically larger and more coarse-grained.

Microservices: Services are smaller and more fine-grained.

2. Communication:

SOA: Often uses complex protocols like SOAP.

Microservices: Commonly uses lightweight protocols like HTTP/REST.

REST APIs:

Explanation: REST (Representational State Transfer) APIs are web services


that use HTTP methods to interact with resources.

Role in SOA/Microservices:

SOA: REST APIs facilitate communication between services, simplifying


integration and interaction.

Example: A REST API enabling a customer service system to interact


with the order processing service.

1,2 papers 21
Microservices: REST APIs are commonly used for communication
between microservices, enabling them to work together seamlessly.

Example: A REST API allowing the user authentication microservice to


validate users for the order processing microservice.

1.d. What is elasticity? How is it different from scalability? Give an


example each to clearly distinguish these concepts.
Elasticity:

Explanation: The ability of a system to automatically adjust resources to


match current demand, scaling up or down as needed.

Example: An online retail website adds more servers during a big sale and
reduces them afterward to handle fluctuating traffic.

Scalability:

Explanation: The capability of a system to handle a growing amount of


work by adding resources over time.

Example: A social media platform adds more servers as its user base
grows to maintain performance.

Difference:

Elasticity:

Focus: Dynamic, real-time adjustments to resource allocation based on


immediate demand.

Example: A cloud service automatically increasing computing power


during high traffic and reducing it when traffic decreases.

Scalability:

Focus: Long-term planning and capability to expand resource capacity to


handle increased load.

Example: A company planning to add more servers to support user growth


over the next year.

1,2 papers 22
2.a. List and Explain any two similarities and differences between
VMs and Containers
Similarities:

1. Isolation:

Explanation: Both provide isolated environments for running applications,


ensuring that each application runs separately.

Example: Applications in a VM or container do not interfere with each


other’s operation.

2. Portability:

Explanation: Both VMs and containers can be moved across different


environments, making deployment flexible.

Example: A VM or container can be transferred from a developer’s laptop


to a production server.

Differences:

1. Resource Utilization:

VMs:

Explanation: Include a full guest operating system, consuming more


system resources.

Example: Each VM runs its own OS instance, requiring more memory


and CPU.

Containers:

Explanation: Share the host OS kernel, making them more lightweight


and efficient.

Example: Multiple containers can run on a single host with minimal


overhead.

2. Startup Time:

VMs:

1,2 papers 23
Explanation: Take longer to start because they need to boot a
complete operating system.

Example: Starting a VM might take several minutes.

Containers:

Explanation: Start up quickly due to their lightweight nature.

Example: Starting a container usually takes a few seconds.

2.b. What are namespaces with respect to containers? Explain


PID and UTS namespaces in Linux.
Namespaces:

Explanation: Namespaces are a feature in Linux that provide isolation for


processes, ensuring that processes in one namespace cannot see or
affect processes in another.

Role: Used in containers to isolate various system resources, such as


process IDs, network interfaces, and file systems.

PID Namespace:

Explanation: Isolates the process ID number space, allowing containers to


have their own set of process IDs.

Function: Each container can have processes with the same PID as processes
in other containers, without conflict.

Example: A process with PID 1 in one container is isolated from a process with
PID 1 in another container.

UTS Namespace:

Explanation: Isolates the system identifiers, such as hostname and domain


name.

Function: Allows each container to have its own hostname, making it appear
as a separate system on the network.

Example: Container A can have the hostname “containerA” and Container B


can have “containerB”, even if they are on the same physical host.

1,2 papers 24
2.c. What are controller-manager, kubelets, and pods in
Kubernetes? Explain with a diagram where each of them executes
– on master or worker?
Controller-Manager:

Explanation: Runs on the

master node and manages different controllers that handle routine tasks like
ensuring the desired state of the system, managing replication, and monitoring
nodes.

Role: Ensures that the specified number of pod replicas are running and
monitors the health of nodes.

Kubelets:

Explanation: Run on worker nodes and ensure that the containers


described in PodSpecs are running and healthy.

Role: Communicates with the master to receive instructions and report the
status of the pods running on the worker node.

Pods:

Explanation: The smallest deployable units in Kubernetes, containing one


or more containers that share resources and network.

Role: Run on worker nodes and host the application containers.

Diagram Description:

Master Node: Contains API server, Controller-Manager, and Scheduler.

Controller-Manager: Manages replication, health, and other tasks.

Worker Node: Contains Kubelet and Pods.

Kubelet: Manages pods and communicates with the master.

Pods: Run application containers.

2.d. What is the difference between hot migration and cold


migration? Explain pre-copy and post-copy techniques of hot
migration.

1,2 papers 25
Hot Migration:

Explanation: The process of moving a running virtual machine (VM) from


one host to another with minimal downtime.

Example: Transferring a live VM from one server to another in a data


center while keeping the VM operational.

Cold Migration:

Explanation: The process of moving a VM from one host to another while


the VM is powered off.

Example: Moving a VM to another server during scheduled maintenance


when it is not running.

Difference:

Hot Migration:

Focus: Minimizes downtime by transferring a running VM.

Example: Live migration of a VM to avoid service interruption.

Cold Migration:

Focus: Involves downtime as the VM is moved while powered off.

Example: Migrating a VM during off-peak hours when it is shut down.

Pre-Copy Technique:

Explanation: Most of the VM’s memory is copied from the source to the
destination while the VM continues running.

Steps:

1. Initial Copy: The majority of memory pages are copied while the VM is still
active.

2. Iterative Copy: Pages modified during the initial copy are recopied.

3. Final Copy: The VM is briefly paused, and the remaining memory and state
changes are transferred.

Goal: Minimize the downtime by reducing the amount of data to be copied in


the final step.

1,2 papers 26
Post-Copy Technique:

Explanation: The VM is moved to the destination first, and then its memory is
copied over as it continues running.

Steps:

1. Minimal State Transfer: The VM’s minimal state is transferred to the


destination.

2. Execution Start: The VM starts running on the destination host.

3. Memory Copy: Remaining memory pages are copied from the source as
needed.

Goal: Minimize the migration time by starting the VM on the destination host
as soon as possible.

1.a. List and explain the benefits of moving applications to the


cloud.
1. Cost Savings:

Explanation: Reduces the need for physical hardware and maintenance


costs, as cloud services are typically billed based on usage.

Example: A company pays only for the storage and computing resources it
uses, avoiding large upfront investments in servers.

2. Scalability:

Explanation: Easily scale resources up or down based on demand,


ensuring optimal performance without over-provisioning.

Example: An eCommerce site can handle traffic spikes during sales events
by scaling up resources and scaling down afterward.

3. Accessibility:

1,2 papers 27
Explanation: Access applications and data from anywhere with an internet
connection, enabling remote work and collaboration.

Example: Employees can access company data and applications from


home or on the go.

4. Disaster Recovery:

Explanation: Provides robust backup and recovery solutions, ensuring


data is safe and recoverable in case of disasters.

Example: Cloud services offer automatic backups, protecting data from


hardware failures or natural disasters.

5. Automatic Updates:

Explanation: Cloud providers manage software updates and security


patches, ensuring applications are always up-to-date.

Example: A SaaS application automatically updates to the latest version


without user intervention.

6. Enhanced Collaboration:

Explanation: Cloud platforms offer tools that facilitate real-time


collaboration and sharing of information among team members.

Example: Multiple users can work on the same document simultaneously


using cloud-based productivity tools like Google Docs.

1.b. Explain the following terms with respect to Cloud Computing


1. Elasticity:

Explanation: The ability of a cloud system to automatically adjust


resources to match current demand, scaling up or down as needed.

Example: A cloud-based application automatically adds more servers


when user traffic increases and reduces them when traffic decreases.

2. Rapid Provisioning:

Explanation: The quick and automated deployment of computing


resources, allowing users to get the resources they need almost instantly.

1,2 papers 28
Example: Instantly launching a new virtual machine through a cloud
provider’s web portal.

3. Measured Service:

Explanation: Cloud providers track and report resource usage, enabling


pay-per-use billing models.

Example: Users are billed based on the amount of storage or compute


hours used in a month.

4. Resource Pooling:

Explanation: Cloud providers use shared resources to serve multiple


customers, dynamically allocating and reallocating resources as needed.

Example: Multiple customers share the same physical servers, with


resources allocated based on demand.

1.c. Explain different degrees of parallelism with an example each


1. Bit-Level Parallelism:

Explanation: Processing multiple bits of data simultaneously with a single


operation.

Example: A 64-bit processor can process 64 bits of data in one cycle,


whereas a 32-bit processor handles only 32 bits.

2. Instruction-Level Parallelism (ILP):

Explanation: Executing multiple instructions at the same time within a


single CPU cycle.

Example: Modern CPUs use pipelining and superscalar architecture to


execute several instructions simultaneously.

3. Data Parallelism:

Explanation: Distributing subsets of the same data across multiple


processing units to perform the same operation concurrently.

Example: A large dataset is divided into chunks, and each chunk is


processed in parallel by different processors.

1,2 papers 29
4. Task Parallelism:

Explanation: Distributing different tasks across multiple processing units,


where each task performs a different operation.

Example: One processor handles data input while another processes the
data, and a third outputs the results, all running in parallel.

1.d. Discuss the relative advantages and disadvantages of private


and public clouds.
Private Cloud:

Advantages:

1. Enhanced Security: Provides greater control over data security and


compliance, making it ideal for sensitive information.

Example: Financial institutions use private clouds to secure customer


data.

2. Customizability: Can be tailored to meet specific business needs and


performance requirements.

Example: Custom configurations to support legacy applications.

Disadvantages:

1. Higher Costs: Typically more expensive due to the need for dedicated
hardware and maintenance.

Example: Costs associated with buying and maintaining servers.

2. Limited Scalability: Scaling resources may be slower and more costly


compared to public clouds.

Example: Adding new servers requires significant investment and time.

Public Cloud:

Advantages:

1. Cost Efficiency: Lower costs due to shared resources and pay-per-use


pricing models.

1,2 papers 30
Example: Startups can launch applications without significant capital
investment.

2. Scalability: Easily scale resources up or down based on demand.

Example: Instantly adding servers during peak traffic times.

Disadvantages:

1. Security Concerns: Potentially less secure than private clouds, as


resources are shared among multiple users.

Example: Concerns about data breaches or unauthorized access.

2. Less Customization: Limited ability to customize the infrastructure to


specific business needs.

Example: Standardized configurations may not meet all specific


requirements.

2.a. What is the difference between a hosted hypervisor and a


baremetal hypervisor? Give an example each.
Hosted Hypervisor:

Explanation: Runs on top of an existing operating system, managing VMs as


applications on the host OS.

Example: VMware Workstation, Oracle VirtualBox.

Benefits: Easier to install and use, suitable for desktop virtualization.

Drawbacks: Slightly lower performance due to reliance on the host OS.

Baremetal Hypervisor:

Explanation: Installs directly on the hardware, managing VMs without a host


operating system.

Example: VMware ESXi, Microsoft Hyper-V.

Benefits: Higher performance and efficiency, ideal for server virtualization.

Drawbacks: More complex installation and management.

1,2 papers 31
2.b. How paravirtualization and full virtualization techniques are
used to virtualize x86? Explain.
Paravirtualization:

Explanation: The guest OS is aware of the virtualization and interacts with the
hypervisor via special APIs, reducing the overhead of emulating hardware.

Example: Xen hypervisor.

Benefits:

Performance: Improved performance due to direct API calls.

Efficiency: Less overhead compared to full virtualization.

Drawbacks:

OS Modification: Requires changes to the guest OS, which may limit


compatibility.

Full Virtualization:

Explanation: The guest OS is unaware of the virtualization and interacts with


virtual hardware provided by the hypervisor, which emulates the entire
hardware environment.

Example: VMware ESXi.

Benefits:

Compatibility: Can run unmodified guest operating systems.

Isolation: Strong isolation between VMs.

Drawbacks:

Performance Overhead: Higher overhead due to hardware emulation.

Complexity: More complex to implement and manage.

2.c. What is the difference between hot migration and cold


migration? Explain pre-copy and post-copy techniques of hot
migration.
Hot Migration:

1,2 papers 32
Explanation: The process of moving a running virtual machine (VM) from one
host to another with minimal downtime.

Example: Live migration of a VM to balance load across servers.

Cold Migration:

Explanation: The process of moving a VM that is powered off from one host to
another.

Example: Migrating a VM during maintenance when it is not running.

Difference:

Hot Migration: Involves minimal downtime, suitable for live applications.

Cold Migration: Requires VM shutdown, leading to downtime.

Pre-Copy Technique:

Explanation: Most of the VM’s memory is copied from the source to the
destination while the VM continues running.

Steps:

1. Initial Copy: Majority of memory pages are copied while the VM remains
active.

2. Iterative Copy: Pages modified during the initial copy are recopied.

3. Final Copy: The VM is paused briefly, and the remaining memory and state
changes are transferred.

Goal: Minimize downtime by reducing the amount of data to be copied in the


final step.

Post-Copy Technique:

Explanation: The VM is moved to the destination first, and then its memory is
copied over while it continues running.

Steps:

1. Minimal State Transfer: The VM’s minimal state is transferred to the


destination.

2. Execution Start: The VM starts running on the destination host.

1,2 papers 33
3. Memory Copy: Remaining memory pages are copied from the source as
needed.

Goal: Minimize migration time by starting the VM on the destination host as


soon as possible.

2.d. List and briefly explain any four differences between a VM


and a Container
1. Resource Utilization:

VMs:

Explanation: Include a full guest operating system, leading to higher


resource consumption.

Example**: Each VM runs a separate OS, consuming more memory and CPU.

Containers:

Explanation: Share the host OS kernel, making them lightweight and


efficient.

Example: Multiple containers can run on a single host with minimal


overhead.

1. Startup Time:

VMs:

Explanation: Take longer to start because they need to boot a


complete operating system.

Example: Booting a VM might take several minutes.

Containers:

Explanation: Start up quickly due to their lightweight nature.

Example: Starting a container usually takes a few seconds.

2. Isolation:

VMs:

1,2 papers 34
Explanation: Provide strong isolation as each VM runs a separate OS.

Example: Applications in one VM are fully isolated from those in


another VM.

Containers:

Explanation: Share the host OS, providing process-level isolation.

Example: Applications in different containers share the same OS


kernel.

3. Deployment and Portability:

VMs:

Explanation: Typically larger and less portable due to full OS and


application stack.

Example: Moving a VM requires transferring a larger disk image.

Containers:

Explanation: Lightweight and highly portable, containing only the


application and its dependencies.

Example: Containers can be easily moved across different


environments, such as from a developer’s laptop to a production
server.

1.a. Describe with the help of examples the various service


models and deployment models of cloud computing.
Service Models:

1. IaaS (Infrastructure as a Service):

Explanation: Provides virtualized computing resources over the


internet, such as virtual machines, storage, and networks.

1,2 papers 35
Example: Amazon EC2 offers virtual servers that users can configure
and manage.

Scenario: A startup rents virtual machines from Amazon EC2 to host


its website, avoiding the cost of physical hardware.

2. PaaS (Platform as a Service):

Explanation: Provides a platform with tools and services for


developers to build, test, and deploy applications without managing
the underlying hardware.

Example: Google App Engine allows developers to deploy and


manage applications.

Scenario: A developer uses Google App Engine to build and launch a


web application quickly without handling server management.

3. SaaS (Software as a Service):

Explanation: Delivers software applications over the internet,


accessible via a web browser on a subscription basis.

Example: Microsoft Office 365 provides online access to Office


applications like Word and Excel.

Scenario: A company subscribes to Office 365 for email and


productivity tools, enabling employees to work from anywhere.

Deployment Models:

1. Public Cloud:

Explanation: Cloud resources are provided by third-party providers


over the internet and shared among multiple customers.

Example: Google Cloud Platform offers various cloud services to the


public.

Scenario: A business uses Google Cloud to host its online services,


sharing resources with other users to reduce costs.

2. Private Cloud:

1,2 papers 36
Explanation: Cloud resources are dedicated to a single organization,
providing more control and security.

Example: A company’s private cloud within its own data center.

Scenario: A bank uses a private cloud to store sensitive customer data


securely.

3. Hybrid Cloud:

Explanation: Combines public and private clouds, allowing data and


applications to be shared between them.

Example: A company uses a private cloud for sensitive data and a


public cloud for less sensitive data.

Scenario: An online retailer uses a private cloud for customer


information and a public cloud to handle website traffic spikes.

4. Community Cloud:

Explanation: Cloud resources are shared by several organizations with


similar requirements, managed by the organizations or a third party.

Example: A cloud for multiple healthcare providers to share patient


data securely.

Scenario: Universities collaborate using a community cloud to share


research data and resources.

1.b. Explain any five characteristics of Cloud Computing.


1. On-Demand Self-Service:

Explanation: Users can automatically access and manage cloud


resources like computing power and storage without needing human
intervention from the provider.

Example: Launching a virtual machine via a cloud provider’s web


portal.

2. Broad Network Access:

1,2 papers 37
Explanation: Cloud services are available over the internet and
accessible from various devices, such as laptops, smartphones, and
tablets.

Example: Accessing cloud-based email from any internet-connected


device.

3. Resource Pooling:

Explanation: Cloud providers use shared resources to serve multiple


customers, dynamically allocating and reallocating resources based on
demand.

Example: Multiple customers share the same physical servers, with


resources allocated as needed.

4. Rapid Elasticity:

Explanation: Cloud services can quickly scale up or down to meet


demand, providing more resources when needed and reducing them
when not.

Example: Automatically adding more servers during peak traffic times


and scaling down afterward.

5. Measured Service:

Explanation: Cloud usage is monitored, controlled, and reported, so


users pay only for what they use.

Example: Paying for cloud storage based on the amount of data stored
and the time it is stored.

1.c. Explain in detail Cloud Architecture with a diagram.


Cloud Architecture:

Explanation: Cloud architecture consists of components and sub-


components needed for cloud computing. These include a front-end
platform (client-side), back-end platforms (servers, storage), a cloud-
based delivery model, and a network (Internet).

Components:

1,2 papers 38
1. Front-End:

Description: The client-side interface used to interact with the cloud,


typically through a web browser or a client application.

Example: A web browser accessing a cloud-based application like


Google Docs.

2. Back-End:

Description: The server-side infrastructure and applications that


provide cloud services.

Components:

Servers: Physical or virtual machines hosting applications and


data.

Storage: Systems that store data and files.

Databases: Systems that manage and retrieve data.

Applications: Software providing cloud services to clients.

3. Cloud-Based Delivery Model:

Description: The services provided over the cloud, such as SaaS,


PaaS, and IaaS.

4. Network:

Description: The communication layer connecting the front-end and


back-end, usually the Internet.

Diagram:

Client (Front-End) ----> Internet (Network) ----> Cloud (B


ack-End)
|
[ Servers, Storage, Databases, Appl
ications ]

1,2 papers 39
2.a. Explain in detail Bare Metal virtualization and Host-based
virtualization with a diagram.
Bare Metal Virtualization (Type 1 Hypervisor):

Explanation: The hypervisor is installed directly on the physical hardware,


managing the creation and operation of virtual machines without needing a
host operating system.

Example: VMware ESXi, Microsoft Hyper-V.

Benefits: High performance and efficiency, ideal for server environments.

Diagram:

| Physical Hardware |
|-------------------|
| Hypervisor |
|-------------------|
| Virtual Machines |

Host-Based Virtualization (Type 2 Hypervisor):

Explanation: The hypervisor runs on top of a host operating system,


allowing users to run multiple virtual machines as applications.

Example: VMware Workstation, Oracle VirtualBox.

Benefits: Easy to install and use, suitable for desktop virtualization.

Diagram:

| Physical Hardware |
|------------------------|
| Host OS |
|------------------------|
| Type 2 Hypervisor |
|------------------------|
| Virtual Machines |

1,2 papers 40
2.b. Explain why DevOps is needed? How is DevOps different
from traditional software development and operations
process?
Why DevOps is Needed:

Explanation: DevOps is needed to bridge the gap between development


and operations, enabling faster and more reliable software delivery.

Benefits:

1. Improved Collaboration:

Explanation: Enhances communication and collaboration between


development and operations teams.

Example: Developers and operations teams work together from the


planning stage through deployment.

2. Faster Delivery:

Explanation: Streamlines processes, enabling quicker release cycles


and updates.

Example: Continuous integration and continuous delivery (CI/CD)


pipelines automate testing and deployment.

3. Enhanced Quality:

Explanation: Integrates testing throughout the development cycle,


catching issues earlier.

Example: Automated testing ensures code quality before deployment.

4. Scalability:

Explanation: Enables scalable infrastructure management through


automation and configuration management tools.

Example: Using tools like Kubernetes to manage containerized


applications at scale.

5. Reliability:

Explanation: Increases system reliability through consistent monitoring


and rapid issue resolution.

1,2 papers 41
Example: Implementing monitoring tools like Prometheus to track
application performance.

Differences from Traditional Software Development:

1. Development and Operations Integration:

Traditional: Separate development and operations teams with limited


interaction.

DevOps: Integrated teams working collaboratively throughout the


software lifecycle.

2. Release Cycle:

Traditional: Longer release cycles with infrequent updates.

DevOps: Shorter, more frequent release cycles through continuous


integration and continuous delivery.

3. Automation:

Traditional: Manual processes for testing and deployment.

DevOps: Extensive use of automation tools for testing, deployment,


and infrastructure management.

2.c. Write the difference between virtual machine and Docker


container.
1. Resource Utilization:

Virtual Machines (VMs):

Explanation: Each VM runs a full operating system, leading to


higher resource consumption.

Example: A VM requires more memory and CPU to run an OS and


applications.

Docker Containers:

Explanation: Share the host OS kernel, making them lightweight


and more efficient.

1,2 papers 42
Example: Multiple containers can run on a single host with minimal
overhead.

2. Startup Time:

VMs:

Explanation: Take longer to start because they need to boot a


complete operating system.

Example: Booting a VM might take several minutes.

Containers:

Explanation: Start up quickly due to their lightweight nature.

Example: Starting a container usually takes a few seconds.

3. Isolation:

VMs:

Explanation: Provide strong isolation as each VM runs a separate


OS.

Example: Applications in one VM are fully isolated from those in


another VM.

Containers:

Explanation: Share the host OS, providing process-level isolation.

Example: Applications in different containers share the same OS


kernel.

4. Deployment and Portability:

VMs:

Explanation: Typically larger and less portable due to full OS and


application stack.

Example: Moving a VM requires transferring a larger disk image.

Containers:

Explanation: Lightweight and highly portable, containing only the


application and its dependencies.

1,2 papers 43
Example: Containers can be easily moved across different
environments, such as from a developer’s laptop to a production
server.

1,2 papers 44

You might also like