PowerFlex enable_background_device_scanner, API и изменения журналов

Summary: В этой статье описываются изменения в командах scli и REST API для включения фонового сканера в VxFlexOS после появления функции «консервативного» режима в версии 3.0.0.2 HF1. Это позволяет нам лучше контролировать возможности отчетности и определять, какие режимы клиент хочет активировать. Во всех предыдущих версиях (до версии 3.0.1 включительно) фоновый сканер имел две опции: режим device_only и режим comparison_mode (который также включал в себя весь функционал device_only режима). ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

Начиная с ScaleIO v2.5 режим сравнения HF1 включает в себя новую опцию, позволяющую пропустить исправление ошибок сравнения и сообщить об этом в файле /opt/emc/scaleio/logs/comparison.0. Это также отключало функции восстановления, восстановления чтения и создания отчетов в режиме device_only, который был частью режима сравнения в обычном состоянии. 

Наряду с изменениями scli и API, в узлы SDS были добавлены некоторые дополнительные журналы, когда включен режим сравнения фонового сканера с версией 3.0.0.2 HF.

 

Изменения в журнале изменений: /opt/emc/scaleio/sds/logs/comparison.x

 19/11 10:50:12.446570 Scanning combs for device be4c66a400000001, loop #1945 ended, #scanned combs=137, #sec combs (skipped)=69, #primary combs skipped=0, #scanned teeth=19418

Шаги по уменьшению количества файлов comparisons.x по умолчанию с 10 до меньшего числа:

 echo "tgt_comparison_file_history =2" >> /opt/emc/scaleio/sds/cfg/conf.txt ; pkill sds

Выполните это действие на всех SDS, где файлы следует уменьшить. Новые выходные файлы журнала CRC32 (содержат хэш-вывод для 1 Мбайт пользовательских данных из PRI или SEC) для проверки между основным и вторичным серверами:

 /opt/emc/scaleio/sds/logs/{randomID}_compare_combID_offset_[pri/sec].log

ПРИМЕР:

 /opt/emc/scaleio/sds/logs/1259357004_compare_71f2800001b5_18432_pri.log
Trace entry correlating in comparison.x:
13/11 14:03:54.470982 vtreeId a227e28500000000 Comb 71f2800001b5, offset 18432 - compare error - succeeded to fix the secondary by the primary, randId 1259357004.

Соответствующие журналы sds/logs/trc.x:

trc.5:13/11 14:03:54.459658 0x7f598e35ddb8:mgStorageRegion_VerifyDataCRC:02769: primary and secondary checksums are different (pri=1025730551, sec=3956700141). will dump the error. randId 1259357004. combId:71f2800001b5,vTree:0xa227e28500000000,offsetVol:0x12da000,offsetInComb:18432,sizeInLbs:2048,phyToothIdx:2608,srcToothIdx:inv,dstToothIdx:inv New:(0,0) Requested:(3,1) volId:0
trc.5:13/11 14:03:54.470972 0x7f598e35ddb8:raidScan_FixSecondaryByPrimary:00295: comb:71f2800001b5,vTree:0xa227e28500000000,offsetVol:0x12da000,offsetTooth:0x0, Comb 71f2800001b5, offset 18432 - fix the secondary by the primary, randId 1259357004, rc = SUCCESS
trc.5:13/11 14:03:54.470988 0x7f598e35ddb8:raidScan_HandleComparisonError:01006: compare error - succeeded to fix the secondary by the primary. randId 1259357004. combId:71f2800001b5,vTree:0xa227e28500000000,offsetVol:0x12da000,offsetInComb:18432,sizeInLbs:2048,phyToothIdx:2608,srcToothIdx:inv,dstToothIdx:inv New:(0,0) Requested:(3,1) volId:0
trc.5:13/11 14:03:54.472246 0x7f598e35ddb8:raidScan_HandleComparisonError:01046: Sent a message to the MDM on compare error (randId 1259357004). combId:71f2800001b5,vTree:0xa227e28500000000,offsetVol:0x12da000,offsetInComb:18432,sizeInLbs:2048,phyToothIdx:2608,srcToothIdx:inv,dstToothIdx:inv New:(0,0) Requested:(3,1) volId:0

Проверка двух выходных файлов:

 -rw-rw-rw-. 1 root root     4096 Nov 13 14:03 1259357004_compare_71f2800001b5_18432_pri.log
-rw-r--r--. 1 root root     4096 Nov 19 11:10 1259357004_compare_71f2800001b5_18432_sec.log

diff 1259357004_compare_71f2800001b5_18432_pri.log 1259357004_compare_71f2800001b5_18432_sec.log
Binary files 1259357004_compare_71f2800001b5_18432_pri.log and 1259357004_compare_71f2800001b5_18432_sec.log differ


[root@localhost logs]# md5sum 1259357004_compare_71f2800001b5_18432_pri.log
d11924aadfe72dd1117f260f8b092caf  1259357004_compare_71f2800001b5_18432_pri.log
[root@localhost logs]# md5sum 1259357004_compare_71f2800001b5_18432_sec.log
620f0b67a91f7f74151bc5be745b7110  1259357004_compare_71f2800001b5_18432_sec.log

Старая команда

 scli --enable_background_device_scanner
Error: Either a valid Storage Pool ID or name must be specified

Usage: scli --enable_background_device_scanner (((--protection_domain_id  | --protection_domain_name ) --storage_pool_name ) | --storage_pool_id ) --scanner_mode  [--scanner_bandwidth_limit ] [--report_and_fix | --report_only]
Description: Enable background device scanner
Parameters:
    --protection_domain_id          Protection Domain ID
    --protection_domain_name      Protection Domain name
    --storage_pool_name           Storage Pool name
    --storage_pool_id               Storage Pool ID
    --scanner_mode                Scanner mode of operation where MODE can be one of the following:
                                        device_only - Perform read operations. Fix from peer on errors
                                        data_comparison - Perform the device_only test and compare the data content with peer. Not supported for fine granularity Storage Pools
    --scanner_bandwidth_limit           Bandwidth limit in KB per second per device. The given value should be between 10KB and 10MB. The default value is 3MB
    --report_and_fix                    Report errors and automatically fix them (default)
    --report_only                       Report errors without fixing them

Режим сканера

Действие

Результат

device_only

report_and_fix

Обнаруживаются, сообщаются и исправляются только ошибки чтения.

report_only

Обнаруживаются и сообщаются только ошибки чтения (не исправляются)

Не указано

То же, что report_and_fix (вариант 1)

data_comparison

report_and_fix

Обнаружены и исправлены ошибки как чтения, так и сравнения.

report_only

Обнаруживаются ошибки чтения и сравнения, о которых сообщается (не исправлено)

Не указано

То же, что report_and_fix (вариант 3)

 

Новая команда

 
 Usage: scli --enable_background_device_scanner (((--protection_domain_id  | --protection_domain_name ) --storage_pool_name ) | --storage_pool_id ) --read_error_action  --compare_error_action  [--scanner_bandwidth_limit ]
Description: Enable background device scanner
Parameters:
    --protection_domain_id          Protection Domain ID
    --protection_domain_name      Protection Domain name
    --storage_pool_name           Storage Pool name
    --storage_pool_id               Storage Pool ID
    --read_error_action         Read error handling. Can be one of the following:
                                        report_and_fix - Perform read operations and automatically fix from peer on errors
                                        report_only    - Perform read operations and report errors without fixing them
    --compare_error_action      Compare error handling. Can be one of the following:
                                        no_compare     - Perform read operations without comparing data content with peer
                                        report_and_fix - Perform read operations, compare data content with peer, and automatically fix
                                                         Not supported for fine granularity Storage Pools
                                        report_only    - Perform read operations, compare data content with peer, and report mismatches without fixing them
                                                         Not supported for fine granularity Storage Pools
    --scanner_bandwidth_limit           Bandwidth limit in KB per second per device. The given value should be between 10KB and 10MB. The default value is 3MB

Режим ошибки чтения

Сравните режим ошибки.

Результат

Отображение

 

no_scan

no_scan

Недопустимая комбинация - для этого есть команда disable.

Недопустимо 1

scannerMode = NULL (не поддерживается)

report_only

Недопустимая комбинация - невозможно сравнить без чтения.

Недопустимо 2

 

report_and_fix

Недопустимая комбинация - невозможно сравнить без чтения.

Недопустимо 3

 

report_only

no_scan

Обнаруживаются и сообщаются только ошибки чтения (не исправляются)

2.

scannerMode = device_only

compareErrorAction = NULL

readErrorAction = report_only

 

report_only

Обнаруживаются ошибки чтения и сравнения, о которых сообщается (не исправлено)

4

scannerMode = data_comparison

compareErrorAction = report_only

readErrorAction = report_only

 

report_and_fix

Обнаруживаются и сообщаются ошибки как чтения, так и сравнения, но исправляются только ошибки сравнения.

Новый 1

scannerMode = data_comparison

compareErrorAction = report_and_fix

readErrorAction = report_only

 

report_and_fix

no_scan

Обнаруживаются, сообщаются и исправляются только ошибки чтения.

1.

scannerMode = device_only

compareErrorAction = NULL

readErrorAction = report_and_fix

 

report_only

Обнаруживаются и сообщаются ошибки как чтения, так и сравнения, но исправляются только ошибки чтения.

Новый 2

scannerMode = data_comparison

compareErrorAction = report_only

readErrorAction = report_and_fix

 

report_and_fix

Ошибки чтения и сравнения обнаруживаются, сообщаются и исправляются.

3.

scannerMode = data_comparison

compareErrorAction = report_and_fix

readErrorAction = report_and_fix

 

Affected Products

PowerFlex rack, ScaleIO
Article Properties
Article Number: 000275658
Article Type: How To
Last Modified: 22 Jan 2025
Version:  1
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.