Apigee সার্ভার সরানো

এক মেশিন থেকে অন্য মেশিনে কম্পোনেন্ট সরানোর ফলে কনফিগারেশন সংক্রান্ত সমস্যা হতে পারে, যদি আপনার কম্পোনেন্ট কনফিগারেশন ফাইলে IP অ্যাড্রেস সিঙ্ক করে না রাখেন।

কনফিগারেশন সংক্রান্ত অমিল কীভাবে শনাক্ত ও সমাধান করতে হয় তা এই বিভাগে বর্ণনা করা হয়েছে।

IP অ্যাড্রেস বনাম হোস্টনেম

আপনার কম্পোনেন্ট কনফিগারেশন ফাইলে হোস্ট নামের পরিবর্তে IP অ্যাড্রেস ব্যবহার করা উচিত।

যদিও কিছু কম্পোনেন্ট কনফিগারেশন ফাইল আপনাকে IP অ্যাড্রেসের পরিবর্তে হোস্ট নেম ব্যবহার করতে দেয়, তবে হোস্ট নেম ব্যবহার করলে সমস্যা সমাধান করা কঠিন হয়ে যেতে পারে। যেমন, হোস্টের নাম DNS সার্ভার কানেক্টিভিটি, লুক-আপ ব্যর্থতা এবং সিনক্রোনাইজেশন সম্পর্কিত সমস্যার কারণ হতে পারে।

এর ফলে, Apigee সমস্ত কম্পোনেন্ট কনফিগারেশনের জন্য IP অ্যাড্রেস ব্যবহার করার সাজেশন দেয়। কিছু ক্ষেত্রে, যেমন Cassandra-এর ক্ষেত্রে, আপনাকে অবশ্যই IP অ্যাড্রেস ব্যবহার করতে হবে এবং হোস্টনেম ব্যবহার করতে পারবেন না। ডকুমেন্টেশনের বেশিরভাগ উদাহরণে কম্পোনেন্ট কনফিগারেশনের জন্য IP অ্যাড্রেস ব্যবহার করা হয়।

Apigee সার্ভার সরানোর সময় হোস্টনেম ও IP অ্যাড্রেসের জন্য, নিম্নলিখিত পরিস্থিতিগুলির প্রভাব বিবেচনা করুন:

পরিস্থিতি সার্ভার সরানোর ফলে প্রভাব
IP অ্যাড্রেসে পরিবর্তন মূল IP অ্যাড্রেসকে রেফারেন্স হিসেবে ব্যবহার করে এমন সব সম্পর্কিত ফাইল আপডেট করা
IP অ্যাড্রেস পরিবর্তন না করেই হোস্টনেম পরিবর্তন করা কোনও প্রভাব ফেলেনি
IP অ্যাড্রেস পরিবর্তন করার সাথে সাথে হোস্টনেম পরিবর্তন করা IP অ্যাড্রেসে পরিবর্তনের মতোই

Cassandra নোডের IP অ্যাড্রেস পরিবর্তন করা

Cassandra নোডের IP অ্যাড্রেস পরিবর্তন করতে, নিম্নলিখিত ধাপগুলি অনুসরণ করুন:

সিঙ্গেল ক্যাসান্ড্রা নোড সহ কনফিগারেশনের জন্য

  1. সংশোধিত হচ্ছে এমন সিস্টেমে /opt/apigee/customer/application/cassandra.properties এডিট করুন। ফাইলটি না থাকলে, এটি তৈরি করুন।
  2. নিম্নলিখিত প্যারামিটার পরিবর্তন করুন:
    • সিস্টেমের নতুন IP অ্যাড্রেস নির্দিষ্ট করতে conf_cassandra_seeds এবং conf_cassandra_listen_address প্যারামিটার সেট করুন।
    • নতুন IP অ্যাড্রেস বা 0.0.0.0 (যা Cassandra Thrift-কে সব ইন্টারফেসে শোনার অনুমতি দেয়) ব্যবহার করতে conf_cassandra_rpc_address পরিবর্তন করুন।
  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

    নিশ্চিত করুন যে আপনি IP অ্যাড্রেসের পরে "\n" যোগ করেছেন এবং ধাপ ৩-এ আপনি উপরে যে ডিফল্ট সেটিংস দেখেছেন, সেই একই সেটিংস উল্লেখ করেছেন।

  5. Cassandra রিস্টার্ট করুন:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. প্রয়োজন হলে, ZooKeeper-ও মেরামত করুন (ZooKeeper নোডের IP অ্যাড্রেস পরিবর্তন করা দেখুন)। অন্যথায়, ম্যানেজমেন্ট সার্ভার থেকে শুরু করে প্রতিটি Apigee প্ল্যাটফর্ম কম্পোনেন্ট রিস্টার্ট করুন।

একাধিক Cassandra নোড (রিং) সহ কনফিগারেশনের জন্য

  1. পরিবর্তিত নোডটি সিড নোড হলে, রিংয়ের প্রতিটি সিস্টেমে /opt/apigee/customer/application/cassandra.properties ফাইল এডিট করুন এবং পরিবর্তিত সিস্টেমের নতুন IP অন্তর্ভুক্ত করতে conf_cassandra_seeds প্যারামিটার পরিবর্তন করুন। cassandra.properties ফাইল না থাকলে, এটি তৈরি করুন।
  2. পরিবর্তিত সিস্টেমের /opt/apigee/customer/application/cassandra.properties এডিট করুন এবং নিম্নলিখিত প্যারামিটার পরিবর্তন করুন:
    • নতুন IP অ্যাড্রেস ব্যবহার করতে conf_cassandra_listen_address সেট করুন।
    • নতুন IP অ্যাড্রেস বা "0.0.0.0" ব্যবহার করার জন্য conf_cassandra_rpc_address সেট করুন (যা Cassandra Thrift-কে সব ইন্টারফেসে শোনার অনুমতি দেয়)।
  3. এডিটরে /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties খুলুন। আপনাকে Cassandra-র সব IP অ্যাড্রেস ও ডিফল্ট সেটিংস এই ফর্ম্যাটে দেখতে হবে:
    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

    প্রতিটি আইপি অ্যাড্রেসের পরে "\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 মেরামত করুন (ZooKeeper নোডের IP অ্যাড্রেস পরিবর্তন করা দেখুন), তারপর ম্যানেজমেন্ট সার্ভার থেকে শুরু করে প্রতিটি Apigee প্ল্যাটফর্ম কম্পোনেন্ট রিস্টার্ট করুন।

ডেটা স্টোর রেজিস্ট্রেশন আপডেট করা

  1. নিচে দেওয়া কমান্ড ব্যবহার করে পুরনো IP অ্যাড্রেস নির্দিষ্ট করা ডেটা স্টোর রেজিস্ট্রেশনের UUID খুঁজুন। "টাইপ" ও "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. যে সিস্টেমে IP অ্যাড্রেস পরিবর্তন করা হয়েছে, সেটির UUID-এর জন্য পুরনো রেজিস্ট্রেশন মুছে দিন। UUID সংক্রান্ত এইসব সমস্যার প্রতিটি ক্ষেত্রে:
    curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE

ZooKeeper নোডের IP অ্যাড্রেস পরিবর্তন করা

ZooKeeper নোডের IP অ্যাড্রেস পরিবর্তন করতে, নিচে উল্লেখ করা ধাপগুলি অনুসরণ করুন:

IP অ্যাড্রেস পরিবর্তন করুন এবং ZooKeeper ensemble রিস্টার্ট করুন (শুধুমাত্র মাল্টি-নোড ensemble কনফিগারেশনের জন্য প্রযোজ্য)

  1. এডিটরে /opt/apigee/apigee-zookeeper/conf/zoo.cfg খুলুন। আপনি এগুলি দেখতে পাবেন: সব ZooKeeper IP অ্যাড্রেস ও ডিফল্ট সেটিংস এই ফর্ম্যাটে:
    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 ensemble-এর লিডারকে খুঁজুন (Zookeeper মেশিনের IP অ্যাড্রেস দিয়ে node পরিবর্তন করুন):
    echo srvr | nc node 2181

    আউটপুটে মোড লাইনে "লিডার" লেখা থাকতে হবে।

  4. লিডার থেকে শুরু করে যে নোডের IP অ্যাড্রেস পরিবর্তন করা হয়েছে সেটি দিয়ে শেষ করে, একটির পর একটি ZooKeeper রিস্টার্ট করুন। একাধিক Zookeeper নোডের IP অ্যাড্রেস পরিবর্তন করা হলে, সব নোড রিস্টার্ট করার প্রয়োজন হতে পারে।
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
  5. প্রতিটি ZooKeeper নোড যাচাই করতে উপরে বর্ণিত echo কমান্ড ব্যবহার করুন।

পরিবর্তিত কনফিগারেশন সম্পর্কে Apigee নোডকে জানানো

  1. প্রতিটি রাউটার নোডে, /opt/apigee/customer/application/router.properties ফাইলটি নিচে দেখানো পদ্ধতিতে এডিট করুন। ফাইলটি না থাকলে, এটি তৈরি করুন।
    • নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে conf_zookeeper_connection.string প্যারামিটার পরিবর্তন করুন
    • নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে conf_zookeeper_zk1.host প্যারামিটার পরিবর্তন করুন
  2. প্রতিটি মেসেজ প্রসেসর নোডে, নিম্নলিখিত উপায়ে /opt/apigee/customer/application/message-processor.properties ফাইল এডিট করুন। ফাইলটি না থাকলে, এটি তৈরি করুন।
    • নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে conf_zookeeper_connection.string প্যারামিটার পরিবর্তন করুন
    • নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে conf_zookeeper_zk1.host প্যারামিটার পরিবর্তন করুন
  3. ম্যানেজমেন্ট সার্ভার নোডে, /opt/apigee/customer/application/management-server.properties ফাইলটি নিম্নলিখিত ভাবে এডিট করুন। ফাইলটি না থাকলে, এটি তৈরি করুন।
    • নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে conf_zookeeper_connection.string প্যারামিটার পরিবর্তন করুন
    • নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে conf_zookeeper_zk1.host প্যারামিটার পরিবর্তন করুন
  4. প্রতিটি নোডে নিম্নলিখিত কমান্ড চালিয়ে সব Apigee প্ল্যাটফর্ম কম্পোনেন্ট রিস্টার্ট করুন:
    /opt/apigee/apigee-service/bin/apigee-all restart

LDAP সার্ভারের IP অ্যাড্রেস পরিবর্তন করা (OpenLDAP)

OpenLDAP নোডের IP অ্যাড্রেস পরিবর্তন করতে, নিম্নলিখিত কাজগুলি করুন:

  1. ম্যানেজমেন্ট সার্ভার নোডে, /opt/apigee/customer/application/management-server.properties ফাইল এডিট করুন। ফাইলটি না থাকলে, এটি তৈরি করুন।
  2. management-server.properties ফাইলে, নতুন IP অ্যাড্রেসে conf_security_ldap.server.host প্যারামিটার সেট করুন।
  3. ম্যানেজমেন্ট সার্ভার রিস্টার্ট করুন:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

অন্যান্য Apigee নোডের IP অ্যাড্রেস পরিবর্তন করা টাইপ

এইসব নোড ধরনের (রাউটার, মেসেজ প্রসেসর, Postgres সার্ভার (postgresql নয়) এবং Qpid সার্ভার (qpidd নয়) যেকোনওটির IP অ্যাড্রেস পরিবর্তন করতে:

  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 পাবেন সেই সম্পর্কে তথ্য পেতে, UUID পান দেখুন।