درحال انتقال سرورهای Apigee

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

این بخش نحوه تشخیص و رفع عدم تطابق‌های پیکربندی را شرح می‌دهد.

نشانی‌های IP دربرابر نام‌های میزبان

باید در فایل‌های پیکربندی عنصر از نشانی‌های IP به‌جای نام‌های میزبان استفاده کنید.

اگرچه برخی‌از فایل‌های پیکربندی مؤلفه به شما اجازه می‌دهند به‌جای نشانی‌های IP از نام‌های میزبان استفاده کنید، استفاده از نام‌های میزبان می‌تواند عیب‌یابی را پیچیده کند. برای مثال، نام‌های میزبان می‌توانند منشأ مشکلات مربوط به اتصال‌پذیری سرور ساناد، خطاهای جستجو، و همگام‌سازی باشند.

در نتیجه، Apigee اکیداً توصیه می‌کند که از نشانی‌های IP برای همه پیکربندی‌های عنصر استفاده کنید. در برخی موارد، مانند Cassandra، باید از نشانی‌های IP استفاده کنید و نمی‌توانید از نام‌های میزبان استفاده کنید. بیشتر مثال‌های موجود در اسناد از نشانی‌های IP برای پیکربندی عنصر استفاده می‌کنند.

برای نام‌های میزبان و نشانی‌های IP، هنگام انتقال سرورهای Apigee، پیامدهای سناریوهای زیر را درنظر بگیرید:

سناریو تأثیر بر انتقال سرورها
تغییر در نشانی IP همه فایل‌های مرتبطی را که به نشانی IP اصلی ارجاع می‌دهند به‌روز کنید
تغییر نام میزبان بدون تغییر در نشانی IP بی‌تأثیر
تغییر نام میزبان با تغییر نشانی IP مشابه تغییر نشانی IP

تغییر دادن نشانی IP گره Cassandra

برای تغییر نشانی IP گره Cassandra، مراحل زیر را انجام دهید:

برای پیکربندی با یک گره Cassandra

  1. ویرایش /opt/apigee/customer/application/cassandra.properties در سیستمی که درحال اصلاح است. اگر فایل وجود ندارد، آن را ایجاد کنید.
  2. پارامترهای زیر را تغییر دهید:
    • پارامترهای conf_cassandra_seeds و conf_cassandra_listen_address را تنظیم کنید تا نشانی IP جدید سیستم را مشخص کنید.
    • conf_cassandra_rpc_address را تغییر دهید تا از نشانی IP جدید یا 0.0.0.0 (که به Cassandra Thrift اجازه می‌دهد در همه میان‌ها گوش دهد) استفاده کند.
  3. /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties را در ویرایشگر باز کنید. باید نشانی IP قدیمی و تنظیم پیش‌فرض را در فرم ببینید:
    192.168.56.101=dc-1:ra-1
    default=dc-1:ra-1

    آن اطلاعات را ذخیره کنید.

  4. برای تغییر دادن نشانی IP قدیمی مشخص‌شده به نشانی IP جدید، /opt/apigee/customer/application/cassandra.properties را ویرایش کنید:
    conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n

    مطمئن شوید که «\n» را بعداز نشانی IP درج کنید و همان تنظیمات پیش‌فرضی را که در مرحله ۳ در بالا پیدا کردید مشخص کنید.

  5. بازراه‌اندازی Cassandra:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. درصورت لزوم، ZooKeeper را نیز تعمیر کنید (به تغییر نشانی IP گره ZooKeeper مراجعه کنید). درغیراین‌صورت، همه عناصر پلاتفرم Apigee را بازراه‌اندازی کنید، و با «سرور مدیریت» شروع کنید.

برای پیکربندی‌های دارای چندین گره Cassandra (حلقه)

  1. اگر گره‌ای که تغییر می‌کند گره آغازین باشد، /opt/apigee/customer/application/cassandra.properties فایل را در هر سیستم در حلقه ویرایش کنید و پارامتر conf_cassandra_seeds را تغییر دهید تا «پروتکل اینترنتی» جدید سیستم اصلاح‌شده را دربر بگیرد. اگر فایل cassandra.properties وجود ندارد، آن را ایجاد کنید.
  2. /opt/apigee/customer/application/cassandra.properties را در سیستمی که اصلاح می‌شود ویرایش کنید و پارامترهای زیر را تغییر دهید:
    • ‫conf_cassandra_listen_address را تنظیم کنید تا از نشانی IP جدید استفاده کند.
    • conf_cassandra_rpc_address را تنظیم کنید تا از نشانی IP جدید یا «۰.۰.۰.۰» استفاده کند (که به Cassandra Thrift اجازه می‌دهد در همه میان‌ها گوش دهد).
  3. /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties را در ویرایشگر باز کنید. باید همه نشانی‌های IP Cassandra و تنظیم پیش‌فرض را در فرم ببینید:
    192.168.56.101=dc-1:ra-1
    192.168.56.102=dc-1:ra-1
    192.168.56.103=dc-1:ra-1
    default=dc-1:ra-1

    آن اطلاعات را ذخیره کنید.

  4. برای تغییر دادن نشانی IP قدیمی مشخص‌شده به نشانی IP جدید، /opt/apigee/customer/application/cassandra.properties را ویرایش کنید:
    conf_cassandra-topology_topology=192.168.56.101=dc-1:ra-1\n192.168.56.102=dc-1:ra-1\n192.168.56.104=dc-1:ra-1\ndefault=dc-1:ra-1\n

    مطمئن شوید که پس‌از هر نشانی IP، «\n» را درج کنید و از همان تنظیمات پیش‌فرض که در مرحله ۳ در بالا ضبط کردید استفاده کنید.

  5. ‫Cassandra را در سیستم اصلاح‌شده بازراه‌اندازی کنید.
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. برای همه گره‌های دیگر، تغییرات انجام‌شده در مراحل ۳ و ۴ را تکرار کنید تا آن‌ها را از موقعیت این گره در حلقه Cassandra مطلع کنید. علاوه‌براین، نشانی IP گره اولیه را همان‌طور که در مرحله ۱ توضیح داده شده است تغییر دهید.
  7. هریک از گره‌های Cassandra باقی‌مانده را یکی‌یکی بازراه‌اندازی کنید.
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  8. فرمان nodetool ring را در گره اصلاح‌شده اجرا کنید تا مطمئن شوید حلقه کامل است. این ابزار را می‌توانید در /opt/apigee/apigee-cassandra/bin پیدا کنید.
    nodetool [-u username -pw password] -h localhost ring
  9. ‫nodetool repair را در گره اصلاح‌شده اجرا کنید. توجه داشته باشید که این فرایند ممکن است کمی زمان‌بر باشد، بنابراین اکیداً توصیه می‌شود که این کار در ساعات اوج ترافیک API انجام نشود.
    nodetool [-u username -pw password] -h localhost repair -pr
  10. درصورت لزوم، ZooKeeper را تعمیر کنید (به تغییر دادن نشانی IP گره ZooKeeper مراجعه کنید)، سپس همه عناصر پلاتفرم Apigee را، با شروع از «سرور مدیریت»، مجدداً راه‌اندازی کنید.

به‌روزرسانی ثبت‌های مخزن داده

  1. بااستفاده از فرمان‌های زیر، «شناسه‌های یکتای جهانی» ثبت‌های مخزن داده را که نشانی IP قدیمی را مشخص می‌کنند پیدا کنید. پارامترهای «نوع» و «UUID» را یادداشت کنید:
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=central&region=DC" | egrep -i '[type|internalip|uuid|region]'
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway&region=DC" | egrep -i '[type|internalip|uuid|region]'
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics&region=DC" | egrep -i '[type|internalip|uuid|region]'

      که در آن DC نام مرکز داده است. در نصب مرکز داده تکی، مقدار معمولاً «dc-1» است.

  2. نشانی‌های IP جدید را بااستفاده از یکی از فرمان‌های زیر ثبت کنید. فرمان موردنیاز به نوع گره تغییریافته بستگی دارد.
    • برای type="application-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \
        "Type=application-datastore&Type=audit-datastore&InternalIP=NEWIP&region=REGION&pod=central" \
        -H 'content-type: application/x-www-form-urlencoded' -X POST
    • برای نوع="kms-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \
        "Type=kms-datastore&Type=dc-datastore&Type=keyvaluemap-datastore&Type=counter-datastore&Type=cache-datastore \
        &InternalIP=NEWIP&region=REGION&pod=GATEWAY_POD" -H 'content-type: \
        application/x-www-form-urlencoded' -X POST
    • برای type="reportcrud-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers" -d \
        "Type=reportcrud-datastore&InternalIP=NEW_IP&region=REGION&pod=analytics" \
        -H 'content-type: application/x-www-form-urlencoded' -X POST 
  3. ثبت‌های قدیمی را برای شناسه یکتای سیستم که نشانی IP آن تغییر کرده است حذف کنید. برای هریک از این «شناسه‌های یکتای جهانی» مشکل:
    curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE

تغییر دادن نشانی IP گره ZooKeeper

برای تغییر نشانی IP گره ZooKeeper، مراحل زیر را دنبال کنید:

«نشانی IP» را تغییر دهید و مجموعه ZooKeeper را بازراه‌اندازی کنید (فقط برای پیکربندی‌های مجموعه چندگره)

  1. ‫/opt/apigee/apigee-zookeeper/conf/zoo.cfg را در ویرایشگر باز کنید. باید همه نشانی‌های IP و تنظیمات پیش‌فرض ZooKeeper را در این فرم ببینید:
    server.1=192.168.56.101:2888:3888
    server.2=192.168.56.102:2888:3888
    server.3=192.168.56.103:2888:3888

    آن اطلاعات را ذخیره کنید.

  2. در هر گره ZooKeeper، فایل /opt/apigee/customer/application/zookeeper.properties را ویرایش کنید تا دارایی conf_zoo_quorum را روی نشانی‌های IP صحیح تنظیم کنید. اگر فایل وجود ندارد، آن را ایجاد کنید.
    conf_zoo_quorum=server.1=192.168.56.101:2888:3888\nserver.2=192.168.56.102:2888:3888\nserver.3=192.168.56.104:2888:3888\n

    مطمئن شوید که بعداز هر نشانی IP عبارت «\n» را درج کنید و ورودی‌ها در همه گره‌ها به یک ترتیب باشند.

  3. بااستفاده از دستور زیر، رهبر گروه ZooKeeper را پیدا کنید (node را با نشانی IP ماشین Zookeeper جایگزین کنید):
    echo srvr | nc node 2181

    خط «حالت» در برونداد باید «رهبر» را نشان دهد.

  4. یک‌به‌یک ZooKeeperها را بازراه‌اندازی کنید، ابتدا رهبر و سپس گره‌ای که نشانی IP آن تغییر کرده است. اگر بیش‌از یک گره zookeeper نشانی IP را تغییر داد، ممکن است لازم باشد همه گره‌ها را بازراه‌اندازی کنید.
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
  5. برای تأیید هر گره ZooKeeper، از فرمان echo که در بالا توضیح داده شده است استفاده کنید.

گره‌های Apigee را از پیکربندی تغییریافته مطلع کنید

  1. در هر گره «مسیریاب»، فایل /opt/apigee/customer/application/router.properties را به‌صورت زیر ویرایش کنید. اگر فایل وجود ندارد، آن را ایجاد کنید.
    • پارامتر conf_zookeeper_connection.string را تغییر دهید تا نشانی IP جدید را دربرگیرد
    • پارامتر conf_zookeeper_zk1.host را تغییر دهید تا نشانی IP جدید را دربرگیرد
  2. در هر گره «پردازشگر پیام»، فایل /opt/apigee/customer/application/message-processor.properties را به‌صورت زیر ویرایش کنید. اگر فایل وجود ندارد، آن را ایجاد کنید.
    • پارامتر conf_zookeeper_connection.string را تغییر دهید تا نشانی IP جدید را دربرگیرد
    • پارامتر conf_zookeeper_zk1.host را تغییر دهید تا نشانی IP جدید را دربرگیرد
  3. در گره «سرور مدیریت»، فایل /opt/apigee/customer/application/management-server.properties را به‌صورت زیر ویرایش کنید. اگر فایل وجود ندارد، آن را ایجاد کنید.
    • پارامتر conf_zookeeper_connection.string را تغییر دهید تا نشانی IP جدید را دربرگیرد
    • پارامتر conf_zookeeper_zk1.host را تغییر دهید تا نشانی IP جدید را دربرگیرد
  4. با اجرای فرمان زیر در هر گره، همه عناصر پلاتفرم Apigee را بازراه‌اندازی کنید:
    /opt/apigee/apigee-service/bin/apigee-all restart

تغییر نشانی IP سرور LDAP (OpenLDAP)

برای تغییر نشانی IP گره OpenLDAP، مراحل زیر را انجام دهید:

  1. در گره «سرور مدیریت»، فایل /opt/apigee/customer/application/management-server.properties را ویرایش کنید. اگر فایل وجود ندارد، آن را ایجاد کنید.
  2. در فایل management-server.properties، پارامتر conf_security_ldap.server.host را روی نشانی IP جدید تنظیم کنید.
  3. بازراه‌اندازی سرور مدیریت:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

تغییر دادن نشانی IP انواع دیگر گره Apigee

برای تغییر دادن نشانی IP هریک از این انواع گره (رهیاب، پردازشگر پیام، سرور Postgres (نه postgresql) و سرور Qpid (نه qpidd)):

  1. برای ثبت نشانی IP داخلی و خارجی جدید، از فرمان curl زیر استفاده کنید:
    curl -u ADMINEMAIL:PW -X PUT \
      http://MSIP:8080/v1/servers/uuid -d ExternalIP=ip
    curl -u ADMINEMAIL:PW -X PUT \
      http://$MSIP:8080/v1/servers/uuid -d InternalIP=ip

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

برای کسب اطلاعات درباره نحوه دریافت UUID یک عنصر، به دریافت UUID مراجعه کنید.