← Back to team overview

cloud-init-dev team mailing list archive

Re: [Merge] ~chad.smith/cloud-init:feature/1797480-azure-support-gen2-instances into cloud-init:master

 

Checking on the lun numbers

Diff comments:

> diff --git a/udev/66-azure-ephemeral.rules b/udev/66-azure-ephemeral.rules
> index b9c5c3e..2406df3 100644
> --- a/udev/66-azure-ephemeral.rules
> +++ b/udev/66-azure-ephemeral.rules
> @@ -4,10 +4,26 @@ SUBSYSTEM!="block", GOTO="cloud_init_end"
>  ATTRS{ID_VENDOR}!="Msft", GOTO="cloud_init_end"
>  ATTRS{ID_MODEL}!="Virtual_Disk", GOTO="cloud_init_end"
>  
> -# Root has a GUID of 0000 as the second value
> +# Root has a GUID of 0000 as the second value on Gen1 instances
>  # The resource/resource has GUID of 0001 as the second value
>  ATTRS{device_id}=="?00000000-0000-*", ENV{fabric_name}="azure_root", GOTO="ci_azure_names"
>  ATTRS{device_id}=="?00000000-0001-*", ENV{fabric_name}="azure_resource", GOTO="ci_azure_names"
> +
> +# Azure well known SCSI controllers
> +ATTRS{device_id}=="{f8b3781a-1e82-4818-a1c3-63d806ec15bb}", ENV{fabric_scsi_controller}="scsi0", GOTO="azure_datadisk"

I can confirm the first half of that question, that device_id is hardcoded to be scsi0. (see here for reference: https://github.com/Azure/WALinuxAgent/blob/master/config/66-azure-storage.rules)
lun0/1 for root/resource sounds logical, I'll get back to verify explicitly that this assumption is always true

> +# Do not create symlinks for scsi[1-3] or unmatched device_ids
> +ATTRS{device_id}=="{f8b3781b-1e82-4818-a1c3-63d806ec15bb}", ENV{fabric_scsi_controller}="scsi1", GOTO="cloud_init_end"
> +ATTRS{device_id}=="{f8b3781c-1e82-4818-a1c3-63d806ec15bb}", ENV{fabric_scsi_controller}="scsi2", GOTO="cloud_init_end"
> +ATTRS{device_id}=="{f8b3781d-1e82-4818-a1c3-63d806ec15bb}", ENV{fabric_scsi_controller}="scsi3", GOTO="cloud_init_end"
> +GOTO="cloud_init_end"
> +
> +# Map scsi#/lun# fabric_name to azure_root|resource on Gen2 instances
> +LABEL="azure_datadisk"
> +ENV{DEVTYPE}=="partition", PROGRAM="/bin/sh -c 'readlink /sys/class/block/%k/../device|cut -d: -f4'", ENV{fabric_name}="$env{fabric_scsi_controller}/lun$result"
> +ENV{DEVTYPE}=="disk", PROGRAM="/bin/sh -c 'readlink /sys/class/block/%k/device|cut -d: -f4'", ENV{fabric_name}="$env{fabric_scsi_controller}/lun$result"
> +
> +ENV{fabric_name}=="scsi0/lun0", ENV{fabric_name}="azure_root", GOTO="ci_azure_names"
> +ENV{fabric_name}=="scsi0/lun1", ENV{fabric_name}="azure_resource", GOTO="ci_azure_names"
>  GOTO="cloud_init_end"
>  
>  # Create the symlinks


-- 
https://code.launchpad.net/~chad.smith/cloud-init/+git/cloud-init/+merge/358190
Your team cloud-init commiters is requested to review the proposed merge of ~chad.smith/cloud-init:feature/1797480-azure-support-gen2-instances into cloud-init:master.


Follow ups

References