Installation prerequisites

There are several prerequisites for installing IBM Spectrum Scale™.

These prerequisites are the following:
Packages
The spectrumscale installation toolkit requires one of the following packages:
  • python-2.6 with argparse
  • python-2.7
Operating system requirements
The spectrumscale installation toolkit supports Red Hat Enterprise Linux 7.0 and 7.1 platforms on x86_64 and ppc64 architectures.

Red Hat Enterprise Linux 7 must be loaded on all nodes that will be designated as protocol nodes. The installation toolkit and instructions within this document will not work with earlier versions of Red Hat Enterprise Linux nor with other vendor operating systems at this time.

Cleanup required if you previously used the Object Redpaper™ configuration process
If you have already configured the system with Openstack software to use GPFS™ (following instructions from the Object Red paper) be sure to follow the Object cleanup steps in Cleanup procedures required if reinstalling with the spectrumscale installation toolkit before you start any installation activity.
GPFS 4.2.0
If you want to run protocols in a mixed-version cluster, the protocol nodes and all of the quorum nodes must run 4.2.0; other nodes can run an older version.
Note: For Object protocol, the GPFS software is not required on the node that hosts the Keystone identity service if it is deployed on a separate node from the GPFS protocol nodes.
Additional GPFS requirements
  • If you want to run protocols, CCR must be available.
  • mmchconfig release=LATEST must be run.
  • A GPFS cluster and file system are required. If this infrastructure does not already exist, you must install the GPFS software, create a GPFS cluster and create a file system. You can use the spectrumscale installation toolkit to do this. See Using the spectrumscale installation toolkit to perform installation tasks: Explanations and examples.
  • The GPFS file system must be mounted on all GPFS protocol nodes.
  • It is strongly recommended to configure the file system to only support NFSv4 ACLs. You can use the spectrumscale installation toolkit to do this if you use it to install GPFS. See Using the spectrumscale installation toolkit to perform installation tasks: Explanations and examples.

    Alternatively, you can use the -k nfs4 parameter for mmcrfs. NFSv4 ACLs are a requirement for ACL usage with the SMB and NFS protocols. For more information, see mmcrfs examples in the IBM Spectrum Scale: Administration and Programming Reference.

  • Quotas are not enabled by default in GPFS file systems but are recommended for use with SMB and NFS protocols. For more information about quota management, see Enabling and disabling GPFS quota management in IBM Spectrum Scale: Administration and Programming Reference.
  • For Object, the installation toolkit creates an independent fileset in the GPFS file system that you name.

Creation of a file system or fileset or path for shared root
The installation toolkit uses a shared root storage area to install the protocols on each node. This storage is also used by NFS and object protocols to maintain system data associated with the cluster integration we provide. This storage can be a subdirectory in an existing file system or it can be a file system on its own. Once this option is set, changing it will require a restart of GPFS.

You can use the spectrumscale installation toolkit to set up this shared root storage area if you use the toolkit for GPFS installation and file system creation. See Using the spectrumscale installation toolkit to perform installation tasks: Explanations and examples.

However, if you want to set up shared root before launching the installation toolkit, the following steps can be used:
  1. Create a file system or fileset for shared root. Size must be at least 4 GB
  2. mmchconfig cesSharedRoot=path_to_the_filesystem/fileset_created_in_step_1

SSH and network setup
This is a general GPFS prerequisite, not specific to protocols other than protocol-specific ports that need to be open on the firewall.

The node used for initiating installation of SMB, NFS, and/or Object protocols via the installation toolkit must be able to communicate via an internal or external network with all protocol nodes to be installed. All nodes also require SSH keys to be set up so that the installation toolkit can run remote commands without any prompts. Examples of common prompts are a prompt asking for a remote node's password and/or a prompt asking a Y/N question. No prompts should exist when using SSH among any cluster nodes to and from each other, and to and from the node designated for installation.

While reading through the following firewall port prerequisites, refer to this example for opening the Red Hat 7 firewall :

$ firewall-cmd --permanent --add-port=lowerlimit-upperlimit/tcp
$ firewall-cmd --permanent --add-port=lowerlimit-upperlimit/tcp
$ firewall-cmd --permanent --add-port=lowerlimit-upperlimit/udp
$ firewall-cmd --add-port=lowerlimit-upperlimit/tcp
$ firewall-cmd –add-port=lowerlimit-upperlimit/udp

After any firewall changes are done, on any node that these changes were done, the firewall service needs to be restarted (so you might want to do this once after applying all the relevant firewall changes).

$ systemctl restart firewalld.service

The installation toolkit uses TCP port 8889 for communicating with the Chef server. This port must be reachable from all protocol nodes. The installation toolkit does not change any SELinux settings; the user must change those settings, if required.

The SMB protocol uses external TCP port 445 and must be reachable by clients on all protocol nodes. The internal TCP port 4379 is used for internal communication between the protocol nodes and therefore must be reachable from all protocol nodes. If SMB is enabled and these ports are not open, the installation toolkit will fail during precheck. The failure will indicate to make these ports accessible and retry.

The Object protocol uses external TCP ports 5000 for the keystone server and 8080 for the proxy server. If Object is enabled, both must be reachable from all protocol nodes. Internal TCP ports used by object include 6200 (object server), 6201 (container server), 6202 (account server), 35357 (keystone), 11211 (memcached), 5431 (Object Postgres instance). All internal ports needed by the Object protocol must be reachable within the cluster from all protocol nodes.

Note: The Postgres instance used by the object protocol uses port 5431. This is different from the default port to avoid conflict with other Postgres instances that might be on the system including the instance for IBM Spectrum Scale GUI.

GPFS cluster operation requires port 1191 be opened and reachable among all nodes within the internal GPFS cluster network. In addition, an ephemeral port range must be opened as well.

$ mmchconfig tscCmdPortRange=lowerlimit-upperlimit

Follow up by opening these ports on each node as well.

See the topics about GPFS port usage and firewall recommendations in the IBM Spectrum Scale: Advanced Administration Guide in IBM Spectrum Scale in IBM® Knowledge Center.

Repository Setup
This is a general GPFS prerequisite, not specific to protocols.
The spectrumscale installation toolkit contains all necessary code for installation; however, there may be base RHEL7 rpms required as prerequisites. In order to satisfy any prerequisites, it may be necessary for your RHEL7 nodes to have access to a DVD repository (or an external repository accessible by network). Repositories containing IBM Spectrum Scale dependencies include the following x86 examples:
rhel-x86_64-server-7 Red Hat Enterprise Linux Server

For more information about Yum repositories, see Configuring Yum and Yum Repositories (https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/sec-Configuring_Yum_and_Yum_Repositories.html).

NTP Setup

It is recommended that Network Time Protocol (NTP) be configured on all nodes in your system to ensure that the clocks of all of the nodes are synchronized. Clocks that are not synchronized will cause debugging issues and authentication problems with the protocols.

If you are using the install toolkit for IBM Spectrum Scale installation, then no prior NTP configuration is required other than the NTP package is installed and the NTP daemon (ntpd) is not running on all nodes. Use the config ntp commands listed in Understanding the spectrumscale installation toolkit options, Table 1 to set NTP servers and then NTP will automatically be configured at install time.

However, if you are manually installing IBM Spectrum Scale or would prefer to manually configure NTP, see the following example of enabling NTP on a node.

# yum install -y ntp
# ntpdate <NTP_server_IP>
# systemctl enable ntpd
# systemctl start ntpd
# timedatectl list-timezones
# timedatectl set-timezone
# systemctl enable ntpd
Performance Monitoring tool
This is a general GPFS prerequisite, not specific to protocols.

You need to ensure that the boost-regex package is installed in the system before installation of the Performance Monitoring tool.

Collection of core data
This is a general GPFS prerequisite, not specific to protocols.

See the topic about changing configurations to enable spectrumscale to collect core dump data in Understanding the spectrumscale installation toolkit options.