構成ファイル

構成ファイルは、Notifier および再生で使用されます。

構成ファイルには、以下が含まれます。

  • ネットに関する情報
  • ノーティファイヤーおよび再生のランタイム・パラメーター
  • スキャンの対象となるボールトのリスト

構成ファイルは scanner-settings.json という名前で、 /opt/ibm/metaocean/data/connections/cos/replay ディレクトリーに配置する必要があります。

のルールは以下の通りです。 IBM Cloud® Object Storage リプレイの設定は

  • すべてのアクセス・ログがスキャンされます。
  • 2018 年 4 月 11 日から 2018 年 9 月 21 日の協定世界時 (UTC) 00:00:01 から協定世界時 (UTC) 10:01:53 までに作成または更新されたすべてのオブジェクトは、1000 個のバッチでスキャンされます。
  • カスタム・メタデータは、オブジェクトまたはバージョンごとに取得されます。
  • 10 個のボールトが並行して処理されます。
  • 各ボールトには、要求を発行する単一のプロセス LIST と、HEAD 要求を発行する 15 個のプロセスがあります。

以下の例は、すべての設定を示しています。 ほとんどの設定にはデフォルト値があり、省略できますが、これらの画面には、デフォルト値を使用した標準的な例が示されています。

Cloud Object Storage の再生設定の例
{
     "system": {
     "name": "Test dsnet",
     "uuid": "00000000-0000-0000-0000-000000000000",
     "manager_ip": "172.1.1.1",
     "accesser_ip": "172.1.1.2",
     "accesser_supports_https": false,
     "manager_username": "admin",
     "manager_password": "password",
     "is_ibm_cos": true
},
   "timestamps": {
     "min_utc": "2018-01-01T00:00:00Z",
     "max_utc": "2018-09-21T10:01:53Z"
},
   “policy_engine” : {
     “spectrum_discover_host”: ”modevvm32.tuc.stglabs.ibm.com”
     “user”: “sdadmin”,
     “password”: “password”
},
   "scanner": {
     "max_requests_per_second": 5000,
     "max_parallel_list": 10,
     "parallel_head_per_list": 5,
     "list_objects_size": 100
},   
"notifier":{
     "kafka_format": 1,
     "kafka_endpoint": "192.168.1.1:9092",
     "kafka_topic": "cos-le-connector-topic",
     "kafka_username": "cos",
     "kafka_password": "password",
     "kafka_pem": "-----BEGIN CERTIFICATE-----...\n-----END CERTIFICATE-----\n"
},   
   "logging": {
     "debug_log_max_bytes": 10000000,
     "debug_log_backup_count": 10000,
     "notification_log_max_bytes": 10000000,
     "notification_log_backup_count": 10000,
     "notification_log_all": true
},   
   "include_all_vaults": false,
   "has_custom_metadata": true,
   "override_warnings": true,
   "exclude-vaults": ["Manager"],
   "vaults": [
     {   
       "vault_name": "Vault-1"
     },
     {   
       "vault_name": "Vault-2",
       "has_custom_metadata": false
     },     
     {
       "vault_name": "Vault-3",
       "has_custom_metadata": false,
       "prefix": "customers/live"
     }
  ]
}
標準的な Cloud Object Storage 構成設定

{
     "dsnet": {
     "name": "Test dsnet",
     "uuid": "00000000-0000-0000-0000-000000000000",
     "manager_ip": "172.1.1.1",
     "accesser_ip": "172.1.1.2",
     "accesser_supports_https": false,
     "manager_username": "admin",
     "manager_password": "password",
     "is_ibm_cos": true
},
   "timestamps": {
     "min_utc": "2018-01-01T00:00:00Z",
     "max_utc": "2018-09-21T10:01:53Z"
},
   “policy_engine” : {
     “spectrum_discover_host”: ”modevvm32.tuc.stglabs.ibm.com”
     “user”: “sdadmin”,
     “password”: “password”
},
   "scanner": {
     "max_requests_per_second": 5000,
     "max_parallel_list": 10,
     "parallel_head_per_list": 5,
     "list_objects_size": 100
},   
   "notifier":{
     "kafka_format": 1,
     "kafka_endpoint": "192.168.1.1:9092",
     "kafka_topic": "cos-le-connector-topic",
     "kafka_username": "cos",
     "kafka_password": "password",
     "kafka_pem": "-----BEGIN CERTIFICATE-----...\n-----END CERTIFICATE-----\n"
},   
   "logging": {
     "debug_log_max_bytes": 10000000,
     "debug_log_backup_count": 10000,
     "notification_log_max_bytes": 10000000,
     "notification_log_backup_count": 10000,
     "notification_log_all": true
},   
   "include_all_vaults": false,
   "has_custom_metadata": true,
   "override_warnings": true,
   "exclude-vaults": ["Manager"],
   "vaults": [
     {   
       "vault_name": "Vault-1"
     },
     {   
       "vault_name": "Vault-2",
       "has_custom_metadata": false
     },     
     {
       "vault_name": "Vault-3",
       "has_custom_metadata": false,
       "prefix": "customers/live"
     }
  ]
}

{
     "dsnet": { 
     "manager_ip": "192.168.2.106",
     "accesser_ip": "192.168.2.111"
},
     "timestamps": {
     "min_utc": "2018-04-11T00:00:01.000Z",
     "max_utc": "2018-09-21T10:01:53Z"
},   
     "scanner":{
        "max_requests_per_second": 5000
},
     "include_all_vaults": true
}
{
     "system": { 
     "manager_ip": "192.168.2.106",
     "accesser_ip": "192.168.2.111"
},
    “policy_engine” : {
     “spectrum_discover_host”: ”modevvm32.tuc.stglabs.ibm.com”
},
     "timestamps": {
     "min_utc": "2018-04-11T00:00:01.000Z",
     "max_utc": "2018-09-21T10:01:53Z"
},   
     "scanner":{
        "max_requests_per_second": 5000
},
     "include_all_vaults": true
}
IBM Cloud Object Storage スキャナーは高度に設定可能。 ファイル内の各エレメントについては、 表 1で説明しています。
注意: IBM Data Cataloging は、 UTF-8 文字セットに含まれない文字を使用するファイルまたはファイル パス名をサポートしません。
表 1. 構成ファイルの説明
エレメント 説明 任意指定 デフォルト値 変更された場合はスキャナーを再始動 変更された場合は通知機能を再始動
システム・セクション          
name dsNetのフリー・テキスト名。 以下に表示'system_name'すべての Kafka メッセージ内のエレメント。 マネージャー API から取得されます (構成されている場合)。 そうでない場合、名前は Kafka メッセージに表示されません。
uuid dsNetの UUID。 以下に表示'system_uuid'すべての Kafka メッセージ内のエレメント。 Manager API から取得されました。
manager_ip マネージャー・デバイスの単一 IP アドレスまたはホスト名。 適用外
accesser_ip アクセサーにルーティングするアクセサー・デバイスまたはロード・バランサーの単一の IP アドレスまたはホスト名。 適用外
accesser_supports_https アクセサーまたはロード・バランサーに要求を送信するときに http または https を使用できるかどうかを示すブール値。 はい
manager_username マネージャー API にアクセスするためのユーザー名。

テスト専用。 実動では使用しません。

プロンプトでユーザーが指定
manager_password マネージャー API にアクセスするためのパスワード。

テスト専用。 実動では使用しません。

プロンプトでユーザーが指定
is_ibm_cos ブール値。 IBM Cloud Object Storage または s3 準拠システムであるかを示すブール値。 true の場合、 IBM® Get Bucket Extension を使用してデータ保管庫からオブジェクト・キーを取得します。
注: 値を false に設定することは、現在 Scanner および Notifier ではサポートされていません。
はい
accesser_access_key アクセス・バランサーまたはロード・バランサーに対する S3 呼び出しのアクセス・キー ID。

テスト専用。 実動では使用しません。

dsNet/manager_ usernameで指定されたユーザー・アカウントのマネージャー API から取得できない場合に、プロンプトでユーザーによって提供されます。
accesser_secret_key アクセサーまたはロード・バランサーに対する S3 呼び出しの秘密鍵。

テスト専用。 実動では使用しません。

マネージャー API から取得できない場合にユーザーがプロンプトで指定します。
「タイム・スタンプ」セクション          
min_utc IBM Data Cataloging に提出されるのは、 LastModified の日付がこのタイムスタンプ以降である保管庫内のオブジェクトまたはバージョンのみである。

max_utc 値より小さくする必要があります。

注: min_utc の変更およびスキャナーの再始動は、まだスキャンされていないオブジェクトにのみ適用されます。 再始動前にスキャンされたオブジェクトは、 min_utc 値より前の LastModifiedDate 値を持つことがあります。
 

注を参照してください。

max_utc IBM Data Cataloging に提出されるのは、 LastModified の日付がこのタイムスタンプ以前である保管庫内のオブジェクトまたはバージョンのみである。 最小 UTC より大きく、現在時刻より小さくする必要があります。
注: max_utc をより新しい時刻に変更して再始動しても、古い max_utc がスキャンされてから新しいオブジェクトが書き込まれることを意味するものではありません。 スキャナーは、辞書式順序でスキャンされた最後のオブジェクトのキーから続行されます。 これは、最後にスキャンされたオブジェクトより小さい名前を持つ新規オブジェクトはスキャンされないことを意味します。
 

注を参照してください。

「ポリシー・エンジン」セクション  

( IBM Data Cataloging 2.0.0.3 以降のみ必要)

     
spectrum_discover_host Kafka 証明書の取得元のポリシー・エンジン・サービスのホスト名または IP アドレス。 なし
user ポリシー・エンジンでの許可のユーザー名。 なし
password ポリシー・エンジンでの許可のパスワード。 なし
「再生」セクション          
access_log_directory このaccess_log_directoryダウンロード後に dsNet アクセス・ログ・ファイルが保管される場所です。 アクセス・ログは、ルート入力フォルダー内になければなりません。 サブディレクトリー内のファイルは処理されません。 [ IBM Cloud Object Storage リプレイ ]/アクセスログ 変更された場合に再生を再開 変更された場合に再生を再開
download download が false に設定されている場合、アクセス・ログはダウンロードされず、access_log_directory に既に存在すると想定されます。 はい 変更された場合に再生を再開 変更された場合に再生を再開
通知機能セクション        
kafka_format Kafka メッセージのフォーマット。 1
kafka_endpoint Kafka エンドポイントの IP アドレスおよびポート。 Manager API から取得
kafka_topic Kafka トピックの名前。 Manager API から取得
kafka_username Kafkaでの認証のためのユーザー名。
注: テストの場合のみ。 実動では使用しません。
マネージャー API から取得できない場合にユーザーがプロンプトで指定します。
kafka_password Kafkaで認証するためのパスワード。
注: テストの場合のみ。 実動では使用しません。
Manager API から取得できない場合にユーザーがプロンプトで指定します。
kafka_pem Kafkaによる認証用の証明書 PEM。 正しいフォーマットにするには、「¥ n」文字を含める必要があります。
注: テストの場合のみ。 実動では使用しません。
システムから取得できない場合にユーザーがプロンプトで指定する
「ロギング」セクション        
debug_log_max_bytes scanner.debug および notifier.debug は、このサイズに達するとロールオーバーします。 1,000,000
debug_log_backup_count 保持する scanner.debug ファイルおよび notifier.debug ファイルの数。 10
notification_log_max_b このサイズに達すると、 notification.log はロールオーバーします。 1,000,000
notification_log_backup_count 保持する notification.log ファイルの数。 10
notification_log_all Notifier ロギングのレベルを制御するブール値。

true の場合、 Kafka クラスターに送信するメッセージのエントリーが notification.log に書き込まれます。

false の場合、失敗した送信のみが notification.logに書き込まれます。

いいえ
ルート・レベル項目          
include_all_vaults dsNet 内のすべてのボールトをスキャンするかどうかを決定するブール値。 false の場合は、スキャン対象のボールトの詳細を「ボールト」エレメントに指定する必要があります。

個々の HEAD 要求を使用してオブジェクトごとにカスタム・メタデータとコンテンツ・タイプを取得するかどうかを決定するブール値。

いいえ
has_custom_metadata この値は、バージョン管理されたボールトがスキャンされる場合にのみ関係します。 システムの場合 IBM Cloud Object Storage システムでは、バージョン管理されていないデータ保管庫は、常にすべてのオブジェクトに対して HEAD リクエストを要求する。 「ボールト」エレメント内のボールトごとにオーバーライドすることができます。 はい
override_warnings スキャナーの実行を許可し、始動時に生成されるすべての警告を無視するブール値。 例えば、ボールトでバージョン管理が中断されると、始動時に警告が出されます。 いいえ
exclude_vaults スキャン対象から除外するボールト名のコンマ区切りリスト。以下に例を示します。
"exclude-vaults": ["COSVault", "COSVault-V"]
[]

空のリスト

vaults スキャン対象となるボールトのリスト。 指定する場合は、include_all_vaultsTrue の場合、ボールト・リストを空のままにすることができます。

このリストを使用して、個々のボールトの詳細なスキャン・パラメーターを定義できます。 ここで定義された設定は、説明されている設定よりも優先されます。

リスト内の各エレメントには、以下が含まれます。

このvault_nameボールトの名前です。

このhas_custom_metadata指定変更するオプションのブール値です。has_custom_metadata説明されています。

このprefixボールトから取得されるオブジェクトまたはバージョンをフィルタリングするために使用されるオプションのストリングです。

設定 include_all_vaults および exclude_vaults に依存します。