Shine could be easily and quickly install on any system supporting:
- Python 2.4+
- ClusterShell library (version 1.6+ recommended)
If you want to do central administration with Lustre (what you likely will do), you need to be sure Shine will be able to do ssh connection from your main node to all your Lustre nodes, without prompt, using some automatic identifiation like public keys, Kerberos ticket, ...
Shine helps you using your Lustre filesystem, configuring and running it, but do not install Lustre by itself.
You must first install Lustre modules and binaries on all required nodes and make sure Lustre is ready to work on all of them.
See Lustre documentation for doing that.
Install ClusterShell and Shine on all nodes which will be used. This includes all your Lustre server nodes (MGS, MDS, OSS) and your clients. But also some central administration nodes which are not Lustre nodes, but are used to control your cluster.
# rpm -ivh clustershell-1.6-1.el6.noarch.rpm shine-1.4-1.el6.noarch.rpm
Note: Shine is mostly used from a central administration node. All following commands must be entered from your administration node.
Create a model file copying the example provided in RPM package.
# cp /etc/shine/models/example.lmf /etc/shine/models/mylustre.lmf # vi /etc/shine/models/mylustre.lmf
Then, replace the values from Section #1 and Section #2 with your filesystem information.
Let's see them one by one...
Set any simple name that matches your need:
# fs_name # The Lustre filesystem name (8 characters max). fs_name: mylustre
You should define a mapping between the administrative name of your Lustre machine (name or IP used by SSH) and the Lustre Network IDentifiers (nids).
See Lustre documentation to know the Lustre NIDs or your machines.
# nid_map # Hosts to Lnet NIDs mapping. nid_map: nodes=nova[0-32] nids=nova[0-32]@tcp0
Define your targets (MGT, MDT, OST), specifying for each of them, the node where they could be reached and the device path. This is the minimal configuration. You can add more details, see a journal device, some failover partners, etc.
# mgt # Management Target mgt: node=nova4 dev=/dev/sde1 # mdt # MetaData Target mdt: node=nova4 dev=/dev/sdf # ost # Object Storage Target(s) ost: node=nova5 dev=/dev/sdd ost: node=nova5 dev=/dev/sde ost: node=nova6 dev=/dev/sdd ost: node=nova6 dev=/dev/sde
Define the client node list. The mount point which will be used is defined by
mount_path in Section #1.
# client # FS clients client: node=nova[7-32] # mount_path # Default clients mount point path. mount_path: /mylustre
Now that you have a model file describing your filesystem, the first step is to install your filesystem, before doing any other actions.
If you modify the model file, its changes will not be taken in account except you do a
shine install command.
# shine install -m /etc/shine/models/mylustre.lmf Using Lustre model file /etc/shine/models/mylustre.lmf Configuration files for file system `testext' have been installed successfully on nova[4-32]. Lustre targets summary: 1 MGT on nova4 1 MDT on nova4 4 OST on nova[5-6] Use `shine format -f mylustre' to initialize the file system.
After having installing the filesystem, you can format it with the following command.
Shine will do this in parallel and inform you of its progress.
Note that the filesystem status inform you that each device is offline, meaning they are ready to be put online.
# shine format -f mylustre Format testext on nova[4-6]: are you sure? (y)es/(N)o: y Starting format of 3 targets on nova[4-6] FILESYSTEM STATUS (testext) TYPE # STATUS NODES ---- - ------ ----- MGT 1 offline nova4 MDT 1 offline nova4 OST 2 offline nova[5-6]
To set your filesystem targets online, use the start command:
# shine start -f mylustre Starting 6 targets of mylustre on nova[4-6] Start successful. FILESYSTEM STATUS (mylustre) TYPE # STATUS NODES ---- - ------ ----- MGT 1 online nova4 MDT 1 online nova4 OST 2 online nova[5-6]
When your Lustre servers are online and ready, you can mount your clients:
# shine mount -f mylustre Starting mylustre clients on nova[7-32]... Mount successful on nova[7-32]
Finally, you can see the general state of your Lustre filesystem with:
# shine status -f mylustre FILESYSTEM STATUS (mylustre) TYPE # STATUS NODES ---- - ------ ----- MGT 1 online nova4 MDT 1 online nova4 OST 2 online nova[5-6] CLI 25 mounted nova[8-32]