CAPÍTULO 4: IMPLEMENTACIÓN Y PRUEBA
4.7. Estrategias de codificación. Estándares y estilos a utilizar
This section applies to single node and cluster installations. For single node installations only a disruptive upgrade can be done.
Cluster installations can be upgraded either all at once (disruptive) or node-by-node (rolling).
DR installations can also be upgraded either all at once (disruptive) or node-by-node (rolling). Addi-tionally, it is possible to upgrade the DR site first and the primary site at a later point. If the DR site hosts a non-productive SAP HANA instance this approach can be used to verify the new code level in pre-production.
Note
GPFS 4.1 is only supported with PTF 8 or higher (that is 4.1.0-8).
Make sure you have the required GPFS packages before continuing. GPFS has introduced three editions with different content. GPFS 4.1 Standard Edition is required (Express is not sufficient). If you have a gpfs.ext RPM file then you have Standard Edition.
Existing GPFS 3.5 clients are entitled to GPFS 4.1 Standard Edition. For further information, including how to migrate licenses, seeGPFS FAQ27
13.6.1 Disruptive Upgrade from GPFS 3.5 to 4.1
Step Title 3
1 Stop SAP HANA
2 Unmount GPFS file systems, stop GPFS
3 Remove GPFS 3.5 packages, install GPFS 4.1 packages 4 Build new GPFS portability layer
5 Update cluster and file system information 6 Restart GPFS, mount GPFS file systems 7 Check Status of GPFS
8 Start SAP HANA
Table 54: GPFS Upgrade Checklist
1. Stop SAP HANA and all other SAP software running in the whole cluster or on the single node cleanly. Login in as root on each node and execute
1 # service sapinit stop
Older versions of the appliance may not have this script, so please stop SAP HANA and other SAP software manually.
Stop of SAP HANA is documented in the SAP HANA administration guidelines at theSAP Help Portal28 orSAP Service Marketplace29.
Make sure no process has files open on/sapmnt, you can test that with the command:
1 # lsof /sapmnt
2. Unmount GPFS file systems, stop GPFS processes
1 # mmumount all -a
2 # mmshutdown -a
3. Remove all GPFS 3.5 packages and install new 4.1 packages.
Get a list of all installed GPFS 3.5 packages
1 # rpm -qa | grep gpfs
Remove all GPFS 3.5 packages returned from above command
27http://www-01.ibm.com/support/knowledgecenter/api/content/SSFKCN/com.ibm.cluster.gpfs.doc/gpfs_faqs/
gpfsclustersfaq.html#migto41
28https://help.sap.com/hana
29https://service.sap.com/hana
1 # rpm -e gpfs.base gpfs.docs gpfs.gpl gpfs.msg.en_US
Optionally, also remove a gpfs.gplbin package if you have that installed.
Install GPFS 4.1 packages
1 # rpm -ivh gpfs.base-4.1.0-0.x86_64.rpm
2 # rpm -ivh gpfs.docs-4.1.0-0.noarch.rpm
3 # rpm -ivh gpfs.ext-4.1.0-0.x86_64.rpm
4 # rpm -ivh gpfs.gpl-4.1.0-0.noarch.rpm
5 # rpm -ivh gpfs.gskit-8.0.50-16.x86_64.rpm
6 # rpm -ivh gpfs.msg.en_US-4.1.0-0.noarch.rpm Update to GPFS 4.1 PTF 8
This is just an example. Please update to the PTF recommended at this point in time.
1 # rpm -Uvh gpfs.base-4.1.0-8.x86_64.update.rpm
2 # rpm -Uvh gpfs.docs-4.1.0-8.noarch.rpm
3 # rpm -Uvh gpfs.ext-4.1.0-8.x86_64.update.rpm
4 # rpm -Uvh gpfs.gpl-4.1.0-8.noarch.rpm
5 # rpm -Uvh gpfs.msg.en_US-4.1.0-8.noarch.rpm 4. Build new portability layer
1 # cd /usr/lpp/mmfs/src/
2 # make Autoconfig
3 # make World
4 # make InstallImages
5 (optionally) # make rpm
5. Update cluster and file system information to current GPFS version. Activate new cluster config-uration repository (CCR) feature.
1 # mmstartup -a
2 # mmchconfig release=LATEST
3 # mmchcluster --ccr-enable
4 # mmchfs sapmntdata -V full
5 # mmmount all -a 6. Check Status of GPFS
1 # mmgetstate -a
2 # mmlsmount all -L
3 # mmlsconfig | grep minReleaseLevel 7. Start SAP HANA using
1 # service sapinit start
Older versions of the appliance may not have this script, so please start SAP HANA and other SAP software manually as documented in the SAP HANA administration guidelines at the SAP Help PortalorSAP Service Marketplace.
13.6.2 Rolling upgrade per node from GPFS 3.5 to 4.1
To minimize downtime distribute the GPFS 4.1 packages on all nodes before starting.
1. Check GPFS cluster health
Before performing any updates on any node, verify that the cluster is in a sane state. First check that all nodes are running and active with the command
1 # mmgetstate -a
Then verify that all disks are active
1 # mmlsdisk -e
The disks on the node to be taken down do not need to be in the up state, but make sure that all other disks are up.
Warning
If disks of more than one server node are down, the file system will be shut down causing all other SAP HANA nodes to fail.
2. Shutdown SAP HANA
Shutdown the SAP HANA and the sapstartsrv daemon via
1 # service sapinit stop
Verify that SAP HANA, sapstartsrv and any other process accessing /sapmnt are not running anymore:
1 # lsof /sapmnt
No processes should be found. If any processes are found please retry stopping SAP HANA and all other processes accessing/sapmnt.
3. Unmount the file system on the node to be upgraded
1 # mmumount sapmntdata
and take care that no open process is preventing the file system from unmounting. If that happens use
1 # lsof /sapmnt
to find processes still accessing the file system, e.g. running shells (root, <SID>adm, etc.) close them and retry. Other Nodes within the cluster still have/sapmnt mounted.
4. Shutdown GPFS processes on the node to be upgraded
1 # mmshutdown
GPFS unloads its kernel modules during its shutdown, so check the output of this command care-fully.
5. Upgrade GPFS to 4.1
Change to the directory where you extracted the GPFS 4.1 packages.
Get a list of all installed GPFS 3.5 packages
1 # rpm -qa | grep gpfs
Remove all GPFS 3.5 packages returned from above command
1 # rpm -e gpfs.base gpfs.docs gpfs.gpl gpfs.msg.en_US
Optionally, also remove a gpfs.gplbin package if you have that installed.
Install GPFS 4.1 packages:
1 # rpm -ivh gpfs.base-4.1.0-0.x86_64.rpm
2 # rpm -ivh gpfs.docs-4.1.0-0.noarch.rpm
3 # rpm -ivh gpfs.ext-4.1.0-0.x86_64.rpm
4 # rpm -ivh gpfs.gpl-4.1.0-0.noarch.rpm
5 # rpm -ivh gpfs.gskit-8.0.50-16.x86_64.rpm
6 # rpm -ivh gpfs.msg.en_US-4.1.0-0.noarch.rpm Update to GPFS 4.1 PTF 8:
This is just an example. Please update to the PTF recommended at this point in time.
1 # rpm -Uvh gpfs.base-4.1.0-8.x86_64.update.rpm
2 # rpm -Uvh gpfs.docs-4.1.0-8.noarch.rpm
3 # rpm -Uvh gpfs.ext-4.1.0-8.x86_64.update.rpm
4 # rpm -Uvh gpfs.gpl-4.1.0-8.noarch.rpm
5 # rpm -Uvh gpfs.msg.en_US-4.1.0-8.noarch.rpm
Afterwards, the GPFS compatibility layer must be recompiled:
1 # cd /usr/lpp/mmfs/src/
2 # make Autoconfig
3 # make World
4 # make InstallImages
5 (optional) # make rpm 6. Restart GPFS
1 # mmstartup
Verify that the node started up correctly
1 # mmgetstate
During the startup phase the node is shown in statearbitrating for a short period of time. This changes to active when GPFS completed startup successfully.
7. Mount file system
1 # mmmount sapmntdata 8. Start SAP HANA
1 # service sapinit start
9. Verify GPFS disks are active again (this command can be executed on any node)
1 # mmlsdisk sapmntdata -e
If any disks are shown as down, restart them with the command
1 # mmchdisk sapmntdata start -a
If disks are suspended you can resume them all with the command
1 # mmchdisk sapmntdata resume -a Afterwards check disk status again.
10. Restore correct replication level (this command can be executed on any node) Start a restripe so that all data is properly replicated again
1 # mmrestripefs sapmntdata -r Warning
Do not use the -b parameter!
11. Continue on the next node with step 2 of this procedure 12. Restore accurate usage count
If a file system was ill-replicated the used block count results from mmcheckquota may not be accurate. Therefore it is recommended that you run mmcheckquota to restore the accurate usage count after the file system is no longer ill-replicated.
1 # mmcheckquota -a
After all nodes have been updated successfully you can update the GPFS cluster configuration and the GPFS "on disk format" (the data structures written to disk) to the newer version. This update is non-disruptive and can be performed while the cluster is active.
1. Update the cluster configuration to the newest version
1 # mmchconfig release=LATEST
2. Active new method of cluster configuration repository (CCR)
1 # mmchcluster --ccr-enable
3. Update the file system’s on disk format to activate new functionality
1 # mmchfs sapmntdata -V full
Notice that a successful upgrade of the GPFS on disk format to a newer version will make a downgrade to previous GPFS versions impossible. You can verify the minimum required GPFS version for a file system with the command
1 # mmlsfs sapmntdata -V