Roll back Apigee Edge 4.18.05

Edge for Private Cloud v4.18.05

Jika Anda mengalami kesalahan selama pembaruan Edge 4.18.05, Anda dapat melakukan roll back yang menyebabkan {i>error<i} dan kemudian mencoba pembaruannya lagi.

Anda dapat melakukan roll back Edge 4.18.05 ke versi Rilis Fitur berikut:

  • Versi 4.18.01
  • Versi 4.17.09*
  • Versi 4.17.05*

* Untuk melakukan roll back dari 4.18.05 ke 4.17.09 atau 4.17.05, Anda harus roll back Postgres selain melakukan roll back komponen di setiap {i>node<i}. Jika melakukan roll back ke 4.18.01, Anda tidak perlu melakukan roll back Postgres sebagai upgrade ini tidak mencakup pembaruan Postgres.

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

  1. Melakukan roll back ke Rilis Fitur sebelumnya. Misalnya dari 4.18.05 hingga 4.18.01.
  2. Roll back ke versi update sebelumnya dalam rilis yang sama. Sebagai misalnya, dari 4.18.05.02 hingga 4.18.05.01.

Untuk informasi selengkapnya, lihat rilis Apigee Edge {i>checkout<i}.

Siapa yang dapat melakukan rollback

Pengguna yang melakukan rollback harus sama dengan pengguna yang awalnya mengupdate Edge, atau pengguna berjalan 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 dengan kode umum

Komponen Edge berikut menggunakan kode yang sama. Oleh karena itu, untuk melakukan roll back salah satu komponen ini di node, Anda harus melakukan roll back semua komponen 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 Anda menginstal Server Pengelolaan, Router, dan Pemroses Pesan di node, untuk melakukan rollback salah satunya, Anda harus me-roll back ketiganya.

Roll back ke Rilis Fitur sebelumnya

Untuk melakukan roll back dari 4.18.05 ke 4.17.09 atau 4.17.05, Anda harus roll back Postgres selain melakukan roll back komponen di setiap {i>node<i}. Jika melakukan roll back dari 4.18.01, Anda tidak perlu melakukan roll back Postgres sebagai upgrade ini tidak mencakup pembaruan Postgres.

Untuk melakukan roll back ke Rilis Fitur sebelumnya, lakukan hal berikut pada setiap node yang menghosting komponen:

  1. Download file bootstrap.sh untuk versi yang ingin Anda lempar kembali:

    • Untuk melakukan roll back ke 4.18.01, download bootstrap_4.18.01.sh:
      curl https://software.apigee.com/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh 
    • Untuk melakukan roll back ke 4.17.09, download bootstrap_4.17.09.sh:
      curl https://software.apigee.com/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh 
    • Untuk melakukan roll back ke 4.17.05, download bootstrap_4.17.05.sh:
      curl https://software.apigee.com/bootstrap_4.17.05.sh -o /tmp/bootstrap_4.17.05.sh 
  2. Hentikan komponen untuk melakukan roll back:
    1. Untuk me-roll back salah satu komponen dengan kode umum pada Anda harus menghentikan semuanya, seperti 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 dari semua Server dan Pesan Pengelolaan Node pemroses:
    /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 komponen edge-gateway , seperti yang ditampilkan contoh berikut:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
    2. Untuk melakukan roll back komponen lain pada {i>node<i}, copot instalasi komponen itu saja, karena contoh berikut menunjukkan:
      /opt/apigee/apigee-service/bin/apigee-service component uninstall

      Dengan component adalah nama komponennya.

    3. Untuk melakukan roll back Router Edge, Anda harus menghapus konten /opt/nginx/conf.d selain meng-uninstal Grup komponen edge-gateway:
      cd /opt/nginx/conf.d
      rm -rf *
  5. Uninstal apigee-setup versi 4.18.05:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. Instal apigee-service versi 4.18.01, 4.17.09, atau 4.17.05 utilitas dan dependensinya. Contoh berikut menginstal versi 4.17.09 dari apigee-service:
    sudo bash /tmp/bootstrap_4.17.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 memasukkannya.

    Jika terjadi error, pastikan Anda mendownload file bootstrap.sh di langkah Akun Layanan 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 komponen file konfigurasi untuk versi 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.

Untuk melakukan roll back dari 4.18.05 ke 4.17.09 atau 4.17.05, Anda harus roll back Postgres selain melakukan roll back komponen di setiap {i>node<i}. Jika melakukan roll back dari 4.18.01, Anda tidak perlu melakukan roll back Postgres sebagai upgrade ini tidak mencakup pembaruan Postgres.

Roll back ke versi update sebelumnya

Untuk melakukan roll back komponen ke versi rilis 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 sebagai komponen dan update 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 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.

Untuk melakukan roll back dari 4.18.05 ke 4.17.09 atau 4.17.05, Anda harus roll back Postgres selain melakukan roll back komponen di setiap {i>node<i}. Jika melakukan roll back dari 4.18.01, Anda tidak perlu melakukan roll back Postgres sebagai upgrade ini tidak mencakup pembaruan Postgres.

Roll back update Postgres 9.6

Jika Anda melakukan upgrade ke 4.18.05 dari versi 4.17.05 atau 4.17.09, Anda harus melakukan roll back Pembaruan Postgres selain komponen Edge.

Untuk melakukan rollback update Postgres saat memperbarui Postgres dalam konfigurasi standby master:

  • 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 di node master lama:
    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 dari 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 instal Qpid di node master baru. Setelah meng-uninstal Qpid, Anda dapat menonaktifkan node master lama.

Meng-uninstal Qpid dari master lama dan menginstal Qpid pada master baru

Untuk meng-uninstal Qpid dari master lama dan menginstalnya di master baru:

  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 saat server Qpid memproses pesan.

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