このドキュメントでは、FusionIOカードを搭載したC460システムで、System, Applications and Products in Data Processing(SAP)用のソフトウェアおよびシステム開発(SUSE)Linux Enterprise Server(SLES)11をサービスパック(SP)2からSP3にアップグレードする手順について説明します。SAP High Performance Analytic Appliance(HANA)システムは、インストール時に最新バージョンのSAPアプリケーション用SLES 11およびドライババージョンとともに提供されます。システムのライフタイムの間、お客様は、SAPまたはSUSEで要求される可能性のある最新のセキュリティパッチ、アップデート、およびカーネルバージョンで環境をアップデートする責任があります。
次の項目に関する知識があることが推奨されます。
次のコンポーネントが必要です。
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。
カーネルドライバへのアップグレードやカーネルパラメータの変更など、オペレーティングシステム(OS)上で主要な操作を行う場合は、必ずHANA Logパーティションのバックアップを作成し、アプライアンスの外部に保存してください。また、SAP、SUSE、およびシスコサポートチャネルの関連するリリースノートも参照してください。
C460などのFusionIOカードを含むSAP HANAシステムの場合、FusionIOドライバは実行カーネル専用に構築されます。したがって、新しいカーネルにアップグレードするには、追加の手順が必要です。
最後に、更新プロセス中にHANAデータベースを停止する必要があります。
server01 :~ # su - <SID>adm
server01:/usr/sap/<SID>/HDB00 # HDB stop
hdbdaemon will wait maximal 300 seconds for NewDB services finishing.
Stopping instance using: /usr/sap/HAN/SYS/exe/hdb/sapcontrol
-prot NI_HTTP -nr 00 -function StopWait 400 2
12.08.2014 23:46:34
Stop
OK
12.08.2014 23:47:02
StopWait
OK
hdbdaemon is stopped.
HANAデータベースを停止したら、LOG領域に移動し、ログパーティションをバックアップします。
server01 :~ # cd /hana/log
server01 :/hana/log # find . ?xdev | cpio ?oav > /backup/hana.log.cpio
ログパーティションをアンマウントして/etc/fstabにコメントを追加すると、再起動後にログパーティションが自動的にマウントされなくなります。これは、カーネルのアップグレード後にFusionIOドライバを再構築してからログパーティションをマウントする必要があるためです。
server01:~ # umount /hana/log
server01:~ # vi /etc/fstab
server01:~ # cat /etc/fstab | grep "log"
#/dev/md0 /hana/log xfs defaults 1 2
Service Packのアップグレードについては、Novellのサポート技術情報7012368に記載されているプロセスに従ってください。
必要に応じて、サーバがミラーに到達できるようにプロキシサービスを設定します。
server01:~ # cd /etc/sysconfig/
server01:/etc/sysconfig # vi proxy
PROXY_ENABLED="yes"
HTTP_PROXY="http://<COMPANY.COM>:8080"
HTTPS_PROXY="http://<COMPANY.COM>::8080"
FTP_PROXY=http://<COMPANY.COM>::8080
カーネルの更新には再起動が必要ですが、まだ再起動しないでください。
カーネルの更新プロセス中に、新しいGNU(GNU's Not Unix)GRおよびUnified Bootloader(GRUB)エントリが作成されます。/boot/grub/menu.lstを確認し、特定のRedundant Array of Independent Disks(RAID)構成が反映されていることを確認します。
関連するエントリは、回線ルート(hd0,0)と新しいカーネルを含む回線の下にあります。
server01:/boot/grub # cat menu.lst
# Modified by YaST2. Last modification on Wed Jul 24 18:27:21 GMT 2013
default 0
timeout 8
##YaST - generic_mbr
gfxmenu (hd0,0)/message
##YaST - activate
###Don't change this comment - YaST2 identifier: Original name: linux###
title SUSE Linux Enterprise Server 11 SP<#> - <VERSION> (default)
root (hd0,0)
kernel /vmlinuz-<VERSION>-default root=/dev/rootvg/rootvol
resume=/dev/rootvg/swapvol splash=silent crashkernel=256M-:128M
showopts intel_idle.max_cstate=0 vga=0x314
initrd /initrd-<VERSION>-default
###Don't change this comment - YaST2 identifier: Original name: failsafe###
title Failsafe -- SUSE Linux Enterprise Server 11 SP<#> - <VERSION> (default)
root (hd0,0)
kernel /vmlinuz-<VERSION>-default root=/dev/rootvg/rootvol showopts ide=nodma
apm=off
noresume edd=off powersaved=off nohz=off highres=off processor.max_cstate=1
nomodeset x11failsafe intel_idle.max_cstate=0 vga=0x314
initrd /initrd-<VERSION>-default
また、CLIからgrubを起動し、次のコマンドを入力します。
GNU GRUB version 0.97 (640K lower / 3072K upper memory)
[ Minimal BASH-like line editing is supported. For the first word,
TAB lists possible command completions. Anywhere else TAB lists the
possible completions of a device/filename. ]
grub> device (hd0) /dev/sda
grub> root (hd0,0)
Filesystem type is ext2fs, partition type 0x83
grub> setup (hd0)
Checking if "/boot/grub/stage1" exists... yes
Checking if "/boot/grub/stage2" exists... yes
Checking if "/boot/grub/e2fs_stage1_5" exists... yes
Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... failed (this is not fatal)
Running "embed /boot/grub/e2fs_stage1_5 (hd0,0)"... failed (this is not fatal)
Running "install /boot/grub/stage1 (hd0) /boot/grub/stage2 p /boot/grub/menu.lst "...
succeeded
grub>
これで、サーバを安全にリブートできます。uname -aコマンドを入力して、カーネルがアップグレードされたことを確認します。
server01:/root # uname -a
Linux server01 3.0.101-0.35-default #1 SMP Wed Jul 9 11:43:04 UTC 2014 (c36987d)
x86_64 x86_64 x86_64 GNU/Linux
server01:/ # find / -name "iomemory*.src.rpm"
/usr/src/packages/RPMS/x86_64/iomemory-vsl-<VERSION>.src.rpm
server01:/
# rpmbuild --rebuild /usr/src/packages/RPMS/x86_64/iomemory-vsl-<VERSION>.src.rpm
Installing iomemory-vsl-<VERSION>.src.rpm
...
Wrote:
/usr/src/packages/RPMS/x86_64/iomemory-vsl-3.0.101-0.35-default-<VERSION>.x86_64.rpm
server01:/
# rpm -ivh /usr/src/packages/RPMS/x86_64/iomemory-vsl-3.0.101-0.35-
default-<VERSION>.x86_64.rpm
Preparing... ########################################### [100%]
1:iomemory-vsl-3.0.101-0.########################################### [100%]
古いドライバがまだリストされている場合は、削除します。
server01:/recover/FusionIO # rpm -qa | grep vsl
iomemory-vsl-3.0.101-0.35-default-<VERSION>
iomemory-vsl-3.0.80-0.7-default-<VERSION>
server01:~ # rpm -e iomemory-vsl-3.0.80-0.7-default-<VERSION>
これらの手順は、新しいドライバが必要な場合にも使用できます。最新のFusionIO対応ドライバのバージョンは、FusionIOのサポートサイトのKB 857にあります。
server01:/recover # rpm -qa | grep vsl
iomemory-vsl-3.0.80-0.7-default-<VERSION>
libvsl-<VERSION>
server01:/recover # rpm -qi iomemory-vsl-3.0.80-0.7-default-<VERSION>
Name : iomemory-vsl-3.0.80-0.7-default Relocations: (not relocatable)
Version : <VERSION> Vendor: Fusion-io
Release : 1.0 Build Date: Tue Aug 12 23:22:57 2014
Install Date: Tue Aug 12 23:27:46 2014 Build Host: server91.local
Group : System Environment/Kernel Source RPM: iomemory-vsl-<VERSION>.src.rpm
Size : 5059825 License: Proprietary
Signature : (none)
URL : http://support.fusionio.com/
Summary : Driver for ioMemory devices from Fusion-io
Description :
Driver for fio devices
Distribution: (none)
回復パーティションには、ドライバが含まれている2つのフォルダが必要です。CISCO_FusionIOおよびFusionIO。この例のRPMのベンダーはFusionIOです。
server01:/recover # cd FusionIO
server01:/recover/FusionIO # ls *vsl*src.rpm
iomemory-vsl-<VERSION>.src.rpm
server01:/recover/FusionIO # rpmbuild -?rebuild iomemory-vsl-<VERSION>.src.rpm
Installing iomemory-vsl-<VERSION>.src.rpm
...
Wrote:
/usr/src/packages/RPMS/x86_64/iomemory-vsl-3.0.101-0.35-default-<VERSION>.x86_64.rpm
server01:/recover/FusionIO # rpm -ivh
/usr/src/packages/RPMS/x86_64/iomemory-vsl-3.0.101-0.35-default-<VERSION>.x86_64.rpm
Preparing... ########################################### [100%]
1:iomemory-vsl-3.0.101-0.########################################### [100%]
server01:/recover/FusionIO # rpm -qa | grep vsl
iomemory-vsl-3.0.101-0.35-default-<VERSION>
FusionIOドライバをアップグレードする場合は、ユーティリティもアップグレードする必要があります。
server01:/recover/FusionIO # cd Installed
server01:/recover/FusionIO/Installed # ls
fio-common-<VERSION>.x86_64.rpm fio-util-<VERSION>.x86_64.rpm libvsl-<VERSION>.x86_64.rpm
fio-sysvinit-<VERSION>.x86_64.rpm
server01:/recover/FusionIO/Installed # rpm -Uvh libvsl-<VERSION>.x86_64.rpm
Preparing... ########################################### [100%]
1:libvsl ########################################### [100%]
server01:/recover/FusionIO/Installed
# rpm -Uvh fio-common-<VERSION>.x86_64.rpm fio-sysvinit-<VERSION>.x86_64.rpm
fio-util-<VERSION>.x86_64.rpm
Preparing... ########################################### [100%]
1:fio-util ########################################### [ 33%]
2:fio-common ########################################### [ 67%]
3:fio-sysvinit ########################################### [100%]
insserv: Service syslog is missed in the runlevels 4 to use service Framework
iomemory-vsl 0:off 1:on 2:on 3:on 4:on 5:on 6:off
新しいドライバをインストールした後、ドライバをアクティブにするには、システムをリブートする必要があります。リブート後、バージョンが正しいことを確認します。
server01:/root # rpm -qa | grep vsl
iomemory-vsl-3.0.101-0.35-default-<VERSION>
libvsl-<VERSION>
server01:/root # rpm -qa | grep fio
fio-common-<VERSION>
fio-util-<VERSION>
fio-sysvinit-<VERSION>
古いドライバがまだリストされている場合は、削除します。
server01:/root # rpm -qa | grep vsl
iomemory-vsl-3.0.101-0.35-default-<VERSION>
iomemory-vsl-3.0.80-0.7-default-<VERSION>
server01:~ # rpm -e iomemory-vsl-3.0.80-0.7-default-<VERSION>
ドライバのステータスを確認します。バージョンが表示され、アダプタがオンラインで接続されている必要があります。
server01:/root # fio-status | egrep -i "(driver|attached|online)"
Driver version: <version>
fct0 Attached
fioa State: Online, Type: block device
fct1 Attached
fiob State: Online, Type: block device
コメント(#)を削除し、/hana/logをマウントして/etc/fstabの変更を元に戻します。
server01 :~ # su - <SID>admserver01:/usr/sap/<SID>/HDB00 # HDB start
StartService
OK
OK
Starting instance using: /usr/sap/HAN/SYS/exe/hdb/sapcontrol
-prot NI_HTTP -nr 00 -function StartWait 2700 2
12.08.2014 23:57:56
Start
OK
12.08.2014 23:59:10
StartWait
OK