Memulai Ulang Router dan Pemroses Pesan tanpa dampak lalu lintas

Anda sedang melihat dokumentasi Apigee Edge.
Buka dokumentasi Apigee X.
info

Dokumen ini menjelaskan cara memulai ulang Router dan Prosesor Pesan (MP) tanpa memengaruhi traffic API yang masuk. Anda mungkin harus memulai ulang Router dan Anggota Parlemen dalam keadaan tertentu. Beberapa contohnya adalah sebagai berikut:

  • Ketika keystore yang secara langsung dirujuk ke host virtual, server target atau endpoint target diupdate tanpa menggunakan referensi.
  • Saat proxy API di-deploy sebagian pada beberapa MP.

Sebelum memulai

Jika Anda tidak terbiasa dengan Router dan Prosesor Pesan, baca Ringkasan Edge untuk Private Cloud.

Memulai ulang Router secara terus-menerus tanpa memengaruhi traffic

Bagian ini menjelaskan langkah-langkah yang digunakan untuk memulai ulang Router tanpa memengaruhi traffic API yang masuk.

  1. Login ke Router yang perlu dimulai ulang.
  2. Blokir port health check di Router menggunakan perintah berikut. Hal ini memastikan bahwa Router dianggap tidak responsif dan tidak ada traffic yang akan dirutekan ke Router ini.
    sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
        
  3. Tunggu selama dua menit untuk memastikan traffic yang sedang berlangsung ditangani dengan lancar sebelum memulai ulang Router. Anda dapat melakukannya dengan menjalankan perintah sleep sebagai berikut:
    for i in {001..120}; do sleep 1; printf "\r ${i}"; done
        
  4. Hentikan layanan Apigee Monit sebagai berikut:
    apigee-service apigee-monit stop
        
  5. Hentikan layanan Router Apigee sebagai berikut:
    apigee-service edge-router stop
        
  6. Mulai layanan Router Apigee sebagai berikut:
    apigee-service edge-router start
        
  7. Tunggu hingga layanan Router Apigee dimulai dan siap menangani traffic masuk menggunakan perintah berikut:
    apigee-service edge-router wait_for_ready
        
  8. Mulai layanan Apigee Monit sebagai berikut:
    apigee-service apigee-monit start
        
  9. Hapus tabel IP untuk berhenti memblokir port health check 15999 dan memungkinkan Router menangani traffic lagi dengan menjalankan perintah berikut:
    sudo iptables -F
    sudo iptables -L
        
sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
for i in {001..120}; do sleep 1; printf "\r ${i}"; done
apigee-service apigee-monit stop
apigee-service edge-router stop
apigee-service edge-router start
apigee-service edge-router wait_for_ready
apigee-service apigee-monit start
sudo iptables -F
sudo iptables -L

Memulai ulang prosesor Message secara terus-menerus tanpa memengaruhi traffic

Bagian ini menjelaskan langkah-langkah yang digunakan untuk memulai ulang Message Processor (MP) tanpa memengaruhi traffic API yang masuk.

  1. Login ke Pemroses Pesan yang perlu dimulai ulang.
  2. Identifikasi port health check Pemroses Pesan menggunakan perintah berikut:
    curl 0:8082/v1/servers/self -s | jq '.tags.property' | jq '.[] | select(.name=="http.port")'
        
  3. Blokir port health check (yang diidentifikasi di langkah 2) pada Pemroses Pesan. Hal ini memastikan bahwa Pemroses Pesan dianggap tidak responsif dan tidak ada traffic yang akan dirutekan ke Pemroses Pesan ini.
    sudo iptables -A INPUT -i eth0 -p tcp --dport port # -j REJECT
        

    Dengan port # adalah nomor port yang ditampilkan dari perintah yang dilakukan di langkah 2.

  4. Tunggu selama dua menit untuk memastikan bahwa semua traffic yang sedang berlangsung ditangani dengan lancar sebelum Anda memulai ulang Pemroses Pesan. Anda dapat melakukannya dengan menjalankan perintah sleep sebagai berikut:
    for i in {001..120}; do sleep 1; printf "\r ${i}"; done
        
  5. Hentikan layanan Apigee Monit sebagai berikut:
    apigee-service apigee-monit stop
        
  6. Hentikan layanan Apigee Message Processor sebagai berikut:
    apigee-service edge-message-processor stop
        
  7. Sart layanan Apigee Message Processor sebagai berikut:
    apigee-service edge-message-processor start
        
  8. Tunggu hingga layanan Apigee Message Processor dimulai dan siap menangani traffic masuk menggunakan perintah berikut:
    apigee-service edge-message-processor wait_for_ready
        
  9. Mulai layanan Apigee Monit sebagai berikut:
    apigee-service apigee-monit start
        
  10. Hapus tabel IP untuk membatalkan pemblokiran port health check dan memungkinkan Pemroses Pesan menangani traffic lagi dengan menjalankan perintah di bawah ini:
    sudo iptables -F
    sudo iptables -L
        
curl 0:8082/v1/servers/self -s | jq '.tags.property' | jq '.[] | select(.name=="http.port")'

sudo iptables -A INPUT -i eth0 -p tcp --dport port # -j REJECT
for i in {001..120}; do sleep 1; printf "\r ${i}"; done
apigee-service apigee-monit stop
apigee-service edge-message-processor stop
apigee-service edge-message-processor start
apigee-service edge-message-processor wait_for_ready
apigee-service apigee-monit start
sudo iptables -F
sudo iptables -L

Dengan port # adalah nomor port yang ditampilkan dari perintah yang dilakukan di langkah 2.