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]]. | ||