Exam Paper Flashcards

1
Q

What is the difference between middleware and hypervisor

A

Middleware is a software intermediary for communication between applications, which simplifies development and integration in distributed systems

Hypervisors manage virtual machines for multiple OS on a single physical machine, enabling virtualization, improving resource utilisation

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

What are microservices

A

Pieces of an application that run independently and perform one service only, operating in its own environment and storing its own data

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

Advantages of Microservices

A

Resilience
Selective scalability
Extensibility
Flexibility (prog languages)

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

Explain why cloud computing is not network computing

A

CC extends beyond network computing, offering a broad range of services and resources.

CC provides on-demand access to a shared pool of configurable computing resources over the internet

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

What is Virtualization?

A

Creating multiple virtual instances of an entity on a single physical machine

Enhances hardware utilisation, scalability, and isolation, crucial for CC

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

What is Paravirtualisation

A

Definition: Virtualization technique requiring cooperation between the guest OS and hypervisor for efficient resource utilization.

Key Point: Guest OS is modified to be aware of the virtualized environment, enhancing performance compared to full virtualization.

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

What is an Elastic IP Address

A

Definition: Static and publicly routable IP address in cloud computing (e.g. AWS) that can be easily reassigned between virtual machines.

Key Point: Enhances flexibility and high availability by enabling quick remapping of IP addresses within the cloud infrastructure.

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

Define Cloud native applications

A

Definition: Software applications purpose-built for cloud environments, utilizing cloud services, microservices, containerization, and DevOps practices for enhanced scalability, flexibility, and automation.

Key Points: Designed for optimal performance in the cloud, promoting agility, resilience, and rapid development cycles.

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

What is a service mesh and what is its purpose

A

A service mesh is an infrastructure layer built into an app. This visible layer can document how well different parts of an app interact, so it becomes easier to optimise communication and avoid downtime as an app grows.

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

list 3 characteristics of cloud native applications

A

Microservices Architecture: Decomposed into small, independently deployable services for flexibility and scalability.

Containerization: Utilizes container technologies like Docker for consistent deployment and management across environments.

DevOps Practices: Embraces DevOps for collaboration, automation, and CI/CD pipelines, enhancing agility and efficiency in the cloud.

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

Challenges of Cloud-Native Applications

A

Complexity of Microservices Management:
Challenge: Coordinating and managing numerous microservices in a way that ensures seamless communication and integration.

Security Concerns:
Challenge: Addressing the complexities of security in a distributed environment, including securing individual microservices and managing access controls.

Dependency on Cloud Service Providers:
Challenge: Balancing reliance on cloud services while avoiding vendor lock-in, considering potential challenges in migrating between different cloud providers.

Continuous Monitoring and Observability:
Challenge: Ensuring effective logging, monitoring, and observability in the dynamic and distributed nature of cloud-native applications for timely issue identification and resolution.

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

Discuss one Limitation of Cloud Computing

A

Data Security and Privacy Concerns:

Data Breaches:
Concern: Potential for unauthorized access leading to compromise of data confidentiality and integrity.

Regulatory Compliance:
Concern: Challenges in ensuring compliance with industry-specific and regional regulations governing data storage and processing.

Loss of Control:
Concern: Relinquishing some control over data infrastructure when entrusting it to a third-party cloud provider.

Data Residency:
Concern: Issues related to storing data in specific geographic locations to comply with regulatory requirements.

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

Discuss the differences between virtual machines and containers

A

Hypervisor vs. Container Engine:
VMs: Run on a hypervisor, creating and managing virtualized environments.
Containers: Run on a container engine (e.g., Docker), sharing the host OS kernel.

Resource Overhead:
VMs: Greater resource overhead with full OS, consuming more memory and storage.
Containers: Lightweight, sharing the host OS kernel for faster startup, lower resource usage.

Isolation:
VMs: Strong isolation with individual OS, file system, and resources.
Containers: User space isolation; share the kernel, offering efficiency but different security implications.

Portability:
VMs: Less portable due to encapsulating the entire OS.
Containers: Highly portable, encapsulating only the application and dependencies.

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

Benefits of Computation offloading techniques

A

improves performance and responsiveness in computation intensive mobile applications.

Reduces the computational load on the mobile device by distributing processing tasks to external resources

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

Placement of computing resources

A

Location: Cloud servers are suitable for hosting computing resources.

Advantages: Offers scalability and flexibility for handling variable computational demands.

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

Benefits and applications of Microservices architecture

A

Benefits: Enables independent scaling, flexibility, and efficient management of diverse features.

Application: Suitable for dynamic and feature-rich applications, supporting faster updates and fault isolation.

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

Define elasticity

A

The ability of a system to automatically adapt to changing workloads by provisioning and de-provisioning resources dynamically.

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

Define scalability

A

The capability of a system to handle a growing amount of work or to be enlarged to accommodate growth.

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

What is hardware virtualisation? 2 pros and cons

A

a VMM is directly installed on the hardware system, VM hypervisor manages the memory, processor and resources

+ reduced maintenance overhead

+ minimal required changes in guest OS

(-) requires explicit support in the host CPU

(-) limits efficiency and scalability

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

What is the difference in the purpose of containers and unikernels?

A

Containers are designed to run multiple processes but unikernels are designed to run a single process.

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

How do containers differ from VMs?

A

Containers don’t use a hypervisor and provide faster resource provisioning.

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

How do containers leverage the host operating system?

A

They isolate processes and control their access to resources.

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

What is OS virtualisation? 2 pros and cons

A

VMM installed on the OS, useful for simulating multiple environments in parallel

+ multiple VMs operate independently

+ limited impact of malfunctions

  • admin overhead
  • heavy file system consumption
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What is a Container Engine/Runtime?

A

A container engine processes container images based on user requests. It has an embedded runtime component that provides functionality such as security policies and communication channels with the kernel.

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

What is a Container Orchestrator?

A

A tool that supports development, QA, and production environments for continuous testing. It schedules workloads dynamically and provides standardized application definition files.

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

What is the difference in OS usage between containers and unikernels?

A

Containers share the kernel of the host OS while unikernels include a small kernel in each deployment unit.

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

What is the difference in resource allocation between containers and unikernels?

A

With containers, the OS handles resource allocation but with unikernels, the hypervisor handles resource allocation.

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

What is SOAP?

A

Simple Object Access Protocol is a messaging protocol that allows programs that run on different operating systems to communicate using XML

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

What is a Distributed System?

A

A collection of independent computing entities that are interconnected via a network to share resources and are capable of collaborating on a service/task

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

What are some reasons to virtualise?

A

Cost reduction

isolation

testing and evaluation

easy duplication

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

What is server virtualisation? 2 pros and cons

A

a VMM is deployed on the server and the server is divided into multiple virtual servers

+ Efficient and reliable backup and recovery

+ Supports IT operations

  • significant upfront costs
  • lower security and data protection
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

Containers vs Unikernels. Choose containers if

A
  • you want a well documented, supported solution
  • running an app that features complex workloads
  • prefer simple deployments
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

Containers vs Unikernels. Choose Unikernels if

A
  • you want to maximize security
  • minimize resource consumption
  • achieve complete platform independency
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

what is serverless computing and List the advantages of it

A

Serverless computing is a method of providing backend services on an as-used basis, allowing users to deploy code without the hassle of worrying about the underlying infrastructure

  • lower costs
  • simplified scalability
  • simplified backend code
  • quicker turnaround
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

What is REST architecture?

A

Representational State Transfer, is an architectural style for designing networked applications. It relies on a stateless communication model, where clients and servers exchange information

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

What is RPC?

A

RPC (Remote Procedure Call) protocols are simple means to send multiple parameters and receive results by invoking executable actions or processes

37
Q

what is RAID?

A

Redundant Array of Independent Disks

38
Q

Give a brief description of the three basic steps used in Modern Pipelines

A

During Collection, raw data is loaded into a repository, often in a raw data zone

During Transformation, the data is transformed with data from other sources, and the data types are modified so they are ready for data consumption

Delivery makes business-ready data available to other staff.

39
Q

What is a data pipeline

A

A set of data processing elements that move data from source to destination, often from one format to another

40
Q

Give a brief description of RAID 0 (Striping)

A

Data is striped across multiple disks for improved performance. However, there is no redundancy, so the failure of one disk can result in data loss.

41
Q

Give a brief description of RAID 1 (Mirroring)

A

Data is duplicated across two disks for redundancy. If one disk fails, the data is still available on the other

42
Q

Give a brief description of RAID 5 (Striping with Parity)

A

Data is striped across multiple disks, and parity information is used for fault tolerance. If one disk fails, the parity information can be used to reconstruct the data.

43
Q

How do Network-attached storage(NAS) and Storage-area networks (SANs) differ?

A

NAS is a single storage device that is connected to a local network while SANs include storage devices in the local network

44
Q

What is a Network File System (NFS)

A

a network abstraction over a file system that allows a remote client to access it over a network in a similar way to a local file system

45
Q

What is the key distinction between data lakes and data warehouses regarding the type of data they store?

A

Data lakes store data of all structure types, including raw and unprocessed data, whereas data warehouses store data that has been treated and transformed for specific purposes

46
Q

What is a significant difference in storage options and complexity between data lakes and data warehouses?

A

Data lakes offer more storage options, have more complexity, and have different use cases compared to data warehouses

47
Q

What differentiates the data storage requirements for data lakes and data warehouses, especially concerning schema design and data loading?

A

Data warehousing requires schema design before saving data and only supports loading structured data. In contrast, data lakes have no such requirements and can store any data at any scale

48
Q

What is the Compute Over Data paradigm?

A

a computing paradigm where processing of data is performed near the location of the data

49
Q

Differences between Static and Dynamic Computation Offloading

A

Static: specific parts are always executed on the cloud

Dynamic: the application contains a module that decides at runtime whether parts of a program will be executed on the cloud or locally

50
Q

What is Edge Computing?

A

A network architecture concept that enables CC capabilities and an IT service environment at the edge of any network

51
Q

Extra challenges when securing PaaS

A
  • Limited control over Infrastructure
  • Vendor lock-in concerns
  • Data security and compliance
  • Data encryption and privacy
  • Integration and External Services
  • DevOps and Continuous Integration/Deployment (CI/CD)
52
Q

API security considerations

A
  • Employ secure authentication protocols
  • Ensure data transmission is encrypted
  • Validate and sanitise input data
  • Implement rate limiting and throttling mechanisms
  • Manage the life cycles of APIs
  • Implement robust logging and monitoring capabilities
53
Q

Why is securing APIs crucial in IaaS platforms?

A

IaaS platforms heavily rely on APIs for resource provisioning and management.

54
Q

What challenge does vulnerability management pose in IaaS environments, and why is it challenging to ensure all resources are up-to-date with the latest security patches?

A

Identifying and patching vulnerabilities in a timely manner is challenging in IaaS due to numerous virtual instances and a fast-paced deployment model.

55
Q

What is a challenge associated with limited control over infrastructure in PaaS, particularly concerning security configurations?

A

Limited control over infrastructure in PaaS makes it challenging to set custom security measures due to the abstracted underlying infrastructure

56
Q

Why does data security become critical in PaaS platforms?

A

Data security is critical in PaaS due to shared resources

57
Q

What is crucial for maintaining privacy and meeting compliance requirements in PaaS, especially when dealing with sensitive data?

A

Proper encryption of data at rest, in transit, and during processing is crucial in PaaS for maintaining privacy and meeting compliance requirements.

58
Q

Why is securing integrations with external services and APIs important in PaaS applications?

A

to prevent security vulnerabilities

59
Q

What challenges may organizations face regarding data residency and compliance when using SaaS

A

to understand and ensure compliance with data residency requirements and international regulations, particularly when data is hosted in multiple geographic locations.

60
Q

What limitations might organizations encounter in SaaS applications?

A

Customisation, posing challenges for aligning with specific security requirements or integrating seamlessly with other on-premises or cloud-based solutions.

61
Q

What challenges may arise when integrating SaaS applications with on-premise systems?

A

security challenges, especially concerning data flow and access controls

62
Q

Why is securing APIs crucial in SaaS applications, and what specific measures are important for preventing data breaches or unauthorized access?

A

SaaS applications often expose APIs for integration. Securing these APIs, including proper authentication and authorization mechanisms, is crucial to prevent data breaches or unauthorized access.

63
Q

What is essential for maintaining business continuity when using SaaS?

A

understanding the provider’s SLAs, backup, and disaster recovery mechanisms

64
Q

What role do end-users play in SaaS security?

A

preventing issues like unauthorized sharing of sensitive information or falling victim to phishing attacks.

65
Q

How to ensure data resilience when using SaaS?

A

Understanding of the backup and recovery processes of the provider

66
Q

In terms of SaaS reliability and availability, what measures can organizations take to maintain business continuity?

A

Organizations can maintain business continuity by understanding and adhering to provider SLAs, backup, and disaster recovery mechanisms, ensuring the availability and reliability of SaaS applications.

67
Q

Why should you validate and sanitise input data in regard to API Security?

A

To prevent injection attacks

68
Q

How to protect APIs from abuse and potential denial-of-service attacks?

A

By implementing rate limiting and throttling mechanisms

69
Q

What should you regularly review and update in an APIs lifecycle?

A

Security measures

70
Q

In API security, how do you detect and respond to security incidents?

A

Implement robust logging and monitoring capabilities

71
Q

What should you thoroughly assess and understand when integrating with third-party APIs

A

Their authentication mechanisms, data protection practices, and overall security posture.

72
Q

What is Mobile Cloud Computing

A

An infrastructure where both the data storage and data processing happen outside of the mobile device

73
Q

What is Device-to-Device Collaboration and how does it work?

A

Device-to-device collaboration involves multiple devices cooperating (locally) to perform a computation task.

How it works:

Devices communicate directly using Wi-Fi, Bluetooth, or ad-hoc networks.
Computation task is divided, and each device is assigned a portion.
Devices collaborate by sharing intermediate results or coordinating efforts.
Final result is obtained by aggregating partial results or iterative exchanges.

74
Q

What are Sockets and how do they work

A

Sockets are a communication method for processes on different devices to exchange data (over a network)

How it works:

  1. Client establishes a connection to the server using sockets.
  2. Computation task is divided.
  3. Client sends data/instructions to the server through sockets.
  4. Server performs computation.
  5. Results are sent back to the client through the socket connection.
75
Q

Give a brief overview of the factors affecting decentralisation

A

Architectural: how many physical computers is a system made up of?

Political: how many individuals or organizations control the computers that the system is made up of?

Logical: does the interface and data structures that the system presents and maintains look more like a single monolithic object, or an amorphous (shapeless) swarm?

76
Q

What is the Cloud-Edge continuum?

A

a spectrum covering everything from big cloud data centers to smaller edge devices.

77
Q

Where to place computing and data processing resources within the cloud-edge continuum?

A

depends on factors like latency, data volume, cost, and specific use cases

78
Q

What are some challenges behind securing IaaS?

A
  • Shared responsibility model
  • API Security
  • Vulnerability Management
  • Incident Response and Forensics
  • Continuous Monitoring and Auditing
79
Q

What are some challenges behind securing SaaS?

A
  • Data residency and compliance
  • customisation limitation
  • data security and privacy controls
  • Integration with on-premise systems
  • Security of APIs
  • Service Reliability and availability
  • User education and awareness
  • Data backup and recovery
80
Q

Potential attacks on APIs

A

API abuse or injection

81
Q

What is the shared responsibility model in the context of IaaS, and what are the respective responsibilities of the provider and customers?

A

The shared responsibility model in IaaS means the provider secures the infrastructure, while customers are responsible for securing their data and applications.

82
Q

Why does incident response become more complex in a distributed and virtualized IaaS environment?

A

Establishing effective incident response plans and conducting forensics investigations may require specialized tools and expertise.

83
Q

Why is achieving continuous monitoring and auditing challenging in a dynamic IaaS environment, and what aspects should be regularly monitored for maintaining security?

A

Achieving continuous monitoring and auditing in a dynamic IaaS environment can be resource-intensive. Regular monitoring of configurations, access controls, and activities is essential for maintaining security.

84
Q

What concerns may arise in adopting a PaaS solution regarding vendor lock-in?

A

Migrating applications to another platform can be challenging, and users may feel constrained by specific security features of the chosen PaaS provider.

85
Q

What does “as a service” offer

A
  1. scalability
  2. multi-tenancy (resource sharing)
  3. device independence (ease of access)
  4. easily acquirable
86
Q

List the advantages of Cloud Storage

A
  1. cheaper storage solution than physical
  2. convenient data sharing
  3. reliability
87
Q

List the disadvantages of Cloud Storage

A
  1. network connection reliance
  2. security
88
Q

MapReduce in a nutshell

A
  1. Prepare the input to map by selecting a key
  2. Execute map in each node and generate output based on another key
  3. Shuffle the output
  4. Execute reduce
  5. Produce the final output