インストール中Prisma CloudDefender で古いバージョンがロードされ、「ローカルでイメージ 'twistlock/private:defender_xx_xx_xxx' が見つかりません」というエラー メッセージが表示される
9121
Created On 05/19/22 03:35 AM - Last Modified 03/02/23 01:56 AM
Symptom
- スクリプトを使用して Defender をインストールしているときに、古いイメージ バージョンの Defender をプルしようとしていることが出力に示されます。
Loaded image: twistlock/private:defender_21_xx_xxx Unable to find image 'twistlock/private:defender_20_0x_xxx' locally Failed to create Twistlock data container Failed to run twistlock.sh
- 次のようなエラー メッセージが表示される場合があります。
- 上記のエラーのいずれかに一致する場合は、次のコマンドを使用して K8s クラスターから ConfigMap を確認してください。
1$ kubectl -n twistlock get configmap twistlock-console -o yaml
- コマンド「grep」を使用して DOCKER_TWISTLOCK_TAG を確認すると、古い Defender バージョンも表示されます。
Environment
- Prisma Cloud Compute Edition
Cause
このエラーの最も一般的な理由は次のとおりです。
- コンソールのアップグレード中に適用された構成マニフェストが破損していました。 これにより、DOCKER_TWISTLOCK_TAG が古いバージョンのままになり、新しいバージョン ディフェンダーのインストール プロセスが中断されます。
- コンソールのアップグレード プロセス中にエラーが発生したため、データが破損しました。
Resolution
- 更新する
ツイストロックコンソール
構成マップ。 - 「twistlock.cfg:」フィールドは、
...DOCKER_TWISTLOCK_TAG=_20_xx_xxx\n"
に...DOCKER_TWISTLOCK_TAG=_21_xx_xxx\n"
正しいバージョンを含めます。 - 変更を適用するために、コンソール ポッドが再起動されていることを確認します。
- 最も簡単な方法は、完全なYAMLと
<PLATFORM >/twistcli console export kubernetes ...
コマンドから ConfigMap オブジェクトを取得し、「twistlock.cfg」フィールドの内容を更新して適用します。 - これを投稿すると、次のコマンドを使用してコンソールを再起動できます。
kubectl -n twistlock rollout restart deployment/twistlock-console
- 他のツールを利用して、k8s ワークロードを更新することもできます。
- ConfigMap が更新され、コンソールが再起動された後、インストールは成功するはずです。
Additional Information
- Container Defender インストールの公式ガイド:コンテナ ディフェンダーをインストールする