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交换机主机上:

将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

#

 

5、检查infiniband交换机的根目录(/)剩余空间:

# 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

 

13、检查SM权限是否为8(仅限于spine IB交换机)

# 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服务已经启动

 

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交换机升级的更多相关文章

  1. Infiniband交换机的FabricMonitor加载数据hang

    刚刚帮客户将Exadata中Infiniband交换机的固件版本从2.1.3-1 升级到2.2.7-1,但升级后发现Infiniband交换机的FabricMonitor功能无法使用,具体如下图所示. ...

  2. Exadata中的dbserver_backup.sh脚本

    dbserver_backup.sh脚本在老版本的exadata中,它存放在/opt/oracle.SupportTools目录中,主要用于/根文件系统和/boot分区的备份.dbserver_bac ...

  3. CentOS 6.4系统中编译和升级内核

    CentOS 6.4系统中编译和升级内核 [日期:2013-08-25] 来源:Linux社区  作者:vipshichg [字体:大 中 小] 可能因为以下几种原因,你可能需要对Linux kern ...

  4. 解决MyEclipse中安装或升级ADT之后SDK Target无法显示的问题

        故障现象,在MyEclipse里面安装完最新的android sdk和ADT之后,无法新建项目,Build Target为空,显示一直在loading.即如下面图里面显示的,Target Na ...

  5. Anaconda在Python3和Python2之间切换,Conda命令,anaconda中python的升级和降级

    当在pycharm IDE中指定不同的Python版本时,设置方法 File->Setting->Project:XXXX->Project Interpreter    选择不同位 ...

  6. 生产环境中,数据库升级维护的最佳解决方案flyway

    官网:https://flywaydb.org/ 转载:http://casheen.iteye.com/blog/1749916 1.  引言 想到要管理数据库的版本,是在实际产品中遇到问题后想到的 ...

  7. RabbitMq中的交换机

          Rabbitmq的核心概念(如下图所示):有虚拟主机.交换机.队列.绑定:                    交换机可以理解成具有路由表的路由程序,仅此而已.每个消息都有一个称为路由键 ...

  8. Mac中使用port升级gcc版本

    Mac OS中的gcc版本可能不会满足实际使用要求,需要对其升级. 这里介绍使用port方式来升级gcc版本.Macports是Mac OS中的软件包管理工具. 首先,安装Macports 这里提供O ...

  9. CentOs5.2中PHP的升级

    最近一个项目中需要使用到PHP5.2的版本,而服务器上使用了官方的yum源进行安装,默认的版本是5.1.6,需要升级.但是因为不是一个非常 正式的服务器环境,所以想通过简单的yum update一下了 ...

随机推荐

  1. 大白话AOP

    工作一年多后, 第二次看了韩顺平老师讲的AOP (11年的Spring 教学视频) AOP还是比较艰涩的东西. 从刚开始 碰Java项目去找书看开始, 到学了拦截器知道AOP就是处理事务, 日志, 安 ...

  2. Struts2 - 值栈(ValueStack)

    1. 关于值栈: 1). helloWorld 时, ${productName} 读取 productName 值, 实际上该属性并不在 request 等域对象中, 而是从值栈中获取的. 2). ...

  3. “Hello World”—— 第一个汇编程序

    Hello World这是每一门编程语言的第一个最简单程序,下面那个程序就是汇编语言的Hello World.学汇编一段时间了,到现在才记录下自己的第一个汇编程序笔记.虽然这是个相当简单的小程序,但这 ...

  4. node好用的东东

    supervisor 可参考: http://www.cnblogs.com/pigtail/archive/2013/01/08/2851056.html http://www.cnblogs.co ...

  5. 多puppetmaster,多ca,keepalived+haproxy(nginx)puppet集群搭建

    多puppetmaster,多ca,keepalived+haproxy(nginx)puppet集群搭建 一.服务器详情 192.168.122.111 pm01.jq.com pm01 #(pup ...

  6. CRT Library Features

    CRT Library Features The new home for Visual Studio documentation is Visual Studio 2017 Documentatio ...

  7. 2.Apache + Tomcat + mod_jk实现集群服务

    转自:http://www.cnblogs.com/dennisit/p/3370220.html Tomcat中的集群原理是通过组播的方式进行节点的查找并使用TCP连接进行会话的复制. 实现效果:用 ...

  8. zookeeper.out: Permission denied错误解决方法

    [hadoop@node1 root]$ zkServer.sh start JMX enabled by default Using config: /opt/software/zookeeper- ...

  9. Sequence Models 笔记(二)

    2 Natural Language Processing & Word Embeddings 2.1 Word Representation(单词表达) vocabulary,每个单词可以使 ...

  10. Flask12 数据库连接、创建数据库用户、注册模块

    1 连接数据库 1.1 安装 flask-sqlalchemy flask-sqlalchemy 会让 sqlalchemy 使用起来更加方便 pip3 install flask-sqlalchem ...