All versions of Citrix XenServer use a DM-Multipath configuration file, but there might be slight variations in the file based on which Citrix update you have installed. You can replace your current file with sample file and change the values to the ones that are appropriate for your system.
You can use the sample Citrix XenServer configuration files shown here to create your own multipath.conf file.
When you create your file, keep the following in mind:
Citrix XenServer 6 series | Parameter notes |
---|---|
Blacklist section | You must provide information of your system in the blacklist section. Any names shown in the sample files are examples and will not work with your system. |
wwid <Dev ID> | Use the actual device ID. Run the /sbin/scsi_id -g -u -s /block/%n command on the SCSI drive to be blacklisted. |
SAN boot support | SAN booting is supported only with Citrix XenServer 6 series and the FC/FCoE protocol. |
SAN boot LUNs and the user_friendly_names parameter | NetApp recommends that you set the user_friendly_names parameter to no. There have been reports of problems when this parameter is set to yes. |
The recommended value for the user_friendly_names parameter is no. There have been reports of problems when this parameter is set to yes.
If you create a SAN boot LUN and the installer sets the user_friendly_names parameter to yes, you must perform the following steps.
service multipathd reload
multipath -v3.
You could use the following command line:
mkinitrd -f /boot/initrd-"`uname -r`".img `uname -r`
Skip this step if you have no unused LUNs (where no SR is created).
The following file provides an example of the values you need to supply when your host is running Citrix XenServer 6.0 with ALUA enabled.
Remember: If you use the blacklist section, you must replace the sample information with the information from your system.defaults{
user_friendly_names no
max_fds max
flush_on_last_del no
queue_without_daemon no
}
# All data under blacklist must be specific to your system.
blacklist {
devnode "^hd[a-z]"
wwid "<wwid_of_the_local_disk>"
devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
devnode "^cciss.*"
}
devices {
device {
vendor "NETAPP"
product "LUN"
path_grouping_policy group_by_prio
features "1 queue_if_no_path"
prio_callout "/sbin/mpath_prio_alua /dev/%n"
path_checker directio
failback immediate
hardware_handler "1 alua"
rr_weight uniform
rr_min_io 128
getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
}
}
The following file provides an example of the values you need to supply when your host is running Citrix XenServer 6.0 and ALUA is not enabled.
Remember: If you use the blacklist section, you must replace the sample information with information for your system.
defaults {
user_friendly_names no
max_fds max
flush_on_last_del no
queue_without_daemon no
}
# All data under blacklist must be specific to your system.
blacklist {
devnode "^hd[a-z]"
wwid "<wwid_of_the_local_disk>"
devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
devnode "^cciss.*"
}
devices {
device {
vendor "NETAPP"
product "LUN"
path_grouping_policy group_by_prio
features "1 queue_if_no_path"
prio callout "/sbin/mpath_prio_ontap /dev/%n"
path_checker directio
failback immediate
hardware_handler "0"
rr_weight uniform
rr_min_io 128
getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
}
}
The following file provides an example of the values you need to supply when your host is running Citrix XenServer 6.0.2 with ALUA enabled.
defaults {
user_friendly_names no
max_fds max
flush_on_last_del no
queue_without_daemon no
}
# All data under blacklist must be specific to your system.
blacklist {
devnode "^hd[a-z]"
wwid "<wwid_of_the_local_disk>"
devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
devnode "^cciss.*"
}
devices {
device {
vendor "NETAPP"
product "LUN"
path_grouping_policy group_by_prio
features "1 queue_if_no_path"
prio callout "/sbin/mpath_prio_alua /dev/%n"
path_checker tur
failback immediate
hardware_handler "1 alua"
rr_weight uniform
rr_min_io 128
getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
}
}
The following file provides an example of the values you need to supply when your host is running Citrix XenXerver 6.0.2 and ALUA is not enabled.
defaults {
user_friendly_names no
max_fds max
flush_on_last_del no
queue_without_daemon no
}
# All data under blacklist must be specific to your system.
blacklist {
devnode "^hd[a-z]"
wwid "<wwid_of_the_local_disk>"
devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
devnode "^cciss.*"
}
devices {
device {
vendor "NETAPP"
product "LUN"
path_grouping_policy group_by_prio
features "1 queue_if_no_path"
prio callout "/sbin/mpath_prio_ontap /dev/%n"
path_checker tur
failback immediate
hardware_handler "0"
rr_weight uniform
rr_min_io 128
getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
}
}
The following file provides an example of the values you need to supply when your host is running Citrix XenServer 6.1 with ALUA enabled.
defaults { user_friendly_names no queue_without_daemon no flush_on_last_del no max_fds max } blacklist { devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^hd[a-z]" devnode "^cciss.*" } devices { device { vendor "NETAPP" product "LUN" path_grouping_policy group_by_prio features "1 queue_if_no_path" prio_callout "/sbin/mpath_prio_alua /dev/%n" path_checker tur failback immediate hardware_handler "1 alua" rr_weight uniform rr_min_io 128 getuid_callout "/sbin/scsi_id -g -u -s /block/%n" } }
The following file provides an example of the values you need to supply when your host is running Citrix XenServer 6.1 without ALUA enabled.
defaults { user_friendly_names no queue_without_daemon no flush_on_last_del no max_fds max } blacklist { devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^hd[a-z]" devnode "^cciss.*" } devices { device { vendor "NETAPP" product "LUN" path_grouping_policy group_by_prio features "1 queue_if_no_path" prio_callout "/sbin/mpath_prio_ontap /dev/%n" path_checker tur failback immediate hardware_handler "0" rr_weight uniform rr_min_io 128 getuid_callout "/sbin/scsi_id -g -u -s /block/%n" } }
The following file provides an example of the values you need to supply when your host is running Citrix XenServer 6.2 with ALUA enabled.
defaults { flush_on_last_del no dev_loss_tmo 30 fast_io_fail_tmo off } blacklist { wwid device_id_of the_device_to_be_blacklisted devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^hd[a-z]" devnode "^cciss.*" } devices { device { vendor "NETAPP" product "LUN.*" prio "alua" hardware_handler "1 alua" } }
The following file provides an example of the values you need to supply when your host is running Citrix XenServer 6.2 without ALUA enabled.
defaults { flush_on_last_del no dev_loss_tmo 30 fast_io_fail_tmo off } blacklist { wwid device_id_of the_device_to_be_blacklisted devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^hd[a-z]" devnode "^cciss.*" } devices { device { vendor "NETAPP" product "LUN.*" prio "ontap" hardware_handler "0" } }
The following file provides an example of the values you need to supply when your host is running Citrix XenServer 6.5 without ALUA enabled.
blacklist { wwid device_id_of the_device_to_be_blacklisted devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^hd[a-z]" devnode "^cciss.*" } devices { device { vendor "NETAPP" product "LUN.*" dev_loss_tmo 30 fast_io_fail_tmo off flush_on_last_del no } }