Edge for Private Cloud v. 4.17.05
Jika terjadi error selama update ke Edge 4.17.05, Anda dapat me-roll back komponen yang menyebabkan error, lalu mencoba update lagi. Misalnya, jika update ke Postgres 9.4 gagal, Anda dapat me-rollback node Postgres saja dan mencoba update lagi.
Ada dua skenario saat Anda mungkin ingin melakukan rollback:
- Rollback ke rilis yang lebih lama. Misalnya, dari 4.17.05 ke 4.17.01.
- Rollback ke versi lama dalam rilis yang sama.
Gunakan prosedur di bawah untuk melakukan rollback untuk kedua skenario.
Siapa yang dapat melakukan rollback
Pengguna yang melakukan rollback harus sama dengan pengguna yang awalnya mengupdate Edge, atau pengguna yang berjalan sebagai root.
Secara default, komponen Edge berjalan sebagai pengguna "apigee". Dalam beberapa kasus, Anda mungkin menjalankan komponen Edge sebagai pengguna yang berbeda. Misalnya, jika Router harus mengakses port dengan hak istimewa, seperti port di bawah 1000, 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 yang dapat di-roll back
Anda harus memperhatikan kondisi berikut saat melakukan rollback:
- Lima komponen Edge yang tercantum di bawah memiliki kode yang sama. Oleh karena itu, untuk me-roll back salah satu dari
lima komponen pada node, Anda harus me-roll back salah satu dari lima komponen yang diinstal pada node. Misalnya, jika Anda telah menginstal Server Pengelolaan, Router, dan Message Processor di node, untuk me-roll back salah satunya, Anda harus me-roll back ketiganya.
Lima komponen yang berbagi kode adalah:- Server Pengelolaan
- Router
- Message Processor
- Server Qpid
- Server Postgres
- Jika Anda mengupdate dari Edge 4.16.01, jangan rollback Cassandra. Rilis Edge ini berisi versi Cassandra yang diupdate. Jika Anda melakukan rollback komponen apa pun, biarkan Cassandra pada versi 4.17.05.
Me-roll back 4.17.05
Bagian ini berisi prosedur untuk me-roll back Edge 4.17.05 ke versi sebelumnya. Bagian ini dibagi menjadi dua bagian:
- Jika Anda mengupdate dari 4.16.01 atau 4.16.05 saja - me-roll back update Postgres
ke versi 9.4
Bagian akhir dari setiap prosedur update dari 4.16.01 atau 4.16.05 adalah mengupdate node Postgres ke versi 9.4. Jika update tersebut gagal, Anda dapat menggunakan prosedur ini untuk me-roll back update. - Me-roll back semua komponen Edge lainnya
Gunakan prosedur ini untuk me-roll back komponen Edge lainnya.
Untuk melakukan rollback update Postgres 9.4
Untuk me-roll back update Postgres saat mengupdate Postgres dalam konfigurasi master-standby, Anda:
- Promosikan node standby baru untuk menjadi master Postgres. Master Postgres baru akan memiliki versi yang sama dengan penginstalan Edge Anda sebelumnya.
- Konfigurasikan node standby lama menjadi node standby master baru. Node standby lama akan memiliki versi yang sama dengan penginstalan Edge sebelumnya.
- Daftarkan node master dan standby baru ke grup analisis dan konsumen.
Setelah Anda selesai melakukan rollback, node master lama tidak akan diperlukan lagi. Kemudian, Anda dapat menonaktifkan node master lama.
- Pastikan node Postgres standby yang baru berjalan:
> /opt/apigee/apigee-service/bin/apigee-all status
Jika Postgres tidak berjalan, mulai:
> /opt/apigee/apigee-service/bin/apigee-all start - Pastikan Postgres dihentikan di 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 - Jika diinstal, mulai Qpid di node standby lama:
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
Catatan: Dalam banyak konfigurasi, node standby lama hanya akan menghosting Postgres, bukan Qpid. - Promosikan node standby baru sebagai master Postgres:
- Promosikan node standby baru menjadi master baru:
> apigee-service apigee-postgresql promote-standby-to-master new_standby_IP
Jika diminta, masukkan sandi Postgres untuk pengguna 'apigee', yang secara default adalah "postgres". - Edit file konfigurasi yang Anda gunakan untuk menginstal Edge versi saat ini guna menentukan hal berikut:
# Alamat IP master baru:
PG_MASTER=new_standby_IP
# Alamat IP node standby lama
PG_STANDBY=old_standby_IP - Konfigurasikan master baru:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
- Promosikan node standby baru menjadi master baru:
- Bangun ulang node standby lama:
- Edit file konfigurasi yang Anda gunakan untuk menginstal Edge versi saat ini guna menentukan hal berikut:
# Alamat IP master baru:
PG_MASTER=new_standby_IP
# Alamat IP node standby lama
PG_STANDBY=old_standby_IP - Hapus direktori data pada node standby lama:
> cd /opt/apigee/data/apigee-postgresql/pgdata
> rm -rf * - 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 - Pastikan Postgres berjalan di node standby lama:
> /opt/apigee/apigee-service/bin/apigee-all status
Jika tidak berjalan, mulai:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
- Edit file konfigurasi yang Anda gunakan untuk menginstal Edge versi saat ini guna menentukan hal berikut:
- Pastikan node standby baru telah ditambahkan dengan melihat file /opt/apigee/apigee-postgresql/conf/pg_hba.conf di master baru.
- Lihat informasi grup konsumen dan analisis saat ini dengan menjalankan perintah berikut
di Server Pengelolaan:
> curl -u sysAdminEmail:password http://<ms_IP>:8080/v1/analytics/groups/ax
Perintah ini menampilkan nama grup analisis di kolom name, dan nama grup konsumen di kolom name di bagian consumer-groups. Tindakan ini juga menampilkan UUID node master dan standby Postgres 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" : {
}
} - Dapatkan alamat UUID master lama dengan menjalankan perintah cURL berikut pada 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"
Catatan: Layanan edge-postgres-server harus berjalan. Jika server Postgres tidak berjalan, Anda dapat menjalankan perintah berikut di Server Pengelolaan untuk menentukan UUID:
> curl -u sysAdminEmail:password http://<ms_IP>:8080/v1/servers?pod=analytics
Output perintah ini mencantumkan UUID untuk alamat IP setiap node Postres. - Ulangi langkah sebelumnya untuk mendapatkan alamat IP node standby lama dan master baru.
- 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 grup analisis dan konsumen. masterUUID,standbyUUID berada dalam urutan yang sama seperti yang muncul di atas saat Anda melihat informasi grup konsumen dan analisis saat ini di atas. Anda mungkin harus menentukannya sebagai standbyUUID,masterUUID.
Properti datastores untuk consumer-groups sekarang seharusnya kosong. - 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 di bagian uuids sekarang seharusnya kosong. - Daftarkan node master dan standby PG baru dengan grup analisis dan konsumen:
> 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 - Validasi grup analisis:
> curl -u sysAdminEmail:password http://<ms_IP>:8080/v1/analytics/groups/ax
Anda akan melihat UUID node master dan standby baru yang tercantum dalam grup analisis dan grup konsumen. - Mulai ulang Edge Management Server:
> /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart - Mulai ulang semua server Qpid:
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart - Mulai ulang semua server Postgres:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart - Verifikasi status replikasi dengan menjalankan skrip berikut di kedua server. Sistem
harus menampilkan hasil yang sama 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 sistem menyatakan bahwa server tersebut adalah master.
Di node standby lama:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
Validasi bahwa node tersebut adalah standby. - Ulangi langkah sebelumnya setelah membuat beberapa permintaan API untuk memastikan bahwa node telah disinkronkan.
- Hentikan penggunaan master Postgres lama menggunakan prosedur di Mengupdate Apigee Edge 4.16.01/4.16.05 ke
4.17.05.
Catatan: Jika node master lama menjalankan Qpid, Anda dapat membiarkan server tersebut tetap aktif untuk menjalankan Qpid. Pastikan instance berjalan. Jika belum, mulai:
> /opt/apigee/apigee-service/bin/apigee-service edge-management-server start
Atau, Anda dapat meng-uninstal Qpid dari master lama dan menginstal Qpid di node master baru, seperti yang dijelaskan di bawah. Setelah meng-uninstal Qpid, Anda dapat menonaktifkan node master lama.
Meng-uninstal Qpid dari master lama dan menginstal Qpid di master baru
Gunakan prosedur berikut untuk meng-uninstal Qpid dari master lama dan menginstalnya di master baru:
- Blokir akses ke port Qpid 5672 di master lama dari akses oleh Message Processor dengan
menjalankan perintah berikut di semua Message Processor:
> iptables -A OUTPUT -p tcp -d 10.233.147.20 --dport 5672 -j DROP - Pastikan antrean pesan Qpid kosong dengan menjalankan perintah berikut. Anda tidak dapat
meng-uninstal Qpid hingga Qpid memproses semua pesan yang tertunda:
> qpid-stat -q
Perintah ini menampilkan tabel yang berisi jumlah untuk msg, msgIn, dan msgOut. Semua pesan akan diproses saat msg=0, dan msgIn=msgOut. - Tentukan UUID server Qpid di master lama dengan menjalankan perintah berikut di
master lama. Simpan informasi ini untuk digunakan nanti dalam prosedur:
> curl -u sysAdminEmail:password http://<node_IP>::8083/v1/servers/self - 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 - Uninstal server Qpid:
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall
> /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall - Hapus server Qpid lama dari grup analisis dan konsumen:
> 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 - Hapus server Qpid lama dari Zookeeper:
> curl -u sysAdminEmail:password -X DELETE http://<ms_IP>:8080/v1/servers/qpid_UUID - Instal Qpid di master baru:
> /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile - Tentukan UUID server Qpid di master baru dengan menjalankan perintah berikut di
master baru. Simpan informasi ini untuk digunakan nanti dalam prosedur:
> curl -u sysAdminEmail:password http://<node_IP>::8083/v1/servers/self - Daftarkan server Qpid baru dengan grup analisis dan konsumen:
> 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 - Mulai ulang semua Message Processor:
> /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart - Jalankan perintah berikut di server Qpid baru untuk memeriksa apakah antrean telah dibuat:
> qpid-stat -q
Pastikan Anda melihat msg, msgIn, dan msgOut diperbarui saat server Qpid memproses pesan.
Untuk me-roll back setiap komponen dari 4.17.05
Sebagai bagian dari melakukan rollback, Anda harus mendownload file bootstrap.sh untuk versi Edge saat ini:
- 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:
- Hentikan komponen yang akan di-roll back:
-
Jika Anda me-roll back salah satu komponen berikut pada node, Anda harus
menghentikan semuanya: Server Pengelolaan, Router, Message Processor, Server Qpid, atau Server
Postgres:
- > 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
-
Jika Anda melakukan roll back komponen lain pada node, hentikan komponen tersebut saja:
- > apigee-service comp stop
-
Jika Anda me-roll back salah satu komponen berikut pada node, Anda harus
menghentikan semuanya: Server Pengelolaan, Router, Message Processor, Server Qpid, atau Server
Postgres:
- Jika Anda melakukan roll back Monetisasi, uninstal dari semua node Server Pengelolaan dan Message
Processor:
> apigee-service edge-mint-gateway uninstall - Uninstal komponen untuk melakukan rollback pada node:
- Jika Anda me-roll back salah satu komponen berikut pada node, uninstal semuanya: Server Pengelolaan, Router, Message Processor, Server Qpid, atau Server
Postgres:
> apigee-service edge-gateway uninstall - Jika Anda me-roll back komponen lain pada node, uninstal komponen
tersebut saja:
> apigee-service comp uninstall - Jika Anda me-roll back Router, Anda harus menghapus
konten /opt/nginx/conf.d:
> cd /opt/nginx/conf.d
> rm -rf *
- Jika Anda me-roll back salah satu komponen berikut pada node, uninstal semuanya: Server Pengelolaan, Router, Message Processor, Server Qpid, atau Server
Postgres:
-
Untuk me-roll back komponen:
- Uninstal apigee-setup versi 4.17.05:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall - Download bootstrap.sh untuk rilis 4.16.01, 4.16.05, 4.16.09, atau 4.17.01:
Misalnya, untuk 4.16.09:
> curl https://software.apigee.com/bootstrap_4.16.09.sh -o /tmp/bootstrap_4.16.09.sh - Instal utilitas dan dependensi apigee-service 4.16.01, 4.16.05, atau 4.16.09.
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 Anda menghilangkan pWord, Anda akan diminta untuk memasukkannya. - Instal apigee-setup versi 4.16.01, 4.16.05, atau 4.16.09:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup install - Instal komponen versi 4.16.01, 4.16.05, 4.16.09, atau 4.17.01:
> /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile
dengan comp adalah komponen yang akan diinstal dan configFile adalah file konfigurasi 4.16.01, 4.16.05, atau 4.16.09 Anda. - Jika Anda melakukan roll back Qpid, flush iptables:
> sudo iptables -F
- Uninstal apigee-setup versi 4.17.05:
-
Untuk melakukan rollback komponen ke versi tertentu dari rilis 4.17.05:
- Download versi komponen tertentu:
> /opt/apigee/apigee-service/bin/apigee-service comp-version install
dengan comp-version adalah komponen dan versi yang akan diinstal. Contoh:
> /opt/apigee/apigee-service/bin/apigee-service edge-ui-4.17.05-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 - Gunakan apigee-setup untuk menginstal komponen:
> /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile
Misalnya:
> /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
Perhatikan bahwa Anda hanya menentukan nama komponen saat melakukan penginstalan.
- Download versi komponen tertentu:
Hubungi Dukungan Apigee jika Anda mengalami masalah saat melakukan roll back.