برگرداندن Apigee Edge 4.52.01

اگر درحین به‌روزرسانی به Edge 4.52.01 با خطا مواجه شدید، می‌توانید مؤلفه‌ای را که باعث خطا شده است برگردانید و سپس به‌روزرسانی را دوباره امتحان کنید.

می‌توانید Edge 4.52.01 را به نسخه‌های اصلی زیر عقب‌گرد کنید:

  • نسخه 4.52.00
  • نسخه 4.51.00

دو سناریو وجود دارد که ممکن است بخواهید یک بازگردانی انجام دهید:

  1. برگشتن به نسخه قبلی اصلی یا فرعی. برای مثال از ۴.۵۲.۰۱ به ۴.۵۲.۰۰.
  2. برگشتن به نسخه وصله قبلی در همان نسخه پخش. برای مثال، از 4.52.00.02 به 4.52.00.01.

برای اطلاعات بیشتر، فرایند انتشار Apigee Edge را ببینید.

چه کسی می‌تواند یک برگرداندن انجام دهد

کاربری که بازگرداندن را انجام می‌دهد باید همان کاربری باشد که در ابتدا Edge را به‌روزرسانی کرده است، یا کاربری که به‌عنوان ریشه اجرا می‌شود.

به‌طور پیش‌فرض، عناصر Edge به‌عنوان کاربر «apigee» اجرا می‌شوند. در برخی موارد، ممکن است عناصر Edge را به‌عنوان کاربران مختلف اجرا کنید. برای مثال، اگر «مسیریاب» باید به درگاه‌های ممتاز، مثل درگاه‌های زیر ۱۰۰۰، دسترسی داشته باشد، باید «مسیریاب» را به‌عنوان ریشه یا به‌عنوان کاربری که به آن درگاه‌ها دسترسی دارد اجرا کنید. یا ممکن است یک عنصر را به‌عنوان یک کاربر و عنصر دیگر را به‌عنوان کاربر دیگری اجرا کنید.

عناصر دارای کد مشترک

اجزای Edge زیر کد مشترک دارند. بنابراین، برای عقب‌گرد کردن هریک از این عناصر در یک گره، باید همه این عناصر موجود در آن گره را عقب‌گرد کنید.

  • ‫edge-management-server (سرور مدیریت)
  • ‫edge-message-processor (پردازشگر پیام)
  • ‫edge-router (رهیاب)
  • ‫edge-postgres-server (سرور Postgres)
  • ‫edge-qpid-server (سرور Qpid)

برای مثال، اگر «سرور مدیریت»، «مسیریاب»، و «پردازشگر پیام» را روی گره نصب کرده باشید، برای برگرداندن هریک از آن‌ها باید هر سه را برگردانید.

برگشتن به نسخه اصلی یا فرعی قبلی

برای برگرداندن به نسخه اصلی یا فرعی قبلی، مراحل زیر را در هر گره‌ای که میزبان جزء است انجام دهید:

  1. فایل bootstrap.sh را برای نسخه‌ای که می‌خواهید به آن برگردید بارگیری کنید:

    • برای بازگرداندن به نسخه ۴.۵۱.۰۰، bootstrap_4.51.00.sh را بارگیری کنید:
      curl https://software.apigee.com/bootstrap_4.51.00.sh -o /tmp/bootstrap_4.51.00.sh 
  2. برای عقب‌گرد کردن، عنصر را متوقف کنید:
    1. برای برگرداندن هریک از عناصر دارای کد مشترک در گره، باید همه آن‌ها را متوقف کنید، همان‌طور که در مثال زیر نشان داده شده است:
      /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. برای عقب‌گرد کردن هر عنصر دیگری در گره، فقط آن عنصر را متوقف کنید:
      • /opt/apigee/apigee-service/bin/apigee-service component stop
  3. اگر درحال برگرداندن «درآمدزایی» هستید، آن را از همه گره‌های «سرور مدیریت» و «پردازشگر پیام» حذف نصب کنید:
    /opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
  4. برای برگرداندن به نسخه قبلی در گره، عنصر را حذف نصب کنید:
    1. برای برگرداندن هریک از عناصر دارای کد مشترک در گره، باید همه آن‌ها را با برداشتن گروه عنصر edge-gateway بردارید، همان‌طور که در مثال زیر نشان داده شده است:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
    2. برای برگرداندن هر عنصر دیگری در گره، فقط آن عنصر را حذف نصب کنید، همان‌طور که مثال زیر نشان می‌دهد:
      /opt/apigee/apigee-service/bin/apigee-service component uninstall

      که در آن component نام عنصر است.

    3. برای برگرداندن «مسیریاب لبه»، باید محتوای فایل /opt/nginx/conf.d را علاوه‌بر حذف نصب گروه مؤلفه edge-gateway حذف کنید:
      cd /opt/nginx/conf.d
      rm -rf *
  5. نسخه ۴.۵۲.۰۱ از apigee-setup را حذف نصب کنید:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. نسخه ۴.۵۱.۰۰ ابزار apigee-service و وابستگی‌های آن را نصب کنید. مثال زیر نسخه ۴.۵۱.۰۰ از apigee-service را نصب می‌کند:
    sudo bash /tmp/bootstrap_4.51.00.sh apigeeuser=uName apigeepassword=pWord

    که در آن uName و pWord نام کاربری و گذرواژه‌ای است که از Apigee دریافت کرده‌اید. اگر pWord را حذف کنید، از شما خواسته می‌شود آن را وارد کنید.

    اگر خطا دریافت کردید، مطمئن شوید که فایل bootstrap.sh را در مرحله ۱ بارگیری کرده‌اید.

  7. نصب apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  8. نسخه قدیمی‌تر عنصر را نصب کنید:
    /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile

    که در آن component عنصر موردنظر برای نصب و configFile فایل پیکربندی شما برای نسخه قدیمی‌تر است.

  9. اگر درحال برگرداندن Qpid هستید، iptables را پاک کنید:
    sudo iptables -F
  10. این فرایند را برای هر گره‌ای که میزبان مؤلفه‌ای است که درحال برگرداندن آن هستید تکرار کنید.

برگشتن به نسخه وصله قبلی

برای برگرداندن عنصر به نسخه وصله خاص، مراحل زیر را در هر گره‌ای که میزبان عنصر است انجام دهید:

  1. نسخه عنصر خاص را بارگیری کنید:
    /opt/apigee/apigee-service/bin/apigee-service component_version install

    که در آن component_version عنصر و نسخه وصله برای نصب است. برای مثال:

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

    اگر از مخزن آنلاین Apigee استفاده می‌کنید، می‌توانید نسخه‌های عنصر دردسترس را بااستفاده از دستور زیر تعیین کنید:

    yum --showduplicates list comp

    برای مثال:

    yum --showduplicates list edge-ui
  2. برای نصب عنصر، از apigee-setup استفاده کنید:
    /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile

    برای مثال:

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

    توجه داشته باشید که هنگام نصب، فقط نام عنصر را مشخص می‌کنید، نه نسخه آن را.

  3. این فرایند را برای هر گره‌ای که میزبان مؤلفه‌ای است که درحال برگرداندن آن هستید تکرار کنید.

برگرداندن به‌روزرسانی Postgres 10.17

اگر از نسخه 4.50.00 یا 4.51.00 به نسخه 4.52.01 ارتقا داده‌اید، باید به‌علاوه مؤلفه‌های Edge، به‌روزرسانی Postgres خود را نیز برگردانید.

برای برگرداندن به‌روزرسانی Postgres هنگام به‌روزرسانی Postgres در پیکربندی اصلی-آماده‌به‌کار:

  • گره آماده به‌کار جدید را ارتقا دهید تا به سرور اصلی Postgres تبدیل شود. نسخه اصلی Postgres جدید همان نسخه نصب قبلی Edge شما خواهد بود.
  • گره آماده‌به‌کار قدیمی را پیکربندی کنید تا گره آماده‌به‌کار اصلی جدید باشد. گره آماده به‌کار قدیمی همان نسخه نصب قبلی Edge شما خواهد بود.
  • گره‌های اصلی و آماده به‌کار جدید را در گروه‌های مصرف‌کننده و تجزیه‌وتحلیل ثبت کنید.

وقتی بازگرداندن به عقب تمام شد، دیگر به گره اصلی قدیمی نیاز نخواهید داشت. سپس می‌توانید گره اصلی قدیمی را ازکار بیندازید.

  1. مطمئن شوید گره آماده‌به‌کار جدید Postgres درحال اجرا است:
    /opt/apigee/apigee-service/bin/apigee-all status

    اگر Postgres اجرا نمی‌شود، آن را شروع کنید:

    /opt/apigee/apigee-service/bin/apigee-all start
  2. مطمئن شوید که Postgres در گره اصلی قدیمی و گره آماده به‌کار قدیمی متوقف شده است:
    /opt/apigee/apigee-service/bin/apigee-all status

    اگر Postgres درحال اجرا است، آن را متوقف کنید:

    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  3. اگر نصب شده است، Qpid را در گره آماده به‌کار قدیمی شروع کنید:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
  4. ترفیع دادن گره آماده به‌کار جدید به‌عنوان سرور اصلی Postgres:
    1. گره آماده به‌کار جدید را به کارگزار جدید ارتقا دهید:
      apigee-service apigee-postgresql promote-standby-to-master new_standby_IP

      درصورت درخواست، گذرواژه Postgres را برای کاربر «apigee» وارد کنید که به‌طور پیش‌فرض «postgres» است.

    2. فایل پیکربندی را که برای نصب نسخه فعلی Edge استفاده کرده‌اید ویرایش کنید تا موارد زیر را مشخص کنید:
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    3. پیکربندی سرپرست جدید:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
  5. اگر ازقبل گره آماده به‌کار قدیمی را به نسخه جدیدتر ارتقا داده‌اید، ابتدا باید نرم‌افزار Apigee را در گره آماده به‌کار قدیمی تنزل دهید. اگر هنوز نسخه قدیمی‌تر را در گره آماده‌به‌کار قدیمی دارید، می‌توانید از این مرحله رد شوید و به مرحله ۶ بروید.
    1. ‫Postgres را در گره آماده‌به‌کار قدیمی متوقف کنید:
      apigee-service apigee-postgresql stop
      apigee-service edge-postgres-server stop
    2. ‫Postgres را از گره آماده به‌کار قدیمی حذف نصب کنید:
      apigee-service apigee-postgresql uninstall
      apigee-service edge-postgres-server uninstall
    3. دایرکتوری داده‌های Postgres را از گره آماده به‌کار قدیمی حذف کنید:
      cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
    4. نسخه قدیمی‌تر bootstrap (برای نسخه Apigee که به آن برمی‌گردید) را در گره آماده به‌کار قدیمی بارگیری و اجرا کنید. مراحل دقیق ممکن است بسته به اینکه از نصب مبتنی بر اینترنت یا نصب آفلاین استفاده می‌کنید متفاوت باشد. اجرای نسخه قدیمی‌تر Apigee bootstrap مخازن yum را با داده‌های نسخه قدیمی‌تر Apigee راه‌اندازی می‌کند.
    5. عناصر Postgres را در گره آماده به‌کار قدیمی راه‌اندازی کنید:
      /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
    6. بررسی کنید و مطمئن شوید که عناصر Postgres در گره آماده به‌کار قدیمی به نسخه قدیمی‌تر برگردانده شده‌اند:
      apigee-service apigee-postgresql version
      apigee-service edge-postgres-server version
  6. بازسازی گره آماده‌به‌کار قدیمی:
    1. فایل پیکربندی را که برای نصب نسخه فعلی Edge استفاده کرده‌اید ویرایش کنید تا موارد زیر را مشخص کنید:
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    2. فهرست راهنمای داده‌ها را در گره آماده به‌کار قدیمی بردارید:
      cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
    3. گره آماده‌به‌کار قدیمی را دوباره پیکربندی کنید تا گره آماده‌به‌کار اصلی جدید باشد:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
    4. مطمئن شوید که Postgres در گره آماده‌به‌کار قدیمی اجرا می‌شود:
      /opt/apigee/apigee-service/bin/apigee-all status

      اگر Postgres اجرا نمی‌شود، آن را شروع کنید:

      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
  7. با مشاهده فایل /opt/apigee/apigee-postgresql/conf/pg_hba.conf در سرور اصلی جدید، تأیید کنید که گره آماده‌به‌کار جدید اضافه شده است.
  8. با اجرای فرمان زیر در «سرور مدیریت»، اطلاعات گروه مصرف‌کننده و تجزیه‌وتحلیل فعلی را مشاهده کنید:
    curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    این فرمان نام گروه تجزیه‌وتحلیل را در فیلد name و نام گروه مصرف‌کننده را در فیلد name در زیر consumer-groups برمی‌گرداند. همچنین شناسه‌های یکتای گره‌های آماده‌به‌کار و اصلی Postgres قدیمی را در فیلد postgres-server و در فیلد datastores برمی‌گرداند. باید برونداد را به‌صورت زیر ببینید:

    {
      "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" : {
      }
    }
  9. با اجرای فرمان curl زیر در گره سرپرست قدیمی، نشانی UUID سرپرست قدیمی را دریافت کنید:
    curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self

    باید UUID گره را در انتهای برونداد به‌صورت زیر ببینید:

    "type" : [ "postgres-server" ],
    "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
  10. مرحله قبلی را تکرار کنید تا نشانی‌های IP گره آماده به‌کار قدیمی و کارگزار جدید را دریافت کنید.
  11. گره‌های اصلی و آماده‌به‌کار قدیمی را از گروه مصرف‌کننده بردارید:
    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 و consumer-group-001 نام‌های پیش‌فرض گروه‌های مصرف‌کننده و Analytics هستند. masterUUID,standbyUUID همان ترتیبی را دارند که وقتی اطلاعات گروه مصرف‌کننده و تجزیه‌وتحلیل فعلی را در بالا مشاهده کردید، در بالا نشان داده شدند. شاید لازم باشد آن‌ها را به‌عنوان standbyUUID,masterUUID مشخص کنید.

    دارایی datastores برای consumer-groups باید اکنون خالی باشد.

  12. گره‌های اصلی و آماده‌به‌کار قدیمی را از گروه تجزیه‌وتحلیل بردارید:
    curl -u sysAdminEmail:password -X DELETE \
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v

    دارایی postgres-server در uuids اکنون باید خالی باشد.

  13. ثبت گره‌های اصلی و آماده‌به‌کار PG جدید با گروه‌های مصرف‌کننده و تجزیه‌وتحلیل:
    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
  14. گروه تجزیه‌وتحلیل را اعتبارسنجی کنید:
    curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    باید شناسه جهانی یکتای گره‌های اصلی و آماده به‌کار جدید را در گروه تجزیه‌وتحلیل و گروه مصرف‌کننده ببینید.

  15. «سرور مدیریت Edge» را بازراه‌اندازی کنید:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
  16. بازراه‌اندازی همه سرورهای Qpid:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
  17. بازراه‌اندازی همه سرورهای Postgres:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  18. با اجرای دستورگان‌های زیر در هر دو سرور، وضعیت تکثیر را درستی‌سنجی کنید. سیستم باید نتایج یکسانی را در هر دو سرور نمایش دهد تا از موفقیت‌آمیز بودن تکثیر اطمینان حاصل شود:

    در اسلاید اصلی جدید، این دستور را اجرا کنید:

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

    تأیید کنید که دستگاه اصلی است. در گره آماده‌به‌کار قدیمی:

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

    درستی‌سنجی کنید که در حالت آماده‌به‌کار باشد.

  19. پس‌از انجام چند درخواست API، مرحله قبلی را تکرار کنید تا مطمئن شوید گره‌ها همگام‌سازی شده‌اند.
  20. بااستفاده از رویه موجود در ازکار انداختن گره Postgres، سرور اصلی قدیمی Postgres را ازکار بیندازید.

    یا می‌توانید Qpid را از سرپرست قدیمی حذف نصب کنید و Qpid را در گره سرپرست جدید نصب کنید. پس‌از حذف نصب Qpid، می‌توانید گره اصلی قدیمی را ازکار بیندازید.

عقب‌گرد mTLS

برای برگرداندن به‌روزرسانی mTLS، مراحل زیر را در همه میزبان‌ها انجام دهید:

  1. توقف Apigee:
    apigee-all stop
  2. توقف mTLS:
    apigee-service apigee-mtls uninstall
  3. بازنصب mTLS:
    apigee-service apigee-mtls install
    apigee-service apigee-mtls setup -f /opt/silent.conf