Windows服务器折腾安装MegaRAID存储管理器17.05版

作者:Sender  来源:WaveCN.com  发布日期:2023-01-26  最后修改日期:2023-12-02

之前写过一篇关于MegaRAID Storage Manager(简称MSM)的安装过程说明:《安装 MegaRAID 存储管理器集中监控 DAS 存储状态》。

article banner

笔者:国际认证信息系统审计师、软考系统分析师

MSM是一个用于服务器本机存储管理的软件,适用于现在属于Broadcom(博通)公司产品线的磁盘阵列卡,是主流品牌服务器的标配。

前不久MSM推出了新版本17.05.06,测试后发现对于较新的阵列卡可以提供更多的管控操作功能,于是安排对手头的服务器群进行升级安装。

但是,一番折腾发现,这新版本不再打包附带JRE的做法,产生了一个关键问题:

如果服务器上运行了需要使用特定新版本(或者旧版本)的JDK/JRE的中间件服务,那就会和MSM 17.05.06需要使用Java 8的要求冲突。

而且具体到Windows操作系统和Linux操作系统下还有所不同,两个平台的MSM在调用Java环境时有不同的操作方式,而且,Linux版本的MSM里面的脚本有各种BUG......

至于安装包里面的README文件,虽然对安装过程有给出一些指引,但就只是点到为止而已。而且太多过时的内容了,和新内容混杂在一起对网管全都是干扰。现在还有谁会在物理机器上使用Windows 2000,RHEL 5甚至VMware 3.5?这些内容都应该删掉。

最后决定把过程中碰到的问题,以及解决办法作个记录。注意我这里只以64位系统为例进行说明,本篇先介绍Windows操作环境的处置方法,涉及知识点包括Windows Server 操作系统用户管理、系统及用户环境变量设置、本地安全策略、服务管理等,并需要了解JDK和JRE等Java运行环境的基本知识。

一、首先确定Java环境

在安装或升级前,要先确定Java环境是否存在冲突,这可以通过以下三个问题确定:

(1)服务器上是否存在其它软件需要使用公共Java环境(JRE或者JDK); (2)该软件指定的公共Java环境版本是否和MSM需要的Java 8不同; (3)该软件稳定运行的重要性是否高于MSM。

只要任一的回答为“是”,那么就需要为MSM单独配置Java运行环境,而不是按README指引的方法为MSM配置全局的Java运行环境。

以上问题最典型的例子就是某些指定要使用JDK 6的财务软件。

实际笔者的观点是,即使服务器上暂时不存在需要使用Java环境的软件,为了避免未来可能出现的冲突,也应该为MSM单独配置Java运行环境。

二、下载OpenJDK 8 JRE

按README,首先到:

https://github.com/javaee/activation/releases/tag/JAF-1_2_0

下载  javax.activation.jar 文件。

然后到

https://adoptium.net/zh-CN/temurin/releases/

按服务器的操作系统版本下载OpenJDK 8 JRE的ZIP包(Windows)或者tar.gz包(Linux)。在编写本文时,OpenJDK 8的版本是8u362b08。

download openjdk

解压缩,然后把 javax.activation.jar 复制到 JRE 的 bin 子文件夹内。

三、防火墙设置

在我之前的文章里面也有介绍。为避免读者不了解而浪费时间,这里再说明一下。如果要远程连接和操作服务器上MSM,需要在服务器的本机防火墙,开启如下端口和协议:

3071 TCP/UDP 5571 UDP

四、Windows服务器环境安装、升级和卸载

Windows环境下问题较少,卸载和安装过程都很顺利。按默认的路径,选择完整安装、启用或取消LDAP登录,选择默认的2048位密钥,日志告警选择默认的“自最后一次重启后”(Since Last Shutdown),很快就装完了。

install msm completed

注意,如果在安装时尚未配置Java运行环境,则安装结束前会弹出类似“CreateProcess Failed”这样的提示,这是因为MSM的服务程序无法启动Java进程而给出的提示。直接忽略就可以了。

CreateProcess failed.

1、完成安装后,移动之前解压的Open JDK 8 JRE目录到MSM的安装目录内。移动时应同时把文件夹名改短,比如直接命名为jre。移动后记录下jre的8.3格式短路径,如果MSM安装在默认位置:

C:\Program Files (x86)\MegaRAID Storage Manager

则8.3格式短路径即为:

C:\PROGRA~2\MEGARA~1\JRE

2、对服务器添加新用户。

该用户仅用于启动MSM的后台服务,账号名可以随意,比如就叫msm。重点是如何设置msm用户的属性。必须如下设置:

(1)密码和登录:设置复杂密码并勾选不能更改密码、密码永不过期。

new user

(2)用户组:设置msm用户归属到Administrators组。

set user group

(3)本地安全策略设置:在“用户权限分配”策略组中的“作为服务登录”策略设置中添加msm用户。

allow user loggin as service

注意以上设置有可能因个别测评机构的具体要求而存在冲突,在测评期间需要进行沟通说明,并按测评要求进行补充加固设置。

3、以msm用户身份登录,设置msm用户的环境变量。具体是在“msm的用户变量”列表下,点击“新建”按钮创建新的用户环境变量,变量名JRE_HOME,变量值是OpenJRE 8文件夹的短写路径。

set user environment variable

如果“系统变量”列表中已经设置了JAVA_HOME和JRE_HOME之类的环境变量,则同名的用户环境变量会覆盖系统变量的变量值。

在上下截图中,可以观察到系统变量本身已经定义了JRE_HOME和JAVA_HOME,但当msm用户登录后,用户变量的JRE_HOME就会取代系统变量。

user environment variable after setting

注销并切换回去系统管理员账号。

4、启动“服务”,找到MSMFramework服务项。如果服务已经在运行则先停止服务。

stop msm service

修改服务的登录页面属性,设置登录身份使用的账户为msm用户,输入密码。点击应用按钮后,切换回常规页面,点击启动按钮启动服务。

set msm service use msm user

服务应能正常启动,可以通过任务管理器查看到VivaldiFramework.exe以及其派生的java进程正在运行。

注意,有可能是只启动了VivaldiFramework.exe,但并没有真正启动承担服务功能的java进程。

VivaldiFramework.exe的作用是通过获取JRE_HOME环境变量,调用java运行环境去启动服务进程,如果JRE_HOME没有设置,或者设置的路径不对,那就会出现服务没有能真正启动的情况。

笔者建议使用Process Explorer,它可以通过树状结构地呈现进程之间的创建关系,例如:

vivaldiframework launch msm java process

Process Explorer 是 Microsoft Windows Sysinternals Suite的其中一个工具,下载地址在:

https://learn.microsoft.com/en-us/sysinternals/downloads/sysinternals-suite

5、因为同样需要基于指定的Java运行环境去运行MSM的控制台,因此需要修改MSM控制台启动脚本。即把这个文件:

C:\Program Files (x86)\MegaRAID Storage Manager\startupui.bat

用文本编辑器打开,然后把其中的

start %JRE_HOME%\bin\javaw -DVENUS=true -classpath .;GUI.jar;monitorgui.jar;DebugLog.jar;jaxen-1.1.jar;jdom-1.1.jar GUI.VivaldiStartupDialog ajsgyqkj=71244

修改为

start jre\bin\javaw -DVENUS=true -classpath .;GUI.jar;monitorgui.jar;DebugLog.jar;jaxen-1.1.jar;jdom-1.1.jar GUI.VivaldiStartupDialog ajsgyqkj=71244

调用javaw的操作也可以写成绝对路径而不是相对路径,但务必避免路径中出现空格。

6、双击startupui.bat,启动MegaRAID Storage Manager的控制台,检查能否发现本机服务器。然后登录服务器,检查日志,以及对存储尝试进行无害操作。以上操作均能成功完成就可以确认MSM已经完成安装。

7、最后是对msm用户补充安全加固设置。一般以等保测评的要求为前提,结合msm用户本身的用途定位进行设置。最低限度应该实施的本地安全策略设置包括:

拒绝本地登录 拒绝从网络访问这台计算机 拒绝通过远程桌面服务登录

小结

我们在Windows下通过指定用户启动MSM后台服务,并通过“用户环境变量”实现了为MSM后台服务单独配置了Java运行环境。在我自己而言有点折腾但还不算很折腾。但Linux那边就......且听下回分解。

本栏目相关
  •  2024-03-02 网络运维及安全基础:MAC地址安全管理之二
  •  2020-02-27 服务器热加硬盘、热转RAID模式,配合LINUX卷操作实现不重启服务器完成扩容
  •  2023-01-26 Windows服务器折腾安装MegaRAID存储管理器17.05版
  •  2022-02-24 如何安装使用 Broadcom RAID卡命令行管理工具 StorCLI(或称PercCLI)?
  •  2023-02-26 能否用Windows服务器作为路由器?(基本配置篇)
  •  2022-12-03 VMware vSphere Hypervisor 6.7 手动升级过程实例
  •  2022-10-17 安装 MegaRAID 存储管理器集中监控 DAS 存储状态
  •  2022-05-20 内网DNS服务实现公网域名在内网转换解析
  •  2022-05-13 2022年甲方系统管理运维人员必备远程访问工具
  • 微信订阅号二维码

    本页网址二维码:

    本栏目热门内容
  • Acrobat虚拟PDF打印机执行打印时挂起,解决办法竟然...
  • LINKSYS交换机登录WEB界面显示不正确的解决方法
  • 又一次RAID 5阵列故障记录
  • 解决VMware vSphere ESXi 5.0 Update 1 中虚机不能...
  • 修改CentOS发行信息以绕过Dell服务器BIOS更新和DSET...
  • 解决虚拟化运行的 Windows Server 2003 标准版出现...
  • Windows Server 2008 重命名域和域控制器
  • Intel Nehalem CPU Errata 导致 VMWare ESXi(vSpher...
  • 一次很精神的电脑组装过程记录(但不是自己的电脑)...
  • 解决MySQL Cluster 备份总是失败,提示文件已存在的...
  • MegaCli安装及使用杂记
  • 解决WSUS显示客户端不全的问题
  • 解决 VMWare vSphere 6 客户端无法修改用户密码
  • 解决Windows Server 2008 R2域控制器显示无法连接到...
  • 本站服务器RAID 5阵列双硬盘失效挽救记录
  • 网站数据库从MySQL 5.0升级到5.6的记录
  • 解决MariaDB使用Percona XtraBackup增量备份出错
  • DELL PowerEdge 820 报CPU3 INTERNAL ERROR 的解决...
  • Linux 下的分区调整工具GParted实战
  • 修改arpwatch使通知邮件主题显示IP地址
  • 程序员漫画:如何用8种不同的编程语言去解救公主
  • 解决很好用的多合一即时通信软件pidgin的崩溃问题
  • 解决Samba WINS服务的错误解释问题
  • 使用 GParted 进行虚拟机硬盘分区调整操作
  • 解决Squid代理HTTP时在浏览器出现Content Encoding ...
  • 用Delphi编写使用到ADO的DLL的一些问题
  • 网站简单改版
  • 索尼系列手提电脑备份失败,出现700错误的解决办法
  • Dell R900服务器 BMC firmware incompatible with C...
  • 更多...