Part 1 – IBM Spectrum Scale

Loading

General Parallel File System (GPFS) is a high-performance object storage clustered file system developed by IBM. It can be deployed in shared disk configurations allowing us to configure high available file system allowing concurrent access from a cluster of nodes thus offering parallelism and guaranteed availability at all times.

All GPFS management utilities are located under the /usr/lpp/mmfs/bin/ directory and commands typically start with mm

Lab Configuration

I’ve deployed a base server edition of Ubuntu 20.04 on all these servers.

NSD Nodes

  • 172.16.11.157 nsdnode01.ash.local nsdnode01
  • 172.16.11.158 nsdnode02.ash.local nsdnode02
  • 172.16.11.159 nsdnode03.ash.local nsdnode03

Protocol Nodes

  • 172.16.11.160 protocol01.ash.local protocol01
  • 172.16.11.161 protocol02.ash.local protocol02

GUI/Admin Nodes

  • 172.16.11.182 client01.ash.local client01
  • 172.16.11.183 client02.ash.local client02

Prerequisites

Verify Ubuntu Install

There are a number of steps involved to configure the GPFS system and the first of it the OS installation.

Install all these packages

  • apt-get update && apt-get upgrade -y
  • apt-get install cpp gcc g++ binutils make ansible=2.9* iputils-arping net-tools rpcbind python3 python3-pip -y

Disable Auto Upgrades

We need to make sure our Ubuntu Server is not automatically upgrading any packages, because Spectrum Scale is kernel independent, and if you automatically upgrade the kernel you may end up with a cluster that stop working unexpected.
Modify the file /etc/apt/apt.conf.d/20auto-upgrades

FROM:

TO:

And the file /etc/apt/apt.config.d/10periodic

FROM:

TO:

Reboot your system to make sure everything boots up normal.

Disable firewall

Set the path of GPFS commands

cd /etc/profile.d

Configure user access to sudoers

Configure root access to all servers

For us to do root authentication, we will add these parameters into my sshd config file

Configure password-less access auth

We will need to generate a key and share out with the public to all servers in the cluster so as to do passwordless authentication. There needs to be keys generated from the admin nodes and protocol nodes

Copy the public key to all our GPFS servers

Ensure the hostname is set correctly

Open /etc/hostname and Change the Hostname

Open /etc/hosts and Change the Hostname

root@protocol01:~# cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 protocol01

Configure Static IP Address on all hosts

This step is necessary to ensure we have a static address on all our servers.

Once done, save the file and apply the changes by running the following command:

Add an Additional IP Address Permanently

Ubuntu allows you to add multiple virtual IP addresses on a single network interface card and we need our protocol nodes to have multiple IP’s on it.

Ansible: Define Ansible Host file

One last thing we need to do is to define all our hosts in the ansible host file with the user name we are planning to use for connectivity so in this case it’s the root.

root@protocol01:/etc/ansible# pwd
/etc/ansible
root@protocol01:/etc/ansible#
root@protocol01:/etc/ansible#
root@protocol01:/etc/ansible# tail hosts

172.16.11.161 ansible_user=root
172.16.11.182 ansible_user=root
172.16.11.157 ansible_user=root
172.16.11.158 ansible_user=root
172.16.11.159 ansible_user=root
172.16.11.183 ansible_user=root
172.16.11.182 ansible_user=root
root@protocol01:/etc/ansible#

If the configuration is all correct up until now, we should just get validation as success from our ansible ping and this ensure all our ssh keys are as well validated.

(Visited 92 times, 1 visits today)

By Ash Thomas

Ash Thomas is a seasoned IT professional with extensive experience as a technical expert, complemented by a keen interest in blockchain technology.

Leave a Reply