Memecahkan masalah rotasi kredensial Cassandra

Anda sedang melihat dokumentasi Apigee dan Apigee hybrid.
Tidak ada dokumentasi Apigee Edge yang setara untuk topik ini.

Gejala

Selama rotasi kredensial Cassandra multi-region di Apigee hybrid, setelah region pertama dirotasi, rotasi di region berikutnya akan gagal dan error akan dicatat dalam log pod rotasi secret.

Pesan error

Anda akan melihat hal berikut di log:

failed to run secret rotation: failed to create new users: failed to create new users

Solusi untuk Masalah Umum 397693324

Diagnosis

Resource SecretRotation menunjukkan kegagalan di kolom Status:

Status:
  Message:  initiated automated rollback
  State:    error

Log pod tugas rotasi secret berisi error berikut:

failed to run secret rotation: failed to create new users: failed to create new users

Log pod create-new-users-job berisi error berikut:

Error creating clients with updated password: gocql: unable to create session: unable to discover protocol version: Provided username cassandra and/or password are incorrect

Resolusi

Lakukan langkah-langkah berikut:

  1. Di setiap region kecuali yang pertama, perbarui sandi pengguna Cassandra default (cassandra) ke nilai yang dirotasi baru di Secret lama.

    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
          
  2. Terapkan Secret yang telah diperbarui:

    kubectl apply -f OLD_SECRET_FILE
  3. Lanjutkan dengan proses rotasi normal dan proses tersebut akan berhasil.

Harus mengumpulkan informasi diagnostik

Jika masalah berlanjut meskipun setelah mengikuti petunjuk di atas, kumpulkan informasi diagnostik berikut, lalu hubungi Layanan Pelanggan Google Cloud:

  • Selain data biasa yang mungkin diminta untuk Anda berikan, kumpulkan log dari semua pod rotasi secret.