分类目录归档:FAQ

Exadata上,ASM的Req_mir_free_MB 是如何得到的?

Exadata上,ASM的Req_mir_free_MB 是如何得到的? 首先,我们都知道,可通过v$asm_diskgroup来查看required_mirror_free_mb: 这里看到,实际上lsdg的输出跟v$asm_diskgroup是一致的(注意,早起的数据库版本由于rebalance时的bug,可能造成显示不一致,例如 Bug 7699985) 由于Exadata上,没有外部冗余,数据完全通过ASM镜像,那么就要考虑当磁盘故障或者cell故障时的数据保护,需要相应的根据Normal Redundancy或者High Redundancy来考虑分别两种情况: 1,在Normal Redundancy时,要考虑1块磁盘损坏或者1个cell不能启动时,如果修复时间超过缺省的3.6小时,需要使用现有系统中可用磁盘空间做Rebalance 2,在HighRedundancy时,要考虑2块磁盘损坏或者2个cell不能启动时,如果修复时间超过缺省的3.6小时,需要使用现有系统中可用磁盘空间做Rebalance Oracle根据内部算法,使用一个调解因子做系数,比如,不同版本的Oracle,评估方法不同: 如果数据库是11.2.0.3或者11.2.0.4,那么这个调解因子为1.10,如果是低于这个版本的数据库,调解因子是1.5(具体该因子的算法尚未知道) 对于每一个磁盘组,他们需要调解的空间大小(即,预留空间)=v$asm_diskgroup.required_mirror_free_mb * 调解因子 然后根据不同的镜像(Normal或者High),以及不同的Exadata配置(1/8,1/4、1/2,满配)再分别乘以一个系数,下面的代码根据每个磁盘组的最大的failgroup的大小来确定需要保留的空间: 然后,计算出来总共的需要“预留的空间”按照不同配置的Exadata乘以一个比例,就是我们这看到的 REQUIRED_MIRROR_FREE_MB: 对于Normal Redundancy: 对于High Redundancy: 完整的代码可在这里下载

发表在 ASM, FAQ, 内部机制 | 标签为 , , | 留下评论

Exadata和非Exadata平台上,ASM的可用空间如何计算?

曾经很多次,有客户问到ASM上可用的空闲空间问题,实际上,由于ASM带有3中冗余设置方式,分别应对不同场景的数据冗余情况,因此,通常在Exadata上的选择和非Exadata上的选择是不同的。 . 在非Exadata的环境中,通常我们会使用RAID,比如RAID10,因此ASM中使用External Redundancy,例如: ASMCMD> lsdg State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 4096 1048576 51200 45862 0 45862 0 N CFARCH1/ MOUNTED EXTERN N 512 4096 1048576 51200 47653 … 继续阅读

发表在 ASM, FAQ, 内部机制 | 标签为 , , | 2 条评论

Exadata上的进程-Diskmon进程

Master Diskmon是Oracle Clusterware 11.1.0.7版本引入的一个新的进程(主要是为了Exadata Storage Server软件而设计的),该进程作为缺省安装的一部分随着Oracle Clusterware的安装就存在了。 Master Diskmon主要负责监控cell,并负责跟数据库节点的diskmon进程通信。该进程还参与IO fencing机制和IORM(IO Resource Manager)。 Master Diskmon进程是一个单独的进程,他跟ocssd进程通信,即便是非Exadata环境,该进程也是存在的(只是非Exadata环境,Diskmon进程没有什么作用,后面会解释这个)。 在11.1.0.7中,/bin/sh /etc/init.d/init.cssd 会启动2个diskmon相关进程,即: root 1717 0.0 0.0 6716 1368 ? Ss 11:43 0:07 /bin/sh /etc/init.d/init.cssd fatal <span>root 2799 0.0 0.0 6720 1364 ? S 11:44 0:00 … 继续阅读

发表在 FAQ | 标签为 , | 留下评论

Exadata上的Writeback和Writethrouth-4-X3和X4上的Flash Card

从X3开始采用 Flash Accelerator F40 400GB Solid State Memory ,每个cell上有4块F40卡,每个卡上有4个100GB的FDOM(每个F40的容量为4*100GB=400GB),这样,每个cell的总Flash容量为1.6T。可见从容量上已经突飞猛进了。 这里,我们再回来思考上一篇《Exadata上的Writeback和Writethrouth-4-V2和X2上的Flash Card》中提到的一个问题:是否可以将Exadata上的Flash Card作为ASM disk使用? Exadata上的Writeback和Writethrouth-4-X3和X4上的Flash Card

发表在 FAQ, 体系架构 | 标签为 , , , | 留下评论

Exadata上的Writeback和Writethrouth-3-V2和X2上的Flash Card

从V2和X2的机器上硬件带有4块写缓存功能Sun Flash Accelerator F20 PCIe Card卡,每个F20上有4个FMOD模块,每个FMOD模块是24G(每个F20为24*4=96GB容量)。因此V2和X2的每台存储服务器上可以支持4*96GB=384GB的缓存,如图: Exadata上的Writeback和Writethrouth-3-V2和X2上的Flash Card

发表在 FAQ, 体系架构 | 标签为 , , , | 留下评论

Exadata上的Writeback和Writethrouth-2-SSD篇

在了解Exadata上的Flash Card的使用方式之前,我也先给自己科普了一下SSD的相关知识,具体如下: SSD,也就是我们常说的固态硬盘(Solid State Disk),他是用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元(FLASH芯片、DRAM芯片)组成,好一点的还可以多一个缓存芯片。固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的完全相同,在产品外形和尺寸上也完全与普通硬盘一致。 从发展实践来看,1970年,StorageTek公司(Sun StorageTek)开发了第一个固态硬盘驱动器。1989年,世界上第一款固态硬盘出现。 固态硬盘(Solid State Drives),是用固态电子存储芯片阵列而制成的硬盘,其芯片的工作温度范围很宽,商规产品(0~70℃)工规产品(-40~85℃)。这些指标都的使用范围都远超过硬盘的工作规范,因此,我们常说固态盘适应的环境更多…… Exadata上的Writeback和Writethrouth-2-SSD篇

发表在 FAQ, 体系架构 | 标签为 , , | 留下评论

Exadata上的Writeback和Writethrouth-1-硬盘篇

以前写过一些关于Exadata上磁盘管理相关的文章: Exadata的磁盘自动管理-1-教你读懂cell alert中的磁盘相关信息 Exadata的磁盘自动管理-2-Cell上各种磁盘相关的概念 Exadata的磁盘自动管理-3-磁盘自动管理的操作规则 如何看待exadata的cell节点出现的writethrough/wirteback模式更换或者控制器充放电信息 Exadata更换硬盘的操作过程和解释 今天偶然间看见一段alert的信息,这是Exadata上Disk Controller BBU充放电的相关信息,具体解释请参见《如何看待exadata的cell节点出现的writethrough/wirteback模式更换或者控制器充放电信息》: 联想到Exadata上Flash Card的“Writeback和Writethrough”功能的变迁,以及目前为什么社会上各家一体机的架构(我所了解的大一点的Oracle运维三方基本都有了,没有的也在研发中了,只有一些目前宣称只做软件的三方还没做一体机,O(∩_∩)O哈哈~),忽然间想更多的了解下各种硬盘和SSD的发展历程,于是就开始给自己扫盲…………………… Exadata上的Writeback和Writethrouth-1-硬盘篇

发表在 FAQ, 体系架构 | 标签为 , | 留下评论

使用 DECLI 配置Exadata上cell节点的celladmin的信任关系

在Exadata上缺省没有配置cell节点的celladmin用户的信任关系,但是有时候我们需要用,那么手工配置一下吧。 借助dcli工具,使得配置很简单:

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

HOW TO GENERATE SYSTEMSTATE ON THE CELLSRV TO IDENTIFY MEMORY LEAKS

1. Executing command kill -12 on the cellsrv pid. Identify the pid of cellsrv process -> ps -ef |grep ‘cellsrv 100’ kill -12 Example: 2. On the storage cell, obtain the statedump by running command from cellcli: 3. Provide to … 继续阅读

发表在 FAQ, 故障诊断 | 留下评论

在Exadata上修改操作系统用户口令的方法

注意修改完了要用这个用户登录一次才可以:

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