Edge for Private Cloud نسخه 4.16.05
این سند نحوه افزودن یک مرکز داده (که منطقه نیز نامیده می شود) را به یک مرکز داده موجود توضیح می دهد.
ملاحظات قبل از افزودن مرکز داده
قبل از نصب افزودن یک مرکز داده، باید نحوه پیکربندی سرورهای OpenLDAP، ZooKeeper، Cassandra و Postgres را در مراکز داده بدانید. همچنین باید اطمینان حاصل کنید که پورت های لازم بین گره های دو مرکز داده باز هستند.
- OpenLDAP
هر مرکز داده سرور OpenLDAP مخصوص به خود را دارد که با قابلیت تکرار پیکربندی شده است. هنگامی که مرکز داده جدید را نصب می کنید، باید OpenLDAP را برای استفاده از Replication پیکربندی کنید، و باید سرور OpenLDAP را در مرکز داده موجود دوباره پیکربندی کنید تا از Replication استفاده کند. - باغ وحش
برای ویژگی ZK_HOSTS برای هر دو مرکز داده، آدرسهای IP یا نامهای DNS همه گرههای ZooKeeper از هر دو مرکز داده را به یک ترتیب مشخص کنید و هر گرهای را با اصلاحکننده “:observer” علامتگذاری کنید. گره های بدون اصلاح کننده “:observer” “رای دهنده” نامیده می شوند. شما باید تعداد فرد "رای دهنده" را در پیکربندی خود داشته باشید.
در این توپولوژی، میزبان ZooKeeper در میزبان 9 ناظر است:
در فایل پیکربندی مثالی که در زیر نشان داده شده است، گره 9 با تعدیل کننده “:observer” برچسب گذاری شده است تا شما پنج رای دهنده داشته باشید: گره های 1، 2، 3، 7 و 8.
برای ویژگی ZK_CLIENT_HOSTS برای هر مرکز داده، آدرسهای IP یا نامهای DNS فقط گرههای ZooKeeper در مرکز داده را به همان ترتیب برای همه گرههای ZooKeeper در مرکز داده مشخص کنید. - کاساندرا
همه مراکز داده باید به همان تعداد گره کاساندرا داشته باشند.
برای CASS_HOSTS برای هر مرکز داده، مطمئن شوید که تمام آدرسهای IP Cassandra (نه نامهای DNS) را برای هر دو مرکز داده مشخص کردهاید. برای مرکز داده 1، ابتدا گره های Cassandra را در آن مرکز داده فهرست کنید. برای مرکز داده 2، ابتدا گره های Cassandra را در آن مرکز داده فهرست کنید. گره های کاساندرا را به ترتیب برای همه گره های کاساندرا در مرکز داده فهرست کنید.
همه گره های کاساندرا باید پسوند ":<d>،<r>" داشته باشند، به عنوان مثال "<ip>:1،1 = مرکز داده 1 و رک/منطقه در دسترس بودن 1 و "<ip>:2،1 = مرکز داده" 2 و قفسه/منطقه در دسترس 1.
به عنوان مثال، "192.168.124.201:1،1 192.168.124.202:1،1 192.168.124.203:1،1 192.168.124.204:2،1 192.168.201.121.192.168.121.124 "
اولین گره در رک/منطقه دسترسی 1 هر مرکز داده به عنوان سرور اولیه استفاده خواهد شد. در این مدل استقرار، تنظیمات Cassandra به شکل زیر خواهد بود: - Postgres
به طور پیش فرض، Edge تمام گره های Postgres را در حالت اصلی نصب می کند. با این حال، هنگامی که چندین مرکز داده دارید، گرههای Postgres را برای استفاده از تکثیر در حالت آماده به کار پیکربندی میکنید تا اگر گره اصلی از کار بیفتد، گره آماده به کار بتواند به ترافیک ادامه دهد. به طور معمول، سرور اصلی Postgres را در یک مرکز داده و سرور آماده به کار را در مرکز داده دوم پیکربندی میکنید.
اگر مرکز داده موجود از قبل به گونهای پیکربندی شده است که دو گره Postgres در حالت اصلی/آماده به کار اجرا شوند، به عنوان بخشی از این روش، گره آماده به کار موجود را لغو ثبت کنید و آن را با یک گره آماده به کار در مرکز داده جدید جایگزین کنید.
جدول زیر تنظیمات قبل و بعد از Postgres را برای هر دو سناریو نشان می دهد:قبل از
بعد از
Single Master Postgres node در dc-1
گره Master Postgres در dc-1
گره Standby Postgres در dc-2
گره Master Postgres در dc-1
گره آماده به کار Postgres در dc-1
گره Master Postgres در dc-1
گره Standby Postgres در dc-2
گره Standby Postgres قدیمی را در dc-1 لغو ثبت کنید
- الزامات بندر
باید اطمینان حاصل کنید که پورت های لازم بین گره های دو مرکز داده باز هستند. برای نمودار پورت، به الزامات نصب مراجعه کنید.
به روز رسانی مرکز داده موجود
افزودن مرکز داده مستلزم انجام مراحل نصب و پیکربندی گرههای مرکز داده جدید است، اما همچنین باید گرهها را در مرکز داده اصلی بهروزرسانی کنید. این تغییرات ضروری هستند زیرا گرههای Cassandra و ZooKeeper جدیدی را در مرکز داده جدید اضافه میکنید که باید برای مرکز داده موجود قابل دسترسی باشند، و باید OpenLDAP را مجدداً برای استفاده از Replication پیکربندی کنید.
ایجاد فایل های پیکربندی
در زیر فایل های پیکربندی بی صدا برای دو مرکز داده نشان داده شده است که هر مرکز داده دارای 6 گره است. توجه داشته باشید که فایل پیکربندی برای dc-1 تنظیمات اضافی را به:
- OpenLDAP را با تکرار در دو گره OpenLDAP پیکربندی کنید.
- گره های جدید Cassandra و ZooKeeper را از dc-2 به فایل پیکربندی dc-1 اضافه کنید.
# Datacenter 1 IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP7=IPorDNSnameOfNode7 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 HOSTIP=$(hostname -i) MSIP=$IP1 ADMIN_EMAIL=opdk@apigee.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt USE_LDAP_REMOTE_HOST=n LDAP_TYPE=2 LDAP_SID=1 LDAP_PEER=$IP7 APIGEE_LDAPPW=secret BIND_ON_ALL_INTERFACES=y MP_POD=gateway-1 REGION=dc-1 ZK_HOSTS="$IP1 $IP2 $IP3 $IP7 $IP8 $IP9:observer" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1 $IP7:2,1 $IP8:2,1 $IP9:2,1" SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com SMTPPASSWORD=smtppwd SMTPSSL=n SMTPPORT=25 | # Datacenter 2 IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP7=IPorDNSnameOfNode7 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 HOSTIP=$(hostname -i) MSIP=$IP7 ADMIN_EMAIL=opdk@apigee.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt USE_LDAP_REMOTE_HOST=n LDAP_TYPE=2 LDAP_SID=2 LDAP_PEER=$IP1 APIGEE_LDAPPW=secret BIND_ON_ALL_INTERFACES=y MP_POD=gateway-2 REGION=dc-2 ZK_HOSTS="$IP1 $IP2 $IP3 $IP7 $IP8 $IP9:observer" ZK_CLIENT_HOSTS="$IP7 $IP8 $IP9" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP7:2,1 $IP8:2,1 $IP9:2,1 $IP1:1,1 $IP2:1,1 $IP3:1,1" SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com SMTPPASSWORD=smtppwd SMTPSSL=n SMTPPORT=25 |
مراحل افزودن مرکز داده جدید
در این روش، مراکز داده نامگذاری می شوند:
- dc-1 : مرکز داده موجود
- dc-2 : مرکز داده جدید
- در dc-1 ، setup.sh را روی گرههای اصلی کاساندرا با فایل پیکربندی جدید dc-1 که شامل گرههای Cassandra از dc-2 است، مجدداً اجرا کنید:
/opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile1 - در dc-1 ، setup.sh را در گره مدیریت سرور اجرا کنید:
> /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile1 - در dc-2 ، apigee-setup را روی همه گره ها نصب کنید. برای اطلاعات بیشتر به نصب ابزار Edge apigee-setup مراجعه کنید.
- در dc-2 ، Cassandra و ZooKeeper را روی گره های مناسب نصب کنید:
/opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile2 - در dc-2 ، دستور rebuild را روی تمام گرههای Cassandra اجرا کنید و نام منطقه dc-1 را مشخص کنید:
> /opt/apigee/apigee-cassandra/bin/nodetool -h cassIP rebuild dc-1 - در dc-2 ، سرور مدیریت را در گره مناسب نصب کنید:
> /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile2 - در dc-2 ، Routes and Message Processors را روی گره های مناسب نصب کنید:
> /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile2 - در dc-2 ، Qpid را روی گره های مناسب نصب کنید:
> /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile2 - در dc-2 ، Postgres را روی گره مناسب نصب کنید:
> /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile2 - Postgres master/standby را برای گره های Postgres تنظیم کنید. گره Postgres در dc-1 اصلی است و گره Postgres در dc-2 سرور آماده به کار است.
توجه : اگر dc-1 از قبل به گونهای پیکربندی شده است که دو گره Postgres در حالت Master/Standby اجرا شوند، به عنوان بخشی از این روش، از گره اصلی Postgres موجود در dc-1 به عنوان اصلی و از گره Postgres در dc-2 استفاده کنید. به عنوان سرور آماده به کار بعداً در این روش، سرور آماده به کار Postgres موجود را در dc-1 لغو ثبت خواهید کرد.- در گره اصلی در dc-1 ، فایل پیکربندی را ویرایش کنید تا تنظیم کنید:
PG_MASTER= IPorDNSofDC1Master
PG_STANDBY= IPorDNSofDC2Standby - فعال کردن تکرار در استاد جدید:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFIle - در گره آماده به کار در dc-2 ، فایل پیکربندی را ویرایش کنید تا تنظیم کنید:
PG_MASTER= IPorDNSofDC1Master
PG_STANDBY= IPorDNSofDC2Standby - در گره آماده به کار در dc-2 ، سرور را متوقف کنید و سپس داده های موجود Postgres را حذف کنید:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
> rm -rf /opt/apigee/data/apigee-postgresql/
توجه : در صورت لزوم، می توانید قبل از حذف از این داده ها نسخه پشتیبان تهیه کنید. - گره آماده به کار را در dc-2 پیکربندی کنید:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
- در گره اصلی در dc-1 ، فایل پیکربندی را ویرایش کنید تا تنظیم کنید:
- در dc-1، پیکربندی تجزیه و تحلیل را به روز کنید و سازمان ها را پیکربندی کنید.
- در گره مدیریت سرور dc-1 ، UUID گره Postgres را دریافت کنید:
> لیست سرورهای apigee-adminapi.sh -r dc-1 -p analytics -t postgres-server --admin adminEmail --pwd adminPword --host localhost
UUID در انتهای داده های برگشتی ظاهر می شود. آن مقدار را ذخیره کنید.
توجه : اگر dc-1 طوری پیکربندی شده باشد که دو گره Postgres در حالت اصلی/استندبای اجرا شوند، دو آدرس IP و UUID را در خروجی مشاهده خواهید کرد. هر دو UUID را ذخیره کنید. از IP ها، باید بتوانید تعیین کنید که کدام UUID برای Master و کدام برای گره آماده به کار است. - همانطور که در مرحله قبل نشان داده شده است ، در گره مدیریت سرور dc-2 ، UUID گره Postgres را دریافت کنید. آن مقدار را ذخیره کنید.
- در گره مدیریت سرور dc-1 ، نام گروه های تجزیه و تحلیل و مصرف کننده را تعیین کنید. بسیاری از دستورات زیر به این اطلاعات نیاز دارند.
به طور پیش فرض، نام گروه تجزیه و تحلیل axgroup-001 و نام گروه مصرف کننده مصرف کننده-گروه-001 است. در فایل پیکربندی بی صدا برای یک منطقه، می توانید با استفاده از ویژگی AXGROUP نام گروه تجزیه و تحلیل را تنظیم کنید.
اگر از نام گروه های تجزیه و تحلیل و مصرف کننده مطمئن نیستید، از دستور زیر برای نمایش آنها استفاده کنید:
> فهرست گروه های تحلیلی apigee-adminapi.sh --admin adminEmail --pwd adminPword --host localhost
این دستور نام گروه تجزیه و تحلیل را در قسمت نام و نام گروه مصرف کننده را در قسمت گروه های مصرف کننده برمی گرداند. - در گره مدیریت سرور dc-1 ، سرور Postgres موجود را از گروه تجزیه و تحلیل حذف کنید:
- گره Postgres را از گروه مصرف کننده حذف کنید:
> گروههای تجزیه و تحلیل apigee-adminapi.sh ذخیرهگاههای داده مصرفکننده_گروهها حذف -g axgroup-001 -c customers-group-001 -u UUID -Y -admin adminEmail -pwd adminPword -host localhost
اگر dc-1 طوری پیکربندی شده است که دو گره Postgres در حالت اصلی/آماده به کار اجرا شوند، هر دو را حذف کنید:
> گروههای تحلیلی apigee-adminapi.sh ذخیرهگاههای داده مصرفکننده_گروهها حذف -g axgroup-001 -c customers-group-001 -u " UUID_1,UUID_2" -Y --admin adminEmail --pwd adminPword --host localhost - گره Postgres را از گروه تجزیه و تحلیل حذف کنید:
> گروه های تحلیلی apigee-adminapi.sh postgres_server حذف -g axgroup-001 -u UUID -Y --admin adminEmail --pwd adminPword --host localhost
اگر dc-1 طوری پیکربندی شده است که دو گره Postgres در حالت اصلی/آماده به کار اجرا شوند، هر دو را حذف کنید:
> گروه های تحلیلی apigee-adminapi.sh postgres_server حذف -g axgroup-001 -u UUID1,UUID2 -Y --admin adminEmail --pwd adminPword --host localhost
- گره Postgres را از گروه مصرف کننده حذف کنید:
- در گره مدیریت سرور dc-1 ، سرورهای جدید Master/Standby Postgres را به گروه تجزیه و تحلیل اضافه کنید:
- هر دو سرور Postgres را به گروه تجزیه و تحلیل اضافه کنید:
> گروههای تحلیلی apigee-adminapi.sh postgres_server add -g axgroup-001 -u " UUID_1,UUID_2 " --admin adminEmail --pwd adminPword --host localhost
که در آن UUID_1 مربوط به گره اصلی Postgres در dc-1 ، و UUID_2 مربوط به گره آماده به کار Postgres در dc-2 است. - سرورهای PG را به عنوان Master/Standby به گروه مصرف کننده اضافه کنید:
> گروههای تجزیه و تحلیل apigee-adminapi.sh ذخیرهگاههای داده مصرفکننده_گروهها افزودن -g axgroup-001 -c customers-group-001 -u " UUID_1,UUID_2 " --admin adminEmail --pwd adminPword --host localhost
- هر دو سرور Postgres را به گروه تجزیه و تحلیل اضافه کنید:
- سرورهای Qpid را از dc-2 به گروه تجزیه و تحلیل اضافه کنید:
- در گره مدیریت سرور dc-1 ، UUID گره های Qpid در dc-2 را دریافت کنید:
> لیست سرورهای apigee-adminapi.sh -r dc-2 -p central -t qpid-server --admin adminEmail --pwd adminPword --host localhost
UUID ها در انتهای داده های برگشتی ظاهر می شوند. آن مقادیر را ذخیره کنید. - در گره مدیریت سرور dc-1 ، گره های Qpid را به گروه تجزیه و تحلیل اضافه کنید:
>apigee-adminapi.sh گروه های تحلیلی qpid_server add -g axgroup-001 -u " UUID_1,UUID_2" --admin adminEmail --pwd adminPword --host localhost - در گره مدیریت سرور dc-1 ، گره های Qpid را به گروه مصرف کننده اضافه کنید:
> گروههای تحلیلی apigee-adminapi.sh، مصرفکنندگان گروههای مصرف کننده، -g axgroup-001 -c customers-group-001 -u " UUID_1,UUID_2" --admin adminEmail --pwd adminPword --host localhost
- در گره مدیریت سرور dc-1 ، UUID گره های Qpid در dc-2 را دریافت کنید:
- سرور آماده به کار قدیمی Postgres را از dc-1 حذف و حذف کنید:
- سرور آماده به کار dc-1 Postgres موجود را لغو ثبت کنید:
> سرورهای apigee-adminapi.sh لغو ثبت -u UUID -r dc-1 -p analytics -t postgres-server -Y --admin adminEmail --pwd adminPword --host localhost
که در آن UUID گره آماده به کار قدیمی Postgres در dc-1 است. - سرور آماده به کار dc-1 Postgres موجود را حذف کنید:
توجه : این دستور گره سرور Postgres را حذف نمی کند. فقط آن را از لیست گره های Edge حذف می کند. بعداً می توانید Postgres را در صورت لزوم از گره حذف نصب کنید.
> سرورهای apigee-adminapi.sh حذف -u UUID --admin adminEmail --pwd adminPword --host localhost
- سرور آماده به کار dc-1 Postgres موجود را لغو ثبت کنید:
- در گره مدیریت سرور dc-1 ، UUID گره Postgres را دریافت کنید:
- دستور nodetool زیر را روی تمام گرههای Cassandra در dc-1 اجرا کنید تا حافظه آزاد شود:
> /opt/apigee/apigee-cassandra/bin/nodetool -h cassandraIP پاکسازی - برای هر سازمان و برای هر محیطی که می خواهید در مراکز داده پشتیبانی کنید:
- در گره مدیریت سرور dc-1 ، MP_POD جدید را به سازمان اضافه کنید:
> apigee-adminapi.sh orgs pods add -o orgName -r dc-2 -p gateway-2 --admin adminEmail --pwd adminPword --host localhost
جایی که gateway-2 نام gateway pod است که توسط ویژگی MP_POD در فایل پیکربندی dc-2 تعریف شده است. - پردازشگرهای پیام جدید را به سازمان و محیط اضافه کنید:
- در گره مدیریت سرور dc-2 ، UUID گره های پردازشگر پیام را در dc-2 دریافت کنید:
> لیست سرورهای apigee-adminapi.sh -r dc-2 -p gateway-2 -t message-processor --admin adminEmail --pwd adminPword --host localhost
UUID ها در انتهای داده های برگشتی ظاهر می شوند. آن مقادیر را ذخیره کنید. - در گره مدیریت سرور dc-1 ، برای هر پردازشگر پیام در dc-2، پردازشگر پیام را به محیطی برای سازمان اضافه کنید:
> apigee-adminapi.sh orgs envs servers add -o orgName -e envName -u UUID --admin adminEmail --pwd adminPword --host localhost
- در گره مدیریت سرور dc-2 ، UUID گره های پردازشگر پیام را در dc-2 دریافت کنید:
- در گره مدیریت سرور dc-1 ، سازمان را بررسی کنید:
> apigee-adminapi.sh orgs apis deployments -o orgName -a apiProxyName --admin adminEmail --pwd adminPword --host localhost
که در آن apiProxyName نام یک پراکسی API است که در سازمان مستقر شده است.
- در گره مدیریت سرور dc-1 ، MP_POD جدید را به سازمان اضافه کنید: