メインフレーム(IBM z Systems)上で動く Linux である IBM LinuxONE の上で Node.js を動かすことに挑戦してみます。環境は IBM LinuxONE のクラウドサービスである IBM LinuxONE コミュニティクラウドの、RHEL 6.x のサーバーインスタンスを使うことにします。

なお IBM LinuxONE コミュニティクラウド上に RHEL 6.x サーバー環境を構築する手順についてはこちらを参照ください:
IBM LinuxONE コミュニティクラウドを使う(2017年1月版)


まず、そもそも LinuxONE 上に Node.js をインストールできるのか!? という問題があります。yum のリポジトリが用意されているわけではないし、ソースからビルドするのもライブラリが充分ではなかったりします。さて、どうするか・・・

実は Node.js に関しては IBM SDK for Node.js という形で、IBM から多くのプラットフォーム向けインストーラーバイナリが提供されています。LinuxONE もその対象プラットフォームの中の1つなのでした:
https://developer.ibm.com/node/sdk/


上記サイトからは x86 の Linux や Windows, Mac OS だけでなく、 AIX や Power Linux、そして LinuxONE 環境で動く Node.js の各バージョンがバイナリの形で提供されています。

実際には全てのバージョンが全ての環境で動作するわけではありません。例えば Node.js V6 の場合は以下のプラットフォームで動くものが提供されています。LinuxONE(IBM 64-bit z Systems) の RHEL の場合、7.x だけが動作環境に指定されています(他に SLES 12 と Ubuntu 16.04 で動きます。RHEL 6.x ではライブラリが足りないので動かないようです):
2017011601



逆に LinuxONE の RHEL 6.x で動く最も上位のバージョンを探してみると・・・ Node.js V1.2 であれば動きそうでした:
2017011602


というわけで、以下のサイトから LinuxONE(Linux on System z 64-bit) 向けの IBM SDK for Node.js V1.2 の最新版モジュールをダウンロードします。私がダウンロードした時点では ibm-1.2.0.17-node-v0.12.18-linux-s390x.bin というファイルがダウンロードできました。以下このファイルをダウンロードした前提で説明しますが、バージョンが異なっている場合は適宜読み替えてください:
https://developer.ibm.com/node/sdk/#v12

2017011603


ダウンロードしたファイルに管理者権限で実行権限を与え、実行します:
# chmod +x ibm-1.2.0.17-node-v0.12.18-linux-s390x.bin
# ./ibm-1.2.0.17-node-v0.12.18-linux-s390x.bin

後は画面の指示に従ってインストールするだけ。指定箇所があるとすればインストール先フォルダですが、私は /data/ibm/node というディレクトリを指定しました。

インストールが完了したら実行します。まずは IBM SDK for Node.js のバージョンを確認してみましょう:
# cd /data/ibm/node/bin
# ./node -v
v0.12.18

上記のように "v0.12.18" というバージョン名が表示されればインストール成功です! 後は /etc/bashrc などでパスを通しておけば、コマンドプロンプトから便利に使うことができるようになります:
# vi /etc/bashrc

    :
(以下の3行を最後に追加)
    :
# node.js
export NODEJS_HOME=/data/ibm/node
export PATH=$PATH:$NODEJS_HOME/bin

なお、npm(node package manager) コマンドも node と同じディレクトリに入っているので同様に使えるようになります。