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