• HANA SR升级


    提前先安装一套S/4 2020,并配置好SR,HANA版本为2.0 SP05 小版本为52

    升级HANA SR的官方思路有三种:

    1. 断开SR,主备机分别升级,升级完成后重建SR。

    2. 断开SR,备机清空后,重新安装最新版的HANA2.0,重建SR。数据同步完成后,停止主节点让备节点接管,再升级主节点。重新切换到主节点接管。

    3. 不断开SR,直接在备节点升级,升级完成后停止主节点让备节点接管,再升级主节点。重新切换到主节点接管。

     

    以上三种方式,无论哪一种都可以达到目的,作者懒得重建SR,所以本次采用第三种方式。 

    从最后的结果上看,其实工作量并没有少太多。因为第三种方式有一个要处理的地方是前两种没有的。 

    提醒一下,HANA2.0 SP05只能运行在SLES15版本,SLES12是不支持的。强制安装会报错。所以想从SP05以下版本升级的玩家,要么连OS一起升级,要么用上面的方法二。 

    升级原理可以看看SAP官方HANA标准升级手册,下面这张图可以帮助大家理解

    先看看当前SR的状态

    Mast server:hana1

    Standby server:hana2

    下面进入正式的升级环节

     

    零 提前准备的内容

     

    1.      官方标准文档

    2.      本文档

    3.      系统配置架构清单

    4.      用户密码表

    5.      计划表

    6.      停机通告

    7.      回退方案

    8.      零食小吃

    9.      一盆香炉,三根香(加幸运点)

    10.   跑路背包

    一 配置SRTAKEOVER key用户

     

    首先,在master DB的systemDB里,创建一个名为MY_REPO_IMPORT_USER的用户,密码为MyRepoUserPW123(密码可以自行修改)。这个用户用来导入新版本的数据字典。打开HANA Studio,在SQL命令窗口中输入以下代码后执行创建用户。

    CREATE USER MY_REPO_IMPORT_USER PASSWORD MyRepoUserPW123;

     GRANT EXECUTE ON SYS.REPOSITORY_REST TO MY_REPO_IMPORT_USER;

     GRANT REPO.READ ON ".REPO_PACKAGE_ROOT" TO MY_REPO_IMPORT_USER;

     GRANT REPO.IMPORT TO MY_REPO_IMPORT_USER;

     GRANT SELECT ON _SYS_REPO.DELIVERY_UNITS TO MY_REPO_IMPORT_USER;

     GRANT REPO.ACTIVATE_IMPORTED_OBJECTS ON ".REPO_PACKAGE_ROOT" TO MY_REPO_IMPORT_USER;

     

    在sidadm用户环境下执行下面的语句,创建SRTAKEOVER KEY:

    hdbuserstore SET SRTAKEOVER hana1:30013 MY_REPO_IMPORT_USER MyRepoUserPW123

    注意命令中的关键点:

    hana1:用hanastudio连接的主机名,不是绑定VIP的虚拟主机名

    30013是systemDB的SQL端口

    如下图,在主机和备机上都要执行。

    官方参考资料:

    https://help.sap.com/viewer/6b94445c94ae495c83a19646e7c3fd56/2.0.05/en-US/ab785910b8be46948cb1dce78b373a16.html

    二 升级备节点

    在备节点中,root用户进入到安装包里,执行下面的语句:

    ./hdblcm --action=update --ignore=check_signature_file

    选择第一项

     选择第一项,输入SYSTEM用户的密码

     

     开始升级。升级过程不需要手动停止数据库,会自动重启。

     可以看到备机的版本已经升级到53了

     

    三 停止主节点并切换备节点为主节点

    停止主节点

    备节点启用,在sidadm用户环境下使用下面的命令:

    hdbnsutil -sr_takeover

    注意:SAP官方注释里有提到参数--suspendPrimary。这个参数suspendPrimary代表强制检查将主节点日志全部写进磁盘,避免漏掉数据。但我在操作的时候会报nameserver的错,但在日志中缺没有任何和错误相关的记录,这个问题可能是个BUG,期待SAP官方处理。

    现在可以使用HANA Studio连接上接管的备机了,版本已经升级到53

    四 升级主节点

    在主节点上启动升级,在root用户环境下进入安装包,使用以下命令:

    ./hdblcm --action=update --hdbupd_server_nostart --ignore=check_signature_file

    注意:参数hdbupd_server_nostart代表升级后不启动主节点数据库

    至于为什么,后面会讲到

    升级过程与升级备节点过程一样

    五 注册主节点到备节点

    在sidadm用户环境下,使用以下命令注册主节点到备节点:

     hdbnsutil -sr_register --remoteHost=hana2 --remoteInstance=00 --replicationMode=sync --name=hana1 --operationMode=logreplay

    六 关闭备节点,让主节点重新接管,并将备节点重新注册

    关闭备节点

    注意:必须在同步完成后再关闭

     

     

    全文完

    由于我的服务器只有128G内存,两台HANA各自分了64G,剩下的应用仅靠虚拟内存运行,故在做此测试的时候经常无缘无故的卡死,OOM频发,建议有条件的玩家尽量把内存调大一些。毕竟看到这篇文章的读者都是有钱人,不差钱。

     

    整个过程只在接管时会有停机,时长非常短。

     

     

    主力参考资料:

    SAP HANA Server Installation and Update Guide(在help.sap.com可下载)

     

    辅助参考资料:

    HA201:High Availability and Disaster Tolerance Administration(没有Learning HUB账号可在CSDN或ITPUB下载)

    Note:2078425(安装包签名损坏或为空的解决方案)

    Note:2964000(子程序错误解决方案)

    Note:2739643(视图为空的解决方案)

    Note:2600030(HANA推荐参数配置)

  • 相关阅读:
    LAB02:Selenium的安装与使用
    HW03:Exercise Section 2.3
    LAB01:安装 Junit(4.12), Hamcrest(1.3) 以及 Eclemma并完成一次三角形问题的测试
    HW02:根据程序回答问题
    HW01:程序中的错误
    Postman 接口测试
    Python3.7、Eclipse 4.5、 Java 8、 PyDev 5.2.0、 selenium-3.14.0环境搭建
    Java + selenium 实现web自动化简单示例
    java Junit自动化测试框架环境搭建
    java TestNg自动化测试框架环境搭建
  • 原文地址:https://www.cnblogs.com/weikui/p/14571815.html
Copyright © 2020-2023  润新知