اگر درطول بهروزرسانی به Edge 4.51.00 با خطایی مواجه شدید، میتوانید مؤلفهای را که باعث خطا شده است برگردانید و سپس بهروزرسانی را دوباره امتحان کنید.
میتوانید Edge 4.51.00 را به نسخههای «انتشار ویژگی» زیر عقبگرد کنید:
- نسخه 4.50.00
- نسخه ۴.۱۹.۰۶
دو سناریو وجود دارد که ممکن است بخواهید بازگرداندن را انجام دهید:
- به «نسخه ویژه» قبلی برگردید. برای مثال از 4.51.00 به 4.50.00.
- به نسخه بهروزرسانی قبلی در همان نسخه پخش برگردید. برای مثال، از 4.50.00.02 به 4.50.00.01.
برای اطلاعات بیشتر، به فرایند انتشار Apigee Edge مراجعه کنید.
چه کسی میتواند بازگرداندن را انجام دهد
کاربری که بازگشت به نسخه قبلی را انجام میدهد باید همان کاربری باشد که در ابتدا Edge را بهروزرسانی کرده است، یا کاربری که بهعنوان root اجرا میشود.
بهطور پیشفرض، مؤلفههای Edge بهعنوان کاربر «apigee» اجرا میشوند. در برخی موارد، ممکن است مؤلفههای Edge را بهعنوان کاربران مختلف اجرا کنید. برای مثال، اگر «مسیریاب» باید به درگاههای ممتاز دسترسی داشته باشد، مثل درگاههای زیر ۱۰۰۰، باید «مسیریاب» را بهعنوان ریشه یا بهعنوان کاربری که به آن درگاهها دسترسی دارد اجرا کنید. یا ممکن است یک مؤلفه را بهعنوان یک کاربر و مؤلفه دیگر را بهعنوان کاربر دیگری اجرا کنید.
عنصرهایی با کد مشترک
مؤلفههای Edge زیر کد مشترک دارند. بنابراین، برای عقبگرد کردن هریک از این مؤلفهها در یک گره، باید همه این مؤلفههای موجود در آن گره را عقبگرد کنید.
edge-management-server(سرور مدیریت)edge-message-processor(پردازشگر پیام)-
edge-router(رهیاب) edge-postgres-server(سرور Postgres)edge-qpid-server(Qpid Server)
برای مثال، اگر «سرور مدیریت»، «رهیاب»، و «پردازشگر پیام» را در گره نصب کرده باشید، برای بازگرداندن هرکدام از آنها باید هر سه را بازگردانید.
برگشتن به «نسخه ویژگی» قبلی
برای عقبگرد به «انتشار ویژگی» قبلی، در هر گرهای که میزبان مؤلفه است، کارهای زیر را انجام دهید:
-
فایل
bootstrap.shرا برای نسخهای که میخواهید به آن برگردید بارگیری کنید:- برای بازگشت به نسخه ۴.۵۰.۰۰،
bootstrap_4.50.00.shرا بارگیری کنید:curl https://software.apigee.com/bootstrap_4.50.00.sh -o /tmp/bootstrap_4.50.00.sh
- برای بازگشت به نسخه ۴.۱۹.۰۶،
bootstrap_4.19.06.shرا بارگیری کنید:curl https://software.apigee.com/bootstrap_4.19.01.sh -o /tmp/bootstrap_4.19.01.sh
- برای بازگشت به نسخه ۴.۵۰.۰۰،
- عنصری را که میخواهید عقبگرد شود متوقف کنید:
- برای بازگرداندن هریک از مؤلفههای دارای کد مشترک در گره، باید همه آنها را متوقف کنید، همانطور که در مثال زیر نشان داده شده است:
/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 - برای عقبگرد کردن هر مؤلفه دیگری در گره، فقط همان مؤلفه را متوقف کنید:
/opt/apigee/apigee-service/bin/apigee-service component stop
- برای بازگرداندن هریک از مؤلفههای دارای کد مشترک در گره، باید همه آنها را متوقف کنید، همانطور که در مثال زیر نشان داده شده است:
- اگر «درآمدزایی» را برمیگردانید، آن را از همه گرههای «سرور مدیریت» و «پردازشگر پیام» حذف نصب کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
- برای بازگشت به نسخه قبلی در گره، مؤلفه را حذف نصب کنید:
- برای بازگرداندن هریک از مؤلفههای دارای کد مشترک در گره، باید همه آنها را با حذف نصب گروه مؤلفه
edge-gatewayحذف نصب کنید، همانطور که در مثال زیر نشان داده شده است:/opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
- برای بازگرداندن هر مؤلفه دیگری در گره، فقط آن مؤلفه را حذف نصب کنید، همانطور که
مثال زیر نشان میدهد:
/opt/apigee/apigee-service/bin/apigee-service component uninstall
که component نام مؤلفه است.
- برای بازگرداندن Edge Router، باید علاوهبر حذف نصب گروه مؤلفه
edge-gateway، محتوای فایل/opt/nginx/conf.dرا نیز حذف کنید:cd /opt/nginx/conf.d
rm -rf *
- برای بازگرداندن هریک از مؤلفههای دارای کد مشترک در گره، باید همه آنها را با حذف نصب گروه مؤلفه
- حذف نصب نسخه ۴.۵۱.۰۰ از
apigee-setup:/opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
- نسخه ۴.۱۹.۰۶ یا ۴.۵۰.۰۰ از ابزار
apigee-serviceو وابستگیهای آن را نصب کنید. مثال زیر نسخه ۴.۵۰.۰۰apigee-serviceرا نصب میکند:sudo bash /tmp/bootstrap_4.50.00.sh apigeeuser=uName apigeepassword=pWord
که uName و pWord نام کاربری و گذرواژهای است که از Apigee دریافت کردهاید. اگر pWord را حذف کنید، از شما خواسته میشود آن را وارد کنید.
اگر خطایی دریافت کردید، مطمئن شوید فایل
bootstrap.shرا در مرحله ۱ بارگیری کرده باشید. - نصب
apigee-setup:/opt/apigee/apigee-service/bin/apigee-service apigee-setup install
- نسخه قدیمیتر مؤلفه را نصب کنید:
/opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile
که component مؤلفه موردنظر برای نصب و configFile فایل پیکربندی شما برای نسخه قدیمیتر است.
- اگر Qpid را برمیگردانید، iptables را پاک کنید:
sudo iptables -F
- این فرایند را برای هر گرهای که میزبان مؤلفهای است که میخواهید برگردانید تکرار کنید.
برگشتن به نسخه بهروزرسانی قبلی
برای بازگرداندن مؤلفه به نسخه خاصی از انتشار، در هر گرهای که مؤلفه را میزبانی میکند، کارهای زیر را انجام دهید:
- نسخه عنصر خاص را بارگیری کنید:
/opt/apigee/apigee-service/bin/apigee-service component_version install
که component_version مؤلفه و نسخه بهروزرسانی برای نصب است. برای مثال:
/opt/apigee/apigee-service/bin/apigee-service edge-ui-4.18.05-0.0.3749 install
اگر از مخزن آنلاین Apigee استفاده میکنید، میتوانید نسخههای مؤلفه دردسترس را بااستفاده از فرمان زیر تعیین کنید:
yum --showduplicates list comp
برای مثال:
yum --showduplicates list edge-ui
- از
apigee-setupبرای نصب مؤلفه استفاده کنید:/opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile
برای مثال:
/opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
توجه داشته باشید که هنگام نصب مؤلفه، فقط نام آن را مشخص میکنید، نه نسخه آن را.
- این فرایند را برای هر گرهای که میزبان مؤلفهای است که میخواهید برگردانید تکرار کنید.
برگرداندن بهروزرسانی Postgres 10.17
اگر از نسخه 4.19.06 یا 4.50.00 به 4.51.00 ارتقا دادهاید، باید علاوهبر مؤلفههای Edge، بهروزرسانی Postgres را نیز برگردانید.
برای بازگرداندن بهروزرسانی Postgres هنگام بهروزرسانی Postgres در پیکربندی master-standby:
- گره آمادهبهکار جدید را ارتقا دهید تا به گره اصلی Postgres تبدیل شود. Postgres master جدید همان نسخه نصب Edge قبلی شما خواهد بود.
- گره آمادهبهکار قدیمی را طوری پیکربندی کنید که گره آمادهبهکار گره اصلی جدید باشد. گره آمادهبهکار قدیمی همان نسخه نصب قبلی Edge خواهد بود.
- گرههای اصلی و آمادهبهکار جدید را با گروههای مصرفکننده و تجزیهوتحلیل ثبت کنید.
وقتی بازگشت به نسخه قبلی را انجام دادید، دیگر به گره اصلی قدیمی نیازی نخواهد بود. سپس میتوانید گره اصلی قدیمی را از کار بیندازید.
- مطمئن شوید گره Postgres آمادهبهکار جدید درحال اجرا باشد:
/opt/apigee/apigee-service/bin/apigee-all status
اگر Postgres درحال اجرا نیست، آن را شروع کنید:
/opt/apigee/apigee-service/bin/apigee-all start
- مطمئن شوید 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
- اگر نصب شده است، Qpid را در گره آمادهبهکار قدیمی شروع کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
- گره آمادهبهکار جدید را بهعنوان گره اصلی Postgres ارتقا دهید:
- گره آمادهبهکار جدید را به گره اصلی جدید ارتقا دهید:
apigee-service apigee-postgresql promote-standby-to-master new_standby_IP
درصورت درخواست، گذرواژه Postgres را برای کاربر «apigee» وارد کنید که بهطور پیشفرض «postgres» است.
- فایل پیکربندی را که برای نصب نسخه فعلی Edge استفاده کردهاید ویرایش کنید تا
موارد زیر را مشخص کنید:
# IP address of the new master: PG_MASTER=new_standby_IP # IP address of the old standby node PG_STANDBY=old_standby_IP
- پیکربندی نسخه اصلی جدید:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
- گره آمادهبهکار جدید را به گره اصلی جدید ارتقا دهید:
- اگر قبلاً گره آمادهبهکار قدیمی را به نسخه جدیدتر ارتقا دادهاید، ابتدا باید
نرمافزار Apigee را در گره آمادهبهکار قدیمی تنزل دهید. اگر هنوز نسخه قدیمیتر را در گره آمادهبهکار قدیمی دارید، میتوانید از این مرحله رد شوید و به مرحله ۶ بروید.
- Postgres را در گره آمادهبهکار قدیمی متوقف کنید:
apigee-service apigee-postgresql stop apigee-service edge-postgres-server stop
- Postgres را از گره آمادهبهکار قدیمی حذف نصب کنید:
apigee-service apigee-postgresql uninstall apigee-service edge-postgres-server uninstall
- دایرکتوری داده Postgres را از گره آمادهبهکار قدیمی حذف کنید:
cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
- راهانداز نسخه قدیمیتر را (برای نسخه Apigee که میخواهید به آن برگردید) در گره آمادهبهکار قدیمی بارگیری و اجرا کنید. مراحل دقیق ممکن است بسته به اینکه از نصب مبتنی بر اینترنت یا آفلاین استفاده میکنید متفاوت باشد. اجرای نسخه قدیمیتر راهانداز Apigee مخازن yum را با دادههای نسخه قدیمیتر Apigee راهاندازی میکند.
- مؤلفههای Postgres را در گره آمادهبهکار قدیمی راهاندازی کنید:
/opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
- بررسی و تأیید کنید که مؤلفههای Postgres در گره آمادهبهکار قدیمی
به نسخه قدیمیتر برگردانده شدهاند:
apigee-service apigee-postgresql version apigee-service edge-postgres-server version
- Postgres را در گره آمادهبهکار قدیمی متوقف کنید:
- بازسازی گره آمادهبهکار قدیمی:
- فایل پیکربندی را که برای نصب نسخه فعلی Edge استفاده کردهاید ویرایش کنید تا
موارد زیر را مشخص کنید:
# IP address of the new master: PG_MASTER=new_standby_IP # IP address of the old standby node PG_STANDBY=old_standby_IP
- فهرست راهنمای دادهها را در گره آمادهبهکار قدیمی بردارید:
cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
- گره آمادهبهکار قدیمی را دوباره پیکربندی کنید تا گره آمادهبهکار اصلی جدید باشد:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
- مطمئن شوید Postgres در گره آمادهبهکار قدیمی درحال اجرا است:
/opt/apigee/apigee-service/bin/apigee-all status
اگر Postgres درحال اجرا نیست، آن را شروع کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
- فایل پیکربندی را که برای نصب نسخه فعلی Edge استفاده کردهاید ویرایش کنید تا
موارد زیر را مشخص کنید:
- با مشاهده فایل
/opt/apigee/apigee-postgresql/conf/pg_hba.confدر گره اصلی جدید، بررسی کنید که گره آمادهبهکار جدید اضافه شده باشد. - با اجرای فرمان زیر در «سرور مدیریت»، اطلاعات گروه مصرفکننده و Analytics فعلی را مشاهده کنید:
curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax
این فرمان نام گروه Analytics را در فیلد
nameو نام گروه مصرفکننده را در فیلدnameدر بخشconsumer-groupsبرمیگرداند. همچنین شناسههای UUID گرههای اصلی و آمادهبهکار 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" : { } } - با اجرای فرمان
curlزیر در گره اصلی قدیمی، نشانی UUID گره اصلی قدیمی را دریافت کنید:curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self
باید UUID گره را در انتهای خروجی به این شکل ببینید:
"type" : [ "postgres-server" ], "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
- مرحله قبلی را تکرار کنید تا نشانیهای IP گره آمادهبهکار قدیمی و گره اصلی جدید را دریافت کنید.
- گرههای اصلی و آمادهبهکار قدیمی را از گروه مصرفکننده بردارید:
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 نامهای پیشفرض گروههای مصرفکننده و تجزیهوتحلیل هستند. masterUUID,standbyUUID به همان ترتیبی است که در بالا هنگام مشاهده اطلاعات فعلی تجزیهوتحلیل و گروه مصرفکننده ظاهر شد. شاید لازم باشد آنها را بهصورت standbyUUID,masterUUID مشخص کنید.
خصوصیت
datastoresبرایconsumer-groupsاکنون باید خالی باشد. - گرههای اصلی و آمادهبهکار قدیمی را از گروه تجزیهوتحلیل بردارید:
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اکنون باید خالی باشد. - گرههای اصلی و آمادهبهکار 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 - گروه تجزیهوتحلیل را اعتبارسنجی کنید:
curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax
باید UUIDهای گرههای اصلی و آمادهبهکار جدید را که در گروه تجزیهوتحلیل و گروه مصرفکننده فهرست شدهاند ببینید.
- «سرور مدیریت Edge» را بازراهاندازی کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- همه سرورهای Qpid را بازراهاندازی کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
- همه سرورهای Postgres را بازراهاندازی کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- با اجرای اسکریپتهای زیر در هر دو سرور، وضعیت تکرار را تأیید کنید. سیستم
باید نتایج یکسانی را در هر دو سرور نمایش دهد تا از تکرار موفقیتآمیز اطمینان حاصل شود:
در نسخه اصلی جدید، این دستور را اجرا کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
تأیید کنید که این دستگاه اصلی است. در گره آمادهبهکار قدیمی:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
تأیید کنید که این دستگاه آمادهبهکار است.
- مرحله قبلی را پساز ایجاد چند درخواست API تکرار کنید تا مطمئن شوید گرهها همگامسازی شدهاند.
- بااستفاده از رویه موجود در
بهروزرسانی Apigee Edge
4.16.01/4.16.05 به 4.17.09، Postgres master قدیمی را از کار بیندازید.
بهعنوان روش جایگزین، میتوانید Qpid را از گره اصلی قدیمی حذف نصب کنید و Qpid را در گره اصلی جدید نصب کنید. پساز حذف نصب Qpid، میتوانید گره اصلی قدیمی را از رده خارج کنید.
برگشتن به mTLS
برای بازگرداندن بهروزرسانی mTLS، مراحل زیر را در همه میزبانها انجام دهید:
- متوقف کردن Apigee:
apigee-all stop
- توقف mTLS:
apigee-service apigee-mtls uninstall
- بازنصب کردن mTLS:
apigee-service apigee-mtls install
apigee-service apigee-mtls setup -f /opt/silent.conf