在RHEL / CentOS / Fedora Part -I上使用iSCSI目标创建集中安全存储

iSCSI是一种块级协议,用于通过TCP / IP网络共享原始存储设备,通过iSCSI共享和访问存储,可以与现有IP和

iSCSI是通过TCP / IP网络,共享共担RAW存储设备,并在访问iSCSI存储块级协议,可以与现有的IP和以太网网络上使用如网卡,交换器,路由器等iSCSI目标是提出一个远程硬盘从远程iSCSI服务器(或)目标。

在Linux中安装iSCSI目标

在Linux中安装iSCSI目标

我们不需要高资源来确保客户端的稳定连接和性能。 iSCSI服务器称为目标 ,这一比例的从服务器的存储。 iSCSI客户机的称为发起者 ,这将访问从目标服务器的共享存储。 市场上有大容量存储服务(如SAN存储)的iSCSI适配器。

为什么我们需要一个大容量存储区的iSCSI适配器?

以太网适配器(NIC)被设计为在系统,服务器和存储设备(如NAS存储)之间传输分组化文件级数据,它们不能通过Internet传输块级数据。

iSCSI目标的特性

  1. 可能在单个机器上运行多个iSCSI目标。
  2. 单个计算机在iSCSI SAN上提供多个iSCSI目标
  3. 目标是存储,并使其可通过网络用于启动器(客户端)
  4. 这些存储的池是一起提供给网络的是iSCSI LUN(逻辑单元号)。
  5. iSCSI支持同一会话中的多个连接
  6. iSCSI启动器发现网络中的目标,然后通过LUN进行身份验证和登录,以便在本地获取远程存储。
  7. 我们可以在本地安装的LUN中安装任何操作系统,就像我们以前在基本系统中安装一样。

为什么需要iSCSI呢?

在虚拟化中,我们需要具有高冗余,稳定性的存储,iSCSI以低成本提供这些。 在与光纤通道SAN比较的同时以低价格创建SAN存储,我们可以使用标准设备,使用NIC,以太网交换等现有硬件构建SAN。

让我们开始使用iSCSI目标安装和配置集中式安全存储。 对于本指南,我使用了以下设置。

  1. 我们需要单独的1系统来设置iSCSI目标服务器和启动器(客户端)。
  2. 可以在大型存储环境中添加多个硬盘,但是我们这里只使用一个额外的驱动器,除了基本安装盘。
  3. 这里我们只使用2个驱动器,一个用于基本服务器安装,另一个用于存储(LUN),我们将在本系列的PART-II中创建。
主服务器设置
  1. 操作系统 - CentOS 6.5(最终版)
  2. iSCSI目标IP - 192.168.0.200
  3. 使用的端口:TCP 860,3260
  4. 配置文件:/etc/tgt/targets.conf

本系列将题目通过零件1-3 使用iSCSI设立集中安全存储编制和涵盖以下主题。

第1部分创建使用iSCSI目标集中安全存储

安装iSCSI目标

打开终端并使用yum命令搜索需要为iscsi target安装的包名称。

# yum search iscsi
示例输出
========================== N/S matched: iscsi =======================
iscsi-initiator-utils.x86_64 : iSCSI daemon and utility programs
iscsi-initiator-utils-devel.x86_64 : Development files for iscsi-initiator-utils
lsscsi.x86_64 : List SCSI devices (or hosts) and associated information
scsi-target-utils.x86_64 : The SCSI target daemon and utility programs

我们得到的搜索结果如上,选择目标包并安装到玩耍。

# yum install scsi-target-utils -y
安装iSCSI Utils

安装iSCSI Utils

列出已安装的软件包,以了解默认的配置,服务和手册页位置。

# rpm -ql scsi-target-utils.x86_64
列出所有iSCSI文件

列出所有iSCSI文件

让我们开始iSCSI服务,检查服务的状态和运行,命名为tgtd iSCSI服务。

# /etc/init.d/tgtd start
# /etc/init.d/tgtd status
启动iSCSI服务

启动iSCSI服务

现在我们需要将其配置为在系统启动时自动启动。

# chkconfig tgtd on

接下来,验证运行水平,为tgtd服务配置正确。

# chkconfig --list tgtd
在启动时启用iSCSI

在启动时启用iSCSI

让我们用tgtadm列出什么样的目标和LUN我们目前得到了在我们的服务器配置。

# tgtadm --mode target --op show

tgtd安装和运行,但有是因为我们还没有定义在目标服务器的LUN没有从上面的命令的输出 对于手册,运行“ ”命令。

# man tgtadm
iSCSI手册页

iSCSI手册页

最后,如果目标服务器中部署了iptables,我们需要为iSCSI添加iptables规则。 首先,找到使用以下netstat命令iSCSI目标的端口号,目标总是监听TCP端口3260上。

# netstat -tulnp | grep tgtd
查找iSCSI端口

查找iSCSI端口

接下来添加以下规则,以允许iptables广播iSCSI目标发现。

# iptables -A INPUT -i eth0 -p tcp --dport 860 -m state --state NEW,ESTABLISHED -j ACCEPT
# iptables -A INPUT -i eth0 -p tcp --dport 3260 -m state --state NEW,ESTABLISHED -j ACCEPT
打开iSCSI端口

打开iSCSI端口

将iSCSI端口添加到Iptables

将iSCSI端口添加到Iptables

:规则可以根据您的默认链策略有所不同。 然后保存Iptables并重新启动iptables。

# iptables-save
# /etc/init.d/iptables restart
重新启动iptables

重新启动iptables

在这里,我们部署了一个目标服务器来共享LUN到任何通过TCP / IP与目标进行验证的启动器,这也适用于小型到大型生产环境。

在我的下一个即将到来的文章中,我将告诉你如何创建LUN的使用LVM在目标服务器以及如何共享LUN的在客户机上,直到然后敬请关注HowToing更多这样的更新,不要忘了给宝贵意见。