Roll back Apigee Edge 4.52.02

Jika mengalami error selama update Edge 4.52.02, Anda dapat melakukan roll back komponen yang menyebabkan error, lalu mencoba update lagi.

Anda dapat melakukan roll back Edge 4.52.02 ke versi rilis utama berikut:

  • Versi 4.52.01
  • Versi 4.52.00
  • Versi 4.51.00

Melakukan roll back suatu versi melibatkan roll back setiap komponen yang mungkin telah Anda upgrade. Selain itu, berdasarkan versi tempat Anda memulai, mungkin Anda perlu mempertimbangkan pertimbangan khusus sebelum melakukan roll back komponen perangkat lunak tertentu. Tabel di bawah ini mencantumkan berbagai software yang mungkin memerlukan langkah-langkah khusus selama rollback:

Rollback ke versi Pertimbangan khusus untuk software
4.52.01 Cassandra
4.52.00 Cassandra, Zookeeper, Qpid
4.51.00 Cassandra, Zookeeper, Qpid, Postgres

Ada dua skenario yang mungkin perlu Anda lakukan untuk melakukan rollback:

  1. Melakukan roll back ke rilis besar atau kecil sebelumnya. Misalnya dari 4.52.02 hingga 4.52.00.
  2. Roll back ke rilis patch sebelumnya dalam rilis yang sama. Misalnya, dari 4.52.00.02 hingga 4.52.00.01.

Untuk informasi selengkapnya, lihat Proses rilis Apigee Edge.

Urutan rollback

Rollback komponen harus dilakukan dalam urutan terbalik ketika diupgrade, dengan pengecualian bahwa server pengelolaan harus di-roll back setelah Cassandra.

Urutan umum rollback untuk Private Cloud 4.52.02 akan terlihat seperti di bawah ini:

  1. Rollback Postgres, Qpid, dan komponen terkait analisis lainnya
  2. Rollback Router dan Pemroses Pesan
  3. Cassandra Rollback, Zookeeper
  4. Server Pengelolaan Rollback

Misalnya, katakanlah Anda telah mengupgrade seluruh cluster Cassandra, semua server pengelolaan Anda, dan beberapa RMP ke versi 4.52.02 dari versi 4.52.01 dan ingin melakukan rollback. Dalam hal ini, Anda akan:

  1. Rollback semua RMP satu per satu
  2. Rollback seluruh cluster Cassandra menggunakan cadangan
  3. Node server Pengelolaan Edge Rollback satu per satu

Siapa yang dapat melakukan rollback

Pengguna yang melakukan rollback harus sama dengan pengguna yang mengupdate Edge, atau pengguna yang berjalan sebagai root.

Secara default, komponen Edge dijalankan sebagai "apigee" pengguna. Dalam beberapa kasus, Anda mungkin menjalankan komponen Edge sebagai pengguna yang berbeda. Misalnya, jika Router harus mengakses port dengan hak istimewa, misalnya port di bawah 1.000, Anda harus menjalankan Router sebagai root atau sebagai pengguna yang memiliki akses ke port tersebut. Atau, Anda dapat menjalankan satu komponen sebagai satu pengguna, dan komponen lain sebagai pengguna lain.

Komponen dengan kode umum

Komponen Edge berikut menggunakan kode yang sama. Oleh karena itu, untuk me-roll back salah satu komponen ini pada node, Anda harus melakukan roll back semua komponen ini yang ada pada node tersebut.

  • edge-management-server (Server Pengelolaan)
  • edge-message-processor (Pemroses Pesan)
  • edge-router (Router)
  • edge-postgres-server (Server Postgres)
  • edge-qpid-server (Server Qpid)

Misalnya, jika memiliki Server Pengelolaan, Router, dan Pemroses Pesan yang terinstal di node, Anda harus me-roll back ketiganya untuk melakukan rollback salah satunya.

Rollback Cassandra

Ketika upgrade besar Cassandra dilakukan pada node Cassandra tertentu, Cassandra mengubah skema data yang disimpan di node, sehingga rollback langsung menjadi tidak memungkinkan. Ada dua metodologi untuk rollback. Anda akan menggunakan salah satu metodologi ini berdasarkan status upgrade yang Anda roll back.

Metodologi untuk melakukan rollback

Menghapus total dan menggunakan node yang ada di cluster untuk membangun ulang node

Prosedur ini dapat diikuti jika Anda memiliki setidaknya satu pusat data yang berfungsi penuh di cluster yang masih menggunakan versi lama Cassandra (Cassandra 2.1.22). Jika telah mengupgrade seluruh cluster Cassandra dan ingin melakukan rollback, Anda harus mengikuti langkah-langkah di Menghapus total dan memulihkan cadangan atau snapshot VM.

Langkah-langkah untuk rollback

  1. Mulai dengan node yang ingin Anda rollback:
    • Hentikan Cassandra di node:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    • Uninstal software Cassandra dari node:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
    • Hapus direktori data dari node:
      rm -rf /opt/apigee/data/apigee-cassandra
    • Download dan jalankan bootstrap versi lama Edge untuk Private Cloud yang ingin Anda jadikan tujuan rollback.

    Contoh: Untuk melakukan rollback ke versi 4.52.01,

    • Download bootstrap 4.52.01:
      curl https://software.apigee.com/bootstrap_4.52.01.sh -o /tmp/bootstrap_4.52.01.sh -u ‘uName:pWord’
    • Jalankan bootstrap 4.52.01:
      sudo bash /tmp/bootstrap_4.52.01.sh apigeeuser=uName apigeepassword=pWord

    • Siapkan Cassandra pada node:
      /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile
    • Jalankan pembangunan ulang pada node dengan memberikan nama pusat data fungsional:
      /opt/apigee/apigee-cassandra/bin/nodetool rebuild -h <node-IP> <functional-dc>
    • Ulangi langkah-langkah di atas pada setiap node yang ingin Anda rollback, satu per satu.
  2. Setelah semua node di-roll back dan dibuat ulang:
    • Jalankan penyiapan node server pengelolaan. Pastikan server pengelolaan berasal dari versi yang di-roll back. Jika tidak, lakukan rollback server pengelolaan.
    • Hentikan server pengelolaan:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-server stop
    • Jika Anda menggunakan monetisasi, uninstal juga monetisasi:
      /opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
    • Uninstal server pengelolaan:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
    • Mendownload dan menjalankan bootstrap versi lama. Misalnya, jalankan langkah-langkah berikut untuk mendownload dan menjalankan bootstrap versi 4.52.01:
      curl https://software.apigee.com/bootstrap_4.52.01.sh -o /tmp/bootstrap_4.52.01.sh -u ‘uName:pWord’
      sudo bash /tmp/bootstrap_4.52.01.sh apigeeuser=uName apigeepassword=pWord
    • Jalankan penyiapan satu node server pengelolaan:
      /opt/apigee/apigee-setup/bin/setup.sh -p mt -f configFile

Pengoptimalan setelah membangun ulang

Pada langkah-langkah di atas, semua data dalam node di-streaming dari pusat data jarak jauh selama proses build ulang. Anda dapat mengoptimalkan proses ini menggunakan perbaikan setelah semua replika di-streaming ke pusat data lokal. Hal ini menghindari streaming lintas DC dan akan lebih cepat daripada membangun ulang semua node dari DC jarak jauh.

Contoh: Misalnya Anda memiliki enam node Cassandra di pusat data lokal. Secara default, faktor replikasi Apigee adalah tiga, sehingga setiap node memiliki 50% data. Dalam hal ini, Anda dapat membangun kembali node #1 dan #4 dengan mengikuti prosedur di atas. Untuk node #2, #3, #5, dan #6, ikuti langkah-langkah di bawah ini untuk memulihkan cadangan dan menjalankan perbaikan.

  1. Ikuti prosedur hingga langkah enam seperti yang didokumentasikan untuk membangun ulang replika di pusat data lokal.
  2. Untuk node yang tersisa, ikuti langkah-langkah di bawah ini untuk setiap node yang tersisa satu per satu.
    • Pulihkan cadangan yang telah Anda ambil pada node ini (catatan: cadangan ini kemungkinan memiliki data yang sudah tidak berlaku karena cadangan ini diambil sebelum Anda memulai upgrade Cassandra):
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restore backup_file
    • Jika memiliki snapshot VM dari node, Anda dapat memulihkan snapshot, bukan memulihkan cadangan Cassandra.
    • Setelah cadangan dipulihkan, mulai layanan Cassandra pada node:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra start
    • Jalankan perbaikan pada node sehingga data terbaru dapat di-streaming dari pusat data yang ada:
      /opt/apigee/apigee-cassandra/bin/nodetool -h <node-IP> repair -dc <local-dc-name>
    • Ulangi langkah tiga sampai enam pada setiap node yang ingin Anda perbaiki.

Menghapus total dan memulihkan snapshot VM/cadangan

Prosedur ini adalah satu-satunya yang tersedia jika Anda telah mengupgrade seluruh cluster Cassandra dan ingin melakukan rollback.

Selain itu, cadangan Apigee bersifat spesifik untuk node. Cadangan yang diambil dari satu node ke node lainnya tidak mungkin dilakukan. Pencadangan Cassandra mencakup informasi metadata node (seperti alamat IP, posisi dering, dll.).

  1. Mulai dengan 1 node Cassandra di cluster:
    • Hentikan layanan Cassandra di node:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    • Uninstal software Cassandra dari node:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
    • Hapus direktori data dari node:
      rm -rf /opt/apigee/data/apigee-cassandra
    • Download dan jalankan bootstrap versi lama Edge untuk Private Cloud yang ingin Anda rollback.

    Contoh: Untuk melakukan rollback ke versi 4.52.01

    • Download bootstrap 4.52.01:
      curl https://software.apigee.com/bootstrap_4.52.01.sh -o /tmp/bootstrap_4.52.01.sh -u ‘uName:pWord’
    • Jalankan bootstrap 4.52.01:
      sudo bash /tmp/bootstrap_4.52.01.sh apigeeuser=uName apigeepassword=pWord

    • Siapkan Cassandra pada node:
      /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile
    • Memulihkan cadangan pada node menggunakan prosedur diMemulihkan dari cadangan.
    • Hentikan Cassandra di node:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    • Hapus direktori data:
      rm -rf /opt/apigee/data/apigee-cassandra/data
    • Pulihkan cadangan:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restore backup_file
    • Mulai layanan Cassandra di node:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra start
    • Ulangi langkah-langkah pada setiap node Cassandra satu per satu.
    • Jalankan perbaikan di seluruh node satu per satu:
      /opt/apigee/apigee-cassandra/bin/nodetool -h <node-IP> repair -pr

Rollback update Zookeeper 3.8.3

Jika Anda melakukan roll back ke versi 4.52.00 atau 4.51.00, Anda perlu melihat beberapa langkah khusus sebelum melakukan roll back Zookeeper. Langkah-langkah ini tercantum dalam Rollback.

Jika Anda melakukan roll back ke versi 4.52.01, roll back Zookeeper seperti saat melakukan roll back software apa pun, seperti yang tercantum di bagian Melakukan roll back ke rilis besar atau kecil sebelumnya di bawah.

Qpid Rollback

Jika Anda melakukan roll back ke versi 4.52.00 atau 4.51.00, Anda perlu melihat beberapa langkah khusus sebelum melakukan roll back Qpid. Langkah-langkah ini tercantum dalam Rollback.

Jika Anda melakukan rollback ke versi 4.52.01, lakukan rollback Qpid seperti melakukan rollback software apa pun seperti yang tercantum dalam Melakukan roll back ke rilis utama atau minor sebelumnya

Rollback update Postgres 10.17

Jika melakukan roll back ke versi 4.51.00, Anda harus melihat beberapa langkah khusus sebelum melakukan roll back Postgres. Langkah-langkah ini tercantum dalam Rollback.

Jika Anda melakukan roll back ke versi 4.52.01 atau 4.52.00, roll back Postgres seperti saat Anda melakukan roll back software apa pun, seperti yang tercantum di bagian Melakukan roll back ke rilis utama atau rilis minor sebelumnya di bawah.

Melakukan roll back ke rilis besar atau kecil sebelumnya

Untuk melakukan roll back ke rilis besar atau kecil sebelumnya, lakukan hal berikut pada setiap node yang menghosting komponen:

  1. Download file bootstrap.sh untuk versi yang ingin Anda roll back:

    • Untuk melakukan roll back ke 4.51.00, download bootstrap_4.51.00.sh:
      curl https://software.apigee.com/bootstrap_4.51.00.sh -o /tmp/bootstrap_4.51.00.sh 
  2. Hentikan komponen untuk melakukan roll back:
    1. Untuk me-roll back salah satu komponen dengan kode umum pada node, Anda harus menghentikan semuanya, seperti yang ditunjukkan contoh berikut:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-server stop
       /opt/apigee/apigee-service/bin/apigee-service edge-router stop
       /opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop
       /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
       /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
    2. Untuk me-roll back komponen lainnya pada node, hentikan komponen tersebut saja:
      • /opt/apigee/apigee-service/bin/apigee-service component stop
  3. Jika Anda melakukan roll back Monetisasi, uninstal-nya dari semua node Pemroses Pesan dan Server Pengelolaan:
    /opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
  4. Uninstal komponen untuk melakukan roll back pada node:
    1. Untuk me-roll back salah satu komponen dengan kode umum pada node, Anda harus meng-uninstal semuanya dengan meng-uninstal grup komponen edge-gateway, seperti yang ditunjukkan contoh berikut:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
    2. Untuk me-roll back komponen lain pada node, uninstal komponen tersebut saja, seperti yang ditunjukkan contoh berikut:
      /opt/apigee/apigee-service/bin/apigee-service component uninstall

      Dengan component adalah nama komponennya.

    3. Untuk me-roll back Router Edge, Anda harus menghapus konten file /opt/nginx/conf.d selain meng-uninstal grup komponen edge-gateway:
      cd /opt/nginx/conf.d
       rm -rf *
  5. Uninstal apigee-setup versi 4.52.02:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. Instal utilitas apigee-service versi 4.51.00 dan dependensinya. Contoh berikut menginstal apigee-service versi 4.51.00:
    sudo bash /tmp/bootstrap_4.51.00.sh apigeeuser=uName apigeepassword=pWord

    Dengan uName dan pWord adalah nama pengguna dan sandi yang Anda terima dari Apigee. Jika menghapus pWord, Anda akan diminta untuk memasukkannya.

    Jika terjadi error, pastikan Anda mendownload file bootstrap.sh pada langkah 1.

  7. Instal apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  8. Instal komponen versi lama:
    /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile

    Dengan component adalah komponen yang akan diinstal dan configFile adalah file konfigurasi Anda untuk versi yang lebih lama.

  9. Jika Anda melakukan roll back Qpid, flush iptables:
    sudo iptables -F
  10. Ulangi proses ini untuk setiap node yang menghosting komponen yang Anda roll back.

Roll back ke rilis patch sebelumnya

Untuk me-roll back komponen ke rilis patch tertentu, lakukan hal berikut pada setiap node yang menghosting komponen:

  1. Mendownload versi komponen tertentu:
    /opt/apigee/apigee-service/bin/apigee-service component_version install

    Dengan component_version adalah rilis komponen dan patch yang akan diinstal. Contoh:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui-4.51.05-0.0.3749 install

    Jika menggunakan repo online Apigee, Anda dapat menentukan versi komponen yang tersedia menggunakan perintah berikut:

    yum --showduplicates list comp

    Contoh:

    yum --showduplicates list edge-ui
  2. Gunakan apigee-setup untuk menginstal komponen:
    /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile

    Contoh:

    /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile

    Perhatikan bahwa Anda hanya menentukan nama komponen saat menginstalnya, bukan versinya.

  3. Ulangi proses ini untuk setiap node yang menghosting komponen yang Anda roll back.

Roll back mTLS

Untuk me-roll back update mTLS, lakukan langkah-langkah berikut pada semua host:

  1. Hentikan Apigee:
    apigee-all stop
  2. Hentikan mTLS:
    apigee-service apigee-mtls uninstall
  3. Instal ulang mTLS:
    apigee-service apigee-mtls install
    apigee-service apigee-mtls setup -f /opt/silent.conf