Containers
Containers
Containers
Containers
Containers
Containers are multiple isolated services that are run on a single control host
(underlying infrastructure) and they access a single kernel.
Advantages of Containers
Improved portability
Better performance
Currently, ACS is available for standard A, D, DS, G, GS, F and FS series Linux
VMs.
It is used to manage Docker containers using any of the three orchestrators: Docker
swarm, DC/OS, and Kubernetes.
Azure Services
These are the six services provided by Azure for your container needs
Azure batch
You will be learning about all this in detail in the upcoming cards.
Azure handles the tasks like health monitoring once the container is deployed.
With this service, you need not provision virtual machines or adopt a complex
orchestration service.
Azure Batch
Azure batch helps for running repetitive jobs in the containers
Interested in learning about the services and their advantages in detail. Then
proceed further.
Introduction to Kubernetes
Introduction to Kubernetes
Before proceeding to know about Azure Kubernetes Service. You have to know about
Kubernetes.
What is Kubernetes?
You will pay for the agent nodes that you are using within clusters, not for
masters and the service is free.
If you have trouble playing this video, please click here for help.
No transcript is available for this video.
RBAC -
AAD -
Advantages of Kubernetes
Advantages of Kubernetes
Deploy and handle Kubernetes with ease
Deployment can be done via the portal, CLI, resource manager and Terraform.
Parameters like log aggregation and container health are visible to the user as a
part of AKS.
Scaling applications
You can scale your application with respect to the number of users.
Advantages of Kubernetes
Advantages of Kubernetes
Security
Access to Kubernetes, clusters is given by azure active directory and user groups.
Custom virtual networks, Network policy enforcement, and Azure container network
interface (CNI) are used for communication in the container network.
You can repeatedly build, test and debug your containers by using CLI, Visual
Studio, Azure dev spaces or visual studio code.
Advantages
Advantages
Working with open source tools
Popular tools like Brigade, Helm and Draft can be used to automate the software
delivery pipeline.
It helps in creating powerful cloud applications with the help of a fully managed
platform.
If you have trouble playing this video, please click here for help.
No transcript is available for this video.
Play
04:32
-06:52
Mute
Settings
Enter fullscreen
Play
If you have trouble playing this video, please click here for help.
No transcript is available for this video.
The app can be stored in the Microsoft global data center so it provides high
availability.
Application templates
You can select from a list of application templates in an Azure marketplace like
Drupal and Joomla.
What is an Azure Container Instance?
What is an Azure Container Instance?
Azure Container Instances (ACI) helps to create and run containers in Azure without
the need of VMs and higher level services.
In the following cards, you will learn how to create and maintain container
instances.
If you have trouble playing this video, please click here for help.
No transcript is available for this video.
Uses of ACI
Uses of ACI
Elastic Bursting with AKS
ACI provides fast and isolated compute to meet traffic which comes in spikes
without the need for managing the servers.
As the capacity in AKS is running out, additional PODs are added in ACI. This
process is done without any additional servers.
Uses of ACI
Uses of ACI
Building Event-driven applications
Join ACI with ACI Logic Apps connector, Azure lines, and Azure Functions to
assemble a strong framework which can flexibly scale out holders on request.
With Azure Container Instances, you can run complex assignments which are capable
of reacting to events.
Uses of ACI
Uses of ACI
Data Processing
ACI can be used for data processing where the source data is provided, organized,
and kept in a durable store like Azure Blob Storage.
When data is processed by using ACI, you can attain remarkable cost savings by per-
second billing rather than statically-provisioned VM's.
By running the applications in ACI, you can focus on designing and creating the
applications rather than the infrastructure on which it is running.
For example, with Virtual Kublet, ACI can be used to burst from AKS whenever
traffic comes in spikes.
Securing Applications
Azure Batch
Azure Batch
It is used to run repetitive jobs using containers.
Based on your requirements, you can add or remove compute resources and schedule
compute-intensive tasks.
Play
06:57
-09:59
Mute
Settings
Enter fullscreen
Play
If you have trouble playing this video, please click here for help.
No transcript is available for this video.
How it Works?
How it Works?
There are six steps for running a parallel workload by using the batch.
Create a pool of batch nodes, jobs to run the workload on pool and tasks in the
job.
Before the execution of each task, the data is assigned to compute node. The task
is executed on assigned node.
The application communicates with the batch service over HTTPS and monitoring is
done continuously.
Once completed, the task result is uploaded to Azure storage or files can be
received directly to file system from compute node
When the monitoring task is finished the files can be downloaded for further
processing.
Let's consider a scenario where the organization decided to track the working hours
of employees in a month.
In this scenario, you can write a program and run it by using ABS.
Advantages
Advantages
Selecting Your OS and Tools
Batch provides features like stable administration system and job scheduling
independent of Windows server or Linux computes nodes.
Batch provides SDK and supports a wide range of dev tools like Python and Java
Scaling
This can scale your applications to meet the deadlines and to manage costs.
Advantages
Advantages
Providing solutions as a service
Batch helps in processing jobs on demand rather than a predefined schedule. This
enables the customers to run jobs in clouds whenever they need.
You can manage the access to batch, control the resources they can use and make
sure that the requirements like encryption are met.
Monitoring helps in identifying the problems and gives a detailed report so that
you can track the usage.
Service
Before proceeding to know about Azure Service Fabric, you should know about
service.
What is a service?
A service is a set of code that usually solves at least one problem usually the
business problem.
Application development approaches
Monolithic service
Microservice
Features of Microservice
Features of microservices:
Well defined API's - Using API’s every service can be called easily from another
service or utility.
Scalable – Since every service is independent of each other, they can be scaled
easily.
Let us move on to understand about Azure Service Fabric which is a platform that
facilitates microservice applications.
Microsoft uses Azure service fabric to run many cloud services like Azure SQL DB,
Event hubs and Skype for business.
If you have trouble playing this video, please click here for help.
No transcript is available for this video.
Transport Subsystem
Federation Subsystem
It helps in failure detection, stable routing, and leader election forming the
foundation of a unified cluster.
Reliability subsystem
It manages load balancing, failovers, and state replications that are needed by
highly available and reliable systems.
As the name suggests, it manages the full application for a lifetime including
services like managing app binaries; installing, updating and providing apps; and
managing applications health.
Hosting subsystem
Communication subsystem
Testability subsystem
The idea of testing is advanced by the Netflix Chaos Monkey. The testability
subsystem can produce different failure scenarios to enable engineers to shake out
design and execution defects in the system.
Play
04:10
-07:50
Mute
Settings
Enter fullscreen
Play
If you have trouble playing this video, please click here for help.
No transcript is available for this video.
Security to Cluster
In this video, you are going to learn about how to add security to the cluster.
If you have trouble playing this video, please click here for help.
No transcript is available for this video.
If you have trouble playing this video, please click here for help.
No transcript is available for this video.
Play
00:00
-05:42
Mute
Settings
Enter fullscreen
Play
If you have trouble playing this video, please click here for help.
No transcript is available for this video.
Do You Know?
Azure Service Fabric is used by BMW due to its Rollback feature.
Source
One can focus on improving the code rather than dealing with infrastructure issues
which takes too much time.
IDE integration
You can select the IDE tool of your choice for building, testing, debugging and to
deploy service fabric applications.
Docker contains a central registry to store all public images if the consumer
doesn’t prefer it then private registry can be chosen.
Play
06:48
-09:13
Mute
Settings
Enter fullscreen
Play
If you have trouble playing this video, please click here for help.
No transcript is available for this video.
Advantages Of ACR
Advantages Of ACR
Managing images for containers
Azure container registry enables you to store images for container deployments
including Kubernetes, DC/OS, Docker swarm and Azure services like service fabric,
App service, and Batch.
Managing a single registry between multiple regions
Advantages of ACR
Advantages of ACR
Keeping container images close
Protect your images by verifying and managing access with the help of Azure active
directory.
Events are triggered based on actions of the container with the help of web hooks.
Hands-on scenario
You are employed as an Azure DevOps Engineer, and your company wants to run their
microservices applications on containers. This is to prevent managing of nodes in
VM scale sets and paying for infrastructure which may go unused. The company
decides to use virtual nodes with managed container instances. You have to create
Azure Container Instances with the following configurations. i) Kubernetes Service:
Region: East US, Node size: Standard Ds2 v2, Node count: 1, Integrations ->
Container monitoring: Disabled. ii) Azure Container Registry: Region: East US, SKU:
Basic. iii) Container instance: Region: East US, Image source: Quickstart images,
Container image: mcr.microsoft.com/azuredocs/aci-helloworld (Linux), Size: 2 vcpus,
4 GiB memory, 0 gpus. iv) App Services: Runtime Stack: .NET Core 3.1 (LTS),
Operating System: Windows, Region: East US, Size: F1 Shared infrastructure, 1 GB
memory. v) Batch Account: Region: East US.
Notes:
Use the credentials given in the hands-on to log in to the Azure Portal, create a
new resource group and use the same resource group for all resources. The
Username/Password/Services Name can be as per your choice, after completing the
hands-on, delete all the resources created.
Now, let's list down the take away points from this course.
About containers
Azure app