关于redhat上iscsi的安装:iSCSI target HowTo on Enterprise Linux (RHEL4)

2024-02-16 12:08

本文主要是介绍关于redhat上iscsi的安装:iSCSI target HowTo on Enterprise Linux (RHEL4),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

关于redhat上iscsi的安装:

iSCSI target HowTo on Enterprise Linux (RHEL4)

 


Table of contents [showhide] 
1 About

2 Install the Target

3 Configure the Target

4 Configure the Linux Client

5 Resources

6 Corrections and Better Ways
 
[edit]About
This is a brief guide to setup an iSCSI Target and Initiator on RHEL4 using the iSCSI Enterprise Target (IET) (http://iscsitarget.sourceforge.net) software for Linux and the stock RHEL4 Initiator. The motivation for this was to provide a iSCSI target for Red Hat Inc's, GFS (http://www.redhat.com/en_us/USA/home/solutions/gfs/) (manual (http://www.redhat.com/docs/manuals/csgfs/browse/rh-gfs-en/)). Make sure you check out the iscsi-target website and for more infromation on iSCSI in general look at this guide (http://www.cuddletech.com/articles/iscsi/index.html) from Ben Rockwood .

[edit]Install the Target
1. Install RHEL4, I used kickstart with just "@ base" for packages. Configure the system with two drives sda and sdb or create two logical volumes(lvm). The first disk is for the OS and the second for the iSCSI storage. Run up2date and install the latest kernel.

up2date kernel
2 Reboot the box to use the updated kernel and then install the kernel source files, the openssl development packages, the gcc compiler and rpm-build needed to build the iscsi target source .

up2date kernel-devel openssl-devel gcc rpm-build
3. Download the rpm source package from http://www.cryptoforge.net/iscsi/RPMS, maintained by Bastiaan Bakker. As of this writing use version 0.4.12 as 0.4.13 will fail with the updated kernel (2.6.9-22.0.2.EL when I did this). I used /usr/src/iscsitarget to download the rpm as this is a OS resource, you can put it were ever you want. A quick note, Unless your a developer don't be tempted to complie from pure source, rpm stops you from having to chase down files from a "make && make install". The Redhat Package Manager is just that, a package manager, use it :-).

a. As root, make the directory for the package.

mkdir /usr/src/iscsitarget
b. Change into the newly created directory.

cd /usr/src/iscsitarget
c. Download the iscsitarget source from cryptoforge.

wget http://www.cryptoforge.net/iscsi/RPMS/iscsitarget-0.4.12-6.src.rpm
or you can grab the src.rpm directly from here

wget http://www.digicola.com/developer/iscsitarget-0.4.12-6.src.rpm
d. create the rpms from the rpm.src file.

rpmbuild --rebuild iscsitarget-0.4.12-6.src.rpm
e. This will build the iscsitarget and iscsi-kernel rpms, install the rpms with the normal commands.

rpm -Uvh /usr/src/redhat/RPMS/i386/iscsitarget-0.4.12-6.i386.rpm /usr/src/redhat/RPMS/i386/iscsitarget-kernel-0.4.12-6_2.6.9_22.0.2.EL.i386.rpm
f. Add iscsi-target to chkconfig and enable it.

chkconfig --add iscsi-target
chkconfig --level 2345 iscsi-target on
or

chkconfig iscsi-target on
[edit]Configure the Target
1. The configuration file for the iscsi-target is ietd.conf located in /etc. The following is the ietd.conf file that I am using to share sdb as an iscsi disk.

# iscsi target configuration

Target iqn.2000-12.com.digicola:storage.lun1
        IncomingUser gfs secretsecret
        OutgoingUser
        Lun 0 Path=/dev/sdb,Type=fileio
        Alias iDISK0
        #MaxConnections  6
The iedt.conf file that I use is straight forward enough.

The IncomingUser and OutgoingUser at the begining of the file defines users allowed to query the iscsi session (If empty then everyone is allowed). Note: The iscsi spec states that the password is 12 characters, (from what I have read) the MS initiator requires it.
Targets definitions start with "Target" and the target name. The target name must be a globally unique name, the iSCSI standard defines the "iSCSI Qualified Name" as follows: iqn.yyyy-mm.<reversed domain name>[:identifier] "yyyy-mm" is the date at which the domain is valid and the identifier is freely selectable.
The target can also require authentication, this time I used the user gfs with the password of secretsecret for the incoming user (iscsi initiator).
The Type "fileio" is the default and can be used for disk, file or LVM.
MaxConnections, This is no longer required as it is an outdated option.
2. Start the iscsi-target deamon and check /var/log/messages for success.

service iscsi-target restart
[edit]Configure the Linux Client
1. Install the iscsi-initiator-utils with up2date

up2date iscsi-initiator-utils
2. This installs the iscsi initiator on to the linux client along with a man page and rc start scripts. The iscsi initiator is configured with the iscsi.conf file located in /etc. Below is the iscsi.conf file used for the target above.

# simple iscsi.conf

DiscoveryAddress=172.30.0.28
            OutgoingUserName=gfs
            OutgoingPassword=secretsecret
       LoginTimeout=15
       DiscoveryAddress=172.30.0.28
3. Start the iscsi initiator and cross your fingers

service iscsi start
4. Check that the disk is visiable under proc, if it's not look in /var/log/messages on both the client and the host system.

cat /proc/scsi/scsi
Below is the output from my /proc/scsi/scsi

[root@gfs1 init.d]# cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: VMware,  Model: VMware Virtual S Rev: 1.0
  Type:   Direct-Access                    ANSI SCSI revision: 02
Host: scsi1 Channel: 00 Id: 00 Lun: 00
  Vendor: IET      Model: VIRTUAL-DISK     Rev: 0
  Type:   Direct-Access                    ANSI SCSI revision: 04
5. Next run the iscsi-ls command

iscsi-ls
Here is the output from this example

*******************************************************************************
SFNet iSCSI Driver Version ...4:0.1.11(12-Jan-2005)
*******************************************************************************
TARGET NAME             : iqn.2000-12.com.digicola:storage.lun1
TARGET ALIAS            :
HOST ID                 : 1
BUS ID                  : 0
TARGET ID               : 0
TARGET ADDRESS          : 172.30.0.28:3260,1
SESSION STATUS          : ESTABLISHED AT Thu Feb  9 01:22:37 EST 2006
SESSION ID              : ISID 00023d000001 TSIH 100
*******************************************************************************
6. Voila! you should now have a new SCSI disc avaiable for use. Now you can use fdisk to partition the disk (fdisk /dev/sdb) and use mkfs to format the partition (which is out of the scope of this howto).

7. Finally set the iscsi service start automatically

chkconfig iscsi on
[edit]Resources
If you need more information, run into problems using this howto or want to go more indepth for iSCSI, here is a list of resources out on the web.

http://www.cuddletech.com/articles/iscsi/index.html
http://iscsitarget.sourceforge.net/
http://fedoranews.org/mediawiki/index.php/Going_Enterprise_-_setup_your_FC4_iSCSI_target_in_5_minutes

这篇关于关于redhat上iscsi的安装:iSCSI target HowTo on Enterprise Linux (RHEL4)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/714485

相关文章

基于Linux的ffmpeg python的关键帧抽取

《基于Linux的ffmpegpython的关键帧抽取》本文主要介绍了基于Linux的ffmpegpython的关键帧抽取,实现以按帧或时间间隔抽取关键帧,文中通过示例代码介绍的非常详细,对大家的学... 目录1.FFmpeg的环境配置1) 创建一个虚拟环境envjavascript2) ffmpeg-py

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

Linux链表操作方式

《Linux链表操作方式》:本文主要介绍Linux链表操作方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、链表基础概念与内核链表优势二、内核链表结构与宏解析三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势六、典型应用场景七、调试技巧与

详解Linux中常见环境变量的特点与设置

《详解Linux中常见环境变量的特点与设置》环境变量是操作系统和用户设置的一些动态键值对,为运行的程序提供配置信息,理解环境变量对于系统管理、软件开发都很重要,下面小编就为大家详细介绍一下吧... 目录前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变