运维联盟俱乐部

 找回密码
 立即注册
查看: 2677|回复: 0

exdata-管理-存储节点-flash盘日常管理

[复制链接]

该用户从未签到

发表于 2022-1-20 16:05:51 | 显示全部楼层 |阅读模式


数据跨 Exadata cell disk 镜像,写入操作至少发送到两个存储单元。如果一个 Oracle Exadata 存储服务器中的闪存卡出现问题,
则读取和写入操作由另一个 Oracle Exadata 存储服务器中的镜像数据提供服务。应用程序不会发生服务中断。

如果闪存卡在write-back模式下发生故障,则 Oracle Exadata 系统软件通过从幸存镜像中读取数据来确定闪存缓存中的数据。
然后将数据写入具有故障闪存卡的单元。 Oracle Exadata System Software 在闪存发生故障时保存在故障闪存缓存中丢失的数据的位置。
然后,通过用镜像副本替换丢失的数据开始重新同步。在重新同步期间,网格磁盘状态为 ACTIVE -- RESILVERING WORKING。
如果 PMEM 缓存处于write-through模式,则故障 PMEM 设备中的数据已经存在于数据网格磁盘上,因此无需重新同步。

对于闪存盘的管理,包括下面几个方面。

1.闪存卡失败进行的替换
每个 Oracle Exadata 存储服务器都配备了闪存设备。

从 Oracle Exadata Database Machine X7 开始,闪存设备可在 Oracle Exadata 存储服务器上进行热插拔。

在 Oracle Exadata Storage Servers for X7 或更高版本上执行闪存设备的可热插拔更换时,
磁盘状态应为 Dropped for replacement,并且闪存卡上的电源 LED 应熄灭,这表明闪存磁盘已准备好使用在线更换。

注意:在电源 LED 亮起的情况下移除卡可能会导致系统崩溃。如果故障磁盘的状态为“失败 - 丢弃以进行更换”,但电源 LED 仍亮着,请联系 Oracle 支持服务。
对于 Oracle Exadata Database Machine X6 及更早版本,闪存设备可在极速闪存 (EF) 存储服务器上热插拔,但不能在高容量 (HC) 存储服务器上。
在 HC 存储服务器上,您需要在更换存储服务器之前关闭它们的电源。

要识别故障闪存盘,请使用以下命令:
CellCLI> LIST PHYSICALDISK WHERE disktype=flashdisk AND status=failed DETAIL

--Extreme Flash storage server例子
<

    name:                          NVME_10
    deviceName:                    /dev/nvme7n1
    diskType:                      FlashDisk
    luns:                          0_10
    makeModel:                     "Oracle NVMe SSD"
    physicalFirmware:              8DV1RA13
    physicalInsertTime:            2016-09-28T11:29:13-07:00
    physicalSerial:                CVMD426500E21P6LGN
    physicalSize:                  1.4554837569594383T
    slotNumber:                    10
    status:                        failed
>
--Oracle Flash Accelerator F160 PCIe Card 例子:
<
CellCLI> LIST PHYSICALDISK WHERE DISKTYPE=flashdisk AND STATUS=failed DETAIL

         name:                   FLASH_5_1
         deviceName:             /dev/nvme1n1
         diskType:               FlashDisk
         luns:                   5_1
         makeModel:              "Oracle Flash Accelerator F160 PCIe Card"
         physicalFirmware:       8DV1RA13
         physicalInsertTime:     2016-11-30T21:24:45-08:00
         physicalSerial:         1030M03UYM
         physicalSize:           1.4554837569594383T
         slotNumber:             "PCI Slot: 5; FDOM: 1"
         status:                 failed

>

-- Sun Flash Accelerator F40 PCIe card 例子:
<
         name:                   FLASH_5_3
         diskType:               FlashDisk
         luns:                   5_3
         makeModel:              "Sun Flash Accelerator F40 PCIe Card"
         physicalFirmware:       TI35
         physicalInsertTime:     2012-07-13T15:40:59-07:00
         physicalSerial:         5L002X4P
         physicalSize:           93.13225793838501G
         slotNumber:             "PCI Slot: 5; FDOM: 3"
         status:                 failed

>

对于 PCIe 卡,name 和 slotNumber 属性显示 PCI 插槽和 FDOM 编号。对于 Extreme Flash 存储服务器,slotNumber 属性显示前面板上的 NVMe 插槽。

在 Oracle Exadata Database Machine X7 和更高版本的系统上,所有闪存磁盘都采用附加卡 (AIC) 的形式,插入到主板上的 PCIe 插槽中。
   slotNumber 属性显示 PCI 编号和 FDOM 编号,无论是 EF 还是 HC 存储服务器。

如果检测到闪存盘发生故障,则会生成警报,指示闪存盘及其上的 LUN 发生故障。警报消息包括 PCI 插槽编号和 FDOM 编号或 NVMe 插槽编号。
  这些数字唯一地标识现场可更换单元 (FRU)。如果您已将系统配置为警报通知,则会通过电子邮件将警报发送到指定地址。

闪存盘中断会导致性能和数据冗余降低。应尽早用新的闪存盘更换故障磁盘。
  如果闪存盘用于闪存缓存,则存储服务器的有效缓存大小会减少。
  如果闪存盘用于闪存日志,则闪存日志在磁盘上被禁用,从而减少有效闪存日志大小。
  如果闪存磁盘用于grid disk,则与这些网格磁盘关联的 Oracle 自动存储管理 (Oracle ASM) 磁盘会使用 FORCE 选项自动从 Oracle ASM 磁盘组中删除,
  并开始重新平衡操作以恢复数据冗余.

以下过程描述了如何在不支持在线闪存更换的大容量存储服务器上因磁盘故障而更换 FDOM。更换 Extreme Flash 存储服务器上的 NVMe 驱动器与更换物理磁盘相同:
您只需从前面板上卸下 NVMe 驱动器并插入一个新驱动器即可。您无需关闭存储服务器。

1)关闭存储服务器
2)根据 PCI 编号和 FDOM 编号更换故障闪存盘。 白色的定位器 LED 会亮起,以帮助定位受影响的存储服务器。
3)启动存储服务器。 单元服务会自动启动。 作为存储服务器启动的一部分,所有网格磁盘在 Oracle ASM 中自动联机。
4)使用以下命令验证所有griddisk是否已成功联机:
<CellCLI> LIST GRIDDISK ATTRIBUTES name, asmmodestatus
         data_CD_00_testceladm10     ONLINE
         data_CD_01_testceladm10     ONLINE
         data_CD_02_testceladm10     ONLINE
         ...
>

Wait until asmmodestatus shows ONLINE or UNUSED for all grid disks.

系统会自动使用新的闪存盘。 如果闪存盘用于闪存缓存,则有效缓存大小会增加。 如果闪存盘用于网格盘,则在新闪存盘上重新创建网格盘。
如果这些网格磁盘是 Oracle ASM 磁盘组的一部分,则将它们添加回磁盘组,并根据磁盘组冗余和 ASM_POWER_LIMIT 参数在它们上重新平衡数据。

2.关于闪存盘性能下降状态
如果闪存磁盘的性能下降,您可能需要更换该磁盘。

您可能需要更换闪存盘,因为该磁盘具有以下状态之一:
    warning - predictive failure
    warning - poor performance
    warning - write-through caching
    warning - peer failure

注意:对于 11.2.3.2.2 之前的 Oracle Exadata System Software 版本,该状态不存在。

当闪存盘处于预测性故障、性能不佳、直写缓存或对等故障状态时,会生成警报。 该警报包括更换闪存盘的具体说明。
如果您已将系统配置为警报通知,则警报将通过电子邮件发送到指定地址。

1)预测失败(predictive failure)

闪存盘预测故障状态表明闪存盘将很快发生故障,应尽早更换。 如果闪存盘用于闪存缓存,则它会继续用作闪存缓存。 如果闪存磁盘用于网格磁盘,
则与这些网格磁盘关联的 Oracle ASM 磁盘将自动删除,并且 Oracle ASM 重新平衡将数据从预测性故障磁盘重新定位到其他磁盘。

当闪存盘由于一个闪存盘而发生预测性故障时,则复制数据。 如果闪存磁盘用于网格磁盘,则 Oracle ASM 重新与关联的伙伴建立伙伴关系,并执行重新平衡。
如果闪存盘用于回写闪存缓存,则数据从闪存盘刷新到网格磁盘。

要识别预测性故障闪存盘,请使用以下命令:
<CellCLI> LIST PHYSICALDISK WHERE DISKTYPE=flashdisk AND STATUS=  \
'warning - predictive failure' DETAIL

         name:               FLASH_1_1
         deviceName:         /dev/nvme3n1
         diskType:           FlashDisk
         luns:               1_1
         makeModel:          "Oracle Flash Accelerator F160 PCIe Card"
         physicalFirmware:   8DV1RA13
         physicalInsertTime: 2016-11-30T21:24:45-08:00
         physicalSerial:     CVMD519000251P6KGN
         physicalSize:       1.4554837569594383T
         slotNumber:         "PCI Slot: 1; FDOM: 1"
         status:             warning - predictive failure
>

2)性能不佳(poor performance)
闪存盘性能不佳状态表示闪存盘性能极差,应尽早更换。从 Oracle Exadata 系统软件版本 11.2.3.2 开始,性能不佳的磁盘会被自动识别并从活动配置中删除。
如果闪存磁盘用于闪存缓存,则闪存缓存会从此磁盘中删除,从而减少存储服务器的有效闪存缓存大小。如果闪存磁盘用于网格磁盘,则如果可能,
与此闪存磁盘上的网格磁盘关联的 Oracle ASM 磁盘会使用 FORCE 选项自动删除。如果 DROP...FORCE 因伙伴离线而无法成功,则网格盘自动正常丢弃,
Oracle ASM rebalance 将数据从性能较差的盘重定位到其他盘。

Oracle Exadata 数据库云服务器然后运行一组性能测试。当 CELLSRV 检测到磁盘性能不佳时,单元磁盘状态会更改为normal - confinedOnline在线,
物理磁盘状态会更改为warning - confinedOnline在线。以下情况会触发磁盘限制:
磁盘停止响应。 存储警报日志中的原因代码是 CD_PERF_HANG。
    慢速单元磁盘如下:
    高服务时间阈值(原因代码 CD_PERF_SLOW_ABS)
较高的相对服务时间阈值(原因代码 CD_PERF_SLOW_RLTV)
    高读取或写入延迟,例如:
    写入延迟高(原因代码 CD_PERF_SLOW_LAT_WT)
    读取延迟高(原因代码 CD_PERF_SLOW_LAT_RD)
    读取和写入的高延迟(原因代码 CD_PERF_SLOW_LAT_RW)
频繁发生的单个 I/O 的绝对延迟非常高(原因代码 CD_PERF_SLOW_LAT_ERR)
诸如 I/O 错误之类的错误(原因代码 CD_PERF_IOERR)。

如果磁盘问题是暂时的并且通过了测试,那么它会被带回到配置中。 如果磁盘未通过测试,则将其标记为性能不佳,
Oracle 自动服务请求 (ASR) 会提交更换磁盘的服务请求。 如果可能,Oracle ASM 会使网格磁盘脱机以进行测试。
如果 Oracle ASM 无法使磁盘脱机,则单元磁盘状态将保持ormal - confinedOnline在线,直到可以安全地使磁盘脱机。

标示此类型的磁盘,请执行下面命令:
<CellCLI> LIST PHYSICALDISK WHERE DISKTYPE=flashdisk AND STATUS= \
'warning - poor performance' DETAIL

         name:                FLASH_1_4
         diskType:            FlashDisk
         luns:                1_4
         makeModel:           "Sun Flash Accelerator F20 PCIe Card"
         physicalFirmware:    D20Y
         physicalInsertTime:  2012-09-27T13:11:16-07:00
         physicalSerial:      508002000092e70FMOD2
         physicalSize:        22.8880615234375G
         slotNumber:          "PCI Slot: 1; FDOM: 3"
         status:              warning - poor performance
>

cell LIST 里有下面信息:
<MESSAGE ID date_time info "Hard disk entered confinement status. The LUN
n_m changed status to warning - confinedOnline. CellDisk changed status to normal
- confinedOnline. Status: WARNING - CONFINEDONLINE  Manufacturer: name  Model
Number: model  Size: size  Serial Number: serial_number  Firmware: fw_release
Slot Number: m  Cell Disk: cell_disk_name  Grid Disk: grid disk 1, grid disk 2
... Reason for confinement: threshold for service time exceeded"
>

注意:在 11.2.3.2 之前的 Oracle Exadata System Software 版本中,使用 CALIBRATE 命令来识别损坏的闪存磁盘,并查找每个闪存磁盘的吞吐量和 IOPS
非常低。
如果闪存盘表现出极差的性能,则将其标记为性能差。 该闪存磁盘上的闪存缓存会自动禁用,并且该闪存磁盘上的网格磁盘会自动从 Oracle ASM 磁盘组中删除。

3)闪存盘直写缓存(write-through caching)
状态表示PCIe卡上用于支持数据缓存的电容出现故障,应尽快更换卡。

4)对等失败(peer failure)
闪存磁盘对等故障状态指示同一 Sun Flash Accelerator PCIe 卡上的一个闪存磁盘发生故障或出现问题。
例如,如果 FLASH_5_3 发生故障,则 FLASH_5_0、FLASH_5_1 和 FLASH_5_2 处于对等故障状态。 下面是一个例子:
<CellCLI> LIST PHYSICALDISK
         36:0            L45F3A          normal
         36:1            L45WAE          normal
         36:2            L45WQW          normal
...
         FLASH_5_0       5L0034XM        warning - peer failure
         FLASH_5_1       5L0034JE        warning - peer failure
         FLASH_5_2       5L002WJH        warning - peer failure
         FLASH_5_3       5L002X4P        failed
>
当 CellSRV 在用于write back flash cache的任何闪存盘中检测到预测性或对等故障并且只有一个 FDOM 损坏时,将重新同步损坏的 FDOM 上的数据,
并刷新其他三个 FDOM 上的数据。 如果存在有效的网格磁盘,则 CellSRV 会为磁盘启动 Oracle ASM 重新平衡。 在任务完成之前无法更换坏盘。
当可以更换磁盘时,MS 会发送警报。

3.由于闪存盘问题而进行的闪存盘更换
Oracle Exadata 存储服务器配备了四个 PCIe 卡。每张卡有 4 个闪存盘 (FDOM),总共 16 个闪存盘。四个 PCIe 卡位于 PCI 插槽编号 1、2、4 和 5 上。
从 Oracle Exadata Database Machine X7 开始,您可以在不关闭存储服务器电源的情况下更换 PCIe 卡。请参阅执行闪存盘的热插拔更换。

在 Oracle Exadata Database Machine X6 和更早的系统中,PCIe 卡不可热插拔。在更换闪存盘或卡之前,必须关闭 Oracle Exadata 存储服务器。

从 Oracle Exadata Database Machine X7 开始,High Capacity 和 Extreme Flash 存储服务器上的每个闪存卡都是一个现场可更换单元 (FRU)。
闪存卡也是可热插拔的,因此您不必在移除闪存卡之前关闭存储服务器。

在 Oracle Exadata Database Machine X5 和 X6 系统上,High Capacity 上的每个闪存卡和 Extreme Flash 上的每个闪存驱动器都是 FRU。
这意味着这些系统没有对等故障。

在 Oracle Exadata Database Machine X3 和 X4 系统上,由于闪存卡本身是 FRU,如果任何 FDOM 发生故障,Oracle Exadata 系统软件将自动将
该卡上的其余 FDOM 对等故障,以便数据可以搬出去准备更换闪存卡。

在 Oracle Exadata Database Machine V2 和 X2 系统上,每个 FDOM 都是一个 FRU。这些系统的闪存没有对等故障。

确定何时继续进行磁盘更换取决于版本,如下所述:

对于 11.2.3.2 之前的 Oracle Exadata System 软件版本:
等待通过查询 V$ASM_DISK_STAT 视图成功删除 Oracle ASM 磁盘,然后再继续更换闪存磁盘。如果在闪存磁盘发生故障之前正常删除未完成,
则使用 FORCE 选项从 Oracle ASM 磁盘组中自动删除 Oracle ASM 磁盘。如果在闪存盘发生故障之前 DROP 命令未完成,请参阅因闪存盘故障而更换闪存盘。

对于 Oracle Exadata System Software 11.2.3.2 及更高版本:
删除 Oracle ASM 磁盘时会发送警报,并且可以安全地更换闪存盘。如果闪存盘用于回写闪存缓存,则等待直到没有网格盘被闪存盘缓存。
使用以下命令检查所有网格磁盘的 cachedBy 属性。闪存盘上的单元磁盘不应出现在任何网格磁盘的 cachedBy 属性中。

CellCLI> LIST GRIDDISK ATTRIBUTES name,cachedBy
如果闪存盘同时用于网格磁盘和闪存缓存,则等到收到警报,单元磁盘不会显示在任何网格磁盘的 cachedBy 属性中。

以下过程介绍了如何因磁盘问题更换 Oracle Exadata Database Machine X6 及更早版本的高容量存储服务器上的闪存磁盘。

注意:在适用于 Oracle Exadata Database Machine X6 的 Extreme Flash 存储服务器和适用于 Oracle Exadata Database Machine X7
及更高版本的所有存储服务器上,您只需从前面板上移除闪存盘并插入一个新磁盘即可。您无需关闭存储服务器。

1)停止节点上的所有服务
CellCLI> ALTER CELL SHUTDOWN SERVICES ALL

前面的命令检查是否有任何磁盘脱机、处于预测故障状态或需要复制到其镜像。 如果 Oracle ASM 冗余完好无损,则该命令使 Oracle ASM 中的网格磁盘脱机,
然后停止单元服务。 如果显示以下错误,则停止单元服务可能不安全,因为磁盘组可能因冗余而被强制卸载。

<Stopping the RS, CELLSRV, and MS services...
The SHUTDOWN of ALL services was not successful.
CELL-01548: Unable to shut down CELLSRV because disk group DATA, RECO may be
forced to dismount due to reduced redundancy.
Getting the state of CELLSRV services... running
Getting the state of MS services... running
Getting the state of RS services... running
>

如果发生错误,则恢复 Oracle ASM 磁盘组冗余并在所有磁盘的磁盘状态恢复正常时重试该命令。

2)关闭服务节点
3)根据 PCI 编号和 FDOM 编号更换故障闪存盘。 白色的定位器 LED 会亮起,以帮助定位受影响的存储服务器。
4)启动存储服务器。 单元服务会自动启动。 作为存储服务器启动的一部分,所有网格磁盘在 Oracle ASM 中自动联机。
5)校验griddisk 状态已恢复正常
CellCLI> LIST GRIDDISK ATTRIBUTES name, asmmodestatus

Wait until asmmodestatus shows ONLINE or UNUSED for all grid disks.

系统会自动使用新的闪存盘。 如果闪存盘用于闪存缓存,则有效缓存大小会增加。 如果闪存盘用于网格盘,则在新闪存盘上重新创建网格盘。
如果这些网格磁盘是 Oracle ASM 磁盘组的一部分,则将它们添加回磁盘组,并根据磁盘组冗余和 ASM_POWER_LIMIT 参数在它们上重新平衡数据。

4.闪存卡的热备替换
从 Oracle Exadata Database Machine X7 开始,闪存磁盘可在极速闪存 (EF) 和高容量 (HC) 存储服务器上进行热插拔。

此外,对于 Oracle Exadata Database Machine X6 及更早版本,EF 存储服务器上的闪存设备是可热插拔的。 但是,
对于 Oracle Exadata Database Machine X6 和更早系统上的 HC 存储服务器,您必须在更换闪存盘之前关闭存储服务器。

要更换热插拔闪存盘设备:
1)如有必要,准备可热插拔更换的磁盘。
通常,只有在 Oracle Exadata 系统软件识别出问题并将设备状态设置为 failed - dropped for replacement以进行更换后,您才需要更换闪存驱动器,这表明闪存盘已准备好进行在线更换。

如果您需要更换处于另一种状态的闪存盘,那么您必须首先使用带有 DROP FOR REPLACEMENT 子句的 CellCLI ALTER PHYSICALDISK 命令来准备可热插拔更换的磁盘。

2)验证闪存盘是否已准备好进行热插拔更换。
验证设备状态是failed - dropped for replacement以进行更换。

您可以使用 CellCLI LIST PHYSICALDISK 命令检查设备状态。 例如:
<CellCLI> LIST PHYSICALDISK WHERE DISKTYPE=flashdisk AND STATUS LIKE '.*dropped
for replacement.*' DETAIL

         name:               FLASH_6_1
         deviceName:         /dev/nvme0n1
         diskType:           FlashDisk
         luns:               6_0
         makeModel:          "Oracle Flash Accelerator F640 PCIe Card"
         physicalFirmware:   QDV1RD09
         physicalInsertTime: 2017-08-11T12:25:00-07:00
         physicalSerial:     PHLE6514003R6P4BGN-1
         physicalSize:       2.910957656800747T
         slotNumber:         "PCI Slot: 6; FDOM: 1"
         status:             failed - dropped for replacement

>

注意,当一个 FDOM 发生故障时,受影响的闪存盘 PCI 卡被视为故障,必须更换整张卡。

3)物理定位闪存盘设备。
使用 CellCLI LIST PHYSICALDISK 命令输出中的 slotNumber 信息来帮助识别包含受影响闪存设备的 PCI 插槽。

此外,白色的定位器 LED 会亮起,以帮助定位受影响的存储服务器。 琥珀色的需要故障服务 LED 亮起以识别受影响的闪存设备。

4)确保闪存盘电源 LED 熄灭。
注意:当电源 LED 亮起时移除闪存设备可能会导致系统崩溃。 如果状态为failed – dropped for replacement以进行更换,但电源 LED 仍亮着,
请联系 Oracle 支持服务。
5)移除并更换闪存盘设备。

5:启用Write Back 闪存模式(提高查询响应时间和吞吐量)
由闪存而不是磁盘服务的写操作称为write-back flash cache。

从 Oracle Exadata 系统软件版本 11.2.3.2.1 开始,Exadata 智能闪存缓存可以透明地将频繁访问的数据缓存到快速固态存储中,从而提高查询响应时间和吞吐量。

1.为 11.2.3.3.1 或更高版本启用write-back flash cache
在存储服务器上启用write-back Flash Cache 以提高查询响应时间和吞吐量。

对于 Oracle Exadata System 软件版本 11.2.3.3.1 或更高版本,将闪存从直写模式更改为回写模式时,您不必停止单元服务或停用grid disk.

注意:任何时候删除并重新创建 Flash Cache,都会对数据库操作产生性能影响。 在重新填充 Flash Cache 时,会有更多的缓存未命中,这会影响数据库性能。

1)在修改前确认物理磁盘的状态为normal
下面应改无行返回
# dcli –l root –g cell_group cellcli –e “list physicaldisk attributes name,status”|grep –v NORMAL

2)闪存flash cache
# dcli –l root –g cell_group cellcli -e drop flashcache

3)设置flashCacheMode attribute to writeback
# dcli –l root – g cell_group cellcli -e "alter cell flashCacheMode=writeback"

4)重建Flash Cache
# dcli –l root –g cell_group cellcli -e create flashcache all

5)校验 flashCacheMode 变为 writeback
# dcli –l root –g cell_group cellcli -e list cell detail | grep flashCacheMode

6)校验griddisk 的cachingPolicy and cachedby.
# cellcli –e list griddisk attributes name,cachingpolicy,cachedby


2.为低于 11.2.3.3.1 的软件版本启用基于滚动的Write Back 闪存缓存
您可以滚动启用写回闪存缓存。

要将 Flash Cache 属性从 writethrough 修改为 writeback,必须先删除 Flash Cache。对于 11.2.3.3.1 之前的 Oracle Exadata System Software
版本,您必须在启用回写闪存缓存时停止单元服务或停用网格磁盘。

有一个 shell 脚本可以自动启用和禁用写回闪存缓存。有关脚本和其他信息,请参阅 My Oracle Support 说明 1500257.1。

注意:任何时候删除并重新创建 Flash Cache,都会对数据库操作产生性能影响。在重新填充 Flash Cache 时,会有更多的缓存未命中,这会影响数据库性能。
Oracle Grid Infrastructure home 和 Oracle Database home 必须在 11.2.0.3 BP9 或更高版本中才能使用回写式闪存缓存。
有关 Oracle Exadata System Software、Oracle Grid Infrastructure home 和 Oracle Database home 的最低版本要求,
请参阅 My Oracle Support 说明 888828.1。

1)root登录第一个cell节点
2)检查FLASHCACHE属性正常
# cellcli -e LIST FLASHCACHE detail
3)在cell上删除FLASHCACHE
# cellcli -e DROP FLASHCACHE

4)去激活griddis
# cellcli -e ALTER GRIDDISK ALL INACTIVE

5)停止服务
# cellcli -e ALTER CELL SHUTDOWN SERVICES CELLSRV

6)设置flashCacheMode 属性为write back
# cellcli -e "ALTER CELL FLASHCACHEMODE=writeback"

7)重启节点服务
# cellcli -e ALTER CELL STARTUP SERVICES CELLSRV

8)重新激活griddis
# cellcli -e ALTER GRIDDISK ALL ACTIVE


9)重建flash cache
# cellcli -e CREATE FLASHCACHE ALL

10)检查cell的状态
# cellcli -e LIST CELL DETAIL | grep flashCacheMode

11)在做下一个cell节点前,检查griddisk的asmDeactivationOutcome and asmModeStatus 属性
CellCLI> LIST GRIDDISK ATTRIBUTES name,asmdeactivationoutcome,asmmodestatus

The asmDeactivationOutcome attribute should be yes, and the asmModeStatus attribute should be online.

12)对下一个cell 重复上述步骤。

3.以非滚动方式为低于 11.2.3.3.1 的软件版本启用写回闪存缓存
您可以在非滚动基础上启用写回闪存缓存。

在更改 flashCacheMode 属性之前,必须关闭单元服务。 对于 11.2.3.3.1 之前的 Oracle Exadata System Software 版本,
您必须在以非滚动方式禁用回写闪存缓存时停止单元服务。

有一个 shell 脚本可以自动启用和禁用写回 Flash Cache。 有关脚本和其他信息,请参阅 My Oracle Support 说明 1500257.1。

Oracle Grid Infrastructure home 和 Oracle Database home 必须在 11.2.0.3 BP9 或更高版本中才能使用回写式闪存缓存。
有关 Oracle Exadata System Software、Oracle Grid Infrastructure home 和 Oracle Database home 的最低版本要求,
请参阅 My Oracle Support 说明 888828.1。

1)root 登录db的节点
2)关闭整个集群
# cd $Grid_home/bin
# ./crsctl stop cluster -all

3)闪存所有cell 上的flash cache
# dcli -g cell_group -l root cellcli -e DROP FLASHCACHE


4)关闭cellsrv服务
# dcli -g cell_group -l root cellcli -e ALTER CELL SHUTDOWN SERVICES CELLSRV

5)确认flashcachemode 为writethrough
# dcli -g cell_group -l root "cellcli -e list cell detail | grep -i flashcachemode"

6)设置flashCacheMode attribute to writeback.
# dcli -g cell_group -l root cellcli -e "ALTER CELL FLASHCACHEMODE=writeback"

7)重启cellsrv服务
# dcli -g cell_group -l root cellcli -e ALTER CELL STARTUP SERVICES CELLSRV

8)重建flash cache
# dcli -g cell_group -l root cellcli -e CREATE FLASHCACHE ALL

9)重启动集群
# cd $Grid_home/bin
# ./crsctl start cluster -all

6.禁用Write Back 闪存模式
您可以通过启用 Write-Through Flash Cache 来禁用 Write-Back Flash Cache。

从 Oracle Exadata 系统软件版本 11.2.3.2.1 开始,Exadata 智能闪存缓存可以透明地将频繁访问的数据缓存到快速固态存储中,从而提高查询响应时间和吞吐量。

由闪存而不是磁盘服务的写操作称为write back flash Cache。

1)禁用 Exadata X8M 或更高版本服务器的回写闪存缓存
要在具有 PMEM 缓存的 Exadata 数据库云服务器 X8M 或更高版本的系统上将 FlashCache 模式从 WriteBack 更改为 WriteThrough,
如果 PMEM 缓存处于 WriteBack 模式,您首先需要修改 PMEM 缓存。

注意:为减少对应用程序的性能影响,请在工作量减少期间禁用回写闪存缓存。

对于具有 PMEM 缓存的 X8M 或更高版本的系统,如果 PMEM 缓存处于 WriteBack 模式:
a.刷新PMEM cache
# dcli –l root –g cell_group cellcli ALTER PMEMCACHE ALL FLUSH
否则,使用 CELLDISK="cdisk1 [,cdisk2] ..." 子句列出特定磁盘。
b.删除PMEM cache
# dcli –l root –g cell_group cellcli DROP PMEMCACHE
c.修改 PMEM cache to use WriteThrough
# dcli –l root –g cell_group cellcli ALTER CELL pmemCacheMode=WriteThrough
d. PMEM cache
如果 PMEM 缓存利用所有可用的 PMEM 单元磁盘,则可以使用 ALL 关键字,如此处所示。 否则,使用 CELLDISK="cdisk1 [,cdisk2] ..."
子句列出特定磁盘。 如果未指定 size 属性,则分配最大大小。 列表中每个单元磁盘上的所有可用空间都用于 PMEM 缓存。
# dcli –l root –g cell_group cellcli -e CREATE PMEMCACHE ALL

e:检查 pmemCacheMode has been set to writethrough
# dcli –l root –g cell_group cellcli -e list cell detail | grep pmemCacheMode

2)在修改 FlashCache 之前验证所有物理磁盘都处于 NORMAL 状态。
# dcli –l root –g cell_group cellcli –e “LIST PHYSICALDISK ATTRIBUTES name,status”
|grep –v NORMAL

正常应该无行返回
3)检查脏数据
# cellcli -e "LIST METRICCURRENT ATTRIBUTES name,metricvalue WHERE
name LIKE \'FC_BY_DIRTY.*\' "

4)刷新Flash cache.
如果闪存缓存利用所有可用的闪存单元磁盘,则可以使用 ALL 关键字而不是列出闪存磁盘
# dcli –g cell_group –l root cellcli -e "ALTER FLASHCACHE CELLDISK=\'FD_02_dm01celadm12,
FD_03_dm01celadm12,FD_00_dm01celadm12,FD_01_dm01celadm12\' FLUSH"

5)检查刷新的进度
当FC_BY_DIRTY is 0 MB 说明刷新完成
# dcli -g cell_group -l root cellcli -e "LIST METRICCURRENT ATTRIBUTES name,metricvalue
WHERE name LIKE \'FC_BY_DIRTY.*\' "

或者检查flushstatus 是否为完成
# dcli -g cell_group -l root cellcli -e "LIST CELLDISK ATTRIBUTES name, flushstatus,
flusherror" | grep FD

6)刷新完成后,删除flash cache
# dcli -g cell_group -l root cellcli -e drop flashcache

7)修改Flash cache to use WriteThrough mode
# dcli -g cell_group -l root cellcli -e "ALTER CELL flashCacheMode=writethrough"

8)重建 Flash cache
如果 Flash 缓存利用所有可用的 Flash 单元磁盘,则可以使用 ALL 关键字而不是列出单元磁盘。

如果不包括 size 属性,则列表中每个单元磁盘上的所有可用空间都将用于 Exadata 智能闪存缓存。

# dcli –l root –g cell_group cellcli -e "create flashcache celldisk=\'FD_02_dm01celadm12,
FD_03_dm01celadm12,FD_00_dm01celadm12,FD_01_dm01celadm12\'

9)检查flashCacheMode has been set to writethrough
# dcli –l root –g cell_group cellcli -e list cell detail | grep flashCacheMode




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

运维联盟俱乐部 ( 冀ICP备19036648号 )

GMT+8, 2024-5-11 22:31 , Processed in 0.052566 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表