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 güncellemesi sırasında bir hatayla karşılaşırsanız hataya neden olan bileşeni geri alıp güncellemeyi tekrar deneyebilirsiniz.

Edge 4.18.05'i aşağıdaki Özellik 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 sürümünden 4.17.09 veya 4.17.05 sürümüne geri dönmek için her düğümde 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şlemi Postgres güncellemesi içermediğinden Postgres'i geri çekmeniz gerekmez.

Geri alma işlemini gerçekleştirmek isteyebileceğiniz iki senaryo vardır:

  1. Önceki bir Özellik Sürümüne geri dönme. Örneğin, 4.18.05 ile 4.18.01 arası.
  2. Aynı sürümde önceki bir güncelleme sürümüne geri dönme. Örneğin, 4.18.05.02 ile 4.18.05.01 arası.

Daha fazla bilgi için Apigee Edge sürüm sürecine göz atın.

Geri alma işlemini kimler gerçekleştirebilir?

Geri alma işlemini gerçekleştiren kullanıcı, Edge'i ilk kez güncelleyen veya kök olarak çalışan bir kullanıcıyla aynı 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 ayrıcalıklı bağlantı noktalarına (ör. 1.000'in altındakiler) 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 ve başka bir bileşeni 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üğümde bu bileşenlerden herhangi birini geri almak için söz konusu düğümde bulunan tüm bu bileşenleri geri almanız gerekir.

  • edge-management-server (Yönetim Sunucusu)
  • edge-message-processor (İleti İş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 İşleyici yüklüyse bunlardan herhangi birini geri almak için üçünü de geri almanız gerekir.

Önceki bir Özellik Sürümüne geri yükleme

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üğümde bileşenleri geri almanın yanı sıra Postgres'i geri almanız gerekir. 4.18.01 sürümünden önceki sürüme dönerseniz yükseltme işlemi Postgres güncellemesi içermediğinden Postgres'i geri çekmeniz 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 için 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 uygulamasını indirin:
      curl https://software.apigee.com/bootstrap_4.17.05.sh -o /tmp/bootstrap_4.17.05.sh 
  2. Bileşenin geri dönmesini durdurun:
    1. Düğümde ortak koda sahip bileşenleri geri çekmek için bunların tümünü durdurmanız gerekir. Aşağıdaki örnekte gösterildiği gibi:
      /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 herhangi bir bileşeni geri çekmek için yalnızca söz konusu bileşeni durdurun:
      • /opt/apigee/apigee-service/bin/apigee-service component stop
  3. Para kazanma özelliğini eski haline getiriyorsanız bu programı 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üğüme geri dönmek için bileşeni kaldırın:
    1. Düğümde ortak koda sahip bileşenlerden herhangi birini geri çekmek için aşağıdaki örnekte gösterildiği gibi, edge-gateway bileşen grubunu kaldırarak tümünü kaldırmanız gerekir:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
    2. Düğümdeki başka bir bileşeni geri almak için aşağıdaki örnekte gösterildiği gibi yalnızca söz konusu bileşeni kaldırın:
      /opt/apigee/apigee-service/bin/apigee-service component uninstall

      Burada component, bileşen adıdır.

    3. Edge Yönlendiricisi'ni geri çekmek 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 uygulamasının 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 4.17.09 sürümü yüklenmektedir:
    sudo bash /tmp/bootstrap_4.17.09.sh apigeeuser=uName apigeepassword=pWord

    Burada uName ve pWord, Apigee'den aldığınız kullanıcı adı ve şifredir. pWord yönergesini çıkarırsanız bunu girmeniz istenir.

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

  7. apigee-setup eklentisini yükleme:
    /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şen, configFile ise eski sürüm için yapılandırma dosyanızdır.

  9. Qpid'yi geri alıyorsanız iptables'ı temizleyin:
    sudo iptables -F
  10. Geri almakta olduğunuz bileşeni barındıran her bir 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üğümde bileşenleri geri almanın yanı sıra Postgres'i geri almanız gerekir. 4.18.01 sürümünden önceki sürüme dönerseniz yükseltme işlemi Postgres güncellemesi içermediğinden Postgres'i geri çekmeniz gerekmez.

Önceki güncelleme sürümüne geri yükleme

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

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

    Burada 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 mevcut 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 uygulamasını 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üklerken yalnızca bileşen adını belirttiğinizi, sürümü belirtmeyeceğinizi unutmayın.

  3. Geri almakta olduğunuz bileşeni barındıran her bir 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üğümde bileşenleri geri almanın yanı sıra Postgres'i geri almanız gerekir. 4.18.01 sürümünden önceki sürüme dönerseniz yükseltme işlemi Postgres güncellemesi içermediğinden Postgres'i geri çekmeniz gerekmez.

Postgres 9.6 güncellemesini geri çekme

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

Ana bekleme yapılandırmasında Postgres'i güncellerken Postgres güncellemesini geri almak için:

  • Postgres ustası olmak üzere yeni bekleme düğümünü yükseltin. Yeni Postgres ana kopyası, önceki Edge yüklemenizle aynı sürüm olur.
  • Eski bekleme düğümünü yeni ana düğümün bekleme düğümü olarak yapılandırın. Eski bekleme düğümü, önceki Edge yüklemenizle aynı sürüm olacaktır.
  • Yeni ana ve bekleme düğümlerini analiz ve tüketici gruplarıyla kaydedin.

Geri alma işlemini bitirdiğinizde, eski ana düğüme artık gerek kalmaz. Ardından eski ana düğümü geçersiz kılabilirsiniz.

  1. Yeni beklemedeki 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 yapın:
      apigee-service apigee-postgresql promote-standby-to-master new_standby_IP

      İstenirse varsayılan olarak "postgres" olan "Apigee" kullanıcısı için Postgres şifresini girin.

    2. Mevcut Edge sürümünüzü 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 slaydı 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. Mevcut Edge sürümünüzü 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. /opt/apigee/apigee-postgresql/conf/pg_hba.conf dosyasını yeni ana düğümde görüntüleyerek yeni bekleme düğümünün eklendiğini doğrulayın.
  7. Yönetim Sunucusu'nda 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ındaki analiz grubunun adını, consumer-groups altındaki name alanındaki tüketici grubu adını döndürür. Ayrıca, postgres-server ve datastores alanındaki eski Postgres ana ve bekleme düğümlerinin UUID'lerini de döndürür. Çıkış şu biçimde görünmelidir:

    {
      "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

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

    "type" : [ "postgres-server" ],
    "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
  9. Eski bekleme düğümünün ve yeni ana ağı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

    Burada 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 yukarıda göründüğü sıradadır. 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

    Yeni ana ve beklemedeki düğümlerin UUID'lerinin analiz grubunda ve tüketici grubunda listelendiğini görürsünüz.

  14. Uç 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ı yayınlayarak çoğaltma durumunu doğrulayın. Çoğaltmanın başarılı olması için sistem her iki sunucuda da aynı sonuçları göstermelidir:

    Yeni ana slaytta şu komutu çalıştırın:

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

    Dosyanın ana slayt olduğunu söylediğini doğrulayın. Eski bekleme düğümünde:

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

    Bekleme olduğunu söylediğini 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 sürümüne güncelleme bölümündeki prosedürü kullanarak eski Postgres ana düğümünü kullanımdan kaldırın.

    Alternatif olarak, Qpid'yi eski ana düğümden kaldırabilir ve yeni ana düğüme yükleyebilirsiniz. Qpid'yi kaldırdıktan sonra eski ana düğümü devre dışı bırakabilirsiniz.

Qpid'yi eski ana slayttan kaldırın ve Qpid'yi yeni ana slayda yükleyin

Qpid'yi eski ana slayttan kaldırıp yeni ana slayda yüklemek için:

  1. Aşağıdaki komutu tüm Mesaj İşleyicilerinde çalıştırarak eski ana makinede Qpid bağlantı noktası 5672'ye Mesaj İşleyicilerin 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. 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 tabloyu görüntüler. msg=0 ve msgIn=msgOut olduğunda tüm mesajlar işlenecek.

  3. Aşağıdaki komutu eski ana makinede çalıştırarak eski ana makinede Qpid sunucusunun UUID'sini belirleyin. Sürecin ilerleyen bölümlerinde kullanmak için bu bilgileri kaydedin:
    curl -u sysAdminEmail:password http://node_IP::8083/v1/servers/self
  4. Eski ana slaytta Qpid'yi 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ırın:
    /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 analizlerden 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 slayda Qpid'yi yükleyin:
    /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
  9. Yeni ana makinede aşağıdaki komutu çalıştırarak yeni ana makinede Qpid sunucusunun UUID'sini belirleyin. Sürecin ilerleyen bölümlerinde kullanmak için bu bilgileri kaydedin:
    curl -u sysAdminEmail:password
      http://node_IP::8083/v1/servers/self
  10. Yeni Qpid sunucusunu analizler 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şturulup oluşturulmadığını 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 öğelerinin güncellendiğinden emin olun.

Eski sürüme geri dönerken sorunlarla karşılaşırsanız Apigee Edge Desteği ile iletişime geçin.