Exadata中Infiniband交换机升级
Infiniband交换机的软件补丁包,随着软件版本的不同,其发布方式也有所变化,从如下图表可以看出,1.3.3-2这个版本是一个分水岭,这个版本及以前的版本,补丁包是单独下载的,而之后的版本,infiniband的升级包跟随着存储节点的补丁包一起发布。
图 Infiniband交换机的软件补丁包
1.3.3-2版本之前
1、1.3.3-2及之前的版本,升级方法基本一样,但不同的版本对应的升级包也不同。
2、有些升级包是不允许跨版本升级的。例如:如果想将36口的Infiniband交换机升级到1.3.3-2版本,则交换机的当前版本必须为1.1.3-2或1.3.3-1。如果你的Infiniband交换机当前版本为1.0.1-1,则你必须首先将版本升级到1.1.3-2 或1.3.3-2, 然后再升级到1.3.3-2版本。细节内容在升级之前还需要参考MOS文档888828.1。
3、如果Exadata机架上存在spine IB交换机,则需要先升级spine IB交换机。
下面以从1.1.3-2升级到1.3.3-2为例,示范1.3.3-2及之前的版本Infiniband的升级过程:
1、下载IB交换机升级补丁包12373676和11891229至计算节点。
2、解压缩升级包:
# unzip p11891229_133_Generic.zip # tar -zxvf SUN_DCS_36p_1.3.3.tar.gz # unzip p12373676_112100_Linux-x86-64.zip |
3、将解压后的升级包上传至infiniband交换机主机上:
# scp sundcs_36p_repository_1.3.3_2.pkg Infiniband主机名:/tmp # scp ibswitchcheck.sh Infiniband主机名:/tmp |
将sundcs_36p_repository_1.3.3_2.pkg和ibswitchcheck.sh文件上传至infiniband交换机主机上的/tmp目录中。
4、检查infiniband交换机的/tmp目录剩余空间:
# df -h /tmp Filesystem Size Used Avail Use% Mounted on tmpfs 250M 240K 249M 1% /tmp # |
# df -h / Filesystem Size Used Avail Use% Mounted on /dev/hda2 471M 287M 161M 65% / # |
确保根目录(/)有足够的剩余空间,否则,需要删除根目录(/)中的无效文件。
6、检查infiniband交换机有足够的剩余内存:
# free -m total used free shared buffers cached Mem: 498 104 393 0 12 47 -/+ buffers/cache: 45 453 Swap: 0 0 0 # |
7、关闭infiniband交换机的subnet manager:
# disablesm |
8、运行升级前检查:
# /tmp/ibswitchcheck.sh pre |
如果所有检查的结果都是 [SUCCESS],可以继续进行升级。
实际检查过程中发现,3台机器都没有设置NTP服务器,按照客户给的内部NTP服务器地址设置NTP服务器,(修改/etc/ntp.conf ,加入server XX.XX.XX.XX)启动NTPD服务:service ntpd start
再次执行#/tmp/ibswitchcheck.sh pre 通过。
9、运行spsh 进入 ILOM CLI:
# spsh Sun(TM) Integrated Lights Out Manager Version ILOM 3.0 r47111 Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. -> |
10、正式升级:
->load -source /tmp/sundcs_36p_repository_1.3.3_2.pkg |
(选择Yes确认升级)
11、再次关闭subnet manager:
# disablesm |
12、校验/conf/configvalid的内容为1,如果是0,设置成1:
#echo 1 > /conf/configvalid |
# setsmpriority list |grep smpriority |
如果升级的是spine IB交换机,则以上命令的输出应该为8,如果输出不是8,则需要使用以下命令手动设置:
# setsmpriority 8 |
注意:
如果升级的是leaf IB交换机,则上述命令的输出应该为5。
14、重启IB交换机:
# reboot |
15、启动subnet manager:
# enablesm |
16、做升级后检查:
# /tmp/ibswitchcheck.sh post |
(升级后文件系统整个被刷新,这个脚本需要再次上传到IB交机)
1.3.3-2版本之后
注意:
1、1.3.3-2之后的版本,Infiniband的升级方法有所变化,升级工具也从以前的ILOM升级改变成现在的patchmgr工具。
说明:
1、Infiniband的升级包和升级工具(patchmgr)是随着存储节点的升级包一起发布的。
2、升级工具(patchmgr)是在其中的一个计算节点发起升级命令,来升级所有的infiniband交换机版本。
3、infiniband交换机的升级只能是" rolling"(滚动)方式,也即一台一台地串行升级。即使业务系统和数据库都停止,也无法并行地升级infiniband交换机。
4、如果一台Exadata中含有"Spine"(骨干)infiniband交换机,则必须先升级Spine infiniband交换机。
下面以从2.1.5-1升级到2.1.8-1为示例,示范1.3.3-2及之前的版本Infiniband的升级过程:
1、在计算节点DB01运行ibswitches命令:
(DB01)# ibswitches
说明:
(1).在升级IB交换机时,如果不指定ibswitch_group配置文件(ibswitch_group配置文件列出将进行升级的IB交换机,一行一个IB交换机名或IP),则默认会将ibswitches命令中显示出来的所有IB交换机都进行升级,如果是级联环境,需要注意这个。
(2).如果使用ibswitch_group配置文件,则该文件必须放在升级包目录下。
2、确保所有IB交换机上的ntpd服务已经启动
(root)# chkconfig --level 2345 ntpd on (root)# chkconfig --list | grep ntpd ntpd 0:off 1:off 2:off 3:on 4:off 5:off 6:off |
3、确保计算节点DB01与IB交换机的SSH连接性互信已经配置:
(DB01)# dcli -g /u03/12.1.2.3.3/CELL/patch_12.1.2.3.3.161109/ibswitch_group -l root -k (DB01)# dcli -g /u03/12.1.2.3.3/CELL/patch_12.1.2.3.3.161109/ibswitch_group -l root date |
4、确保IB交换机的主机名带有域名:
# hostname |
确保返回的主机名是带有域名的。如果主机名不带域名,则必须修改/etc/sysconfig/network文件中的HOSTNAME值,然后重启系统生效。
5、确保IB交换机的/etc/hosts文件中有IB交换机的主机名解析条目:
格式要求:
<ip_address> <fully_qualified_hostname> <short_hostname>
例如:
10.244.37.156 slcc31sw-ibs0.oracle.com slcc31sw-ibs0 |
6、设置环境变量:
(DB01)# export EXADATA_IMAGE_IBSWITCH_ROLLBACK_VERSION=1.3.3-2 |
注意:
只有当前的IB交换机版本为1.3.3-2时,才设置该环境变量,其它版本无需设置
7、升级前检查:
(DB01)# cd /u03/12.1.2.3.3/CELL/patch_12.1.2.3.3.161109 (DB01)# ./patchmgr –ibswitches ibswitch_group -upgrade -ibswitch_precheck [-force] |
说明:
1、[-force] 选项会忽略IB交换机拓扑和计算节点到IB交换机连通性方面的报错,这方面的错误不影响IB交换机的升级。
2、升级前的预检查必须全部"SUCCESS",如果有错误出现,在升级之前必须解决这些错误,然后再次执行升级前的预检查,直到全部"SUCCESS"。
8、正式升级:
(DB01)# ./patchmgr -ibswitches -upgrade [-force] |
说明:
如果只升级Exadata机架中的一部分infiniband交换机时,则先配置ibswitch_group文件,然后使用以下命令:
(root)# ./patchmgr -ibswitches ibswitch_group -upgrade |
9、升级后检查:
检查升级过程中生成的日志,是否为"SUCCESS",如果在升级过程中出现错误,可以修复这些错误后,再次执行升级命令。
注意事项:
1、IB交换机的升级不能并行执行,它会一台接着一台地升级。建议同一个RACK中的IB交换机都放入一个配置文件中。
2、不要使用串口,例如ILOM,来进行升级工作,只能使用以太网来升级,否则升级工作会hung住。
Exadata中Infiniband交换机升级的更多相关文章
- Infiniband交换机的FabricMonitor加载数据hang
刚刚帮客户将Exadata中Infiniband交换机的固件版本从2.1.3-1 升级到2.2.7-1,但升级后发现Infiniband交换机的FabricMonitor功能无法使用,具体如下图所示. ...
- Exadata中的dbserver_backup.sh脚本
dbserver_backup.sh脚本在老版本的exadata中,它存放在/opt/oracle.SupportTools目录中,主要用于/根文件系统和/boot分区的备份.dbserver_bac ...
- CentOS 6.4系统中编译和升级内核
CentOS 6.4系统中编译和升级内核 [日期:2013-08-25] 来源:Linux社区 作者:vipshichg [字体:大 中 小] 可能因为以下几种原因,你可能需要对Linux kern ...
- 解决MyEclipse中安装或升级ADT之后SDK Target无法显示的问题
故障现象,在MyEclipse里面安装完最新的android sdk和ADT之后,无法新建项目,Build Target为空,显示一直在loading.即如下面图里面显示的,Target Na ...
- Anaconda在Python3和Python2之间切换,Conda命令,anaconda中python的升级和降级
当在pycharm IDE中指定不同的Python版本时,设置方法 File->Setting->Project:XXXX->Project Interpreter 选择不同位 ...
- 生产环境中,数据库升级维护的最佳解决方案flyway
官网:https://flywaydb.org/ 转载:http://casheen.iteye.com/blog/1749916 1. 引言 想到要管理数据库的版本,是在实际产品中遇到问题后想到的 ...
- RabbitMq中的交换机
Rabbitmq的核心概念(如下图所示):有虚拟主机.交换机.队列.绑定: 交换机可以理解成具有路由表的路由程序,仅此而已.每个消息都有一个称为路由键 ...
- Mac中使用port升级gcc版本
Mac OS中的gcc版本可能不会满足实际使用要求,需要对其升级. 这里介绍使用port方式来升级gcc版本.Macports是Mac OS中的软件包管理工具. 首先,安装Macports 这里提供O ...
- CentOs5.2中PHP的升级
最近一个项目中需要使用到PHP5.2的版本,而服务器上使用了官方的yum源进行安装,默认的版本是5.1.6,需要升级.但是因为不是一个非常 正式的服务器环境,所以想通过简单的yum update一下了 ...
随机推荐
- [转]WebKit CSS3 动画基础
前几天在Qzone上看到css3动画,非常神奇,所以也学习了一下.首先看看效果http://www.css88.com/demo/css3_Animation/ 很悲剧的是css3动画现在只有WebK ...
- kudu安装以及kudu的坑
本文描述的是kudu在cloudera的安装. 首先cloudera 5.11.1版本尽管可以直接在add Services中看到kudu,但是其实并没有集成parcels,而且也不想kafka提示需 ...
- spark提交异常日志分析
java.lang.NoSuchMethodError: org.apache.spark.sql.SQLContext.sql(Ljava/lang/String;)Lorg/apache/spar ...
- C/C++文件读写操作总结
本文主要从两方面介绍读写文件操作,一个是C,另一个是C++. 一.基于C的文件操作. 在ANSI C中对文件操作有两种方式,一种是流式文件操作,另一种是I/O文件操作.下面分别介绍. 1.流式文件操作 ...
- C# 利用Xsd验证xml
最近做项目时,用到了xml的序列化与反序列化, 发现最好用xsd来验证xml, 因为反序列化xml不校验xsd. 方法:xmlData变量为xml字符串 MemoryStream ms = new M ...
- HDOJ1238(string)
Substrings Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...
- web攻击之三:SQL注入攻击的种类和防范手段
观察近来的一些安全事件及其后果,安全专家们已经得到一个结论,这些威胁主要是通过SQL注入造成的.虽然前面有许多文章讨论了SQL注入,但今天所讨论的内容也许可帮助你检查自己的服务器,并采取相应防范措施. ...
- python 基础 序列化
转自https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/00138683221577 ...
- [xdoj1029]求解某个数的最高位和最低位
解题关键: 1.最高位求法 long long int x=n^m; 式子两边同时取lg lg(x)=m*lg(n): x=10^(m*lg(n)): 10的整数次方的最高位一定是1,所以x的最高位取 ...
- Leetcode: 67. Add Binary
二进制加法 https://discuss.leetcode.com/topic/33693/another-simple-java public String addBinary(String a, ...