Openfiler使用说明
Openfiler 能把标准x86/64架构的系统变成一个强大的NAS、SAN存储和IP存储网关,为管理员提供一个强大的管理平台,并能能应付未来的存储需求。依赖如VMware,Virtual Iron和Xen服务器虚拟化技术,Openfiler也可部署为一个虚拟机实例。
Openfiler这种灵活高效的部署方式,确保存储管理员能够在一个或多个网络存储环境下使系统的性能和存储资源得到最佳的利用和分配。
Openfiler NAS/SAN Appliance, version 2.99 (Final Release)下载地址:
-2.99.1-x86_64-disc1.iso
Openfiler的主要功能
Openfiler 开源存储管理平台,控制您的存储设备:
集成SAN和NAS等多种功能
高可用性故障切换功能
块级别的远程复制和灾难恢复
功能强大的网页管理界面
本地化语种使设置更方便
NFS网络优化:NFS客户端访问调优,优化了多用户写入、同步、端口等
增强的CIFS选项:高级CIFS共享配置,对应用程序的兼容性更强
多网卡绑定:可创建多网卡的绑定配置,以提高数据的传输性能
高级ISCSI设置:可创建多个iSCSI目标和LUN,并且可以建立数据快照
统一存储 NAS / SAN
iSCSI target功能
支持CIFS和NFS的HTTP,FTP协议
支持的RAID 0,1,5,6,10
裸机或虚拟化安装部署
支持8TB以上的日志文件系统
文件系统的访问控制列表
时间点副本(快照)的支持
动态卷管理器
强大的基于Web的管理
块级别的远程复制
高可用性集群
本地化语种使设置更方便
Openfiler的主要性能和优点
可靠性:Openfiler可以支持软件和硬件的RAID,能监测和预警,并且可以做卷的快照和快速恢复。
高可用性:Openfiler支持主动或被动的高可用性集群、多路径存储(MPIO)、块级别的复制。
性能:及时更新的Linux内核支持最新的CPU、网络和存储硬件。
可伸缩性:文件系统可扩展性最高可超出60TB,并能使文件系统大小可以在线的增长。
Openfiler部署方案
Openfiler提供了一系列的存储网络协议,使之成为多种部署方案的最佳选择:
A、存储区域网络
IP存储网关
磁盘到磁盘备份
视频监控
Oracle 10g的原始卷
虚拟机迁移
持续数据保护
B、网络附加存储
异构的文件共享
Exchange后端服务器
虚拟机的存储后端
网络用户的主目录
媒体归档
Openfiler经济高效的存储
Openfiler是一个商业上可行的开源NAS / SAN解决方案,并能应付复杂的存储管理需求。
首先,它可以安装在x86/64架构的工业标准服务器上,否定了昂贵的专有存储系统的需求。只需要10分钟即可把系统部署到戴尔、惠普、IBM等标准配置服务器上,服务器即变成一个功能强大的网络存储设备了。
此外,与其它存储解决方案不同的是,Openfiler的管理是通过一个强大的、直观的基于Web的图形用户界面。 通过这个界面,管理员可以执行诸如创建卷、网络共享磁盘分配用户和组的配额和管理RAID阵列等各项工作。
作为一个纯软件的解决方案,Openfiler可以在几分钟内下载并安装在任何工业标准的硬件上。这是全新部署或重新启用老的硬件资源的完美解决方案。它可以用来建立已有部署SAN或DAS存储系统的存储网关。 在这种情况下,Openfiler是创建共享现有存储容量的新途径。
Openfiler广泛的硬件兼容性
Openfiler支持大量的SCSI硬件RAID、SATA、SAS、光纤通道控制器的磁盘技术。还可以将Broadcom、英特尔的千兆和万兆以太网控制器绑定,使其接入TCP/IP协议网络数据的速度成倍提高。当然,无论是英特尔至强?和AMD Opteron? 系列的x86/64处理器,还有IBM、英特尔、HP、LSI Logic等厂家的RAID控制器,用于光纤通道的PCI-E和PCI-X接口的QLogic和Emulex的总线适配器。Openfiler与各种网络接口控制器,包括英特尔、Broadcom等,甚至是对高端的Infiniband设备的兼容性都非常的优秀。Openfiler将继续支持更多新硬件、新技术和解决方案,努力成为网络存储领域的中坚力量。
Openfiler丰富的协议
支持多种文件级别和块级别的数据存储输出协议,几乎涵盖现有全部的网络存储服务。
块级别协议: iSCSI、光纤通道
文件级别协议:NFS、CIFS、HTTP/DAV、FTP、rsync
Openfiler强大的管理功能
现有的存储解决方案中基本都存在管理能力不足的缺点。Openfiler面对这一挑战,相对同类解决方案强化了其直观且易于操作的基于Web的图形用户界面(GUI)。 Openfiler中所有网络功能和存储方面的设置均通过这个管理界面来完成。 管理界面分为网络、物理卷、用户和组的认证/授权、系统配置和状态信息等。
在基础层面,磁盘或其他块级别的资源分配,如硬件的RAID卷等可以在物理卷的管理功能里实现。 物理卷管理又由几个子功能组成,其中包括逻辑卷分配和副本(快照)管理等。
管理员也许会更欣赏用户和组的认证/授权功能,可以进行资源限制与配额管理。 Openfiler支持为用户和组的配额管理,存储资源的分配规则允许管理员控制用户使用磁盘的容量等,还能限制一个用户所能使用的文件和目录的数目。 如果一个组被分配一定的资源,管理员可以进一步限制在该组中特定用户的资源。 这种理粒度级别的资源管理是OpenfilerS值得强调的。
Openfiler还可以让系统管理员实时的查看到系统的详细状态,如内存,处理器和存储容量的资源使用。 这可以让管理员更好地计划未来的资源分配需求。
二、 安装Openfiler系统
使用Openfiler安装光盘启动计算机,显示选择Openfiler安装模式界面。
Openfiler安装程序有图形和文本两种安装模式,我在这里按回车键,选择图形安装模式,。
Openfile欢迎界面,点击Next继续。
Keyboard键盘布局默认选择U.S.English,点击Next继续。
显示Warning信息框,点击Yes,确认初始化硬盘并删除所有数据。因为主机中有4块硬盘,所以总共需要点击4次Yes。
主机中有4块硬盘,我要将Openfiler系统安装到第1块硬盘sda上。
选择Remove all partitions on selected drives and create default layout分区方式,删除所有硬盘分区并创建默认分区。
在Select the drive(s) to use for this installation列表中,只勾选第1块硬盘sda, 将Openfiler系统安装到这里。
在What driver would you like to boot this installation from列表中,选择第1块硬盘sda,将引导程序安装到这里。
勾选Review and modify partitioning layout,查看和编辑默认分区。
选择完成后,点击Next继续。
显示Warning信息框,点击Yes,确认删除第1块硬盘sda的所有分区和数据。
安装程序为第1块硬盘 /dev/sda 自动创建默认分区,分别有 /boot 、/ 、swap三个分区。
三个分区占用了10GB的磁盘容量,磁盘剩余空间为Free,可用于创建需要的存储卷。
其它3块硬盘的空间均未被分区和使用,全部磁盘空间为Free。
我们并不需要去修改这里的默认分区状态,点击Next继续。
在设置引导程序安装这里,使用默认选项即可,点击Next继续。
主机中总有10块网卡,我们只需要使用第1块网卡完成,完成基础系统的安装。
在Network Devices列表中,选择第1块网卡eth0,并点击Edit,打开编辑窗口。
在网卡的编辑窗口中,选择Manual configuration方式,并根据实验环境规划,输入IP Address、Prefix(Netmask) 内容。
输入完成后,点击OK返回上层。
根据实验环境规划,在安装程序自动选择的manually处,输入主机名。
在Miscellaneous Settins处,输入Gateway、Primary DNS、Secondary DNS内容。
输入完成后,点击Next继续。
在时间区域窗口中,不勾选System clock users UTC项。
在Selected city列表中,选择Asia/Shanghai,或者在上面的世界地图中选择Shanghai。
操作完成后,点击Next继续。
在root帐户密码窗口中,输入root帐户密码,点击Next继续。
安装程序配置向导已结束,点击Next开始安装Openfiler系统。
安装过程中,可以查看安装进程,现正在格式化文件系统。
查看安装进度和剩余时间。
安装已完成,点击Reboot,重启计算机。
正在重启计算机。
计算机重后,显示OpenfilerESA引导菜单,按回车键或等待5秒后启动Openfiler系统。
正在启动Openfiler ESA。
启动完成,显示Openfiler ESA文本登录界面。
我们可以通过IE浏览器访问Openfiler网页管理界面地址:。
三、 登录Openfiler网页管理界面
打开IE浏览器,访问Openfiler网页管理界面地址:。
无需理会IE提示的此网站的安全证书有问题,点击继续浏览此网站(不推荐)。
继续打开Openfiler网页管理界面,打开网页的过程会有点久,需等待一会。
打开Openfiler Storage Control Center网页,显示Openfiler登录界面。
在Username和Password处,输入Openfiler系统默认的初始密码 (用户名:openfiler,密码:password),并点击Log In进行登录。
登录成功后,进入了Openfiler网页管理界面。
在管理界面中,共有8大配置页面,分别是:Status、System、Volumes、Cluster、Quota、Shares、Services、Accounts。
登录后,默认打开的是Status页面,显示了5方面的系统状态信息,分别是:System Vital、Network Usage、Hardware Information、Memory Usage、Mounted Filesystems。
四、 Openfiler配置规划
要满足vSphere实验所需的Openfiler iSCSI存储系统,其实并不需要像实验环境规划中所设计的那样复杂。我只是希望在满足实验所需基础存储环境的前提下,可以学习更多关于Openfiler系统实用功能的配置。
根据实验环境规划,我们需要完成以下Openfiler的配置内容:
1、在第1块硬盘中安装Openfiler系统,其中系统自身将占用10GB的空间,剩余的空间用来划分LVM。我们可以学会如何处理Openfiler系统所在硬盘的剩余空间无法直接创建LVM奇怪问题。
2、使用第1块硬盘的剩余空间和第2块硬盘的全部空间创建的LVM,组合创建1个Volume。
3、使用第3块和第4块硬盘的全部空间创建1个RIAD 0卷,并创建1个存储Volume。
4、将第1块和第2块网卡、第3块和第4块网卡进行多网卡绑定,分别创建1个bond0和bond1多网卡绑定的网络接口,以实现网络冗余。
五、 配置Openfiler iSCSI存储
创建Physical Volume
打开Volumes页面,此时在Volume Group Management下方没有任何VG卷组。
点击右侧Volumes Section处的Block Devices栏。
打开Block Device Management页面,在磁盘列表中,可以看到4块硬盘,它们的Type类型为SCSI硬盘,其中第1块硬盘 /dev/sda 已有3个Partitions分区 (安装Openfiler时,安装程序自动创建的),其它3块硬盘 /dev/sdb、/dev/sdc、/dev/sdd 均没有分区。
在Edit Disk下方点击 /dev/sda,对第1块硬盘的分区进行编辑。
打开Edit partition in /dev/sda页面,可以看到当前硬盘详细的分区列表和空间分布图。
在Create a partition in /dev/sda区域中,列出当前磁盘剩余空间的Mode (模式)、Starting cylinder (起始磁柱)、Ending cylinder (结束磁柱)、Space (空间) 信息。
我们现在要用当前磁盘的剩余空间来创建一个PV分区。
在创建分区一栏中,将Mode选择为Primary,将Partition Type选择为Physical Volume,在Starting cylinder处输入1300,在Ending cylinder处保留默认值266305。
设置完成后,点击Create,创建PV分区。
细心的朋友可能会注意到,原本硬盘剩余空间的Starting cylinder值为1214,而创建PV分区时,输入的Starting cylinder值却是1300,这是为何呢?
这是因为Openfiler系统要求硬盘必须保留5%的剩余空间,所以在创建PV分区,需要调整Starting cylinder值,以减少所创建PV分区的大小,空出5%的剩余空间。
如果我们在创建PV分区时,将Starting cylinder值强制设置成1214,在点击Create后,可以发现新PV分区是不会创建的。
但这种情况只会出现在当硬盘已经存在分区的情况之下,如果只是一个无任何分区的全新硬盘,在创建PV分区时,就不会发生这样的情况,虽然依然会保留5%的剩余空间。
这种特殊情况会给我们创建PV分区带来一些困扰,因为我们无法一次性准确估算出Starting cylinder值的合理大小。若值太大了会浪费硬盘空间,值太小了就无法创建PV分区,通常需要反复尝试多次才可以,比较麻烦。
当然还有另一种创建方式,可以在Openfiler控制台下,通过命令行方式来一次性创建好PV分区,具体操作方法,可以查看本文档后面的附录部分。
创建完成后,在Edit partition in /dev/sda列表中,可以看到一个新分区 /dev/sda4。
同时,我们可以看到 /dev/sda4 分区的Starting cylinder与Ending cylinder值已被自动调整,与创建PV分区手动输入的不相同。
在空间分布图中,可以看到保留了剩余5%空间,这个空间是无法使用的。
如果刚才的PV分区创建操作出现错误时,可以点击Delete删除分区,并重新进行操作。
点击Back to the list of physical storage devices,返回上一页。
回到Block Device Management页面,在磁盘列表中,可以看到第1块硬盘 /dev/sda 分区数量由原来的3变成了4。
接下来,我们要继续对第2块硬盘创建PV分区。
在Edit Disk下方点击 /dev/sdb,对第2块硬盘的分区进行编辑。
打开Edit partition in /dev/sdb页面,可以看到当前硬盘没有分区信息。
在Create a partition in /dev/sdb区域中,在创建分区一栏中,将Mode选择为Primary,将Partition Type选择为Physical Volume,在Starting cylinder和Ending cylinder处保留默认值,然后点击Create,创建PV分区。。
创建完成后,在Edit partition in /dev/sdb列表中,可以看到一个新分区 /dev/sdb1。
在空间分布图中,可以看到自动保留了5%的剩余空间,这个空间同样是无法使用的。
点击Back to the list of physical storage devices,返回上一页。
创建RAID array member
回到Block Device Management页面,在磁盘列表中,可以看到第1块硬盘 /dev/sdb 分区数量由原来的0变成了1。
接下来,我们要继续对第3块和第4块硬盘创建RAID阵列成员,因为第3块和第4块硬盘要组建成RAID 0,所有创建分区时存在小小的不同。
在Edit Disk下方点击 /dev/sdc,对第3块硬盘的分区进行编辑。
打开Edit partition in /dev/sdc页面,可以看到当前硬盘没有分区信息。
在Create a partition in /dev/sdc区域中,在创建分区一栏中,将Mode选择为Primary,将Partition Type选择为RAID array member (此项与之前操作不同),在Starting cylinder和Ending cylinder处保留默认值,然后点击Create,创建RAID阵列成员。。
创建完成后,在Edit partition in /dev/sdc列表中,可以看到一个新分区 /dev/sdc1,它的Type类型是Linux RAID Array Member。
在空间分布图中,可以看到自动保留了5%的剩余空间,这个空间同样是无法使用的。
点击Back to the list of physical storage devices,返回上一页。
用同样的操作方法,完成第3块硬盘 /dev/sdc 的RAID阵列成员的创建。
所有分区创建操作完成,最终结果界面。
创建Software RAID
现在我们将第3块硬盘 /dev/sdc1 和第4块硬盘 /dev/sdd1,组建成一个Software RAID 0。
在Block Device Management页面,点击右侧Volumes Section处的Software RAID栏。
打开Software RAID Management页面,当前没有Software RAID存在。
在Create a new RAID array区域中,将Select RAID array type选择为RAID-0 (striped),在Select RAID devices to add列表中,勾选 /dev/sdc1 和 /dev/sdd1。
Openfiler还支持其它类型的RAID,分别是:RAID-1 (mirrored)、RAID-5 (parity)、RAID-6 (extra-parity)、RAID-10 (mirrored + striped)。
点击Add array,创建新的RAID array。
Software RAID 0 创建成功,驱动器号为 /dev/md0。
创建Volume Groups
现在我们将第1块硬盘 /dev/sda4 和第2块硬盘 /dev/sdb1 可用空间,组建成一个Volume Groups,以合并成一个的完整可用空间。
在Software RAID Management页面, 点击右侧Volumes Section处的Volume Groups栏。
打开Volume Group Management页面,当前没有Volume Groups存在。
在Create a new volume group区域中,在Volume group name处,输入卷组名称VG_1+2,在Select physical volumes to add列中,勾选 /dev/sda4 和 /dev/sdb1。
点击Add volume group,创建新的VG。
第一个Volume Group创建成功,可以看到卷组VG_1+2的详细信息。
再用Software RAID 0的可用空间,创建一个Volume Group。
在Create a new volume group区域中,在Volume group name处,输入卷组名称VG_RAID_0,在Select physical volumes to add列中,勾选 /dev/md0 。
点击Add volume group,创建新的VG。
第二个Volume Group创建成功,可以看到卷组VG_RAID_0的详细信息。
在Volume Group Management页面,点击右侧Volumes Section处的Add Volume栏。
创建LUN Volume
打开Add Volume页面,创建存储Volume。
在Select Volume Group列表中,选择一个VG (如:VG_1+2),点击Change。
在Block storage statistics for volume group "vg_1+2" 区域,可以查看VG的空间使用情况。
在Create a volume in "vg_1+2" 区域中,在Volume Name、Volume Description中输入卷名和描述。在Required Space (MB) 中输入VG剩余空间的最大值,在Filesystem / Volume type列表中,选择block (iSCSI,FC,etc)。
配置完成后,点击Create创建。
创建成功后,网页自动转至Manage Volumes页面。
在Volumes in volume group "vg_1+2"区域中,可以查看到Volume卷信息。
在Manage Volumes页面,点击右侧Volumes Section处的Add Volume栏。
在Create a volume in "vg_raid_0"区域中,在Volume Name、Volume Description中输入卷名和描述。在Required Space (MB) 中输入VG剩余空间的最大值,在Filesystem / Volume type列表中,选择block (iSCSI,FC,etc)。
配置完成后,点击Create创建。
创建成功后,网页自动转至Manage Volumes页面。
在Volumes in volume group "vg_raid_0"区域中,可以查看到Volume卷信息。
打开Volume Group Management页面,可以看到刚刚创建好的两个Volume Group。
至此,Openfiler iSCSI存储LUN Volume的创建工作已经完成,接下来我们还需要完成网络和iSCSI服务的配置。
六、 配置Openfiler网络
我们要将第1块和第2块网卡、第3块和第4块网卡进行多网卡绑定,分别创建1个bond0和bond1多网卡绑定的网络接口,以实现网络冗余。
查看网络配置信息
打开System页面,可以查看当前系统的网络配置信息。
在Network Configuration区域中,显示当前主机的Hostname、Primary DNS、Secondary DNS、Gateway配置信息。在这里只有Hostname可以修改,通过点击Update来更新保存配置。
在Network Interface Configuration区域中,显示当前主机的网卡接口配置信息,可以看到该主机共有10块网卡,其中第1块网卡 eth0 配置了IP地址,Link链路状态为启用,速度是1G/s,其余网卡均未配置和启用。
在Network Access Configuration区域中,显示当前网络的访问控制配置信息,现在这里暂时还没有进行设置。
配置多网卡绑定
操作多网卡绑定时要特别留意,如果在配置第1块和第2块网卡绑定操作时出错,那么我们就无法继续访问网页管理界面了,需要到Openfiler的控制台用命令恢复网络配置,所以建议先配置第3块和第4块网卡的绑定操作,即使发生错误,网页管理界面也不会断开。
在Network Interface Configuration区域中,点击Create bonded interface。
打开Network Bonding Configuration界面,在Select interfaces to bond列表中,勾选第3块网卡 eth2 和第4块网卡eth3,点击Continue继续。
在IP Configuration区域中,在IP Address处输入IP地址,在Netmask处选择子网掩码。
在Bond Options区域中,各选项配置使用默认值。点击Continue完成配置。
返回到System页面,在Network Interface Configuration区域中,可以看到eth2和eth3被绑定到了bond0接口。
接着用同样的方法,将第1块网卡 eth0 和第2块网卡 eth1绑定到bond1接口。
配置网络访问控制ACL
在配置iSCSI存储服务时,需要配置Network ACL,以授权远程ESXi主机具有访问iSCSI网络存储的权限。
我们的实验环境规划中,所有主机的IP地址都在192.168.1.0同一网段,因此只需要对网段进行ACL配置。
在Network Access Configuration区域中,在Name处输入名称vSphere-iSCSI,在Network/Host处输入网段192.168.1.0,在Netmask处选择255.255.255.0,在Type处选择Share,点击Update。
网络访问控制ACL创建成功。
七、 配置Openfiler iSCSI 目标
启动iSCSI Target服务
打开Services页面,在Manage Services区域中,显示当前系统服务的运行状态。
在iSCSI Target服务一栏处,点击Enable设置开机启动,点击Start即时启动服务。
iSCSI Target服务已经启动。
配置iSCSI Target
打开Volumes页面, 点击右侧Volumes Section处的iSCSI Targets栏, 打开iSCSI Targets配置向导。
打开Target Configuration标签页,在 Add new iSCSI Target区域中,自动生成了一个Target IQN名称iq.openfiler:tsn.ce7f3b7f8551,点击Add。
在Select iSCSI Target区域中,显示刚刚创建好的iSCSI Target。
在Settings for target区域中,显示iSCSI Target的详细参数。
打开LUN Mapping标签页,在Map New LUN to Target区域中,显示了此前创建好的两个VG,点击Map进行映射。
两个LUN映射成功。
打开Network ACL标签页,在iSCSI host access configuration for target区域中,显示一项此前创建的名为vSphere-iSCSI的Network ACL。
将Access选择为Allow,点击Update,允许此网段访问iSCSI Target。
如果希望远程主机在连接iSCSI Target时,需要提供访问密码的,以提高安全性的,才需要配置CHAP。
打开CHAP Authentication标签页,在Add CHAP user to target区域中,在Username和Password处,输入用户名和密码,在User Type处,选择Incoming User,点击Add,添加CHAP用户。
CHAP用户添加完成。
至此,iSCSI Target服务已经配置完成,Openfiler现在可以开始提供iSCSI存储服务了。
八、 修改Openfiler管理员密码
Openfiler系统管理员的默认密码是password,很明显存在安全性问题,建议将其改掉。
打开Accounts页面,在右侧Accounts section列中选择Admin Password栏。
在Change Administrator Password区域中, 在Current Password、New Password、Confirm New Password处输入密码,点击Submit,提交修改的新密码。
附录一:通过Openfiler控制台创建分区
通过Openfiler的网页管理界面,无法对第一块硬盘 /dev/sda 的剩余空间直接创建PV分区,只能不断地尝试调整磁柱数值,以获得最大的分区空间,比较麻烦。
我们可以在Openfiler控制台的命令行环境下,通过命令方式来创建PV分区,这个问题便可以得到解决。
使用root用户登录Openfiler控制台,登录密码是安装Openfiler时设置的root用户密码。
依次执行以下命令,创建新分区:
# parted /dev/sda
(parted) unit cyl
(parted) print free
(parted) mkpart
primary
ext2
1213
266304
(parted) set 4 lvm
on
(parted) print free
(parted) quit
# pvcreate /dev/sda4
在Web管理界面中,已经可以显示出新创建好的PV分区。
附录二:常用控制台命令
Openfiler 2.99系统使用的是Linux 2.6.32内核,因此它的控制台命令与一般的Linux系统相比,并没有太多区别。
查看Linux内核
# cat /proc/version
修改root用户密码
# passwd
查看网卡或接口的配置
# ls /etc/sysconfig/network-scripts/ (查看所有网络接口)
# cat /etc/sysconfig/network-scripts/ifcfg-eth0 (已配置的单网卡)
# cat /etc/sysconfig/network-scripts/ifcfg-eth0 (多网卡绑定的成员网卡)
# cat /etc/sysconfig/network-scripts/ifcfg-bond1 (多网卡绑定的接口)
# cat /etc/sysconfig/network-scripts/ifcfg-bond9 (未进行配置的网卡)
查看网络配置
# ifconfig
查看DNS
# cat /etc/nf
查看主机名
# hostname
系统重启
# shutdown -r now
系统关机
# shutdown -h now