Ubuntu 12.04 iSCSI Configuration
Configure Storage Server with iSCSI. A storage on a network is called iSCSI Target, a Client which connects to iSCSI Target is called iSCSI Initiator.
This example is based on the environment below.
dlp.server.world
[10.0.0.30] - iSCSI Target
www.server.world
[10.0.0.31] - iSCSI Initiator
This example configures to create LVM partition on iSCSI Target, so it need to have enough areas to use. If your iSCSI Target does not have enough areas, add new hard drive.
[1]
Configure iSCSI Target
# create a phisical volume
root@dlp:~#
pvcreate /dev/sdb1
Physical volume "/dev/sdb1" successfully created
# create a volume group named "vg_target00"
root@dlp:~#
vgcreate -s 32M vg_target00 /dev/sdb1
Volume group "vg_target00" successfully created
# create a logical volume named "lv_target00"
root@dlp:~#
lvcreate -L 100G -n lv_target00 vg_target00
Logical volume "lv_target00" created
root@dlp:~#
aptitude -y install iscsitarget iscsitarget-dkms
root@dlp:~#
vi /etc/default/iscsitarget
# change
ISCSITARGET_ENABLE=
true
root@dlp:~#
vi /etc/iet/ietd.conf
# add at the last
# naming rule : [ iqn.yaer-month.domain:any name ]
Target iqn.2012-07.world.server:target0
# provided devicce as a iSCSI target
Lun 0 Path=/dev/vg_target00/lv_target00,Type=blockio
# iSCSI Initiator's IP address you allow to connect
initiator-address 10.0.0.31
# authentication info ( set anyone you like for "username", "password" )
incominguser username password
root@dlp:~#
service iscsitarget restart
* Removing iSCSI enterprise target devices:
...done.
* Stopping iSCSI enterprise target service:
...done.
* Removing iSCSI enterprise target modules:
...done.
* Starting iSCSI enterprise target service
...done.
...done.
root@dlp:~#
chkconfig tgtd on
root@dlp:~#
ietadm --op show --tid=1
# confirm status
Wthreads=8 Type=0 QueuedCommands=32 NOPInterval=0 NOPTimeout=0
[2]
Complete to configure iSCSI Target. See next step to configure iSCSI Initiator.
Configure iSCSI Initiator. This example is based on the environment below.
dlp.server.world
[10.0.0.30] - iSCSI Target
www.server.world
[10.0.0.31] - iSCSI Initiator
[1]
Configure iSCSI Initiator
root@www:~#
aptitude -y install open-iscsi
root@www:~#
vi /etc/iscsi/iscsid.conf
# line 39: uncomment
node.session.auth.authmethod = CHAP
# line 43,44: uncomment and set username and password which set on iSCSI Target
node.session.auth.username =
username
node.session.auth.password =
password
# discover target
root@www:~#
iscsiadm -m discovery -t sendtargets -p 10.0.0.30
10.0.0.30:3260,1 iqn.2012-07.world.server:target0
# confirm status after discovery
root@www:~#
iscsiadm -m node -o show
# BEGIN RECORD 2.0-871 node.name = iqn.2012-07.world.server:target0
node.tpgt = 1
node.startup = manual
iface.hwaddress = <empty>
iface.ipaddress = <empty>
iface.iscsi_ifacename = default
iface.net_ifacename = <empty>
iface.transport_name = tcp
iface.initiatorname = <empty>
node.discovery_address = 10.0.0.30
node.discovery_port = 3260
node.discovery_type = send_targets
node.session.initial_cmdsn = 0
node.session.initial_login_retry_max = 8
node.session.xmit_thread_priority = -20
node.session.cmds_max = 128
node.session.queue_depth = 32
node.session.auth.authmethod = CHAP
node.session.auth.username = username
node.session.auth.password = ********
node.session.auth.username_in = <empty>
node.session.auth.password_in = <empty>
node.session.timeo.replacement_timeout = 120
node.session.err_timeo.abort_timeout = 15
node.session.err_timeo.lu_reset_timeout = 20
node.session.err_timeo.host_reset_timeout = 60
node.session.iscsi.FastAbort = Yes
node.session.iscsi.InitialR2T = No
node.session.iscsi.ImmediateData = Yes
node.session.iscsi.FirstBurstLength = 262144
node.session.iscsi.MaxBurstLength = 16776192
node.session.iscsi.DefaultTime2Retain = 0
node.session.iscsi.DefaultTime2Wait = 2
node.session.iscsi.MaxConnections = 1
node.session.iscsi.MaxOutstandingR2T = 1
node.session.iscsi.ERL = 0
node.conn[0].address = 10.0.0.30
node.conn[0].port = 3260
node.conn[0].startup = manual
node.conn[0].tcp.window_size = 524288
node.conn[0].tcp.type_of_service = 0
node.conn[0].timeo.logout_timeout = 15
node.conn[0].timeo.login_timeout = 15
node.conn[0].timeo.auth_timeout = 45
node.conn[0].timeo.noop_out_interval = 5
node.conn[0].timeo.noop_out_timeout = 5
node.conn[0].iscsi.MaxRecvDataSegmentLength = 262144
node.conn[0].iscsi.HeaderDigest = None
node.conn[0].iscsi.DataDigest = None
node.conn[0].iscsi.IFMarker = No
node.conn[0].iscsi.OFMarker = No
# END RECORD
# login to target
root@www:~#
iscsiadm -m node --login
Logging in to [iface: default, target: iqn.2012-07.world.server:target0, portal: 10.0.0.30,3260]
Login to [iface: default, target: iqn.2012-07.world.server:target0, portal: 10.0.0.30,3260]: successful
# confirm session
root@www:~#
iscsiadm -m session -o show
tcp: [1] 10.0.0.30:3260,1 iqn.2012-07.world.server:target0
# confirm partitions
root@www:~#
cat /proc/partitions
major minor #blocks name
8
0
31457280
sda
8
1
512000
sda1
8
2
30944256
sda2
253
0
20971520
dm-0
253
1
6160384
dm-1
253
2
3809280
dm-2
8
16
104857600
sdb
# added new device provided from target
[2]
Complete to configure iSCSI Initiator. It's possible to use the provided device from iSCSI Target as a local device.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现