Edge for Private Cloud نسخه 4.18.05
اگر در حین بهروزرسانی Edge 4.18.05 با خطایی مواجه شدید، میتوانید مؤلفهای که باعث خطا شده است را برگردانید و سپس دوباره بهروزرسانی را امتحان کنید.
میتوانید Edge 4.18.05 را به نسخههای Feature Release زیر برگردانید:
- نسخه 4.18.01
- نسخه 4.17.09 *
- نسخه 4.17.05 *
* برای برگرداندن از 4.18.05 به 4.17.09 یا 4.17.05، علاوه بر برگرداندن اجزای هر گره، باید Postgres را به عقب برگردانید . اگر به 4.18.01 برگردید، لازم نیست Postgres را برگردانید زیرا فرآیند ارتقا شامل بهروزرسانی Postgres نیست.
دو سناریو وجود دارد که ممکن است بخواهید یک بازگشت را انجام دهید:
- به نسخه قبلی ویژگی برگردید . به عنوان مثال از 4.18.05 تا 4.18.01.
- به نسخه بهروزرسانی قبلی در همان نسخه برگردید . به عنوان مثال، از 4.18.05.02 تا 4.18.05.01.
برای اطلاعات بیشتر، روند انتشار Apigee Edge را ببینید.
چه کسی می تواند یک بازگشت را انجام دهد
کاربری که rollback انجام می دهد باید همان کاربری باشد که Edge را در ابتدا به روز کرده است یا کاربری که به عنوان root اجرا می شود.
به طور پیش فرض، اجزای Edge به عنوان کاربر "apigee" اجرا می شوند. در برخی موارد، ممکن است اجزای Edge را به عنوان کاربران مختلف اجرا کنید. به عنوان مثال، اگر روتر باید به پورت های دارای امتیاز دسترسی داشته باشد، مانند پورت های زیر 1000، باید روتر را به عنوان روت یا به عنوان کاربر با دسترسی به آن پورت ها اجرا کنید. یا ممکن است یک مؤلفه را به عنوان یک کاربر و مؤلفه دیگر را به عنوان کاربر دیگر اجرا کنید.
کامپوننت هایی با کد مشترک
اجزای Edge زیر کد مشترکی دارند. بنابراین، برای برگرداندن هر یک از این مؤلفهها در یک گره، باید همه این مؤلفهها را که در آن گره هستند، برگردانید.
-
edge-management-server
(مدیریت سرور) -
edge-message-processor
(پردازنده پیام) -
edge-router
(روتر) -
edge-postgres-server
(سرور Postgres) -
edge-qpid-server
(سرور Qpid)
به عنوان مثال، اگر سرور مدیریت، روتر و پردازشگر پیام را روی گره نصب کرده اید، برای بازگرداندن هر یک از آنها باید هر سه را به عقب برگردانید.
به نسخه قبلی ویژگی برگردید
برای برگرداندن از 4.18.05 به 4.17.09 یا 4.17.05، علاوه بر برگرداندن اجزای هر گره، باید Postgres را به عقب برگردانید . اگر از 4.18.01 عقب نشینی کنید، نیازی به عقب نشینی Postgres ندارید زیرا فرآیند ارتقا شامل به روز رسانی Postgres نیست.
برای بازگشت به نسخه قبلی ویژگی، موارد زیر را در هر گره ای که مؤلفه را میزبانی می کند انجام دهید:
فایل
bootstrap.sh
را برای نسخه ای که می خواهید به آن برگردید دانلود کنید:- برای بازگشت به 4.18.01،
bootstrap_4.18.01.sh
را دانلود کنید:curl https://software.apigee.com/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh
- برای بازگشت به 4.17.09،
bootstrap_4.17.09.sh
را دانلود کنید:curl https://software.apigee.com/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh
- برای بازگشت به 4.17.05،
bootstrap_4.17.05.sh
را دانلود کنید:curl https://software.apigee.com/bootstrap_4.17.05.sh -o /tmp/bootstrap_4.17.05.sh
- برای بازگشت به 4.18.01،
- متوقف کردن مؤلفه برای برگشت به عقب:
- برای برگرداندن هر یک از مؤلفههای دارای کد مشترک در گره، باید همه آنها را متوقف کنید، همانطور که مثال زیر نشان میدهد:
/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، باید محتویات فایل
/opt/nginx/conf.d
را علاوه بر حذف گروه مؤلفهedge-gateway
حذف کنید:cd /opt/nginx/conf.d
rm -rf *
- برای برگرداندن هر یک از مؤلفههای دارای کد مشترک در گره، باید همه آنها را با حذف گروه مؤلفه
- نسخه 4.18.05
apigee-setup
را حذف نصب کنید:/opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
- نسخه 4.18.01، 4.17.09 یا 4.17.05 ابزار
apigee-service
و وابستگی های آن را نصب کنید. مثال زیر نسخه 4.17.09apigee-service
را نصب می کند:sudo bash /tmp/bootstrap_4.17.09.sh apigeeuser=uName apigeepassword=pWord
جایی که uName و pWord نام کاربری و رمز عبوری است که از Apigee دریافت کردهاید. اگر pWord حذف کنید، از شما خواسته می شود آن را وارد کنید.
اگر با خطا مواجه شدید، مطمئن شوید که فایل
bootstrap.sh
را در مرحله 1 دانلود کرده اید. - نصب
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
- این فرآیند را برای هر گره ای که میزبان مؤلفه ای است که در حال بازگرداندن آن هستید، تکرار کنید.
برای برگرداندن از 4.18.05 به 4.17.09 یا 4.17.05، علاوه بر برگرداندن اجزای هر گره، باید Postgres را به عقب برگردانید . اگر از 4.18.01 عقب نشینی کنید، نیازی به عقب نشینی Postgres ندارید زیرا فرآیند ارتقا شامل به روز رسانی Postgres نیست.
به نسخه به روز رسانی قبلی برگردید
برای برگرداندن یک مؤلفه به نسخه خاصی از یک نسخه، موارد زیر را در هر گره ای که مؤلفه را میزبانی می کند انجام دهید:
- دانلود نسخه کامپوننت خاص:
/opt/apigee/apigee-service/bin/apigee-service component_version install
جایی که component_version نسخه کامپوننت و بهروزرسانی برای نصب است. به عنوان مثال:
/opt/apigee/apigee-service/bin/apigee-service edge-ui-4.17.09-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
توجه داشته باشید که هنگام نصب فقط نام کامپوننت را مشخص میکنید، نه نسخه را.
- این فرآیند را برای هر گره ای که میزبان مؤلفه ای است که در حال بازگرداندن آن هستید، تکرار کنید.
برای برگرداندن از 4.18.05 به 4.17.09 یا 4.17.05، علاوه بر برگرداندن اجزای هر گره، باید Postgres را به عقب برگردانید . اگر از 4.18.01 عقب نشینی کنید، نیازی به عقب نشینی Postgres ندارید زیرا فرآیند ارتقا شامل به روز رسانی Postgres نیست.
به روز رسانی Postgres 9.6 را به عقب برگردانید
اگر از نسخه 4.17.05 یا 4.17.09 به 4.18.05 ارتقا داده اید، باید علاوه بر اجزای Edge، به روز رسانی Postgres خود را برگردانید.
برای بازگرداندن بهروزرسانی Postgres هنگام بهروزرسانی Postgres در پیکربندی اصلی آماده به کار:
- گره آماده به کار جدید را برای تبدیل شدن به استاد Postgres تبلیغ کنید. Master جدید Postgres همان نسخه نصب قبلی 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
- گره آماده به کار جدید را به عنوان Master 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
- گره آماده به کار جدید را به عنوان استاد جدید ارتقا دهید:
- گره آماده به کار قدیمی را بازسازی کنید:
- فایل پیکربندی را که برای نصب نسخه فعلی 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
اگر در حال اجرا نیست، آن را شروع کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
- فایل پیکربندی را که برای نصب نسخه فعلی Edge استفاده کردید، ویرایش کنید تا موارد زیر را مشخص کنید:
- بررسی کنید که گره آماده به کار جدید با مشاهده فایل
/opt/apigee/apigee-postgresql/conf/pg_hba.conf
در اصلی جدید اضافه شده است. - با اجرای دستور زیر در سرور مدیریت، تجزیه و تحلیل فعلی و اطلاعات گروه مصرف کننده را مشاهده کنید:
curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax
این دستور نام گروه تحلیلی را در قسمت
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" : { } }
- آدرس UUID استاد قدیمی را با اجرای دستور
curl
زیر در گره اصلی قدیمی دریافت کنید: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 master و standby را با تجزیه و تحلیل و گروه های مصرف کننده ثبت کنید:
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 Management را مجددا راه اندازی کنید:
/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 تکرار کنید تا مطمئن شوید که گره ها همگام هستند.
- مستر قدیمی Postgres را با استفاده از رویه بهروزرسانی Apigee Edge 4.16.01/4.16.05 به 4.17.09 از کار انداخت.
همچنین، میتوانید Qpid را از اصلی قدیمی حذف کنید و Qpid را روی گره اصلی جدید نصب کنید . پس از حذف نصب Qpid، می توانید گره اصلی قدیمی را از کار بیندازید.
Qpid را از Master قدیمی حذف کنید و Qpid را روی Master جدید نصب کنید
برای حذف Qpid از Master قدیمی و نصب آن بر روی Master جدید:
- با اجرای دستور زیر بر روی تمام پردازشگرهای پیام، دسترسی به پورت Qpid 5672 در Master قدیمی را از دسترسی توسط Message Processors مسدود کنید:
iptables -A OUTPUT -p tcp -d 10.233.147.20 --dport 5672 -j DROP
- با اجرای دستور زیر از خالی بودن صف پیام Qpid اطمینان حاصل کنید. شما نمیتوانید Qpid را تا زمانی که تمام پیامهای معلق را پردازش نکند حذف نصب کنید:
qpid-stat -q
این دستور یک جدول حاوی تعداد
msg, msgIn, and msgOut
را نمایش می دهد. همه پیام ها زمانی کهmsg=0
وmsgIn=msgOut
پردازش می شوند. - UUID سرور Qpid را با اجرای دستور زیر بر روی Master قدیمی تعیین کنید. این اطلاعات را برای مراحل بعدی ذخیره کنید:
curl -u sysAdminEmail:password http://node_IP::8083/v1/servers/self
- Qpid را روی استاد قدیمی متوقف کنید:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
/opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
- حذف نصب سرور Qpid:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall
/opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall
- سرور قدیمی Qpid را از گروه های تجزیه و تحلیل و مصرف کننده حذف کنید:
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
- سرور قدیمی Qpid را از Zookeeper حذف کنید:
curl -u sysAdminEmail:password -X DELETE \ http://ms_IP:8080/v1/servers/qpid_UUID
- Qpid را روی مستر جدید نصب کنید:
/opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
- UUID سرور Qpid را در master new با اجرای دستور زیر بر روی master new تعیین کنید. این اطلاعات را برای مراحل بعدی ذخیره کنید:
curl -u sysAdminEmail:password http://node_IP::8083/v1/servers/self
- سرور Qpid جدید را با گروه های تجزیه و تحلیل و مصرف کننده ثبت کنید:
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
- راه اندازی مجدد تمام پردازشگرهای پیام:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- دستور زیر را در سرور Qpid جدید اجرا کنید تا بررسی کنید که صف ایجاد شده است:
qpid-stat -q
مطمئن شوید که
msg
،msgIn
وmsgOut
را میبینید که بهروزرسانی میشوند، زیرا سرور Qpid پیامها را پردازش میکند.
اگر هنگام بازگشت با مشکل مواجه شدید با پشتیبانی Apigee Edge تماس بگیرید.