您正在查看 Apigee 和 Apigee Hybrid 文档。
此主题没有等效的 Apigee Edge 文档。
症状
在 Apigee Hybrid 中的多区域 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
Secret 轮替作业 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 Customer Care 联系:
-
除了系统可能会要求您提供的常规数据之外,请从所有 Secret 轮替 pod 收集日志。