Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
sanboot:iscsi_boot [2007/08/24 16:01] mcb30 created |
sanboot:iscsi_boot [2009/10/29 17:21] (current) mcb30 |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Booting from an iSCSI target ====== | ====== Booting from an iSCSI target ====== | ||
+ | |||
+ | ===== Configuring your DHCP Server ===== | ||
+ | |||
+ | ==== Using ISC dhcpd ==== | ||
Place the following two lines in ///etc/dhcpd.conf//: | Place the following two lines in ///etc/dhcpd.conf//: | ||
filename ""; | filename ""; | ||
- | option root-path "iscsi:my.iscsi.target::::iqn.2007-08.name.dns.my:image"; | + | option root-path "iscsi:my.target.dns.name::::iqn.2007-08.name.dns.target.my:iscsiboot"; |
- | where //my.iscsi.target// is the DNS name or IP address of your iSCSI target, and //iqn.2007-08.name.dns.my:image// is the iSCSI target IQN that you selected for your target. | + | where //my.target.dns.name// is the DNS name (or IP address) of your iSCSI target, and //iqn.2007-08.name.dns.target.my:iscsiboot// is the iSCSI target IQN that you wish to boot from. |
You will probably need to restart your DHCP server for the changes to take effect: | You will probably need to restart your DHCP server for the changes to take effect: | ||
- | root@chipmunk# /etc/init.d/dhcpd restart | + | /etc/init.d/dhcpd restart |
+ | |||
+ | ==== Using Microsoft DHCP Server ==== | ||
+ | |||
+ | In the DHCP administrative tool, right-click on //Server Options// and choose //Configure Options//. Click on "017 Root Path" and set the "String value" to | ||
+ | |||
+ | iscsi:my.target.dns.name::::iqn.2007-08.name.dns.target.my:iscsiboot | ||
+ | |||
+ | where //my.target.dns.name// is the DNS name (or IP address) of your iSCSI target, and //iqn.2007-08.name.dns.target.my:iscsiboot// is the iSCSI target IQN that you wish to boot from. | ||
+ | |||
+ | {{ :screenshots:winnt_dhcp_iscsi.png?716×511 |Windows DHCP server configuration}} | ||
+ | |||
+ | ===== Booting Your Client ===== | ||
Boot your diskless client using gPXE. If all has gone well, you should see it boot from your iSCSI target image. | Boot your diskless client using gPXE. If all has gone well, you should see it boot from your iSCSI target image. | ||
+ | |||
+ | {{:sanboot:sanbootcli.jpg}} | ||
Congratulations on a successful boot from SAN! | Congratulations on a successful boot from SAN! | ||
+ | \\ | ||
+ | \\ | ||
+ | |||
+ | ===== Troubleshooting ===== | ||
+ | |||
+ | If you have difficulties booting Windows from SAN, take a look at [[:sanboot:winnt_iscsi_debug|Debugging Windows iSCSI boot]]. | ||
+ | |||
+ | ===== iSCSI Root Path Syntax ===== | ||
+ | |||
+ | ==== Theory ==== | ||
+ | |||
+ | Described heavily in depth in RFC 4173, the root path string used to boot from SAN can range from relatively simple, to a //very// explicit, information packed line. According to the RFC, the root path string is formatted as follows: | ||
+ | |||
+ | iscsi:<servername>:[protocol]:[port]:[LUN]:<targetname> | ||
+ | |||
+ | **"servername"** is required, and can be the domain name or IPv4 (or IPv6, which is //not// supported by gPXE) address of your iSCSI target server.\\ | ||
+ | **"protocol"** is optional, and is generally left blank, assuming a default value of "6" for TCP.\\ | ||
+ | * RFC 4173 states that TCP is the only valid protocol at the time of writing.\\ | ||
+ | **"port"** is optional, and if left blank will assume a default value of 3260.\\ | ||
+ | **"LUN"** is optional, and if left blank will assume a default value of 0.\\ | ||
+ | **"targetname"** is required, and should be the iSCSI target IQN you wish to boot from.\\ | ||
+ | |||
+ | ==== Practice ==== | ||
+ | |||
+ | For most non-complex deployments, such as the samples in above sections, your root path will look like: | ||
+ | |||
+ | iscsi:my.target.dns.name::::iqn.2007-08.name.dns.target.my:iscsiboot | ||
+ | |||
+ | That root path string omits the protocol, port, and LUN used by the iSCSI target server, defaulting to TCP, port 3260, and LUN 0, but is functionally equivalent to: | ||
+ | |||
+ | iscsi:my.target.dns.name:6:3260:0:iqn.2007-08.name.dns.target.my:iscsiboot | ||
+ | |||
+ | Furthermore, the LUN ID itself has a rather sophisticated set of rules for how it can be defined, but that goes beyond the scope of this article. | ||
+ | |||
+ | ==== Advanced Reading ==== | ||
+ | |||
+ | For more information, please see pages 3 and 4 of [[http://www.rfc-archive.org/getrfc.php?rfc=4173|RFC 4173]]. | ||