ISCSI Raid and Clustered File Systems
This material is obsolete ... SCST is deprecated since Alpine 2.6 in favor of TCM and OCFS2 isn't available in Alpine 3.6 (Discuss) |
This document describes how to created a raided file system that is exported to multiple host via ISCSI.
Raid Configuration
Very Similar to Setting up a software RAID array.
apk install mdadm
mdadm --create --level=5 --raid-devices=3 /dev/md0 /dev/hda /dev/hdb /dev/hdc
To see the status of the creation of these devices
cat /proc/mdstat
You Don't have to wait to continue to use the disk.
iSCSI Target Config
SCST is recommended over IET, due to bugfixes, performance and RFC compliance.
Initiator Config
iscsiadm --mode node --targetname NAME_OF_TARGET --portal IP_OF_TARGET --login
This should then give you a device /dev/sda. Check by dmesg.
fdisk /dev/sda
Create a partition to use. sda1 file system type 83
Add ocfs2 tools (available in Alpine 2.3 or greater)
apk add ocfs2-tools
It can take care of starting and stopping services, copying the cluster.conf between nodes,creating the filesystem, and mounting it.
Need to create a /etc/ocfs2/cluster.conf.
This configuration file should be the same on all the nodes in the cluster. Should look similar to the following...
node:
ip_port = 7777 ip_address = 192.168.1.202 number = 0 name = bubba cluster = ocfs2
node:
ip_port = 7777 ip_address = 192.168.1.102 number = 1 name = bobo cluster = ocfs2
cluster:
node_count = 2 name = ocfs2
Load modules:
echo ocfs2 >> /etc/modules-load.d/ocfs2.conf echo dlm >> /etc/modules-load.d/dlm.conf
modprobe ocfs2 modprobe dlm
Mount ocfs2 metafilesystems
echo none /sys/kernel/config configfs defaults 0 0 >> /etc/fstab echo none /sys/kernel/dlm ocfs2_dlmfs defaults 0 0 >> /etc/fstab
Start ocfs2 cluster
/etc/init.d/o2cb start
Run the following command only on one node.
mkfs.ocfs2 -L LABELNAME /dev/sda1
Run the following command on both nodes.
/etc/init.d/o2cb enable
mount /dev/sda1 /media/iscsi1
Now you can create read/write/change on both machines to the one drive at the same time.