Azure Compute Resources Flashcards

1
Q

Virtual Machine Extensions

A

Small applications that provide post-deployment config and automation tasks on Azure VMs.

(e.g., software installation, anti-virus protection, configuration script inside)

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

Naming VMs

A

A good convention is to include environment, location, instance, product/service, role.

(e. g., devusc-webvm01) dev environment, located in US south central, for web dev
(e. g., prodausse-sql03) prod in Australia south east, for sql, 3rd instance.

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

VMs - Compute costs

A

Priced per hour
Charged per minute

Stopping and deallocating a VM releases the hardware and incurs no cost

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

VMs - Compute costs

A

Priced per hour
Charged per minute

Stopping and deallocating a VM releases the hardware and incurs no cost

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

VM Storage costs

A

Charged for the storage a VM uses.

Status of VM has no relation to storage charges (i.e., a stopped/deallocated VM still incurs storage costs)

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

VMs disks

A

All Azure VMs have at least two disks.

OS disk (C:\)
Temp disk (D:\)
Can have one or mare data disks
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Connecting to virtual machines - windows os

A

Remote Desktop Protocol (RDP) - establish a GUI

Windows Remote Management (WinRM) - establish a command line session to an Azure VM that runs any supported version of windows.

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

connecting to virtual machines (linux)

A

SSH is an encrypted connection protocol that allows secure sign-ins over unsecured connections. SSH is the default connection protocol for Linux VMs hosted in Azure.

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

VMs : Update Domain

A

An update domain (UD) is a group of nodes that are upgraded together during the process of a service upgrade (rollout).

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

VMs: Fault Domain

A

A fault domain (FD) is a group of nodes that represent a physical unit of failure. A fault domain defines a group of virtual machines that share a common set of hardware, switches, that share a single point of failure.

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

Availability Zones: Zonal Services

A

Pins the resource to a specific zone (for example, virtual machines, managed disks, Standard IP addresses).

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

Availability Zones: Zone-redundant services.

A

Platform replicates automatically across zones (for example, zone-redundant storage, SQL Database).

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

VM extensions

A

Azure virtual machine extensions are small applications that provide post-deployment configuration and automation tasks on Azure VMs.

(e.g., if a virtual machine requires software installation, anti-virus protection, or a configuration script inside, a VM extension can be used)

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

Custom Script Extensions (CSE)

A

used to automatically launch and execute virtual machine customization tasks post configuration.

Your script extension may perform simple tasks such as stopping the virtual machine or installing a software component. However, the script could be more complex and perform a series of tasks.

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

Desired State Configuration (DSC)

A

is a management platform in Windows PowerShell. DSC enables deploying and managing configuration data for software services and managing the environment in which these services run.

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

Web App Scaling: Scale Up

A

You scale up by changing the pricing tier of the App Service plan that your app belongs to.

Get more CPU, memory, disk space, and extra features like dedicated virtual machines (VMs), custom domains and certificates, staging slots, autoscaling, and more.

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

Web App Scaling : Scale Out

A

Increase the number of VM instances that run your app. You can scale out to as many as 30 instances, depending on your pricing tier.

The scale instance count can be configured manually or automatically (autoscale). Autoscale is based on predefined rules and schedules.

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

App Service Plan Scaling: Metric-Based

A

Metric-based rules measure application load and add or remove VMs based on that load.

For example, do this action when CPU usage is above 50%. Examples of metrics are CPU time, Average response time, and Requests.

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

App Service Plan Scaling: Time-based.

A

Time-based (schedule-based) rules allow you to scale when you see time patterns in your load and want to scale before a possible load increase or decrease occurs.

For example, trigger a webhook every 8am on Saturday in a given time zone.

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

Creating an App Service: config choices

A

Requires a resource group and service plan.

Name: Must be unique
Publish: Host code or a docker container
Runtime stack: The stack to run the app (language, SDK)
Operating System: Linux or Windows
Region: ...
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

App Service: Deployment Slots

A

Deployment slots are live apps with their own hostnames. App content and configurations elements can be swapped between two deployment slots, including the production slot.

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

App Service: Application Insights

A

A feature of Azure Monitor that monitors your live applications.

(request rates, response times, failure rates, dependency rates, page views, load counts, user and session counts, performance counters)

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

Containers vs VMs: Isolation

A

Container: lightweight isolation from the host and other containers

VMs: Complete isolation from the host OS and other VMs (strong security boundary)

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

Containers vs VMs: OS

A

Containers: Runs the user mode portion of an operating system and can be tailored to contain just the needed services for your app.

VMs: Runs a complete operating system including the kernel, thus requiring more system resources (CPU, memory, and storage).

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

Containers vs VMs: Deployment

A

Containers: Deploy individual containers by using Docker via command line; deploy multiple containers by using an orchestrator such as Azure Kubernetes Service.

VMs: Deploy individual VMs by using Windows Admin Center or Hyper-V Manager; deploy multiple VMs by using PowerShell or System Center Virtual Machine Manage

26
Q

Containers vs VMs: Persistent Storage

A

Containers: Use Azure Disks for local storage for a single node, or Azure Files (SMB shares) for storage shared by multiple nodes or servers.

VMs: Use a virtual hard disk (VHD) for local storage for a single VM, or an SMB file share for storage shared by multiple servers.

27
Q

Containers vs VMs: Fault Tolerance

A

Containers: If a cluster node fails, any containers running on it are rapidly recreated by the orchestrator on another cluster node.

VMs can fail over to another server in a cluster, with the VM’s operating system restarting on the new server.

28
Q

Azure Container Instances: Container Group

A

The top-level resource in Azure Container Instances.

  • a collection of containers that get scheduled on the same host machine
  • containers in a container group share a lifecycle, resources, local network, and storage volumes
29
Q

Docker Container:

A

Container is an instance of a Docker image. It represents the execution of a single application, process, or service. It consists of the contents of a Docker image, an execution environment, and a standard set of instructions.

30
Q

Docker Container Image:

A

refers to a package with all the dependencies and information required to create a container. The dependencies include frameworks and the deployment and execution configuration that a container runtime uses

31
Q

Container Build

A

refers to the action of building a container image based on the information and context provided by the Dockerfile. The build also includes any other files that are needed.

32
Q

Docker Pull

A

Pull refers to the process of downloading a container image from a container registry.

33
Q

Docker Push

A

Push refers to the process of uploading a container image to a container registry.

34
Q

Dockerfile

A

refers to a text file that contains instructions on how to build a Docker image. The Dockerfile is like a batch script. The first line identifies the base image. The rest of the file includes the build actions.

35
Q

AKS: Pools

A

Pools are groups of nodes with identical configurations.

36
Q

AKS Nodes

A

Nodes are individual virtual machines running containerized applications.

37
Q

AKS Pods

A

Pods are a single instance of an application. A pod can contain multiple containers.

38
Q

AKS: Container

A

is a lightweight and portable executable image that contains software and all of its dependencies.

39
Q

AKS Deployment

A

Deployment has one or more identical pods managed by Kubernetes.

40
Q

AKS Manifest

A

Manifest is the YAML file describing a deployment.

41
Q

AKS Kubernetes cluster is divided into two components:

A

Azure-managed nodes, which provide the core Kubernetes services and orchestration of application workloads.

Customer-managed nodes that run your application workloads.

42
Q

AKS: Kubelet

A

the Kubernetes agent that processes the orchestration requests from the Azure-managed node, and scheduling of running the requested containers.

43
Q

AKS: kube-proxy

A

Virtual networking is handled by the kube-proxy on each node. The proxy routes network traffic and manages IP addressing for services and pods.

44
Q

AKS: Container Runtime

A

The container runtime is the component that allows containerized applications to run and interact with additional resources such as the virtual network and storage.

45
Q

AKS Networking: Cluster IP

A

an internal IP address for use within the AKS cluster. Good for internal-only applications that support other workloads within the cluster

46
Q

AKS Networking: NodePort

A

Creates a port mapping on the underlying node that allows the application to be accessed directly with the node IP address and port.

47
Q

AKS LoadBalancer

A

Creates an Azure load balancer resource, configures an external IP address, and connects the requested pods to the load balancer backend pool. To allow customers traffic to reach the application, load-balancing rules are created on the desired ports.

48
Q

AKS ExternalName

A

ExternalName - Creates a specific DNS entry for easier application access.

49
Q

AKS Storage: Volumes

A

A volume represents a way to store, retrieve, and persist data across pods and through the application lifecycle.

Azure Disks can be used to created a Kubernetes DataDisk resource.

Azure Files can be used to mount an SMB 3.0 share backed by Azure Storage account to pods.

50
Q

AKS Storage persistent volumes

A

A persistent volume (PV) is a storage resource created and managed by the Kubernetes API that can exist beyond the lifetime of an individual pod

51
Q

AKS Storage classes

A

To define different tiers of storage, such as Premium and Standard, you can create a StorageClass.

The StorageClass also defines the reclaimPolicy.

This reclaimPolicy controls the behavior of the underlying Azure storage resource when the pod is deleted and the persistent volume may no longer be required.

52
Q

AKS Storage: Persistent Volume Claims

A

A PersistentVolumeClaim requests either Disk or File storage of a particular StorageClass, access mode, and size.

A PersistentVolume is bound to a PersistentVolumeClaim once an available storage resource has been assigned to the pod requesting it. There is a 1:1 mapping of persistent volumes to claims.

53
Q

AKS Scaling (HPA)

A

Kubernetes uses the horizontal pod autoscaler (HPA) to monitor the resource demand and automatically scale the number of replicas.

By default, the horizontal pod autoscaler checks the Metrics API every 30 seconds for any required changes in replica count.

When changes are required, the number of replicas is increased or decreased accordingly. Horizontal pod autoscaler works with AKS clusters that have deployed the Metrics Server for Kubernetes 1.8+.

54
Q

AKS Cluster autoscaler

A

To respond to changing pod demands, Kubernetes has a cluster autoscaler that adjusts the number of nodes based on the requested compute resources in the node pool.

55
Q

Azure Automation State Configuration

A

Azure Automation State Configuration is an Azure service built on PowerShell.

Used to make sure that the virtual machines (VMs) in a cluster are in a consistent state, with the same software installed and the same configurations.

56
Q

PowerShell DSC

A

Is a declarative management platform that Azure Automation State Configuration uses to configure, deploy, and control systems.

You specify the desired state and let DSC do the work to get there.

57
Q

The local configuration manager (LCM)

A

…is a component of the Windows Management Framework (WMF) on a Windows operating system.

The LCM is responsible for updating the state of a node, like a VM, to match the desired state.

58
Q

Every time the The local configuration manager (LCM) runs, it completes the following steps:

A

Get: Get the current state of the node.
Test: Compare the current state of a node against the desired state by using a compiled DSC script (.mof file).
Set: Update the node to match the desired state described in the .mof file.
You configure the LCM when you register a VM with Azure Automation.

59
Q

The local configuration manager (LCM) - Push mode:

A

Push mode: An administrator manually sends, or pushes, the configurations to one or more nodes. The LCM makes sure that the state on each node matches what the configuration specifies.

60
Q

The local configuration manager (LCM) - Pull mode

A

Pull mode: A pull server holds the configuration information.

The LCM on each node polls the pull server at regular intervals, by default every 15 minutes, to get the latest configuration details.

These requests are denoted as step 1 in the following diagram. In step 2, the pull server sends the details about any configuration changes back to each node.