Cloud Flashcards

1
Q

Differences between a Cluster and a Grid

A
  • Cluster: Group of interconnected computers working as a single system, tightly coupled and located in close proximity. Provides high performance and availability for specific applications.
  • Grid: Distributed computing infrastructure spanning multiple clusters or organizations. Focuses on resource sharing and collaboration across administrative domains.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Rationale of Cluster Computing

A
  • High performance: Distributes tasks across nodes for parallel processing, reducing computation time.
  • Scalability: Easily add nodes to handle increasing workloads without replacing infrastructure.
  • Fault tolerance: Redundancy and failover mechanisms ensure high availability and minimize downtime.
  • Cost-effectiveness: More cost-effective than a single high-end server.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Common Computing Model for Cluster of Computers

A

farm: the farmer
distributes computation to workers (PCs), keeping them
balanced.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What happens if a pc in the farm model fails?

A

It will be replaced with a PC from the free pool.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Amdahl’s Law Equation

A

Speedup = 1 / [(1 - p) + (p / n)], where p is the portion that can be parallelized and n is the number of processors.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Amdahl’s Law

A

Predicts the potential speedup of a program when only a portion of it can be parallelized.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Definition of Cloud Computing

A

“Cloud computing is a model for enabling ubiquitous,
convenient, on-demand network access to a shared pool of
configurable computing resources (for example, networks,
servers, storage, applications and services) that can be rapidly
provisioned and released with minimal management effort or
service or provider interaction.”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Scalability in Cloud Computing

A

Ability to handle increasing workloads by adding resources, either manually or automatically.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Elasticity in Cloud Computing

A

Ability to dynamically scale resources up and down based on demand, automatically allocating or releasing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Infrastructure as a service (IaaS)

A

Bare bone resources are available to
use (the user deploys the OS and applications)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Software as a service (SaaS)

A

Customers can use services and/or
applications running in the cloud (applications and services ready to
use).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Platform as a service (PaaS)

A

Software suits are available to users
(application servers, database servers, middleware, development
runtime environments).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Private Clouds

A

– Use is restricted (intranet VPN);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Hybrid clouds

A

Combination of the two (e.g., backup, files recovery);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Community clouds

A

Access given to a community of users.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Criteria for Selecting Public Cloud

A

Cost-effectiveness, scalability, and flexibility. Suitable for organizations with unpredictable workloads and limited IT budget.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Criteria for Selecting Private Cloud

A

Compliance requirements, data security, and control. Suitable for organizations with sensitive data or regulatory restrictions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

When to Use a Community Cloud

A

When multiple organizations with shared requirements collaborate and share resources, such as in research or industry-specific projects. Offers cost-sharing and resource pooling benefits.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What is the Mobile Cloud?

A

Combination of mobile computing and cloud computing, where mobile devices leverage cloud resources and services to enhance their capabilities and storage capacity.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Role of an Edge Server in a Mobile Cloud System

A

Located at the edge of the network, it acts as an intermediary between mobile devices and the cloud, providing localized processing, caching, and reducing latency for mobile applications.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Services that can be run by an Edge Server

A

Content caching, data filtering, real-time analytics, security functions, and local computation offloading.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Definition of a Cloudlet and Interaction with Mobile Devices

A

Small-scale cloud data center located at the edge of the network. Mobile devices interact with cloudlets to offload computation, access resources, and leverage local services.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Dynamic VM Synthesis in Mobile Offloading to a Cloudlet

A

Process of creating a virtual machine instance on the cloudlet to execute offloaded tasks from a mobile device, optimizing resource utilization and performance.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Spine/Leaf Model

A

Architecture for cloud networks with a hierarchical structure.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Benefits of Using the Spine/Leaf Model
High scalability, flexibility, fault tolerance, and efficient interconnectivity between network switches.
26
Top-of-Rack Placement of Switches in Cloud Networks
One or two Ethernet switches are installed inside each rack to provide local server connectivity. Allows for ease of server-to-switch connectivity, removing the need for long cable runs
27
End-of-Row Placement of Switches in Cloud Networks
Was devised to provide two central points of aggregation for server connectivity in a row of cabinets: each server within each cabinet would be connected to each end-of-row switch cabinet (right and left)
28
Concept of Oversubscription
Allocating more network bandwidth or resources to users or devices than what is physically available, based on the assumption that not all users will require maximum capacity simultaneously. Example: A network switch with 10 Gbps uplink capacity shared among multiple devices with a total potential demand of 20 Gbps.
29
Impact of Oversubscription in a Cloud Network
Can be beneficial as it allows for resource sharing and cost savings. However, excessive oversubscription can lead to performance degradation and congestion if demand surpasses available resources.
30
Overlay Network in a Cloud
Logical network infrastructure built on top of the physical network, enabling communication and connectivity between virtual machines or containers regardless of their physical location.
31
Use of Virtual Tunnel EndPoints
Network endpoints responsible for encapsulating and decapsulating network traffic in overlay networks, facilitating communication between virtual machines or containers.
32
Benefits of Using Virtual Machines in Cloud Computing
Isolation, flexibility, portability, resource allocation, and management, allowing multiple operating systems or applications to run concurrently on the same physical hardware.
33
Role of the Hypervisor and its Different Types
Software layer that enables the creation and management of virtual machines. Types include Type 1 (bare-metal) hypervisors installed directly on hardware, and Type 2 (hosted) hypervisors installed on top of an operating system.
34
Reason for Amazon Changing its Initial Hypervisor with Nitro
Amazon's custom-built hypervisor. Changed to improve performance, security, and efficiency by offloading certain virtualization tasks to dedicated hardware.
35
Amazon Machine Image (AMI)
A template that contains the desired software configuration, an OS and a root device volume at a minimum. Optionally, there is an application and supporting software.
36
Non-Live VM Migration
The VM is suspended, the state is migrated to the new host where it is resumed.
37
Live VM migration
In live migration, VM continues to run during the process of moving from one host to another one. Therefore, the process is transparent to the users.
38
Pre-copy
Migration of memory pages takes place in iterations, while the VM is running.
39
Post copy
First, the VM is suspended. • The CPU state is transferred to the destination. • The VM is started at the destination and the memory pages are moved from the source host to the destination host on demand.
40
Hybrid
The most frequently used VM memory pages are transferred. • Then, the VM at source is suspended to transfer the minimum state of the VM to the destination. • VM is resumed at the destination host.
41
Benefits of Pre-copy
Reduces VM downtime. However, transferring memory pages several times increases the execution time and consumes network bandwidth.
42
Benefits of post copy
Reduces migration time but may result in temporary performance degradation until the entire memory of the virtual machine is transferred.
43
Benefits of hybrid
Combined approach that combines elements of both pre-copy and post-copy migration, aiming to achieve a balance between migration time and downtime while ensuring efficient memory transfer.
44
Virtual Machines
Provide full isolation and encapsulation by running a complete operating system and application stack within a virtualized environment.
45
Containers
Lightweight, isolated environments that share the host operating system's kernel, allowing for faster startup times and more efficient resource utilization.
46
Name Spaces
A namespace is a set of qualified names that are used for addressing entities (objects) within its scope.
47
Cgroup
Cgroups (control group) are a feature of Linux (introduced by Google in 2007) that limits the access of an application to a specific amount of resources (e.g., only 50% CPU).
48
Docker Architecture
Consists of three main components: Docker Engine, Docker Images, and Docker Containers. Docker Engine manages and runs containers, Docker Images are read-only templates used to create containers, and Docker Containers are the running instances of images.
49
Kubernetes Cluster
A group of interconnected machines (nodes) that collectively run containerized applications using the Kubernetes orchestration system. It provides scalability, high availability, and automated management of containers.
50
Role of the Kubernetes Master
Manages and controls the cluster, including scheduling container deployments, monitoring cluster health, scaling applications, and handling API requests from users or external systems.
51
Role of a Pod in Kubernetes
The smallest unit of deployment in Kubernetes, representing one or more tightly coupled containers that share network and storage resources. Pods are scheduled and managed as a single entity by the Kubernetes master.
52
Purpose of ReplicaSets in Kubernetes
Ensure the desired number of identical replicas (pods) of a particular application or service are running in the cluster, providing fault tolerance, scalability, and high availability.
53
Overview of Kubernetes Jobs
Used to run batch or scheduled tasks in the cluster, ensuring a specific task completes successfully before terminating the associated pods. Jobs can be used for one-time or recurring tasks.
54
Database as an External Service in Kubernetes
Running a database system outside the Kubernetes cluster and connecting it to the applications running in the cluster. Allows for decoupling of storage and provides better control over database management.
55
Objects Created for the MySQL Singleton in Kubernetes and their Usage
1. A persistent volume to manage the lifespan of the on-disk storage independently of the running MySQL app; 2. A MySQL pod that will run the MySQL app 3. a service that will expose this pod to other containers in the cluster.
56
Role of DNS in Kubernetes
DNS (Domain Name System): Provides name resolution for services within the Kubernetes cluster, allowing communication between pods and services using domain names instead of IP addresses.
57
Cloud Object Storage and Composition of an Object
A method of storing unstructured data in the cloud, where data is organized as objects, each consisting of data content, metadata, and a unique identifier (key).
58
Use Cases for Object Storage
Suitable for storing large amounts of unstructured data, such as media files, backups, logs, and archival data. Ideal for web applications, content distribution, and data analytics.
59
Operation of Cloud Block Storage
Provides persistent block-level storage that can be attached to virtual machines. Allows for creating and managing disks with desired capacity, performance, and durability characteristics.
60
Service-Oriented Architecture (SOA)
Approach to designing and building software systems based on the concept of services, which are self-contained, modular components that communicate with each other through well-defined interfaces.
61
What is a service in the context of service-oriented architecture (SOA)?
A unit of software that provides a specific functionality and can be reused by multiple applications.
62
What is the main advantage of using multiple services in a single job in SOA?
The main advantage is reusability, as multiple services can be composed and reused to perform a specific job.
63
What is the challenge faced by companies in integrating on-premises services and cloud services in the context of SOA?
The challenge is to seamlessly integrate on-premises services with cloud services to ensure smooth communication and data exchange between the two environments
64
What are the roles in SOA?
Service providers, service clients, and service interfaces. Service providers maintain and advertise services, service clients locate and use services, and service interfaces define the specifications of services.
65
How are service interfaces frequently defined in SOA?
Using the Web Service Definition Language (WSDL), which provides a standardized way to describe the functionalities and operations of a service.
66
What is service orchestration in the context of SOA?
The coordinated interaction of multiple services to achieve a desired business goal. It involves the workflow and composition of services to perform complex tasks.
67
What is an Enterprise Service Bus (ESB)?
A software architecture that provides support for assembling multiple services by handling connectivity, messaging, routing, and data transformation. It ensures interoperability among services.
68
How are ESBs and iPaaS (integration as a platform) solutions built?
According to open standards and facilitate communication among services through message passing or dedicated messaging services.
69
What is the purpose of a registry in the context of SOA?
A registry enables developers to quickly find and reuse services for assembling new applications. It serves as a centralized repository of available services.
70
What is the layer stack defined by the SOA reference architecture?
The SOA reference architecture defines a layer stack consisting of nine layers. The important layers include the consumer layer, integration layer, service layer, and service component layer.
71
What is the typical execution flow in the SOA architecture?
The typical execution flow involves service consumers requesting services through the integration layer, which then invokes the business process utilizing one or more services. The service layer binds and invokes service components, and the operational systems layer carries out the service request.
72
What are the key components of service management in the context of SOA?
Service management includes monitoring, reporting, alerting, brokering, registry, and clients. It also involves content-based routing, transformation, error handling, message validation, service discovery, location, validation, import/export, service bus security, authentication, authorization, credentials, and message security.
73
What are the differences between SOAP and RESTful services?
SOAP services work by sending SOAP messages embedded in HTTP requests and responses, utilizing XML format. RESTful services, on the other hand, identify services by URL endpoints and use specific HTTP methods such as GET or PUT.
74
What are non-RESTful web services?
Non-RESTful web services define a remote procedure call using SOAP, HTTP, and XML-type data format. SOAP messages are routed through intermediary SOAP nodes, allowing for additional processing and services at runtime.
75
What are the basic SOAP message exchange patterns?
The basic SOAP message exchange patterns include SOAP request-response and SOAP response-only.
76
How does SOAP routing work in web service routing?
SOAP routing involves the generation of a WS-Routing "path" header indicating the route and using "via" elements to specify intermediaries. The ultimate destination is deduced by the last "via" element. The destination can also become an initial sender and use the reverse path to send a response.
77
What is the purpose of an Enterprise Service Bus (ESB) in SOAP routing?
An ESB provides support for SOAP routing by handling connectivity, messaging, routing, and data transformation. It ensures that SOAP messages are properly routed to their intended destinations.
78
What is the typical architecture of an ESB?
The typical architecture of an ESB includes service providers, service consumers, a registry, and various components for content-based routing, transformation, error handling
79
What is the purpose of content-based routing in an ESB?
Content-based routing in an ESB allows the system to route messages to different endpoints based on their content. It enables dynamic routing based on specific conditions or criteria defined within the message.
80
What is the role of an ESB in message transformation?
An ESB facilitates message transformation by converting messages from one format to another, ensuring compatibility and seamless communication between different systems and services.
81
What is the purpose of an ESB in error handling?
An ESB provides error handling capabilities by intercepting and managing error messages during the message exchange process. It allows for proper logging, reporting, and resolution of errors to ensure the reliability and robustness of the system
82
What is service discovery in the context of SOA?
Service discovery refers to the process of locating and identifying available services within a SOA environment. It allows service consumers to dynamically find and utilize services based on their specific requirements.
83
What is the purpose of service validation in SOA?
Service validation ensures that services adhere to the defined specifications and standards. It involves checking the compatibility, correctness, and compliance of services with the expected behavior and interface contracts.
84
What is service import/export in the context of SOA?
Service import/export allows services to be shared and reused across different SOA environments or organizations. It enables the exchange and integration of services between disparate systems.
85
What is service bus security in SOA?
Service bus security involves implementing measures to protect the integrity, confidentiality, and availability of messages and data exchanged within the service bus. It includes authentication, authorization, and encryption mechanisms.
86
What is message security in the context of service bus security?
Message security focuses on securing the content of messages exchanged between services. It involves encryption, digital signatures, and other mechanisms to ensure the privacy and integrity of the message payload.
87
What is the purpose of authentication in service bus security?
Authentication verifies the identity of users or services accessing the service bus. It ensures that only authorized entities can interact with the services and prevents unauthorized access.
88
What is the role of authorization in service bus security?
Authorization determines the permissions and privileges granted to authenticated entities within the service bus. It ensures that only authorized actions can be performed and prevents unauthorized operations.
89
What are credentials in the context of service bus security?
Credentials are pieces of information used to authenticate and authorize entities within the service bus. They can include usernames, passwords, certificates, or tokens that validate the identity and permissions of the entities.
90
What are the advantages of service-oriented architecture (SOA)?
91
How can a mobile client address a web service using SOAP?
SOAP allows a mobile client to address a web service by sending SOAP messages over HTTP
92
What is serverless cloud computing?
Serverless cloud computing is a model where cloud providers handle infrastructure management, allowing developers to focus solely on writing and deploying code.
93
What is a microservice?
A microservice is a small, independent component of an application that performs a specific function and communicates with other microservices via APIs
94
What is the serverless computing model?
In the serverless computing model, developers write functions that are executed in response to events, without the need to provision or manage servers.
95
When does cold start occur in serverless computing?
Cold start occurs when a serverless function is invoked for the first time or after a period of inactivity, resulting in a longer response time due to the need to initialize resources.
96
What is a possible serverless architecture for MS Azure?
The platform consists of a web server which exposes the public REST API and a worker service which manages and executes function containers. The web service discovers available workers through a messaging layer consisting of two kind of Azure Storage queues. The function metadata is stored in Azure Storage tables and the function code is stored in Azure Storage blobs.
97
What triggers the execution of a Lambda function?
Lambda functions are triggered by events such as changes in data, API calls, or scheduled events set up in the cloud provider's environment.
98
What is a warm container?
A warm container in serverless computing refers to a pre-initialized execution environment that reduces the cold start time for subsequent invocations of a function.
99
How does an event invoke a Lambda function?
When an event triggers a Lambda function, the function is loaded into a container, the event data is passed as input, and the function executes its logic.
100
How can an edge server be effective in a mobile cloud system?
Edge servers in a mobile cloud system can reduce latency and improve performance by processing data and executing tasks closer to the mobile devices at the edge of the network.
101
What is the usefulness of the mobile cloud architecture?
The mobile cloud architecture enables offloading resource-intensive tasks from mobile devices to the cloud, improving performance, battery life, and enabling access to cloud services.
102
What is crowd-sensing?
Crowd-sensing refers to the collection of data from a large number of individuals using their mobile devices to gather information about their environment or specific events.
103
Is there any difference between context-awareness and crowd sensing?
Yes, there is a difference. Context-awareness refers to systems that adapt their behavior based on the context of the user or the environment, while crowd sensing focuses on collecting data from a large group of individuals.
104
What is the role of edge servers in crowd-sensing systems?
Edge servers in crowd-sensing systems can aggregate, process, and analyze data collected from mobile devices at the edge, reducing the need for transmitting large amounts of raw data to the centralized cloud.
105
What is an event in a distributed system? When does an event become an alert?
In a distributed system, an event is a change or occurrence of significance. An event becomes an alert when it meets certain conditions or thresholds that trigger a notification or action.
106
What is the basic publish/subscribe model?
The publish/subscribe model is a messaging pattern where publishers send messages to a central broker, and subscribers receive messages based on their specific interests or subscriptions.
107
How can scalability become a feature of a publish/subscribe system?
Scalability can be achieved in a publish/subscribe system by allowing multiple publishers and subscribers to dynamically join or leave the system without affecting its overall performance.
108
What is the full publish/subscribe system architecture?
The full publish/subscribe system architecture includes components for registering publishers and subscribers, a message broker for message routing, and mechanisms for scalability and fault tolerance.
109
What strategies can save communication and computation resources in a publish/subscribe system?
Strategies like content-based filtering, topic hierarchy, and selective subscription can save communication and computation resources by reducing the number of unnecessary messages delivered to subscribers.
110
When is computation offloading useful?
Computation offloading is useful when a mobile device transfers resource-intensive tasks to a more powerful remote server or cloud, reducing local processing overhead and extending battery life.
111
What are the steps of computation offloading?
The steps of computation offloading include task partitioning, decision making (what and when to offload), task transmission, remote execution, and result retrieval or synchronization.
112
What is the cloudlet architecture and how does it work?
The cloudlet architecture combines cloud computing with edge computing. Cloudlets are small-scale data centers located at the edge of the network, providing low-latency computation and storage resources to nearby mobile devices.
113
What factors can influence the decision to offload computation?
Factors like network conditions,user preferences, device capabilities, and task characteristics can influence the decision to offload computation in a mobile cloud system.