Apigee Edge 4.18.05 sürümünü geri döndür

Edge for Private Cloud 4.18.05 sürümü

Edge 4.18.05 sürümüne güncelleme sırasında bir hatayla karşılaşırsanız hataya neden olan bileşeni geri alabilir ve güncellemeyi tekrar deneyebilirsiniz.

Edge 4.18.05'i aşağıdaki özellik yayınlanan sürüm sürümlerine geri alabilirsiniz:

  • Sürüm 4.18.01
  • Sürüm 4.17.09*
  • Sürüm 4.17.05*

* 4.18.05'ten 4.17.09 veya 4.17.05'e geri dönmek için her düğümdeki bileşenleri geri almanın yanı sıra Postgres'i de geri almanız gerekir. 4.18.01 sürümüne geri dönerseniz yükseltme işleminde Postgres güncellemesi yer almadığı için Postgres'i geri almanız gerekmez.

Geri alma işlemi yapmak isteyebileceğiniz iki senaryo vardır:

  1. Önceki bir özellik sürümüne geri dönme Örneğin, 4.18.05'ten 4.18.01'e.
  2. Aynı sürümdeki önceki bir güncelleme sürümüne geri dönün. Örneğin, 4.18.05.02'den 4.18.05.01'e.

Daha fazla bilgi için Apigee Edge sürüm süreci başlıklı makaleyi inceleyin.

Kimler geri alma işlemi gerçekleştirebilir?

Geri alma işlemini gerçekleştiren kullanıcı, Edge'i ilk güncelleyen kullanıcıyla aynı olmalı veya root olarak çalışan bir kullanıcı olmalıdır.

Varsayılan olarak Edge bileşenleri "apigee" kullanıcısı olarak çalışır. Bazı durumlarda, Edge bileşenlerini farklı kullanıcılar olarak çalıştırıyor olabilirsiniz. Örneğin, yönlendiricinin 1000'in altındakiler gibi ayrıcalıklı bağlantı noktalarına erişmesi gerekiyorsa yönlendiriciyi kök olarak veya bu bağlantı noktalarına erişimi olan bir kullanıcı olarak çalıştırmanız gerekir. Alternatif olarak, bir bileşeni bir kullanıcı olarak, başka bir bileşeni ise başka bir kullanıcı olarak çalıştırabilirsiniz.

Ortak koda sahip bileşenler

Aşağıdaki Edge bileşenleri ortak kodu paylaşır. Bu nedenle, bir düğümdeki bu bileşenlerden herhangi birini geri almak için o düğümdeki tüm bu bileşenleri geri almanız gerekir.

  • edge-management-server (Yönetim Sunucusu)
  • edge-message-processor (Mesaj İşleyici)
  • edge-router (Yönlendirici)
  • edge-postgres-server (Postgres sunucusu)
  • edge-qpid-server (Qpid Sunucusu)

Örneğin, düğümde Yönetim Sunucusu, Yönlendirici ve Mesaj İşlemci yüklüyse bunlardan herhangi birini geri almak için üçünü de geri almanız gerekir.

Önceki bir özellik sürümüne geri dönme

4.18.05 sürümünden 4.17.09 veya 4.17.05 sürümüne geri dönmek için her düğümdeki bileşenleri geri almanın yanı sıra Postgres'i de geri almanız gerekir. 4.18.01 sürümünden geri alma işlemi yaparsanız yükseltme işleminde Postgres güncellemesi yer almadığı için Postgres'i geri almanız gerekmez.

Önceki bir özellik sürümüne geri dönmek için bileşeni barındıran her düğümde aşağıdakileri yapın:

  1. Geri dönmek istediğiniz sürümün bootstrap.sh dosyasını indirin:

    • 4.18.01 sürümüne geri dönmek için bootstrap_4.18.01.sh dosyasını indirin:
      curl https://software.apigee.com/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh 
    • 4.17.09 sürümüne geri dönmek için bootstrap_4.17.09.sh dosyasını indirin:
      curl https://software.apigee.com/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh 
    • 4.17.05 sürümüne geri dönmek için bootstrap_4.17.05.sh dosyasını indirin:
      curl https://software.apigee.com/bootstrap_4.17.05.sh -o /tmp/bootstrap_4.17.05.sh 
  2. Geri döndürülecek bileşeni durdurun:
    1. Düğümdeki ortak koda sahip bileşenlerden herhangi birini geri almak için aşağıdaki örnekte gösterildiği gibi hepsini durdurmanız gerekir:
      /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. Düğümdeki diğer bileşenleri geri almak için yalnızca ilgili bileşeni durdurun:
      • /opt/apigee/apigee-service/bin/apigee-service component stop
  3. Para Kazanma'yı geri alıyorsanız tüm Yönetim Sunucusu ve Mesaj İşleyici düğümlerinden kaldırın:
    /opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
  4. Düğümde geri almak için bileşeni kaldırın:
    1. Düğümdeki ortak koda sahip bileşenlerden herhangi birini geri almak için aşağıdaki örnekte gösterildiği gibi edge-gateway bileşen grubunu kaldırarak hepsini kaldırmanız gerekir:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
    2. Düğümdeki diğer bileşenleri geri almak için aşağıdaki örnekte gösterildiği gibi yalnızca ilgili bileşeni kaldırın:
      /opt/apigee/apigee-service/bin/apigee-service component uninstall

      component, bileşen adıdır.

    3. Edge Router'ı geri almak için edge-gateway bileşen grubunu kaldırmanın yanı sıra /opt/nginx/conf.d dosyasının içeriğini de silmeniz gerekir:
      cd /opt/nginx/conf.d
      rm -rf *
  5. apigee-setup'in 4.18.05 sürümünü kaldırın:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. apigee-service yardımcı programının 4.18.01, 4.17.09 veya 4.17.05 sürümünü ve bağımlılıklarını yükleyin. Aşağıdaki örnekte, apigee-service aracının 4.17.09 sürümü yüklenmektedir:
    sudo bash /tmp/bootstrap_4.17.09.sh apigeeuser=uName apigeepassword=pWord

    uName ve pWord, Apigee'den aldığınız kullanıcı adı ve şifredir. pWord parametresini atlarsanız bu parametreyi girmeniz istenir.

    Hata alırsanız 1. adımda bootstrap.sh dosyasını indirdiğinizden emin olun.

  7. apigee-setup uygulamasını yükleyin:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  8. Bileşenin eski sürümünü yükleyin:
    /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile

    Burada component, yüklenecek bileşeni, configFile ise eski sürümün yapılandırma dosyasını ifade eder.

  9. Qpid'i geri alıyorsanız iptables'ı temizleyin:
    sudo iptables -F
  10. Geri aldığınız bileşeni barındıran her düğüm için bu işlemi tekrarlayın.

4.18.05 sürümünden 4.17.09 veya 4.17.05 sürümüne geri dönmek için her düğümdeki bileşenleri geri almanın yanı sıra Postgres'i de geri almanız gerekir. 4.18.01 sürümünden geri alma işlemi yaparsanız yükseltme işleminde Postgres güncellemesi yer almadığı için Postgres'i geri almanız gerekmez.

Önceki bir güncelleme sürümüne geri dönme

Bir bileşeni bir sürümün belirli bir versiyonuna geri almak için bileşeni barındıran her düğümde aşağıdakileri yapın:

  1. Belirli bileşen sürümünü indirin:
    /opt/apigee/apigee-service/bin/apigee-service component_version install

    component_version, yüklenecek bileşen ve güncelleme sürümüdür. Örneğin:

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

    Apigee online deposunu kullanıyorsanız aşağıdaki komutu kullanarak kullanılabilir bileşen sürümlerini belirleyebilirsiniz:

    yum --showduplicates list comp

    Örneğin:

    yum --showduplicates list edge-ui
  2. Bileşeni yüklemek için apigee-setup kullanın:
    /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile

    Örneğin:

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

    Yükleme sırasında sürümü değil, yalnızca bileşen adını belirttiğinizi unutmayın.

  3. Geri aldığınız bileşeni barındıran her düğüm için bu işlemi tekrarlayın.

4.18.05 sürümünden 4.17.09 veya 4.17.05 sürümüne geri dönmek için her düğümdeki bileşenleri geri almanın yanı sıra Postgres'i de geri almanız gerekir. 4.18.01'den geri alma işlemi yaparsanız yükseltme işlemi bir Postgres güncellemesi içermediğinden Postgres'i geri almanız gerekmez.

Postgres 9.6 güncellemesini geri alma

4.17.05 veya 4.17.09 sürümünden 4.18.05 sürümüne yükselttiyseniz Edge bileşenlerine ek olarak Postgres güncellemenizi de geri almanız gerekir.

Postgres'i ana-yedek yapılandırmasında güncellerken Postgres güncellemesini geri almak için:

  • Yeni bekleme düğümünü Postgres ana düğümü olacak şekilde yükseltin. Yeni Postgres ana sürümü, önceki Edge kurulumunuzla aynı sürüm olacaktır.
  • Eski bekleme düğümünü yeni ana düğümün bekleme düğümü olacak şekilde yapılandırın. Eski yedek düğüm, önceki Edge kurulumunuzla aynı sürümde olur.
  • Yeni ana ve bekleme düğümlerini analiz ve tüketici gruplarına kaydedin.

Geri alma işlemini tamamladığınızda eski ana düğüme artık gerek kalmaz. Ardından eski ana düğümü kullanımdan kaldırabilirsiniz.

  1. Yeni bekleme Postgres düğümünün çalıştığından emin olun:
    /opt/apigee/apigee-service/bin/apigee-all status

    Postgres çalışmıyorsa başlatın:

    /opt/apigee/apigee-service/bin/apigee-all start
  2. Postgres'in eski ana düğümde ve eski bekleme düğümünde durdurulduğundan emin olun:
    /opt/apigee/apigee-service/bin/apigee-all status

    Postgres çalışıyorsa durdurun:

    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  3. Yüklüyse eski bekleme düğümünde Qpid'yi başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
  4. Yeni bekleme düğümünü Postgres ana düğümü olarak yükseltin:
    1. Yeni bekleme düğümünü yeni ana düğüm olarak yükseltin:
      apigee-service apigee-postgresql promote-standby-to-master new_standby_IP

      İstenirse "apigee" kullanıcısı için Postgres şifresini girin. Bu şifre varsayılan olarak "postgres"tir.

    2. Edge'in mevcut sürümünü yüklemek için kullandığınız yapılandırma dosyasını düzenleyerek aşağıdakileri belirtin:
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    3. Yeni ana anahtarı yapılandırın:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
  5. Eski bekleme düğümünü yeniden oluşturun:
    1. Edge'in mevcut sürümünü yüklemek için kullandığınız yapılandırma dosyasını düzenleyerek aşağıdakileri belirtin:
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    2. Eski bekleme düğümündeki veri dizinini kaldırın:
      cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
    3. Eski bekleme düğümünü yeni ana düğümün bekleme düğümü olacak şekilde yeniden yapılandırın:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
    4. Postgres'in eski bekleme düğümünde çalıştığından emin olun:
      /opt/apigee/apigee-service/bin/apigee-all status

      Çalışmıyorsa başlatın:

      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
  6. Yeni ana düğümdeki /opt/apigee/apigee-postgresql/conf/pg_hba.conf dosyasını görüntüleyerek yeni bekleme düğümünün eklendiğini doğrulayın.
  7. Yönetim sunucusunda aşağıdaki komutu çalıştırarak mevcut analizleri ve tüketici grubu bilgilerini görüntüleyin:
    curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    Bu komut, name alanında analiz grubu adını ve consumer-groups altındaki name alanında tüketici grubu adını döndürür. Ayrıca, postgres-server ve datastores alanlarında eski Postgres ana ve bekleme düğümlerinin UUID'lerini döndürür. Aşağıdaki biçimde bir çıkış görürsünüz:

    {
      "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. Eski ana düğümde aşağıdaki curl komutunu çalıştırarak eski ana düğümün UUID adresini alın:
    curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self

    Çıkışın sonunda düğümün UUID'sini şu biçimde görürsünüz:

    "type" : [ "postgres-server" ],
    "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
  9. Eski yedek düğümün ve yeni ana düğümün IP adreslerini almak için önceki adımı tekrarlayın.
  10. Eski ana ve bekleme düğümlerini tüketici grubundan kaldırın:
    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

    axgroup-001 ve consumer-group-001, analiz ve tüketici gruplarının varsayılan adlarıdır. masterUUID,standbyUUID, yukarıdaki mevcut analiz ve tüketici grubu bilgilerini görüntülediğinizde gösterilen sırayla gösterilir. Bunları standbyUUID,masterUUID olarak belirtmeniz gerekebilir.

    consumer-groups için datastores özelliği artık boş olmalıdır.

  11. Eski ana ve bekleme düğümlerini analiz grubundan kaldırın:
    curl -u sysAdminEmail:password -X DELETE \
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v

    uuids altındaki postgres-server özelliği artık boş olmalıdır.

  12. Analiz ve tüketici gruplarıyla yeni PG ana ve bekleme düğümlerini kaydedin:
    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. Analiz grubunu doğrulayın:
    curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    Analiz grubunda ve tüketici grubunda listelenen yeni ana ve bekleme düğümlerinin UUID'lerini görmeniz gerekir.

  14. Edge Yönetim Sunucusu'nu yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
  15. Tüm Qpid sunucularını yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
  16. Tüm Postgres sunucularını yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  17. Her iki sunucuda da aşağıdaki komut dosyalarını çalıştırarak replikasyon durumunu doğrulayın. Sistem, başarılı bir replikasyon için her iki sunucuda da aynı sonuçları göstermelidir:

    Yeni ana düğümde şu komutu çalıştırın:

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

    Ana cihaz olduğunu doğrulayın. Eski bekleme düğümünde:

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

    Bekleme modunda olduğunu doğrulayın.

  18. Düğümlerin senkronize olduğundan emin olmak için birkaç API isteği yaptıktan sonra önceki adımı tekrarlayın.
  19. Apigee Edge 4.16.01/4.16.05'i 4.17.09'a güncelleme bölümündeki prosedürü kullanarak eski Postgres ana sunucusunu kullanımdan kaldırın.

    Alternatif olarak, Qpid'i eski ana düğümden kaldırıp yeni ana düğüme yükleyebilirsiniz. Qpid'i kaldırdıktan sonra eski ana düğümü kullanımdan kaldırabilirsiniz.

Qpid'i eski ana sunucudan kaldırıp yeni ana sunucuya yükleme

Qpid'i eski ana sunucudan kaldırıp yeni ana sunucuya yüklemek için:

  1. Tüm Mesaj İşleyicilerde aşağıdaki komutu çalıştırarak Mesaj İşleyicilerin eski ana düğümdeki Qpid bağlantı noktası 5672'ye erişimini engelleyin:
    iptables -A OUTPUT -p tcp -d 10.233.147.20 --dport 5672 -j DROP
  2. Aşağıdaki komutu çalıştırarak Qpid mesaj sırasının boş olduğundan emin olun. Qpid, bekleyen tüm mesajları işleyene kadar Qpid'yi kaldıramazsınız:
    qpid-stat -q

    Bu komut, msg, msgIn, and msgOut sayısını içeren bir tablo gösterir. msg=0 ve msgIn=msgOut olduğunda tüm mesajlar işlenmiş olur.

  3. Eski ana sunucuda aşağıdaki komutu çalıştırarak eski ana sunucudaki Qpid sunucusunun UUID'sini belirleyin. Bu bilgileri daha sonra kullanmak üzere kaydedin:
    curl -u sysAdminEmail:password http://node_IP::8083/v1/servers/self
  4. Eski ana düğümde Qpid'i durdurun:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
    /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
  5. Qpid sunucusunu kaldırma:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall
    /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall
  6. Eski Qpid sunucusunu analiz ve tüketici gruplarından kaldırın:
    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. Eski Qpid sunucusunu Zookeeper'dan kaldırın:
    curl -u sysAdminEmail:password -X DELETE \
      http://ms_IP:8080/v1/servers/qpid_UUID
  8. Yeni ana sunucuya Qpid'i yükleyin:
    /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
  9. Yeni ana sunucuda aşağıdaki komutu çalıştırarak yeni ana sunucudaki Qpid sunucusunun UUID'sini belirleyin. Bu bilgileri daha sonra kullanmak üzere kaydedin:
    curl -u sysAdminEmail:password
      http://node_IP::8083/v1/servers/self
  10. Yeni Qpid sunucusunu analiz ve tüketici gruplarına kaydedin:
    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. Tüm Mesaj İşleyicileri yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  12. Sıraların oluşturulduğunu kontrol etmek için yeni Qpid sunucusunda aşağıdaki komutu çalıştırın:
    qpid-stat -q

    Qpid sunucusu mesajları işlerken msg, msgIn ve msgOut değerlerinin güncellendiğinden emin olun.

Geri alma işlemi sırasında sorun yaşarsanız Apigee Edge Destek Ekibi ile iletişime geçin.