Skip to content

Commit 89d4309

Browse files
committed
review-1
1 parent 45ed05c commit 89d4309

9 files changed

+54
-16
lines changed

learn-pr.sln

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
Microsoft Visual Studio Solution File, Format Version 12.00
2+
# Visual Studio Version 17
3+
VisualStudioVersion = 17.5.2.0
4+
MinimumVisualStudioVersion = 10.0.40219.1
5+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "learn-pr", "learn-pr", "{2131D897-7991-9519-C5EC-8F7F030F7558}"
6+
EndProject
7+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "azure-devops", "azure-devops", "{47FAB674-FE63-AC99-5926-D31534AB9851}"
8+
EndProject
9+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "manage-build-dependencies", "manage-build-dependencies", "{A373AFFE-5695-223E-B012-B41198D35D5C}"
10+
EndProject
11+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "includes", "includes", "{C93D5C04-9046-62E1-DF61-7C5D7F67D42F}"
12+
EndProject
13+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "6-tailspin.spacegame.web", "learn-pr\azure-devops\manage-build-dependencies\includes\code\6-tailspin.spacegame.web.csproj", "{89B64EBC-FA21-F30E-2A8B-422FE23A1CC6}"
14+
EndProject
15+
Global
16+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
17+
Debug|Any CPU = Debug|Any CPU
18+
Release|Any CPU = Release|Any CPU
19+
EndGlobalSection
20+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
21+
{89B64EBC-FA21-F30E-2A8B-422FE23A1CC6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
22+
{89B64EBC-FA21-F30E-2A8B-422FE23A1CC6}.Debug|Any CPU.Build.0 = Debug|Any CPU
23+
{89B64EBC-FA21-F30E-2A8B-422FE23A1CC6}.Release|Any CPU.ActiveCfg = Release|Any CPU
24+
{89B64EBC-FA21-F30E-2A8B-422FE23A1CC6}.Release|Any CPU.Build.0 = Release|Any CPU
25+
EndGlobalSection
26+
GlobalSection(SolutionProperties) = preSolution
27+
HideSolutionNode = FALSE
28+
EndGlobalSection
29+
GlobalSection(NestedProjects) = preSolution
30+
{47FAB674-FE63-AC99-5926-D31534AB9851} = {2131D897-7991-9519-C5EC-8F7F030F7558}
31+
{A373AFFE-5695-223E-B012-B41198D35D5C} = {47FAB674-FE63-AC99-5926-D31534AB9851}
32+
{C93D5C04-9046-62E1-DF61-7C5D7F67D42F} = {A373AFFE-5695-223E-B012-B41198D35D5C}
33+
{89B64EBC-FA21-F30E-2A8B-422FE23A1CC6} = {C93D5C04-9046-62E1-DF61-7C5D7F67D42F}
34+
EndGlobalSection
35+
GlobalSection(ExtensibilityGlobals) = postSolution
36+
SolutionGuid = {77FD3D6E-75F2-4042-999D-6B98485129A8}
37+
EndGlobalSection
38+
EndGlobal

learn-pr/azure/build-app-with-scale-sets/includes/1-introduction.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Managing virtual machines at scale can be a challenge, especially when usage patterns vary and demands on applications fluctuate. You want to be able to adjust your virtual machine resources to match demands. At the same time, you might want to keep the virtual machine configuration consistent to ensure application stability. Achieving these goals means you maintain throughput and responsiveness while minimizing the costs of continually running a large collection of virtual machines.
1+
Managing virtual machines at scale can be a challenge, especially when usage patterns vary, and demands on applications fluctuate. You want to be able to adjust your virtual machine resources to match demands. At the same time, you might want to keep the virtual machine configuration consistent to ensure application stability. Achieving these goals means you maintain throughput and responsiveness while minimizing the costs of continually running a large collection of virtual machines.
22

33
Imagine that you work for a domestic shipping company. Your customers use one of the company's websites to manage and check the status of their shipments. This website is deployed to virtual machines and hosted on-premises. You noticed that increased usage on the site is straining the virtual machines' resources. However, you can't adjust to load fluctuations without manually intervening and creating or deallocating virtual machines.
44

learn-pr/azure/build-app-with-scale-sets/includes/2-features-benefits-virtual-machine-scale-sets.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
Azure Virtual Machine Scale Sets provide a scalable way to run applications on a set of virtual machines (VMs). The VMs in a scale set can all have the same configuration and run the same applications or have different configurations and run different applications. As demand grows, the number of VMs that run in the scale set increases. As demand shrinks, excess VMs can be removed. Virtual Machine Scale Set is ideal for scenarios that include compute workloads, big-data workloads, and container workloads.
1+
Azure Virtual Machine Scale Sets provide a scalable way to run applications on a set of virtual machines (VMs). The VMs in a scale set can all have the same configuration and run the same applications or have different configurations and run different applications. As demand grows, the number of VMs that run in the scale set increases. As demand shrinks, excess VMs can be removed. A Virtual Machine Scale Set is ideal for scenarios that include compute workloads, Big data workloads, and container workloads.
22

33
In our example scenario, your customers use one of the company's websites to manage and check the status of their shipments. Because the website is accessed globally, the load is sometimes difficult to predict at any particular time of day. Additionally, loading might vary seasonally, with December being busy because of the holidays at the end of the year. You decide to use a Virtual Machine Scale Set to handle the fluctuating load while maintaining a low response time for customer requests.
44

55
In this unit, you explore the features of Virtual Machine Scale Sets. By the end of this unit, you can describe how a scale set works. You learn how a scale set supports scale-out and scale-up scenarios and learn how to use autoscaling and schedule-based scaling to adjust the resources available to a scale set.
66

77
## What is a Virtual Machine Scale Set?
88

9-
Virtual Machine Scale Sets in Azure are designed to allow you to deploy and manage many load-balanced VMs. Virtual Machine Scale Sets are intelligent enough to automatically scale up or down the number of VM instances.
9+
Virtual Machine Scale Sets in Azure are designed to allow you to deploy and manage many load-balanced VMs. Virtual Machine Scale Sets are intelligent enough to automatically scale up or down the number of virtual machine (VM) instances.
1010

1111
The criteria used to activate the upscale or downscale can depend on a customized schedule or actual demand and usage. Scale sets can apply the same configuration to a group of VMs simultaneously. They don't require you to manually configure instances individually if you don't want to.
1212

@@ -48,7 +48,7 @@ For this scenario, you can use metrics-based autoscaling. This type of autoscali
4848

4949
Azure Spot Virtual Machines allows you to take advantage of our unused capacity at a significant cost savings. At any time when Azure needs the capacity back, the Azure infrastructure evicts Azure Spot Virtual Machines. Therefore, these virtual machines are great for workloads that can handle interruptions like batch processing jobs, dev/test environments, and large compute workloads.
5050

51-
The amount of available capacity can vary based on size, region, time of day, and other factors. When it deploys Azure Spot Virtual Machines, Azure allocates the VMs if there's capacity available, but there's no SLA for these VMs. An Azure Spot Virtual Machine offers no high-availability guarantees. At any point in time when Azure needs the capacity back, the Azure infrastructure evicts Azure Spot Virtual Machines with 30-seconds notice.
51+
The amount of available capacity can vary based on size, region, time of day, and other factors. When it deploys Azure Spot Virtual Machines, Azure allocates the VMs if there's capacity available, but there's no service level agreement (SLA) for these VMs. An Azure Spot Virtual Machine offers no high-availability guarantees. At any point in time when Azure needs the capacity back, the Azure infrastructure evicts Azure Spot Virtual Machines with 30-seconds notice.
5252

5353
When Azure needs the computing power again, you receive a notification about the VM Azure removes from your scale set. If you need to clean up or gracefully exit code on your VM, you can use Azure Scheduled Events to react to the notification within the VM. You can also make the scale set try to create another VM to replace the one that's being removed. The creation of the new VM is, however, not guaranteed.
5454

learn-pr/azure/build-app-with-scale-sets/includes/3-exercise-deploy-scale-set-azure-portal.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ Your first task is to create a scale set. Configure it to run a web server, in t
3535
- service nginx restart
3636
```
3737

38-
This file contains configuration information to install nginx on the VMs in the scale set.
38+
This file contains configuration information to install *nginx* on the VMs in the scale set.
3939

4040
1. Select **Ctrl**+**S** to save the file, then **Ctrl**+**Q** to close the code editor.
4141

@@ -61,7 +61,7 @@ Your first task is to create a scale set. Configure it to run a web server, in t
6161
By default, the new Virtual Machine Scale Set has two instances and a load balancer.
6262

6363
> [!NOTE]
64-
> The `custom-data` flag specifies that the VM configuration should use the settings in the *cloud-init.yaml* file after the VM has been created. You can use a cloud-init file to install additional packages, configure security, and write to files when the machine is first installed.
64+
> The `custom-data` flag specifies that the VM configuration should use the settings in the *cloud-init.yaml* file after the VM is created. You can use a cloud-init file to install more packages, configure security, and write to files when the machine is first installed.
6565
>
6666
> For more information, see [Cloud-init support for VMs in Azure](/azure/virtual-machines/linux/using-cloud-init).
6767

learn-pr/azure/build-app-with-scale-sets/includes/4-configure-virtual-machine-scale-set.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,11 @@ A scale rule aggregates the values retrieved for a metric for all instances. It
5757

5858
A one-minute interval is too short to determine whether any change in the metric is long-lasting enough to make autoscaling worthwhile. A scale rule takes a second step, further aggregating the time aggregation's value over a longer, user-specified period. This period is called the *duration*. The minimum duration is five minutes. For example, if the duration is set to 10 minutes, the scale rule aggregates the 10 values calculated for the time grain.
5959

60-
The duration's aggregation calculation can differ from the time grain's aggregation calculation. For example, let's say the time aggregation is *average* and the statistic gathered is *percentage CPU* across a one-minute time grain. For every minute, the average CPU percentage usage across all instances during that minute is calculated. If the time-grain statistic is set to *maximum* and the rule's duration is set to 10 minutes, the maximum of the 10 average values for the CPU usage percentage determines whether the rule threshold has been crossed.
60+
The duration's aggregation calculation can differ from the time grain's aggregation calculation. For example, let's say the time aggregation is *average* and the statistic gathered is *percentage CPU* across a one-minute time grain. For every minute, the average CPU percentage usage across all instances during that minute is calculated. If the time-grain statistic is set to *maximum*, and the rule's duration is set to 10 minutes. Then, the maximum of the 10 average values for the CPU usage percentage determines whether the rule threshold was crossed.
6161

6262
When a scale rule detects that a metric crosses a threshold, it can do a scale action. A scale action can be a *scale-out* or a *scale-in*. A scale-out action increases the number of instances. A scale-in action reduces the instance count.
6363

64-
A scale action uses an operator such as *less than*, *greater than*, or *equal to* to determine how to react to the threshold. Scale-out actions typically use the *greater than* operator to compare the metric value to the threshold. Scale-in actions tend to compare the metric value to the threshold by using the *less than* operator. A scale action also sets the instance count to a specific level rather than increasing or decreasing the number available.
64+
A scale action uses an operator such as *less than*, *greater than*, or *equal to*, to determine how to react to the threshold. Scale-out actions typically use the *greater than* operator to compare the metric value to the threshold. Scale-in actions tend to compare the metric value to the threshold by using the *less than* operator. A scale action also sets the instance count to a specific level rather than increasing or decreasing the number available.
6565

6666
A scale action has a *cool down* period, specified in minutes. During this period, the scale rule isn't triggered again. The cool-down allows the system to stabilize between scale events. Starting or shutting down instances takes time, so any metrics gathered might not show significant changes for several minutes. The minimum cool-down period is five minutes.
6767

learn-pr/azure/build-app-with-scale-sets/includes/5-exercise-configure-virtual-machine-scale-set.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Recall from the example scenario that your customers use one of the company's websites to manage and check the status of their shipments. This website is deployed to virtual machines and hosted on-premises.
1+
Recall from the example scenario that your customers use one of the company's websites to manage and check the status of their shipments. This website is deployed to virtual machines and hosted on-premises.
22

33
You notice that users of the website have significant delays in response times when the overall CPU usage of the virtual machines exceeds 75 percent. You need the Virtual Machine Scale Set that hosts your web application to scale when the system hits this threshold. To save costs, you also want to scale back in when demand falls and the overall CPU usage across the scale set drops below 50 percent.
44

learn-pr/azure/build-app-with-scale-sets/includes/6-install-update-applications-virtual-machine-scale-sets.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ In this unit, you learn how to use a custom script extension to update an applic
88

99
An Azure custom script extension downloads and runs a script on an Azure virtual machine. It can automate the same tasks on all the virtual machines (VMs) in a scale set.
1010

11-
Store your custom scripts in Azure Storage or in GitHub. To add one to a VM, you can use the Azure portal. To run custom scripts as part of a templated deployment, combine a custom script extension with Azure Resource Manager templates.
11+
Store your custom scripts in Azure Storage or in GitHub. To add one to a virtual machine, you can use the Azure portal. To run custom scripts as part of a templated deployment, combine a custom script extension with Azure Resource Manager templates.
1212

1313
## Install an application across a scale set by using a custom script extension
1414

@@ -60,7 +60,7 @@ az vmss extension set \
6060
--settings @yourConfigV2.json
6161
```
6262

63-
The VMs are updated according to the upgrade policy for the scale set. This policy when you first create the scale set. The upgrade policy can have one of the following three modes:
63+
The VMs are updated according to the upgrade policy for the scale set. You set this policy when you first create the scale set. The upgrade policy can have one of the following three modes:
6464

6565
- **Automatic**: The scale set doesn't define when the VMs are upgraded. They could all update at the same time, causing a service outage.
6666
- **Rolling**: The scale set rolls out the update in batches across the VMs in the scale set. An optional pause can minimize or eliminate a service outage. In this mode, machines in the scale set might run different versions of the app for a short time. This mode requires that you either add a health probe to the scale set or apply the application health extension to the scale set.

learn-pr/azure/build-app-with-scale-sets/includes/7-exercise-update-applications-virtual-machine-scale-sets.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
In the shipping-company scenario, you installed a web application by creating the Virtual Machine Scale Set. You now need to update the web app and install a new version across all virtual machines (VMs) in the scale set.
1+
In the shipping-company scenario, you installed a web application by creating the Virtual Machine Scale Set. You now need to update the web app and install a new version across all virtual machines (VMs) in the scale set.
22

3-
You must ensure that the system remains available during the rollout. A good way to ensure availability is to use a custom script extension to do the update. Apply this script across the Virtual Machine Scale Set. The scale set applies the update to one VM at a time, leaving the other VMs up and running.
3+
You must ensure that the system remains available during the rollout. A good way to ensure availability is to use a custom script extension to do the update. Apply this script across the Virtual Machine Scale Set. The scale set applies the update to one virtual machine at a time, leaving the other VMs up and running.
44

55
In this exercise, you use a custom script extension to roll out a new version of the web app. Edit the message that the nginx server provides. You can use the same approach for bigger updates.
66

@@ -20,7 +20,7 @@ In this exercise, you use a custom script extension to roll out a new version of
2020
--query upgradePolicy.mode
2121
```
2222
23-
Verify that the upgrade policy is set to `Automatic`. You specified this policy when you created the scale set in the first lab. If the policy was `Manual`, you would apply any VM changes by hand. Because the policy is `Automatic`, you can use the custom script extension and allow the scale set to do the update.
23+
Verify that the upgrade policy is set to `Automatic`. You specified this policy when you created the scale set in the first lab. If the policy was `Manual`, you would apply any virtual machine changes by hand. Because the policy is `Automatic`, you can use the custom script extension and allow the scale set to do the update.
2424
2525
1. Run the following command to apply the update script:
2626

learn-pr/azure/build-app-with-scale-sets/includes/9-summary.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ az group delete --name myResourceGroup --yes
1212

1313
## Learn more
1414

15-
- [Overview of autoscale with Azure Virtual Machine Scale Sets](/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-autoscale-overview)
15+
- [Learn about autoscale with an overview of Azure Virtual Machine Scale Sets](/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-autoscale-overview)
1616
- [Deploy your application on Virtual Machine Scale Sets](/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-deploy-app)
17-
- [Work with large Virtual Machine Scale Sets](/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-placement-groups)
17+
- [Working with large Virtual Machine Scale Sets](/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-placement-groups)
1818
- [Use the custom script extension for Windows](/azure/virtual-machines/extensions/custom-script-windows)
1919
- [Use the Azure custom script extension version 2 with Linux VMs](/azure/virtual-machines/extensions/custom-script-linux)
2020
- [Use the application health extension with Virtual Machine Scale Sets](/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-health-extension)

0 commit comments

Comments
 (0)