6.8. 高度なカスタム File Integrity Operator タスクの実行
6.8.1. データベースの再初期化 リンクのコピーリンクがクリップボードにコピーされました!
File Integrity Operator が予定される変更を検知する場合、データベースの再初期化が必要になることがあります。
手順
FileIntegrity
カスタムリソース (CR) にfile-integrity.openshift.io/re-init
のアノテーションを付けます。oc annotate fileintegrities/worker-fileintegrity file-integrity.openshift.io/re-init=
$ oc annotate fileintegrities/worker-fileintegrity file-integrity.openshift.io/re-init=
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 古いデータベースとログファイルがバックアップされ、新しいデータベースが初期化されます。
oc debug
を使用して起動する Pod の以下の出力に示されるように、古いデータベースおよびログは/etc/kubernetes
の下にあるノードに保持されます。出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow レコードの永続性を確保するために、生成される config map は
FileIntegrity
オブジェクトによって所有されません。そのため、手動のクリーンアップが必要になります。結果として、以前の整合性の失敗が依然としてFileIntegrityNodeStatus
オブジェクトに表示されます。
6.8.2. マシン設定の統合 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform 4 では、クラスターノード設定は MachineConfig
オブジェクトで提供されます。MachineConfig
オブジェクトによって生じるファイルへの変更が予想されますが、ファイルの整合性スキャンは失敗しないことを前提にすることができます。MachineConfig
オブジェクトの更新によって生じるファイルの変更を抑制するために、File Integrity Operator はノードオブジェクトを監視します。ノードが更新されると、AIDE スキャンは更新の期間一時停止します。更新が完了すると、データベースが再初期化され、スキャンが再開されます。
この一時停止および再開ロジックは、ノードオブジェクトのアノテーションに反映されるため、MachineConfig
API での更新にのみ適用されます。
6.8.3. デーモンセットの参照 リンクのコピーリンクがクリップボードにコピーされました!
それぞれの FileIntegrity
オブジェクトはノード数に関するスキャンを表します。スキャン自体は、デーモンセットによって管理される Pod で実行されます。
FileIntegrity
オブジェクトを表すデーモンセットを見つけるには、以下を実行します。
oc -n openshift-file-integrity get ds/aide-worker-fileintegrity
$ oc -n openshift-file-integrity get ds/aide-worker-fileintegrity
そのデーモンセットの Pod をリスト表示するには、以下を実行します。
oc -n openshift-file-integrity get pods -lapp=aide-worker-fileintegrity
$ 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
$ oc -n openshift-file-integrity logs pod/aide-worker-fileintegrity-mr8x6
出力例
Starting the AIDE runner daemon initializing AIDE db initialization finished running aide check ...
Starting the AIDE runner daemon
initializing AIDE db
initialization finished
running aide check
...
AIDE デーモンによって作成された config map は保持されず、File Integrity Operator がこれらを処理した後に削除されます。ただし、障害およびエラーの発生時に、これらの config map の内容は FileIntegrityNodeStatus
オブジェクトが参照する設定マップにコピーされます。