34.7. 復号化キーのローテーション
複数の API サーバーが実行されている高可用デプロイメントがある場合などに、ダウンタイムを発生させずにシークレットを変更するには、複数の手順からなる操作が必要になります。
- 新規キーを生成し、これをすべてのサーバーで同時プロバイダーの 2 つ目のキーエントリーとして追加します。
すべての API サーバーを再起動し、各サーバーが新規キーを使用して復号化できるようにします。
注記単一 API サーバーを使用している場合は、この手順を省略できます。
# master-restart api # master-restart controllers
-
新規キーを
keys
配列の最初のエントリーにし、これが設定で暗号化に使用されるようにします。 すべての API サーバーを再起動し、各サーバーが新規キーを使用して暗号化できるようにします。
# master-restart api # master-restart controllers
以下を実行し、新規キーですべての既存シークレットを暗号化します。
$ oc adm migrate storage --include=secrets --confirm
- 新規キーを使用して etcd をバックアップし、すべてのシークレットを更新した後に、古い復号化キーを設定から削除します。