Module 6 Flashcards

1
Q

What is meant by Compute in Azure

A

On demaind computing service for cloud based Apps

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

What types of resources provides compute that are not serverless

A

VMs and Containers

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

When do you pay for compute resources

A

Whilst they are being used

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

Compute resources are available on demand and can be created how quickly

A

In seconds or minutes

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

What is a VM

A

Software emulation of physical computer

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

What does a VM host

A

OS and the Software you install

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

How do you connect to a VM

A

RDP

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

What is a container

A

Virtuaisation environment for running applications

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

What/How does a Container host/run Apps

A

Containers run on top of Host OS but do not include OS for apps running inside containers

Containers bundle libraries/components using host OS running the container

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

What is Azure App Service and what is it designed for?

A

PaaS designed to host enterprise web apps.

Can meet rigorous performance, scalabilty, secrity and compliance.

Using fully managed platform to perform infrastructure mainternance.

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

What is serverless computing

A

Cloud hosted execution environment that runs code abstracting undelying hosting environment.

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

Using VMs, Containers, App Service and Serverless compute types is not an all or nothing approach.

What are some potential examples of how it might fit together

A

You might put core App on a VM and off load some data processing to a serverless app.

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

What is a benefit of Serveless Compute

A

Serverless requires no infra management and usually expects its work to be completed in seconds or less

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

Creating and using a VM in the cloud provides IaaS.

You can customise all the software running on the VM, what is this ideal for..

A

This is ideal when you require total control over OS, running of custom software, using custom hosting config.

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

This Gives flexibility of virtualization without buying/maintaining physical H/W, but you still need to…

A

maintain VM, i.e. config, udpate, maintain S/W running on VM

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

What are some of the times/examples when to use VMs in Azure

A
  • Test/Dev - quick and easy to test different OS configs and delete after
  • Running cloud apps - substantial economic benefits over trad infra (i.e. shutting down/starting up VMs as demand fluctuates)
  • Extending Data Center to cloud, organisation can extend capabilities of on-prem by adding an Azure vNet and adding VMs.
  • Apps like Sharepoint can run on VM making it easier/less expensive than on-prem.
  • During DR - Significant cost savings by using IaaS for DR. If Primary DC fails to stand up VMs to run Apps until private DC becomes active again
  • Moving to Cloud with VMs - Excellent choice for physical server to cloud “Lift and Shift”, Image physical server host on VM with little or no changes. Must update installed OS and software
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Single VMs are OK for Dev and test etc however which features allow High Availability, Scalability and Redundancy

A
  • Availability Sets, VM Scale Sets, Azure Batch
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Availability sets for VMs is a…

A
  • Logical grouping of 2 or more VMs, keep application up during planned or unplanned maintenance
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

If planned maintenance requires a reboot a what does an availability set ensure

A
  • If this requires reboot of VM, Availability sets ensure reboots are sequenced so not all of associated VMs are rebooted at the same time.
  • This is done by putting VMs into update domains which groups physical H/W to those that can be rebooted together.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What types of seperations are Update domains

A

Update domains are logical seperations

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

What is meant by unplanned maintenance

A

Unplanned Maintenance, such as H/W failure, power outage or disk failure will cause VMs part of availability set to switch to working H/W so continues to run

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

A group of VMs sharing common H/W are within the same ……..

A

Fault Domain

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

What is a fault domain

A
  • A fault domain is essentially a rack of servers physically splitting out power, cooling, networking
24
Q

Within an availability set how many Fault and Update domains are there

A
  • With availability set you get 3 fault domains, 5 update domains (can be increased to 20)
  • VMs sequentially placed across fault and update domains
25
Q

How do you pay for Availability Sets

A

There are no costs for availability sets you only pay for the VMs

26
Q

What is a VM scale set

A

A group of identical, load balanced VMs

27
Q

Multiple VMs normally require addition service to be setup to load balance and route requests - VM scale sets do this for you

What are some of the things this allows you to do

A
  • Allowing you to centrally manage/config/update large number of VMs to provide HA apps
  • VMs can increase/decrease based on demand or schedules
  • Build large scale services for compute, big data and container workloads
28
Q

What is Azure Batch

A

Large scale job scheduling + compute management, scale to 10s 100s 1000s of VMs

29
Q

When running a job, what does Azure Batch do

A
  • Starts VM pool, Installs applications + staging data, Runs jobs with as many tasks as required, identifies failures, requests work, scales down pool as completes
30
Q

Containers are an excellent choice for running multiple instances of Apps on a single host machine, what does the Container orchestrator do

A
  • Container Orchestrator can start, stop and scale out app instances as required
31
Q

What is a container

A
  • Container = Modified runtime environment built on top of host OS that executes application.
32
Q

Why are containers typically lighter than VMs?

A
  • Does not use virtualisation so no resources used simulating H/W with a redundant OS, so typically containers are “lighter” than VMs
33
Q

Containers allow for quick changes in demand or failure.

Containers allow you to run multiple isolated apps on a single container host so there is no need for…

A

no need for separate servers for each app

34
Q

Containers in Azure Support docker.

Which two ways are they to manage containers in Azure

A
  • Azure Container Instance (ACI)

- Azure Kubernetes Service (AKI)

35
Q

Which is the fastest/simpliest way to run a container

A

Azure Container Service

36
Q

With Azure Container Instances there is no VM management or config of additional services.

This is a PaaS offering , what are the benefits of this service

A
  • PaaS offering - allowing container upload + execution

- Auto Elastic Scale

37
Q

What is Azure Kubernetes Service used for

A
  • Automating/managing/interacting with lots of containers is known as orchestration
  • Azure Kubernetes Services is complete orchestration service for containers with distributed architectures with multiple containers.
38
Q

What solutions are a good use for containers

A
  • Containers often used in micro service architecture (i.e. break solutions into smaller independent pieces) e.g. split Website into front end, back end and storage - allowing maintenance, scaling, updates to be done independent pieces)
  • Apps to containers - You can move existing apps to containers **and run within Azure Kubernetes service, control access with Azure AD and access SLA backend services such as Azure MySQL
39
Q

What does Azure App Service allow?

A

Build/host WebApps, background jobs, mobile backends, RestAPIs in programming language of your choice with no infra to manage

40
Q

Auto Scaling and High Availability is part of Azure App Service, it supports which OSs?

A

Windows and Linux

41
Q

Azure App Service enables auto deployments from where and supports which deployment model

A
  • Enables Auto deployments from GitHub, Azure Devops or any GIT repo supporting continuous deployment model
42
Q

Azure App Service allows focus on website or API logic with Azure handling….

A

Azure to handle infrastructure to run and scale apps

43
Q

How do you pay for App Service

A
  • Pay for compute resource for your app whilst it processes requiests
  • App service plan determines how much H/W is devolved to your host (e.g. dedicated/shared H/W, how much memory is reserved for it - A free tier is available for low traffic sites)
44
Q

What types of WebApps can be hosted with Azure App Services

A
  • Webapps, API Apps, Web Jobs, Mobile Apps
45
Q

Web Apps in Azure App Service supports which programming languages on which OSs

A
  • Full support for ASP.net, ASP.Net Core, Java, Ruby, NodeJS, PHP, Python
  • On either Linux or Windows
46
Q

API Apps within Azure App Services allow you to build what

A
  • Build Rest-Based APIs using your choice of language and framework
47
Q

API Apps within Azure App Services have Full Swagger Support and allow to package/publish APIs to where…

Also how are API Apps consumed

A
  • Package/Publish API in Azure Market Place

- Consumption by HTTP(S) client

48
Q

What do Web Jobs within Azure App Service allow?

What is this useful for and how can they be run?

A
  • Allows running of .exe, JAVA, Python, NodeJS Programs
  • Allows running of CMD, BAT, PowerShell, BASH scripts in same context as WebApp, API App or mobile app
  • Scheduled or run by trigger
  • Often useful for background task of app logic
49
Q

Within Azure App Service you can build mobile backends, what are some of the benefits of this

A

Quickly build backend for iOS/Android

Store Data in cloud based SQL DB

Authenticate against social providers, MS, Google, Twitter, Facebook

Send Push Notifications

Exec custom backend logic in C# or NodeJS

50
Q

Serverless computing allows the abstraction of Servers, Infra and resources allocation/deallocation on demand.

How are you billed for resources and do you need reserve capacity

A
  • Azure Manages Infra structure and resource allocation/deallocation on demand
  • Scaling and performance is handled automatically - bulled for resources you use + no need to reserve capacity.
51
Q

Serverless computing allows the abstraction of servers, what are some of the key points around this

A
  • Never explicitly reserve server instances
  • Each functions exec can run on a different compute instance
  • Exec context transparent to code
  • Deploy code which runs with HA
52
Q

Serverless computing allows Event driven scale, what are some of the key points around this

A
  • Execellent fit for workloads that respond to incoming events
  • Trigger by timers, HTTP (API/Webhook), queues and More
  • Dev Writes function not full app
  • Contains code + meta data about triggers
  • Platform auto scheduled function to run + scales compute instances on incoming events
53
Q

Serverless computing allows for micro billing, what are some of the key points around this

A
  • Trad compute = Billed by second, if only one website hit per day you still pay for full days availability
  • Serverless = Pay when code runs
54
Q

Azure has 2 implementations of serverless compute, what are they?

A

Azure Functions

Azure Logic Apps

55
Q

What are some of the key elements of Azure Functions

A
  • Concerned about code and not underlying platform or infra
  • Common when responding to event (i.e. REST Request, timer, message from Azure Service)
  • Work completes in seconds or less
  • Scale on demand, solid choice for variable demand (e.g. Messages from IOT device)
  • With VM - incur costs when VM is idel, Azure Functions only pay for execution
  • Stateless by default, behave as if restarted everytime they respond
  • Stateful (durable function) - context passed through track prior to activity
  • Key to serverless computing - also general compute platform for running any type of code
  • if needs change you can deploy in env that is not serverless proving flexibility to manage scaling, run on VMs and isolated functions
56
Q

What are some of the key functions of azure Logic Apps

A
  • Similar to functions except they execute workflows designed to automate business scenerios from pre-defined logic blocks
  • All start with a trigger - fires on even or new data meets criteria
  • Many Triggers include basic schedulling functionality
  • When trigger firs the logiv app engine creates a logic app instance which runs the workflow.
  • Actions can include, data conversions, flow control (i.e. Conditional/Switch loops and branching)
  • Logic Apps are created in Visual designer in the Azure Portal or Visual Studio
  • Work flows persisted as JSON file (workflow schema)
  • Over 200 connectors and processing blocks to interface with
  • Build custom connectors + steps if required
57
Q

What are some of the differences between Azure Functions and Azure Logic Apps

A

Azure Functions vs Logic Apps

  • Can both create complex orchestrations
  • Functions = code to complete step
  • Logic Apps = Gui
  • Mix and Match call functions from logic app and vice versa

Azure Functions

  • Normally stateless but can be durable
  • Code first
  • 12ish binding types, code custom binding
  • Each action = Azure function
  • Monitor with Azure application insights
  • Manage with Rest API or Visual Studio
  • Execution context is local or Cloud

Azure Logic Apps

  • Statefull
  • Designer first with GUI
  • Large collection of connectors, ability to build custom connectores
  • Ready made actions
  • Monitor with Portal or Log analytics
  • Manage with Portal, RestApi, Poweshell or Visual Studio
  • Execution context is cloud only.