#azure (2021-05)

azure

Archive: https://archive.sweetops.com/azure/

2021-05-02

Pierre-Yves avatar
Pierre-Yves

Hello, I just wrote a guide on how to chose an Azure VM . For now I didn’t share it, can some one have a look and give me a first review ? https://pierreyvesv.github.io/azure-automation/finops/vm-sizing/ Thanks

Tips to size Azure VM

VM Sizing guide This vm sizing guide is based on my experience. It’s a prerequisite before using the Azure-Calculator. This guide give hints on how to choose the best vm size for your workload. This is mostly a list of concept and document that you should use. Once you know them it’s pretty easy to reuse it. Impact of choosing the wrong size: over size your vm is over spending low size will lead to bad performance and potentially extra work to resize the vm. VM Sizing convention Sizing your VM is crucial to avoid over spending. Before using the Azure calculator first you should understand the naming convention used by Azure. If Standard_D4s_v3 or Standard_E4ds_v4 means nothing to you then read on. Read https://docs.microsoft.com/en-us/azure/virtual-machines/vm-naming-conventions One or more lower case letters denote additive features, such as: a = AMD-based processor d = disk (local temp disk is present); this is for newer Azure VMs, see Ddv4 and Ddsv4-series: temp disk is not persisted if the vm restart h = hibernation capable i = isolated size: isolated machine by hardware are dedicated to a single customer this is used with huge server: isolated l = low memory; a lower amount of memory than the memory intensive size m = memory intensive; the most amount of memory in a particular size: that’s the biggest memory available for this server type, if you need more, upgrade to a bigger server type t = tiny memory; the smallest amount of memory in a particular size r = RDMA capable: used for massively parallel computing see RDMA-capable s = Premium Storage capable, including possible use of Ultra SSD (Note: some newer sizes without the attribute of s can still support Premium Storage e.g. M128, M64, etc.) Understand the right type Go to vm-size and read and understand all series. Take a specific attention on the summary at the top of each page. By example here is the one for the Compute-Fseries ACU: 195 - 210 This is the Microsoft benchmark to compare CPU, since there is various one. It give you hints. Premium Storage: Supported SSD support Premium Storage caching: Supported Read Only Cache Live Migration: Supported this will allow you to change server type in this series without reboot Memory Preserving Updates: Supported VM is paused during the update, no reboot is needed. Otherwise a notification email is sent to you. VM Generation Support: Generation 1 and 2 Accelerated Networking: Supported (Requires a minimum of 4 vCPU) Ephemeral OS Disks: Supported useful for stateless workloads VCPU vs CPU When you’ll walk through the sizes, you’ll see notice that some have VCPU and other CPU. One is virtual the second is not. You can get more detail about it here vm-acu This list provide for each vm the number of vcpu per core available and cpu specificities. You have to go through this list to chose the best cpu matching your workload, and also some of your need might guide you to one or an other server type. ACUs use Intel® Turbo technology to increase CPU frequency and provide a performance increase. The amount of the performance increase can vary based on the VM size, workload, and other workloads running on the same host. **ACUs use AMD® Boost technology to increase CPU frequency and provide a performance increase. The amount of the performance increase can vary based on the VM size, workload, and other workloads running on the same host. **Hyper-threaded and capable of running nested virtualization **AMD Simultaneous multithreading technology Recommended size Some size will better match your needs. Vendor specific recommendation In some case, to help you do the right sizing your software vendor may provide you with advice. By example Couchbase recommends you to use “DS v3, ES v3, FS and GS machines” and more than 4 cpu. couchbase-azure-best-practices B Series B Series servers are burstable , in short when the server is not use it accumulate credits that can be spend in a higher cpu freq at peak load. This is a recommended series to use for AKS preproduction AKS-BSeries There is a downside: small cpu and a low number of disk that can be attached F Series The F Series are compute optimized AND have the option accelerated-networking. This is a good choice for Haproxy load balancer Compute-Fseries How to choose the right server versus it’s pricing There is different tool available which compare servers cost, I use azureprice.net to filter by needs and cost That’s it, you are now read to use the Azure-Calculator

geertn avatar

Maybe add that you want to monitor for CPU credits with B series. And maybe add which sizes would be suitable for AKS Ephemeral OS disk

Tips to size Azure VM

VM Sizing guide This vm sizing guide is based on my experience. It’s a prerequisite before using the Azure-Calculator. This guide give hints on how to choose the best vm size for your workload. This is mostly a list of concept and document that you should use. Once you know them it’s pretty easy to reuse it. Impact of choosing the wrong size: over size your vm is over spending low size will lead to bad performance and potentially extra work to resize the vm. VM Sizing convention Sizing your VM is crucial to avoid over spending. Before using the Azure calculator first you should understand the naming convention used by Azure. If Standard_D4s_v3 or Standard_E4ds_v4 means nothing to you then read on. Read https://docs.microsoft.com/en-us/azure/virtual-machines/vm-naming-conventions One or more lower case letters denote additive features, such as: a = AMD-based processor d = disk (local temp disk is present); this is for newer Azure VMs, see Ddv4 and Ddsv4-series: temp disk is not persisted if the vm restart h = hibernation capable i = isolated size: isolated machine by hardware are dedicated to a single customer this is used with huge server: isolated l = low memory; a lower amount of memory than the memory intensive size m = memory intensive; the most amount of memory in a particular size: that’s the biggest memory available for this server type, if you need more, upgrade to a bigger server type t = tiny memory; the smallest amount of memory in a particular size r = RDMA capable: used for massively parallel computing see RDMA-capable s = Premium Storage capable, including possible use of Ultra SSD (Note: some newer sizes without the attribute of s can still support Premium Storage e.g. M128, M64, etc.) Understand the right type Go to vm-size and read and understand all series. Take a specific attention on the summary at the top of each page. By example here is the one for the Compute-Fseries ACU: 195 - 210 This is the Microsoft benchmark to compare CPU, since there is various one. It give you hints. Premium Storage: Supported SSD support Premium Storage caching: Supported Read Only Cache Live Migration: Supported this will allow you to change server type in this series without reboot Memory Preserving Updates: Supported VM is paused during the update, no reboot is needed. Otherwise a notification email is sent to you. VM Generation Support: Generation 1 and 2 Accelerated Networking: Supported (Requires a minimum of 4 vCPU) Ephemeral OS Disks: Supported useful for stateless workloads VCPU vs CPU When you’ll walk through the sizes, you’ll see notice that some have VCPU and other CPU. One is virtual the second is not. You can get more detail about it here vm-acu This list provide for each vm the number of vcpu per core available and cpu specificities. You have to go through this list to chose the best cpu matching your workload, and also some of your need might guide you to one or an other server type. ACUs use Intel® Turbo technology to increase CPU frequency and provide a performance increase. The amount of the performance increase can vary based on the VM size, workload, and other workloads running on the same host. **ACUs use AMD® Boost technology to increase CPU frequency and provide a performance increase. The amount of the performance increase can vary based on the VM size, workload, and other workloads running on the same host. **Hyper-threaded and capable of running nested virtualization **AMD Simultaneous multithreading technology Recommended size Some size will better match your needs. Vendor specific recommendation In some case, to help you do the right sizing your software vendor may provide you with advice. By example Couchbase recommends you to use “DS v3, ES v3, FS and GS machines” and more than 4 cpu. couchbase-azure-best-practices B Series B Series servers are burstable , in short when the server is not use it accumulate credits that can be spend in a higher cpu freq at peak load. This is a recommended series to use for AKS preproduction AKS-BSeries There is a downside: small cpu and a low number of disk that can be attached F Series The F Series are compute optimized AND have the option accelerated-networking. This is a good choice for Haproxy load balancer Compute-Fseries How to choose the right server versus it’s pricing There is different tool available which compare servers cost, I use azureprice.net to filter by needs and cost That’s it, you are now read to use the Azure-Calculator

Pierre-Yves avatar
Pierre-Yves

hey, thanks for your input, yes I’ll look into it and will update the post

geertn avatar

Yeah, and if you make a section for AKS you might just as well write that if you select a premium capable SKU for AKS it will also give you premium SSDs

geertn avatar

Maybe also something about which sizes support end-to-end encryption using encryption at host

geertn avatar

Anyway, nice info. I learned something by reading it

Pierre-Yves avatar
Pierre-Yves

to answer your question about ephemeral ““Important When a user does not explicitly request managed disks for the OS, AKS will default to ephemeral OS if possible for a given nodepool configuration.””

https://docs.microsoft.com/en-us/azure/aks/cluster-configuration#ephemeral-os

“Ephemeral OS disks are free, you incur no storage cost for OS disk.” https://docs.microsoft.com/en-us/azure/virtual-machines/ephemeral-os-disks

1

2021-05-03

2021-05-05

Pierre-Yves avatar
Pierre-Yves

did one of you already use Ansible for Windows azure.azcollection.azure_rm_manageddisk I am looking for a way to initialize the disk + mount it without the powershell https://docs.microsoft.com/en-us/azure/virtual-machines/windows/attach-disk-ps#initialize-the-disk

Attach a data disk to a Windows VM in Azure by using PowerShell - Azure Virtual Machines

How to attach a new or existing data disk to a Windows VM using PowerShell with the Resource Manager deployment model.

Mr.Devops avatar
Mr.Devops
04:43:46 PM

Reposting in case this was missed and someone is willing to help pls thx

hoping someone can help. I’m using the azurerm_role_assignment resource. What i like to be able to do is have a list of resource i can scope to. I did something using map types, but using it in this way

variable "role" {
  type        = map(any)
  description = "The permission block for roles assignment"
  default = {
    "default_assignment" = {
      scope                = ""
      role_definition_name = "Reader"
      principal_id         = ""
    }
  }
}

would result me to setting my inputs as

role = {
    "scope-001" = {
      scope = "/subscriptions/${local.sub_id}"
      role_definition_name = "Contributor"
      principal_id         = dependency.identity.outputs
    },
    "scope-002" = {
      scope = "/subscriptions/${local.sub_id}"
      role_definition_name = "Reader"
      principal_id         = dependency.identity
    }

where instead i would like to use it something like this

role = {
    "scope-001" = {
      scope = "/subscriptions/${local.sub_id}"
      role_definition_name = "Contributor"
      principal_id         = dependency.identity.outputs
    },
    {
      scope = "/subscriptions/${local.sub_id}"
      role_definition_name = "Reader"
      principal_id         = dependency.identity
    }

2021-05-06

Tijn Lambrechtsen avatar
Tijn Lambrechtsen
09:37:41 AM

@Tijn Lambrechtsen has joined the channel

2021-05-11

Pierre-Yves avatar
Pierre-Yves

to keep clean your Azure infrastructure a little review of public IP addresses will show you a lot of things: one can use this command az network public-ip list | jq '.[] |{"name", "ipAddress", "id"}'

2021-05-22

Mr.Devops avatar
Mr.Devops

Are there anything to consider when implementing AKS? Looking for some best practices

geertn avatar

Pretty broad question, maybe start with Azures docs. Don’t take it all too serious, I have the feeling it’s more of a feature showcase than a actual best practices docs

https://docs.microsoft.com/en-us/azure/aks/best-practices

Best practices for Azure Kubernetes Service (AKS) - Azure Kubernetes Service

Collection of the cluster operator and developer best practices to build and manage applications in Azure Kubernetes Service (AKS)

Pierre-Yves avatar
Pierre-Yves

a private AKS cluster :)

Pierre-Yves avatar
Pierre-Yves
Tips to size Azure VM

VM Sizing guide This vm sizing guide is based on my experience. It’s a prerequisite before using the Azure-Calculator. This guide give hints on how to choose the best vm size for your workload. This is mostly a list of concept and document that you should use. Once you know them it’s pretty easy to reuse it. Impact of choosing the wrong size: over size your vm is over spending low size will lead to bad performance and potentially extra work to resize the vm. VM Sizing convention Sizing your VM is crucial to avoid over spending. Before using the Azure calculator first you should understand the naming convention used by Azure. If Standard_D4s_v3 or Standard_E4ds_v4 means nothing to you then read on. Read https://docs.microsoft.com/en-us/azure/virtual-machines/vm-naming-conventions One or more lower case letters denote additive features, such as: a = AMD-based processor d = disk (local temp disk is present); this is for newer Azure VMs, see Ddv4 and Ddsv4-series: temp disk is not persisted if the vm restart h = hibernation capable i = isolated size: isolated machine by hardware are dedicated to a single customer this is used with huge server: isolated l = low memory; a lower amount of memory than the memory intensive size m = memory intensive; the most amount of memory in a particular size: that’s the biggest memory available for this server type, if you need more, upgrade to a bigger server type t = tiny memory; the smallest amount of memory in a particular size r = RDMA capable: used for massively parallel computing see RDMA-capable s = Premium Storage capable, including possible use of Ultra SSD (Note: some newer sizes without the attribute of s can still support Premium Storage e.g. M128, M64, etc.) Understand the right type Go to vm-size and read and understand all series. Take a specific attention on the summary at the top of each page. By example here is the one for the Compute-Fseries ACU: 195 - 210 This is the Microsoft benchmark to compare CPU, since there is various one. It give you hints. Premium Storage: Supported SSD support Premium Storage caching: Supported Read Only Cache Live Migration: Supported this will allow you to change server type in this series without reboot Memory Preserving Updates: Supported VM is paused during the update, no reboot is needed. Otherwise a notification email is sent to you. VM Generation Support: Generation 1 and 2 Accelerated Networking: Supported (Requires a minimum of 4 vCPU) Ephemeral OS Disks: Supported useful for stateless workloads VCPU vs CPU When you’ll walk through the sizes, you’ll see notice that some have VCPU and other CPU. One is virtual the second is not. You can get more detail about it here vm-acu This list provide for each vm the number of vcpu per core available and cpu specificities. You have to go through this list to chose the best cpu matching your workload, and also some of your need might guide you to one or an other server type. ACUs use Intel® Turbo technology to increase CPU frequency and provide a performance increase. The amount of the performance increase can vary based on the VM size, workload, and other workloads running on the same host. **ACUs use AMD® Boost technology to increase CPU frequency and provide a performance increase. The amount of the performance increase can vary based on the VM size, workload, and other workloads running on the same host. **Hyper-threaded and capable of running nested virtualization **AMD Simultaneous multithreading technology Recommended size Some size will better match your needs. Vendor specific recommendation In some case, to help you do the right sizing your software vendor may provide you with advice. By example Couchbase recommends you to use “DS v3, ES v3, FS and GS machines” and more than 4 cpu. couchbase-azure-best-practices B Series B Series servers are burstable , in short when the server is not use it accumulate credits that can be spend in a higher cpu freq at peak load. This is a recommended series to use for AKS preproduction AKS-BSeries There is a downside: small cpu and a low number of disk that can be attached F Series The F Series are compute optimized AND have the option accelerated-networking. This is a good choice for Haproxy load balancer Compute-Fseries Ephemeral disk Ephemerl OS Disk are supported only on VM sizes that supports Premium storage such as DSv1, DSv2, DSv3, Esv3, Fs, FsV2, GS, M ”“Important When a user does not explicitly request managed disks for the OS, AKS will default to ephemeral OS if possible for a given nodepool configuration.”” AKS-Ephemeral-Disks “Ephemeral OS disks are free, you incur no storage cost for OS disk.” Ephemeral-os-disks How to choose the right server versus it’s pricing There is different tool available which compare servers cost, I use azureprice.net to filter by needs and cost That’s it, you are now read to use the Azure-Calculator

2021-05-23

2021-05-25

    keyboard_arrow_up