「RHEL7のSAP正式サポート開始」ということで、試しに以下の組合せでインストールしてみました。
- SAP NetWeaver 7.4 SR2
- SAP ASE 16.0.0.5
- Red Hat Enterprise Linux 7.0
SAP HANAのサポートOSはまだRHEL 6.5のみですが、将来的なRHEL 7.x対応への期待と
アプリケーションサーバーもRHELに統一した構成などを見据えています。
もちろんHANAだけでなく現行UNIX/Any DBからのOSマイグレーションなどもアリです。
RHEL7ではシステム起動とサービス管理の仕組みがこれまでのSysVinit/Upstartからsystemdに変更され
操作性なども大きく変わっていますので、このあたりの確認もしています。
簡単にインストールの流れを紹介します。
RHEL for SAPサブスクリプションがあればsapconfモジュールでOS設定は不要なはずですが、
サブスクリプションを持っていないので、通常のRHEL7にSAP Noteに従ってマニュアルで設定しています。
まず、RHEL7をインストールします。
Red Hat カスタマーポータルから30日間の評価用サブスクリプションを申請し、ISOイメージを入手しておきます。
インストーラーも大きく変更されています。
これまでのウィザード形式とは違い、一覧から必要な項目を選択して設定する形式になっています。
SAP環境では以下に注意して設定します。
- 言語は「English (United States)」のまま
- ホスト名は「ショートネーム」にすること
- ソフトウェアの選択では
- Base Environmentに「Infrastructure Server」を選択し、
- Add-Ons for Selected Environmentから「Large Systems Performance」「Network File System Client」「Performance Tools」「Compatibiliy Libraries」を追加
処理が進んだら再起動してインストールを完了します。
rootユーザーでログインして以下のOS設定を行います。
- /etc/hostsの修正
2行目にIPアドレス FQDN ショートネームの順で記載します。
# cat /etc/hosts
127.0.0.1 localhost.localdomain localhost
192.168.100.101 rhel7sap.fjcc-sap.local rhel7sap
- SELinuxをPermissiveに
- firewalldの無効化
# systemctl stop firewalld.service
# systemctl disable firewalld.service
- uuiddパッケージの追加
# yum install uuidd
- glibcパッケージのアップデート
RHEL 7.0の初期導入時のglibcバージョンはSAPでサポートされないため2.17-55.el7_0.3以上にアップデートします。
# yum update glibc
- Linuxカーネルパラメーターの修正
/etc/sysctl.d/sap.confを作成し、以下を記載します。sysctl --systemコマンドで反映します。
# vi /etc/sysctl.d/sap.conf
kernel.shmmax=23136829430 *メモリー量に依存
kernel.sem=1250 256000 100 1024
vm.max_map_count=2000000
# sysctl --system
- プロセスリソース制限の設定
/etc/security/limits.d/99-sap.confを作成し、以下を記載します。
# vi /etc/security/limits.d/99-sap.conf
@sapsys hard nofile 32800
@sapsys soft nofile 32800
@sapsys soft nproc unlimited *Java Stackの場合
あとは通常通りSoftware Provisioning ManagerでSAP NetWeaverをインストールします。
インストールが完了しました。
DBはSAP ASE 16.0.00.05(DB releasesはなぜか15.7ですが...)、
OSはLinux Kernel 3.10.0-123.el7.x86_64で問題なく動作しています。
DBACOCKPITも問題ないですね。
なお、SAP関連のサービスですが、ざっと眺めた感じではこれまで通り/etc/init.d/sapinitが作成されており、
特にRHEL7だからといってsystemdサービスを作ってくれているわけではないようです。
# systemctl list-units --full --all | grep sap
sapinit.service loaded inactive dead LSB: Start the sapstartsrv