分类目录归档:日常运维

Exadata更换硬盘的操作过程和解释

在巡检时,发现cell的alert有如下告警: 我们注意到有这样的信息,就表示磁盘有损坏的情况,结合sundiag信息,可以发现磁盘确实损坏,需要更换。 另外,此时也可以通过直接看机柜,该磁盘为闪蓝色灯,表示进行拔出的操作了。 关键信息: SEAGATE Model Number : ST360057SSUN600G Serial Number : E0P387 Slot Number : 9 Cell Disk : CD_09_dm01cel02 换盘前,我们一般作比较细致的检查: 1.在db节点上grid用户登录,这是要确认一下asm disk是不是被drop掉。drop掉就可以直接更换,如果没有,就需要手动去drop了。 这里表示磁盘celldisk:CD_09_dm01cel02已经被ASM自动删除了,且当前没有正在运行的rebalance操作。 2. 在相应的存储节点(dm01cel02)上进行确认检查: 确认物理盘状态: 这里发现磁盘的报错信息跟alert是一致的: 磁盘的物理位置和编号如下: 我们这里是HDD9损坏。 此时从机柜边上观察,如果磁盘闪蓝灯则可以直接拔出,如果是闪橘色灯,那么需要手工关闭这个磁盘设备,然后再拔出: alter physicaldisk 20:9 serviceled off 更换完成后需要检查: 1,磁盘的LED指示灯变为绿色 2,确认新换盘的celldisk,griddisk状态是normal … 继续阅读

发表在 日常运维 | 标签为 , , , , , , | 留下评论

Exadata上的手工创建celldisk,griddisk(比如手工增加一个cell节点)

一个客户,因为现有的一台Exadata要从一个地方搬迁到另一个地方的机房,因此机器中所有部件的IP都需要修改(ILOM,SWITCH,DNS,NTP SERVER,VIP,SCAN,PDU等等)…… 这些都可以修改IP的方式完成,也并不复杂。 但是,考虑到机器上以前部署了很多应用(包括SAP的一些东西),本地空间凌乱且空闲不多。 因此,给客户的解决方案: 1,机器不用重刷,只更改相关IP 2,重装RAC(GI和Database) 3,安装Bundle Patch和SAP需要的patch 清理已经的RAC环境很简单,参考我以前写的一个《Linux下手工卸载11.2 RAC(非MOS的deinstall方法)》 类似这种方法,在11.2以前,是常用的,简单干净,O(∩_∩)O哈哈~ 顺便也提一下,《AIX环境下11.2 rac的快速卸载脚本》 下载环境并重新安装时,发现可用的找不到ASM盘,客户想起来清理环境的时候忘记先删除ASM磁盘了。 这里我们说下,ASM中,如果不指定asm_diskgroups和asm_diskstring(比如现在,我们重新安装),那么ASM在不同平台会按照缺省路径来扫描磁盘。 具体请参考:Default Disk Discovery Path by Platform (Doc ID 1389618.1) 缺省平台的扫描路径: Operating System Default Search String 那么Exadata呢,我猜它的缺省路径是o/cell_ip/* 。 例如,我这里是Exadata的VM,asm_diskgroups和asm_diskstring都为空,ASM启动没有问题,因为他按照缺省路径已经扫描到了需要的磁盘组和磁盘信息:   下面的图,更加清晰,所有盘都不在Candidate Disk中,也就是以前划分的cell上griddisk都不可用: 因为没有清理磁盘头,这些盘被ASMB进程扫描到了,也就是以前我们常说,11.2开始,重装RAC后,ASM和数据库都可以手工保留以前的状态,如果以前数据库和ASM是完好的,那么重装完成后,ASMB进程将信息注册到CSS中,数据库直接识别到ASM磁盘,因此,直接手工启动数据库就可以(如果要crs启动,那么必须使用crsctl命令将asm和db都注册到crs中):  现在,我们需要手工的删除griddisk,celldisk等等,然后手工创建这些盘…… 我们都知道Exadata上使用onecommand来创建celldisk和griddisk的时候,是按照磁盘效率分布不同的数据的,比如数据库文件需要较高的访问效率,而用来存放归档和备份的磁盘组则需要不那么高的访问效率,这些是通过创建cell的时候指定offsize来实现的。 … 继续阅读

发表在 安装和升级, 日常运维 | 标签为 , , , , , | 留下评论

Exadata上本地盘的使用(reclaimdisks.sh)

Exadata出厂时,其计算节点本地有4块盘,两两做RAID 1,安装了双OS,一个是Linux,一个是Solaris X86(不是Sparc,O(∩_∩)O哈哈~) X2是每块本地盘300G,从X3开始,每块本地盘600G。 多出一个没用的OS,这样就浪费了很多空间,因此,安装或者重装后,一般都做Reclaim的操作,将出厂时的双OS改为单独的Linux系统启动,并释放空间。 例如这里: 这里显示当前4块本地盘,做了双启动系统,每两块盘做了RAID 1,没有Hot Spares盘 使用reclaimdisks.sh -free -reclaim可以更改为一个单独的系统,大部分客户会选择使用Linux,例如: reclaim的过程大概2小时左右,完成后的结果类似下面: 这里,我们看到,4块本地盘,一个做了Hot spare disk,其余3块做RAID5,只有一个Linux OS了。 这样就把以前Solaris X86 OS 的空间释放出来了,但是这部分空间缺省并没有自动mount上,你需要手工的mount上,或者自己使用LVM扩充到根目录(/)或者非根目录(比如/u01等等),或者扩到Swap区。 例如: 这里我们看到做完reclaim后,释放出来400G左右的空间,这个是X2,每块本地盘300G。 如果是X3,每块本地盘600G,做完reclaim后释放出来600G左右的空间,就类似下面的样子: 现在你就可以使用lvm lvexten等命令,将这些空间扩到你需要的放了,O(∩_∩)O哈哈~。

发表在 安装和升级, 日常运维 | 标签为 , | 留下评论

exadata HC-检查是否有硬盘需要更换

在做exadata的检查的时候,我们通常收集如下信息: 1,exachk 2,sundiag 3,diagcollect(GI版本从11.2.0.4.x开始, 可以使用TFA Collector) 4,awr 5,db节点和cell节点的alert 6,osw 根据上述检查内容是否存在异常可能还需要 CheckHWnFWProfile等等。。。。 本文主要分析如何识别磁盘损坏的内容。 ++++++++++++++++++++++++++查看cell 的alert,检查是否有磁盘需要更换的信息: 检查cell的alert告警信息: dcli -g cell_group -l root “cellcli -e list alerthistory” 查看关键内容: 例如: +++++++++++++++++++++++++++看sundiag的信息: 收集sundiag信息后,你会发现,每个db节点和cell节点的文件非常多,包括RAID,HCA, Infiniband,。。。等等 例如: 针对磁盘损坏信息,主要检查如下内容: —————–检查坏盘: ———————检查报告了“先兆失效”的盘: ———-检查告警的磁盘信息: 使用cellcli查看磁盘的错误信息: 检查ASM的日志是否有类似如下的告警: 1. WARNING: failed to … 继续阅读

发表在 日常运维 | 标签为 , , | 留下评论

解除部分exadata上的“强安全策略”

在安装Exadata时,执行onecommand的后面几步ResecureMachine相关的内容后,安全性会得到增强,我们戏称为“强安全步骤”,不同的onecommand版本的step稍有差别,但是可以从deploy脚步的执行步骤的名称中识别出来,例如onecommand p14210449 (对应image 11.2.3.1.1)的如下(其中setp24~setp26): 在onecommand p16383189(对应 image 11.2.3.2.0,image 11.2.3.2.1的步骤跟这个一样的)中是如下步骤,其中step25~step28是“强安全”: 在执行了上述步骤后,一些客户使用一段时间后对于其中的“强安全”感觉很不方便,希望我们修改其中的部分限制,比如90天必须修改口令等等,下面就类似问题给出解决方案。 本文的方法来自于内部exadata的一个文档,且在多个客户都已经实施过了: 1, 解除口令限制和复杂度: 使用root用户修改/etc/pam.d/system-auth,这是一个password的的入口文件(老一点的linux系统一般用/etc/pam.d/passwd),将其中的”min=disabled,disabled,16,12,8″ ,使用这个规则建立的口令很难被破解,修改为”min=1,1,1,1,1″,大大降低了口令的复杂程度(容易被破解,例如“oracle”,或者exadata上的缺省的welcome等等,都是常用词汇。。。) 然后重置root口令即可(exadata上大部分缺省口令是welcome) 2, 解除90修改口令的限制: 执行下面的命令修改用户口令修改策略: 当然,你需要在所有节点依次执行,exadata上的dcli可以很方便的完成: 然后使用上述用户登录的缺省口令就可以登录了(缺省口令都是welcome) 3, 重新配置各个节点的SSH信任关系(因为执行了ResecureMachine以后,SSH信任关系操作就不可以了): 也可以参考我之前的一篇blog(其中的脚本在11.2.0.1的除windows平台外的任何一个安装包中都可以找到): 使用Oracle安装包的ssh配置机器互信 注意: 如果有问题可以参考bug 12389246 4, 解除SSH连接超时的限制: 顺便多说一下,由于某些原因用户可能会出现密码尝试次数过多账号被锁定的问题,具体的设置在/etc/pam.d/system-auth文件,例如,exadata上的: 清除某个用户的登陆失败次数,让改用户可以重新登陆的命令: pam_tally2 -r -u username 例如, 清除 oracle用户的失败登录次数:pam_tally2 -r … 继续阅读

发表在 FAQ, 日常运维 | 标签为 | 留下评论