4.18.01 Proses Rollback

Edge for Private Cloud v4.18.01

Jika terjadi error saat mengupdate Edge 4.18.01, Anda dapat melakukan roll back komponen yang menyebabkan {i>error<i} dan kemudian mencoba pembaruannya lagi. Misalnya, jika update ke Postgres 9.6 gagal, Anda hanya dapat melakukan rollback node Postgres dan mencoba pembaruan lagi.

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

  1. Rollback ke rilis lama. Misalnya dari 4.18.01 hingga 4.17.01.
  2. Rollback ke versi lama dalam rilis yang sama.

Gunakan prosedur di bawah ini untuk melakukan rollback untuk kedua skenario.

Siapa yang dapat melakukan rollback

Pengguna yang melakukan {i>rollback<i} harus sama dengan pengguna yang awalnya memperbarui Edge, atau pengguna yang menjalankannya sebagai {i>root<i}.

Secara default, komponen Edge dijalankan sebagai "apigee" pengguna. Dalam beberapa kasus, Anda mungkin menjalankan Edge komponen sebagai pengguna yang berbeda. Misalnya, jika {i>Router<i} harus mengakses porta dengan hak istimewa, seperti di bawah 1000, maka Anda harus menjalankan {i>Router<i} sebagai {i>root<i} atau sebagai pengguna yang memiliki akses ke porta. Atau, Anda dapat menjalankan satu komponen sebagai satu pengguna, dan komponen lain sebagai pengguna lain.

Komponen mana yang dapat di-roll back

Anda harus mengetahui kondisi berikut saat melakukan rollback:

  • Kelima komponen Edge yang tercantum di bawah ini memiliki kode yang sama. Oleh karena itu, untuk melakukan rollback salah satu kelima komponen di sebuah {i>node<i}, Anda harus me-roll back salah satu dari lima komponen yang ada di {i>node<i}. Sebagai misalnya, jika Anda menginstal Server Pengelolaan, Router, dan Pemroses Pesan di node, untuk melakukan roll back salah satunya, Anda harus me-roll back ketiganya.

    Lima komponen yang menggunakan kode yang sama adalah:

    • Server Pengelolaan
    • Router
    • Message Processor
    • Server Qpid
    • Server Postgres
  • Jika Anda mengupdate dari Edge 4.16.01, jangan lakukan rollback Cassandra. Ini Edge berisi versi terbaru Cassandra. Jika Anda melakukan rollback komponen apa pun, biarkan Cassandra di versi 4.18.01.

Melakukan roll back 4.18.01

Bagian ini berisi prosedur untuk melakukan rollback Edge 4.18.01 ke versi sebelumnya. Ini dibagi menjadi dua bagian:

  • Melakukan roll back update Postgres
    Bagian terakhir dari setiap prosedur update adalah mengupdate node Postgres ke versi 9.6. Jika hal tersebut pembaruan gagal, maka Anda dapat menggunakan prosedur ini untuk melakukan rollback pembaruan.
  • Melakukan roll back semua komponen Edge lainnya
    Gunakan prosedur ini untuk melakukan rollback komponen Edge lainnya.

Untuk melakukan rollback pembaruan Postgres 9.6

Untuk melakukan rollback pembaruan Postgres saat memperbarui Postgres dalam konfigurasi standby master, Anda:

  • Promosikan node standby baru untuk menjadi master Postgres. Master Postgres baru akan versi yang sama dengan penginstalan Edge Anda sebelumnya.
  • Konfigurasikan node standby lama menjadi node standby dari master baru. Node standby lama akan sama dengan versi penginstalan Edge Anda sebelumnya.
  • Daftarkan node master dan standby baru dengan grup konsumen dan analisis.

Setelah selesai melakukan rollback, node master lama tidak akan diperlukan lagi. Anda dapat {i>node <i}master lama akan dinonaktifkan.

  1. Pastikan node Postgres standby baru sedang berjalan:
    > /opt/apigee/apigee-service/bin/apigee-all status

    Jika Postgres tidak berjalan, mulai:

    > /opt/apigee/apigee-service/bin/apigee-all start
  2. Pastikan Postgres dihentikan pada node master lama dan node standby lama:
    > /opt/apigee/apigee-service/bin/apigee-all status

    Jika Postgres berjalan, hentikan:

    > /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  3. Jika terinstal, mulai Qpid pada node standby lama:
    > /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
  4. Promosikan node standby baru sebagai master Postgres:
    1. Promosikan node standby baru menjadi master baru:
      > apigee-service apigee-postgresql promote-standby-to-master new_standby_IP

      Jika diminta, masukkan sandi Postgres untuk 'apigee' , yang setelan defaultnya adalah "postgres".

    2. Edit file konfigurasi yang Anda gunakan untuk menginstal Edge versi saat ini untuk menentukan hal berikut:
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    3. Konfigurasi master baru:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
  5. Buat ulang node standby lama:
    1. Edit file konfigurasi yang Anda gunakan untuk menginstal Edge versi saat ini untuk menentukan hal berikut:
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    2. Hapus direktori data pada node standby lama:
      > cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
    3. Konfigurasi ulang node standby lama menjadi node standby master baru:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
    4. Pastikan Postgres berjalan di node standby lama:
      > /opt/apigee/apigee-service/bin/apigee-all status

      Jika tidak sedang berjalan, mulailah:

      > /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
  6. Pastikan bahwa node standby baru telah ditambahkan dengan menampilkan /opt/apigee/apigee-postgresql/conf/pg_hba.conf file di master baru.
  7. Lihat analisis dan informasi grup konsumen saat ini dengan menjalankan perintah berikut di Server Pengelolaan:
    > curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    Perintah ini akan menampilkan nama grup analisis di kolom name, dan nama grup konsumen di kolom name di bawah consumer-groups. Ini juga akan menampilkan UUID master Postgres dan node standby lama di Kolom postgres-server, dan di kolom datastores. Anda akan melihat output dalam bentuk:

    {
      "name" : "axgroup-001",
      "properties" : {
      },
      "scopes" : [ "VALIDATE~test", "sgilson~prod" ],
      "uuids" : {
        "qpid-server" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ],
        "postgres-server" : [
          "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256"
        ]
      },
      "consumer-groups" : [ {
        "name" : "consumer-group-001",
        "consumers" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ],
        "datastores" :
          [ "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256" ],
          "properties" : {     }
        }
      ],
      "data-processors" : {
      }
    }
  8. Dapatkan alamat UUID master lama dengan menjalankan perintah cURL berikut pada instance node master:
    > curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self

    Anda akan melihat UUID node di akhir output, dalam bentuk:

    "type" : [ "postgres-server" ],
    "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
  9. Ulangi langkah sebelumnya untuk mendapatkan alamat IP node standby lama dan node baru induk.
  10. Hapus node master dan standby lama dari grup konsumen:
    > curl -u sysAdminEmail:password -X DELETE
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores/masterUUID,standbyUUID" -v

    dengan axgroup-001 dan consumer-group-001 adalah nama default analitik dan kelompok konsumen. masterUUID,standbyUUID dalam urutan yang sama muncul di atas saat Anda melihat informasi analisis dan grup konsumen terkini di atas. Anda mungkin harus menentukannya sebagai standbyUUID,masterUUID.

    Properti datastores untuk consumer-groups sekarang seharusnya menjadi kosong.

  11. Hapus node master dan standby lama dari grup analisis:
    > curl -u sysAdminEmail:password -X DELETE
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v

    Properti postgres-server dalam uuids sekarang harus kosong.

  12. Daftarkan node standby dan master PG baru dengan grup konsumen dan analisis:
    > curl -u sysAdminEmail:password -X POST -H "Content-Type: application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v
    > curl -u sysAdminEmail:password -X POST -H "Content-Type:application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores?uuid=masterUUID,standbyUUID" -v
  13. Validasi grup analisis:
    > curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    Anda akan melihat UUID node master dan standby baru tercantum dalam grup analisis dan kelompok konsumen.

  14. Mulai ulang Server Pengelolaan Edge:
    > /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
  15. Mulai ulang semua server Qpid:
    > /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
  16. Mulai ulang semua server Postgres:
    > /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  17. Verifikasi status replikasi dengan menerbitkan skrip berikut di kedua server. Sistem harus menampilkan hasil yang identik di kedua server untuk memastikan replikasi berhasil:

    Di master baru, jalankan:

    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

    Validasi bahwa dikatakan sebagai master. Di node standby lama:

    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

    Validasi bahwa perangkat tersebut menyatakan mode standby.

  18. Ulangi langkah sebelumnya setelah membuat beberapa permintaan API untuk memastikan bahwa node berada dalam sinkronisasi.
  19. Nonaktifkan master Postgres lama menggunakan prosedur di Mengupdate Apigee Edge 4.16.01/4.16.05 hingga 4.17.09.

    Atau, Anda dapat meng-uninstal Qpid dari master lama dan menginstal Qpid pada master baru , seperti yang dijelaskan di bawah ini. Setelah meng-uninstal Qpid, Anda dapat menonaktifkan master lama {i>node<i}.

Uninstal Qpid dari master lama dan instal Qpid pada master baru

Gunakan prosedur berikut untuk menghapus Qpid dari master lama dan menginstalnya pada master yang baru utama:

  1. Blokir akses ke port Qpid 5672 pada master lama dari akses oleh Pemroses Pesan dengan menjalankan perintah berikut pada semua Pemroses Pesan:
    > iptables -A OUTPUT -p tcp -d 10.233.147.20 --dport 5672 -j DROP
  2. Pastikan antrean pesan Qpid kosong dengan menjalankan perintah berikut. Anda tidak dapat uninstal Qpid hingga semua pesan yang tertunda berhasil diproses:
    > qpid-stat -q

    Perintah ini menampilkan tabel yang berisi jumlah untuk msg, msgIn, and msgOut. Semua pesan akan diproses saat msg=0, dan msgIn=msgOut.

  3. Tentukan UUID server Qpid pada master lama dengan menjalankan perintah master lama. Simpan informasi ini untuk nanti di prosedur:
    > curl -u sysAdminEmail:password http://node_IP::8083/v1/servers/self
  4. Hentikan Qpid di master lama:
    > /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
    > /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
  5. Uninstal server Qpid:
    > /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall
    > /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall
  6. Hapus server Qpid lama dari grup konsumen dan analytics:
    > curl -u sysAdminEmail:password -X DELETE -H "Content-Type: application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/consumers/qpid_UUID" -v
    > curl -u sysAdminEmail:password -X DELETE
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=qpid_UUID&type=qpid-server" -v
  7. Hapus server Qpid lama dari Zookeeper:
    > curl -u sysAdminEmail:password -X DELETE
      http://ms_IP:8080/v1/servers/qpid_UUID
  8. Instal Qpid pada master baru:
    > /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
  9. Tentukan UUID server Qpid pada {i>master<i} baru dengan menjalankan perintah berikut master baru. Simpan informasi ini untuk nanti di prosedur:
    > curl -u sysAdminEmail:password
      http://node_IP::8083/v1/servers/self
  10. Daftarkan server Qpid baru ke grup konsumen dan analytics:
    > curl -u sysAdminEmail:password -X POST -H "Content-Type: application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=qpid_UUID&type=qpid-server" -v
    > curl -u sysAdminEmail:password -X POST -H "Content-Type:application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/consumers?uuid=qpid_UUID" -v
  11. Mulai ulang semua Pemroses Pesan:
    > /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  12. Jalankan perintah berikut di server Qpid baru untuk memeriksa apakah antrean telah dibuat:
    > qpid-stat -q

    Pastikan Anda melihat msg, msgIn, dan msgOut sedang diperbarui sebagai server Qpid memproses pesan.

Untuk melakukan rollback setiap komponen dari 4.18.01

Sebagai bagian dari proses rollback, Anda harus mengunduh file bootstrap.sh untuk versi Edge saat ini:

  • Untuk melakukan roll back ke 4.17.09, download bootstrap_4.17.09.sh
  • Untuk melakukan roll back ke 4.17.05, download bootstrap_4.17.05.sh
  • Untuk melakukan roll back ke 4.17.01, download bootstrap_4.17.01.sh
  • Untuk melakukan roll back ke 4.16.09, download bootstrap_4.16.09.sh
  • Untuk melakukan roll back ke 4.16.05, download bootstrap_4.16.05.sh
  • Untuk melakukan roll back ke 4.16.01, download bootstrap.sh

Untuk setiap node yang menghosting komponen yang akan di-roll back:

  1. Hentikan komponen yang akan di-rollback:
    1. Jika melakukan roll back salah satu komponen berikut pada node, Anda harus dan menghentikan semuanya: Server Pengelolaan, Router, Pemroses Pesan, Server Qpid, atau Postgres Server:
      • > apigee-service edge-management-server stop
      • > apigee-service edge-router stop
      • > apigee-service edge-message-processor stop
      • > apigee-service edge-qpid-server stop
      • > apigee-service edge-postgres-server stop
    2. Jika Anda melakukan roll back komponen lain pada node, hentikan hal tersebut komponen:
      • > apigee-service comp stop
  2. Jika Anda melakukan roll back Monetisasi, uninstal dari semua Server dan Pesan Pengelolaan Node pemroses:
    > apigee-service edge-mint-gateway uninstall
  3. Uninstal komponen untuk melakukan rollback pada node:
    1. Jika Anda melakukan roll back salah satu komponen berikut pada node, uninstal semua: Management Server, Router, Message Processor, Qpid Server, atau Postgres Server:
      > apigee-service edge-gateway uninstall
    2. Jika Anda melakukan roll back komponen lain pada node, uninstal hanya komponen tersebut komponen:
      > apigee-service comp uninstall
    3. Jika melakukan roll back Router, Anda harus menghapus konten /opt/nginx/conf.d:
      > cd /opt/nginx/conf.d
      > rm -rf *
  4. Untuk melakukan rollback komponen:
    1. Uninstal apigee-setup versi 4.18.01:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
    2. Download bootstrap.sh untuk rilis yang diinginkan: Misalnya, untuk 4.16.09:
      > curl https://software.apigee.com/bootstrap_4.16.09.sh -o /tmp/bootstrap_4.16.09.sh 
    3. Instal utilitas apigee-service 4.16.01, 4.16.05, atau 4.16.09 dan dependensi. Misalnya, untuk 4.16.09:
      > sudo bash /tmp/bootstrap_4.16.09.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 memasukkan anotasi.

    4. Instal apigee-setup:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
    5. Instal versi komponen yang diinginkan:
      > /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile

      dengan comp sebagai komponen yang akan diinstal dan configFile adalah komponen untuk versi yang diinginkan.

    6. Jika Anda melakukan roll back Qpid, flush iptables:
      > sudo iptables -F
  5. Untuk melakukan rollback komponen ke versi rilis 4.18.01 tertentu:
    1. Mendownload versi komponen tertentu:
      > /opt/apigee/apigee-service/bin/apigee-service comp-version install

      dengan comp-version sebagai komponen dan versi yang akan diinstal. Contoh:

      > /opt/apigee/apigee-service/bin/apigee-service edge-ui-4.17.09-0.0.3749 install

      Jika menggunakan repo online Apigee, Anda dapat menentukan versi komponen yang tersedia dengan 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 melakukan penginstalan.

Hubungi Dukungan Apigee Edge jika Anda mengalami masalah saat melakukan roll back.