درحال انتقال سرورهای 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. /opt/apigee/customer/application/cassandra.properties را ویرایش کنید تا نشانی IP قدیمی مشخص‌شده را به نشانی IP جدید تغییر دهید:
    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 را نیز تعمیر کنید (به زیر مراجعه کنید)، درغیراین‌صورت، همه مؤلفه‌های پلاتفرم Apigee را که با Management Server شروع می‌شوند بازراه‌اندازی کنید.

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

  1. اگر گره‌ای که تغییر می‌کند گره بذر است، فایل /opt/apigee/customer/application/cassandra.properties را در هر سیستم در حلقه ویرایش کنید و پارامتر conf_cassandra_seeds را تغییر دهید تا IP جدید سیستم اصلاح‌شده را دربرگیرد. اگر فایل cassandra.properties وجود ندارد، آن را ایجاد کنید.
  2. /opt/apigee/customer/application/cassandra.properties را در سیستم درحال اصلاح ویرایش کنید و پارامترهای زیر را تغییر دهید:
    • 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 مربوط به 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. /opt/apigee/customer/application/cassandra.properties را ویرایش کنید تا نشانی IP قدیمی مشخص‌شده را به نشانی IP جدید تغییر دهید:
    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. فرمان nodetool ring را روی گره اصلاح‌شده اجرا کنید تا مطمئن شوید که حلقه کامل است. این ابزار را می‌توانید در /opt/apigee/apigee-cassandra/bin پیدا کنید.
    nodetool [-u username -pw password] -h localhost ring

    فقط درصورتی باید نام کاربری و گذرواژه را ارسال کنید که اصالت‌سنجی JMX را برای Cassandra فعال کرده باشید.

  7. nodetool repair را در گره اصلاح‌شده اجرا کنید. توجه داشته باشید که این فرایند ممکن است کمی طول بکشد، بنابراین اکیداً توصیه می‌شود این کار در ساعات اوج ترافیک میانای برنامه‌سازی کاربردی انجام نشود.
    nodetool [-u username -pw password] -h localhost repair -pr
  8. درصورت لزوم، ZooKeeper را تعمیر کنید (به زیر مراجعه کنید)، سپس همه مؤلفه‌های پلاتفرم Apigee را بازراه‌اندازی کنید، از Management Server شروع کنید.

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

  1. بااستفاده از فرمان‌های زیر، UUIDهای ثبت‌های datastore را که نشانی IP قدیمی را مشخص می‌کنند پیدا کنید. پارامترهای «type» و «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
    • برای type="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. ثبت‌های قدیمی را برای UUID سیستمی که نشانی IP آن تغییر کرده است حذف کنید. برای هرکدام از این شناسه‌های UUID، این مشکل را صادر کنید:
    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. از فرمان echo که در بالا شرح داده شده است برای تأیید هر گره ZooKeeper استفاده کنید.

اطلاع‌رسانی به گره‌های 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 مربوط به سرور ال‌دپ (ال‌دپ باز)

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

  1. در گره Management Server، فایل /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. از فرمان curl زیر برای ثبت نشانی IP داخلی و خارجی جدید استفاده کنید:
    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 مؤلفه، به دریافت UUID مراجعه کنید.