現在、Apigee と Apigee ハイブリッドのドキュメントが表示されています。
このトピックに対応する Apigee Edge のドキュメントはありません。
症状
Apigee ハイブリッドでのマルチリージョン Cassandra 認証情報のローテーション中に、最初のリージョンがローテーションされた後、後続のリージョンのローテーションが失敗し、シークレット ローテーション Pod のログにエラーが記録されます。
エラー メッセージ
ログに次のように表示されます。
failed to run secret rotation: failed to create new users: failed to create new users
既知の問題 397693324 の回避策
診断
SecretRotation
リソースは、Status
フィールドでエラーが発生したことを示します。
Status: Message: initiated automated rollback State: error
シークレット ローテーション ジョブの Pod ログに次のエラーが含まれています。
failed to run secret rotation: failed to create new users: failed to create new users
create-new-users-job
Pod のログに次のエラーが記録されます。
Error creating clients with updated password: gocql: unable to create session: unable to discover protocol version: Provided username cassandra and/or password are incorrect
解決策
次の手順を行います。
-
最初のリージョンを除くすべてのリージョンで、デフォルトの Cassandra ユーザー(
cassandra
)のパスワードを、古いSecret
の新しいローテーション値に更新します。apiVersion: v1 kind: Secret metadata: name: OLD_SECRET_NAME # oldSecretRef namespace: APIGEE_NAMESPACE type: Opaque data: default.password: NEW_DEFAULT_PASSWORD #base64-encoded string admin.user: OLD_ADMIN_USERNAME #base64-encoded string admin.password: OLD_ADMIN_PASSWORD #base64-encoded string dml.user: OLD_DML_USERNAME #base64-encoded string dml.password: OLD_DML_PASSWORD #base64-encoded string ddl.user: OLD_DDL_USERNAME #base64-encoded string ddl.password: OLD_DDL_PASSWORD #base64-encoded string jmx.user: OLD_JMX_USERNAME #base64-encoded string jmx.password: OLD_JMX_PASSWORD #base64-encoded string jolokia.user: OLD_JOLOKIA_USERNAME #base64-encoded string jolokia.password: OLD_JOLOKIA_PASSWORD #base64-encoded string
-
更新された
Secret
を適用します。kubectl apply -f OLD_SECRET_FILE
-
通常のローテーション プロセスを続行すると、成功します。
診断情報の収集が必要な場合
上記の手順でも問題が解決しない場合は、次の診断情報を収集して Google Cloud カスタマーケアに連絡してください。
-
提出を求められる可能性のある通常のデータに加えて、すべてのシークレット ローテーション Pod からログを収集します。