6.6. 高度なカスタム File Integrity Operator タスクの実行


6.6.1. データベースの再初期化

File Integrity Operator が予定される変更を検知する場合、データベースの再初期化が必要になることがあります。

手順

  • FileIntegrity カスタムリソース (CR) に file-integrity.openshift.io/re-init のアノテーションを付けます。

    $ oc annotate fileintegrities/worker-fileintegrity file-integrity.openshift.io/re-init=

    古いデータベースとログファイルがバックアップされ、新しいデータベースが初期化されます。oc debug を使用して起動する Pod の以下の出力に示されるように、古いデータベースおよびログは /etc/kubernetes の下にあるノードに保持されます。

    出力例

     ls -lR /host/etc/kubernetes/aide.*
    -rw-------. 1 root root 1839782 Sep 17 15:08 /host/etc/kubernetes/aide.db.gz
    -rw-------. 1 root root 1839783 Sep 17 14:30 /host/etc/kubernetes/aide.db.gz.backup-20200917T15_07_38
    -rw-------. 1 root root   73728 Sep 17 15:07 /host/etc/kubernetes/aide.db.gz.backup-20200917T15_07_55
    -rw-r--r--. 1 root root       0 Sep 17 15:08 /host/etc/kubernetes/aide.log
    -rw-------. 1 root root     613 Sep 17 15:07 /host/etc/kubernetes/aide.log.backup-20200917T15_07_38
    -rw-r--r--. 1 root root       0 Sep 17 15:07 /host/etc/kubernetes/aide.log.backup-20200917T15_07_55

    レコードの永続性を確保するために、生成される設定マップは FileIntegrity オブジェクトによって所有されません。そのため、手動のクリーンアップが必要になります。結果として、以前の整合性の失敗が依然として FileIntegrityNodeStatus オブジェクトに表示されます。

6.6.2. マシン設定の統合

OpenShift Container Platform 4 では、クラスターノード設定は MachineConfig オブジェクトで提供されます。MachineConfig オブジェクトによって生じるファイルへの変更が予想されますが、ファイルの整合性スキャンは失敗しないことを前提にすることができます。MachineConfig オブジェクトの更新によって生じるファイルの変更を抑制するために、File Integrity Operator はノードオブジェクトを監視します。ノードが更新されると、AIDE スキャンは更新の期間一時停止します。更新が完了すると、データベースが再初期化され、スキャンが再開されます。

この一時停止および再開ロジックは、ノードオブジェクトのアノテーションに反映されるため、MachineConfig API での更新にのみ適用されます。

6.6.3. デーモンセットの参照

それぞれの FileIntegrity オブジェクトはノード数についてのスキャンを表します。スキャン自体は、デーモンセットによって管理される Pod で実行されます。

FileIntegrity オブジェクトを表すデーモンセットを見つけるには、以下を実行します。

$ oc -n openshift-file-integrity get ds/aide-worker-fileintegrity

そのデーモンセットの Pod をリスト表示するには、以下を実行します。

$ oc -n openshift-file-integrity get pods -lapp=aide-worker-fileintegrity

単一の AIDE Pod のログを表示するには、Pod のいずれかで oc logs を呼び出します。

$ oc -n openshift-file-integrity logs pod/aide-worker-fileintegrity-mr8x6

出力例

Starting the AIDE runner daemon
initializing AIDE db
initialization finished
running aide check
...

AIDE デーモンによって作成された設定マップは保持されず、File Integrity Operator がこれらを処理した後に削除されます。ただし、障害およびエラーの発生時に、これらの設定マップの内容は FileIntegrityNodeStatus オブジェクトが参照する設定マップにコピーされます。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.