Apigee Edge 4.52.02 বা 4.53.00 থেকে 4.53.01 আপডেট করুন

Apigee সরাসরি সংস্করণ 4.52.02 অথবা 4.53.00 থেকে সংস্করণ 4.53.01 এ Edge for Private Cloud আপগ্রেড করার সুবিধা প্রদান করে। এই পৃষ্ঠাটি এই ধরনের আপগ্রেড কীভাবে করতে হয় তা বর্ণনা করে।

সামঞ্জস্যপূর্ণ আপগ্রেড পাথগুলির একটি সারসংক্ষেপের জন্য, এজ ফর প্রাইভেট ক্লাউড রিলিজের জন্য আপগ্রেড সামঞ্জস্যতা ম্যাট্রিক্স দেখুন।

কে আপডেটটি সম্পাদন করতে পারে

যে ব্যক্তি আপডেটটি চালাচ্ছেন এবং যিনি মূলত এজ ইনস্টল করেছিলেন, অথবা রুট হিসেবে চালাচ্ছেন, তিনি একই ব্যক্তি হবেন।

এজ আরপিএম ইনস্টল করার পরে, যে কেউ এগুলি কনফিগার করতে পারবে।

কোন কোন উপাদান আপডেট করতে হবে

আপনাকে অবশ্যই সমস্ত Edge উপাদান আপডেট করতে হবে। Edge এমন কোনও সেটআপ সমর্থন করে না যেখানে একাধিক সংস্করণের উপাদান রয়েছে।

পূর্বশর্ত আপডেট করুন

প্রাইভেট ক্লাউড ৪.৫৩.০১ এর জন্য এজ-এর পরিবর্তনগুলি পর্যালোচনা করুন

Apigee Edge আপগ্রেড করার আগে নিম্নলিখিত পূর্বশর্তগুলি নিশ্চিত করুন:

  • সমস্ত নোডের ব্যাকআপ নিন
    আপডেট করার আগে, নিরাপত্তার কারণে আমরা আপনাকে সমস্ত নোডের সম্পূর্ণ ব্যাকআপ নেওয়ার পরামর্শ দিচ্ছি। ব্যাকআপটি সম্পাদন করতে আপনার বর্তমান সংস্করণের Edge-এর পদ্ধতিটি ব্যবহার করুন।

    যদি নতুন সংস্করণের আপডেট সঠিকভাবে কাজ না করে, তাহলে এটি আপনাকে একটি ব্যাকআপ পরিকল্পনা করার সুযোগ দেয়। ব্যাকআপ সম্পর্কে আরও তথ্যের জন্য, ব্যাকআপ এবং পুনরুদ্ধার দেখুন।

  • নিশ্চিত করুন যে এজ চলছে
    আপডেট প্রক্রিয়া চলাকালীন Edge চালু আছে কিনা তা নিশ্চিত করুন, এই কমান্ডটি ব্যবহার করে:
    /opt/apigee/apigee-service/bin/apigee-all status
  • ক্যাসান্দ্রার পূর্বশর্ত যাচাই করুন

    যদি আপনি পূর্বে Edge for Private Cloud এর পুরোনো সংস্করণ থেকে 4.52.02 সংস্করণে আপগ্রেড করে থাকেন এবং এখন 4.53.01 সংস্করণে আপগ্রেড করার পরিকল্পনা করছেন, তাহলে নিশ্চিত করুন যে আপনি Cassandra এর জন্য প্রয়োজনীয় পোস্ট-আপগ্রেড ধাপগুলি সম্পন্ন করেছেন। এই ধাপগুলি 4.52.02 সংস্করণের আপগ্রেড ডকুমেন্টেশনে এবং Cassandra আপগ্রেডের জন্য পূর্বশর্তের অধীনে উল্লেখ করা হয়েছে। যদি আপনি নিশ্চিত না হন যে এই ধাপগুলি পূর্ববর্তী আপগ্রেডের সময় সম্পন্ন হয়েছিল কিনা, তাহলে 4.53.01 সংস্করণে আপগ্রেড করার আগে আবার সেগুলি সম্পূর্ণ করুন।

  • প্রাইভেট ক্লাউডের জন্য এজে IDP কী এবং সার্টিফিকেট কনফিগার করা 4.53.01

    Edge for Private Cloud 4.53.01-এ, apigee-sso কম্পোনেন্টে ব্যবহৃত IDP কী এবং সার্টিফিকেটগুলি এখন একটি কীস্টোরের মাধ্যমে কনফিগার করা হয়েছে। আপনাকে পূর্বে ব্যবহৃত কী এবং সার্টিফিকেটটি একটি কীস্টোরে রপ্তানি করতে হবে। SSO কম্পোনেন্ট আপডেট করার আগে বিস্তারিত পদক্ষেপের জন্য "Apigee SSO from old versions" বিভাগে ধাপগুলি অনুসরণ করুন।

  • পাইথনের প্রয়োজনীয়তা
    আপগ্রেড করার আগে নিশ্চিত করুন যে ক্যাসান্ড্রা নোড সহ সমস্ত নোডে পাইথন 3 ইনস্টল করা আছে।

আপগ্রেডের জন্য কোন বিশেষ পদক্ষেপগুলি বিবেচনা করতে হবে

Edge for Private Cloud 4.53.01 এ আপগ্রেড করতে, নির্দিষ্ট সফ্টওয়্যার আপগ্রেড করার জন্য নির্দিষ্ট পদক্ষেপগুলি বিবেচনা করুন। প্রয়োজনীয় পদক্ষেপগুলি আপনার বর্তমান সংস্করণের উপর নির্ভর করে। পরিপূরক পদক্ষেপের প্রয়োজন এমন বিভিন্ন সফ্টওয়্যারের জন্য নীচের টেবিলটি দেখুন এবং প্রতিটির জন্য বিস্তারিত নির্দেশাবলী অনুসরণ করুন। প্রয়োজনীয় কাজগুলি সম্পন্ন করার পরে, আপগ্রেড প্রক্রিয়া চালিয়ে যেতে মূল আপগ্রেড পদ্ধতিতে ফিরে যান।

বর্তমান সংস্করণ ৪.৫৩.০১ সংস্করণে আপগ্রেড করার জন্য বিশেষ পদক্ষেপের প্রয়োজন এমন সফ্টওয়্যার
৪.৫২.০২ এলডিএপি , ক্যাসান্ড্রা , চিড়িয়াখানার রক্ষক , পোস্টগ্রেস
৪.৫৩.০০ এলডিএপি , চিড়িয়াখানার রক্ষক , পোস্টগ্রেস

আপনার সংস্করণের উপর ভিত্তি করে প্রয়োজনীয় পদক্ষেপগুলি সম্পাদন করার পরে, চালিয়ে যাওয়ার জন্য মূল আপগ্রেড পদ্ধতিতে ফিরে যান।

সম্পত্তি সেটিংসের স্বয়ংক্রিয় প্রচার

যদি আপনি /opt/apigee/customer/application.properties ফাইল সম্পাদনা করে কোনও বৈশিষ্ট্য সেট করে থাকেন, তাহলে আপডেটের মাধ্যমে এই মানগুলি ধরে রাখা হবে।

OpenLDAP 2.6 এ আপগ্রেড করা আবশ্যক

Apigee Edge for Private Cloud এর অন্তর্নিহিত LDAP পরিষেবাটি লিগ্যাসি OpenLDAP 2.4 থেকে OpenLDAP 2.6 তে আপগ্রেড করার ধাপে ধাপে পদ্ধতিটি এখানে দেওয়া হল। Apigee Edge for Private Cloud সংস্করণ 4.53.01 এবং উচ্চতর সংস্করণে আপডেটের জন্য এই আপগ্রেডটি একটি বাধ্যতামূলক প্রয়োজনীয়তা। এই আপগ্রেডটি সমস্ত Apigee LDAP স্থাপনার টপোলজির ক্ষেত্রে প্রযোজ্য: একক-সার্ভার, সক্রিয়-প্যাসিভ এবং সক্রিয়-সক্রিয় (মাল্টি-মাস্টার)।

পূর্বশর্ত এবং বিবেচনা

  • মনে রাখবেন যে LDAP আপগ্রেড প্রক্রিয়া চলাকালীন, ব্যবস্থাপনা API গুলি এবং ফলস্বরূপ, Apigee UI সমস্ত অঞ্চলে সম্পূর্ণরূপে অনুপলব্ধ থাকবে। সমস্ত প্রশাসনিক কাজ - যেমন ব্যবহারকারী, ভূমিকা, অ্যাপ এবং সংস্থা পরিচালনা ব্যর্থ হবে এবং বিরতি দেওয়া উচিত। আপনার API প্রক্সি ট্র্যাফিকের প্রক্রিয়াকরণে কোনও প্রভাব পড়বে না। LDAP আপগ্রেডের সাথে আরও এগিয়ে যাওয়ার আগে দয়া করে সমস্ত edge-management-server এবং edge-ui বন্ধ করে দিন।

  • ব্যাকআপ অত্যন্ত গুরুত্বপূর্ণ: আপনার বিদ্যমান LDAP ডেটার একটি সম্পূর্ণ এবং বৈধ ব্যাকআপ নিয়ে আলোচনা করা যাবে না। বৈধ ব্যাকআপ ছাড়া এগিয়ে গেলে ডেটার অপরিবর্তনীয় ক্ষতি হবে। LDAP ডেটার একটি ধারাবাহিক, পয়েন্ট-ইন-টাইম স্ন্যাপশট ক্যাপচার করার জন্য LDAP পরিষেবাটি চলমান থাকাকালীন ব্যাকআপ শুরু করতে হবে। প্রকৃত আপগ্রেড সম্পাদনের জন্য ব্যাকআপ প্রয়োজন। ব্যাকআপ ছাড়া, আপনি আপগ্রেড কার্যকর করতে পারবেন না বা রোলব্যাক করতে পারবেন না কারণ আপগ্রেডের ধাপগুলিতে LDAP ডেটা মুছে ফেলা জড়িত।

প্রস্তুতি এবং ইনস্টলেশন (সমস্ত LDAP সার্ভার)

এই বিভাগের ধাপগুলি (ধাপ ২ থেকে ধাপ ৫) সমস্ত LDAP স্থাপনার টপোলজির জন্য অভিন্ন। এই ক্রিয়াগুলি প্রতিটি সার্ভারে সম্পাদন করা আবশ্যক যেখানে apigee-openldap উপাদানটি ইনস্টল করা আছে, তার ভূমিকা নির্বিশেষে।

  1. LDAP আপগ্রেডের সাথে আরও এগিয়ে যাওয়ার আগে দয়া করে সমস্ত edge-management-server এবং edge-ui বন্ধ করে দিন।
    apigee-service edge-management-server stop
    apigee-service edge-ui stop
  2. বিদ্যমান LDAP ডেটার ব্যাকআপ নিন

    কোনও পরিবর্তন করার আগে, সমস্ত LDAP সার্ভার থেকে বর্তমান LDAP ডেটার সম্পূর্ণ ব্যাকআপ নিন। এটি একটি নিরাপদ পুনরুদ্ধার পয়েন্ট তৈরি করে।

    • ব্যাকআপ কমান্ডটি কার্যকর করুন। এই ক্রিয়াটি /opt/apigee/backup/openldap ডিরেক্টরির মধ্যে একটি টাইমস্ট্যাম্পড ব্যাকআপ আর্কাইভ তৈরি করে।
      apigee-service apigee-openldap backup
    • মোট রেকর্ড গণনা পান: আপগ্রেড-পরবর্তী যাচাইকরণের জন্য আপনার ডিরেক্টরিতে রেকর্ডের সংখ্যা ক্যাপচার করুন (রেকর্ড গণনা সমস্ত LDAP সার্ভারের সাথে মিলিত হওয়া উচিত)। এটি একটি স্যানিটি চেক।
      # Note: Replace 'YOUR_PASSWORD' with your current LDAP manager password.
      ldapsearch -o ldif-wrap=no -b "dc=apigee,dc=com" \
      -D "cn=manager,dc=apigee,dc=com" -H ldap://:10389 -LLL -x -w 'YOUR_PASSWORD' | wc -l
  3. LDAP বন্ধ করুন এবং ডেটা ডিরেক্টরি পরিষ্কার করুন

    এই ধাপটি সকল LDAP সার্ভারে সম্পাদন করতে হবে। সংস্করণের প্রধান পরিবর্তন এবং অন্তর্নিহিত কাঠামোগত পার্থক্যের কারণে এটি বাধ্যতামূলক। একটি পরিষ্কার ডিরেক্টরি নিশ্চিত করে যে কোনও দ্বন্দ্ব নেই। যখন সমস্ত LDAP সার্ভার বন্ধ করা হবে, তখন ম্যানেজমেন্ট API এবং UI-তে ব্যাঘাত শুরু হবে।

    • LDAP পরিষেবা বন্ধ করুন।
      apigee-service apigee-openldap stop
    • পুরানো LDAP ডেটা এবং কনফিগারেশন ডিরেক্টরিগুলি স্থায়ীভাবে মুছে ফেলুন।
      rm -rf /opt/apigee/data/apigee-openldap/*
  4. নতুন LDAP সংস্করণটি ইনস্টল এবং কনফিগার করুন

    সমস্ত LDAP সার্ভারে, নতুন কম্পোনেন্ট সংস্করণ ডাউনলোড এবং ইনস্টল করতে স্ট্যান্ডার্ড Apigee স্ক্রিপ্ট ব্যবহার করুন।

    • নতুন LDAP কম্পোনেন্ট ইনস্টল করুন: আপডেট স্ক্রিপ্ট আপনার কনফিগারেশন ফাইলটি পড়ে এবং নতুন apigee-openldap প্যাকেজ ইনস্টল করে।
      /opt/apigee/apigee-setup/bin/update.sh -c ldap -f /opt/silent.conf
    • নতুন LDAP সংস্করণ যাচাই করুন: ইনস্টলেশন সম্পন্ন হওয়ার পরে প্রোফাইলটি পুনরায় লোড করুন, যাচাই করুন যে নতুন LDAP সংস্করণটি সঠিকভাবে ইনস্টল করা আছে।
      source ~/.bash_profile
      ldapsearch -VV
      Expected output:
      ldapsearch: @(#) $OpenLDAP: ldapsearch 2.6.7
  5. ডেটা পুনরুদ্ধারের আগে সমস্ত সার্ভারে LDAP বন্ধ করুন

    এটি একটি গুরুত্বপূর্ণ সিঙ্ক্রোনাইজেশন ধাপ। আপনার ব্যাকআপ পুনরুদ্ধার করার আগে, আপনাকে নিশ্চিত করতে হবে যে নতুন ইনস্টল করা LDAP পরিষেবাটি সমস্ত সার্ভারে বন্ধ আছে। প্রতিটি LDAP সার্ভারে, নিম্নলিখিত কমান্ডগুলি কার্যকর করুন:

    apigee-service apigee-openldap stop
    rm -rf /opt/apigee/data/apigee-openldap/ldap/*
  6. LDAP ডেটা পুনরুদ্ধার করুন

    কৌশলটি হল প্রথম সক্রিয় সার্ভারে ব্যাকআপ পুনরুদ্ধার করা। এই সার্ভারটি তখন সত্যের উৎস হিসেবে কাজ করবে, একটি মাল্টি-সার্ভার সেটআপে তার সমকক্ষদের কাছে ডেটা প্রতিলিপি করবে।

    1. পুনরুদ্ধারের জন্য প্রথম সক্রিয় সার্ভারটি সনাক্ত করুন

      • একক-সার্ভার সেটআপের জন্য: এটি আপনার একমাত্র LDAP সার্ভার। আপনি সরাসরি পরবর্তী ধাপে যেতে পারেন।
      • সক্রিয়-প্যাসিভ এবং সক্রিয়-সক্রিয় সেটআপের জন্য: প্রতিটি LDAP সার্ভারে নিম্নলিখিত ডায়াগনস্টিক কমান্ডটি চালান:
        grep -i '^olcSyncrepl:' /opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase*\ldif
        Note:
        -If this command returns output, the server is a passive server.
        -If it returns no output, the server is the active server.
    2. ব্যাকআপ ডেটা পুনরুদ্ধার করুন

      এগিয়ে যাওয়ার আগে, সমস্ত LDAP সার্ভারে ধাপ ৫ সফলভাবে সম্পন্ন হয়েছে কিনা তা দুবার পরীক্ষা করে দেখুন।

      • উপরে আপনার চিহ্নিত প্রথম সক্রিয় সার্ভারে, ব্যাকআপ ডিরেক্টরিতে নেভিগেট করুন।
        cd /opt/apigee/backup/openldap
      • restore কমান্ডটি কার্যকর করুন। অনিচ্ছাকৃত বা পুরোনো সংস্করণ পুনরুদ্ধার রোধ করতে, ধাপ ২ থেকে সঠিক ব্যাকআপ টাইমস্ট্যাম্প নির্দিষ্ট করার জন্য আমরা দৃঢ়ভাবে সুপারিশ করছি।
        # To restore a specific backup (recommended):
        apigee-service apigee-openldap restore 2025.08.11,23.34.00
        
        # To restore the latest available backup by default:
        apigee-service apigee-openldap restore
      • পুনরুদ্ধার প্রক্রিয়া সফলভাবে সম্পন্ন হওয়ার পর, প্রথম সক্রিয় সার্ভারে LDAP পরিষেবা শুরু করুন।
        apigee-service apigee-openldap start
  7. অবশিষ্ট LDAP সার্ভারগুলি শুরু করুন

    যদি আপনার একাধিক সার্ভার সেটআপ থাকে, তাহলে প্রতিটি LDAP সার্ভারে পরিষেবাটি শুরু করুন:

    apigee-service apigee-openldap start

  8. চূড়ান্ত বৈধতা

    চূড়ান্ত ধাপ হল আপগ্রেড সফল হয়েছে কিনা এবং সমগ্র LDAP ক্লাস্টার জুড়ে ডেটা সামঞ্জস্যপূর্ণ কিনা তা যাচাই করা।

    • সমস্ত LDAP সার্ভারে যাচাইকরণ কমান্ডটি চালান। রেকর্ড গণনা সমস্ত সার্ভারে একই রকম হওয়া উচিত এবং ধাপ ২-এ আপনার ক্যাপচার করা গণনার সাথে মিল থাকতে হবে।
    • # Note: Replace 'YOUR_PASSWORD' with your LDAP manager password.
      ldapsearch -o ldif-wrap=no -b "dc=apigee,dc=com" \
      -D "cn=manager,dc=apigee,dc=com" -H ldap://:10389 -LLL -x -w 'YOUR_PASSWORD' | wc -l
    • একবার আপনি নিশ্চিত হয়ে গেলে যে ডেটা সঠিক এবং সামঞ্জস্যপূর্ণ, আপনার LDAP আপগ্রেড সম্পূর্ণ হয়েছে। আপনি এখন আপনার প্রতিষ্ঠানের স্ট্যান্ডার্ড আপগ্রেড পদ্ধতি অনুসারে edge-management-server এবং edge-ui এবং অন্যান্য নির্ভরশীল উপাদানগুলি শুরু করতে পারেন।

Cassandra 4.0.18 তে আপগ্রেড করা আবশ্যক

প্রাইভেট ক্লাউড ৪.৫৩.০১ এর জন্য অ্যাপিজি এজ-এ ক্যাসান্দ্রার ৪.০.১৮ সংস্করণে আপগ্রেড অন্তর্ভুক্ত রয়েছে।

আপগ্রেড এবং রোলব্যাক

  • Cassandra 3.11.X থেকে Cassandra 4.0.X তে আপগ্রেড করা একটি মসৃণ প্রক্রিয়া। প্রাইভেট ক্লাউড 4.53.00 এর জন্য Edge এর সাথে প্রকাশিত Cassandra 4.0.X, প্রাইভেট ক্লাউড 4.52.02 এর রানটাইম এবং পরিচালনা উপাদানগুলির সাথে সামঞ্জস্যপূর্ণ।
  • Cassandra 4.0.X থেকে 3.11.X-এ সরাসরি রোলব্যাক করা সম্ভব নয়। রেপ্লিকা বা ব্যাকআপ ব্যবহার করে রোলব্যাক করা একটি জটিল প্রক্রিয়া এবং এতে ডাউনটাইম এবং/অথবা ডেটা ক্ষতি হতে পারে। সমস্যা সমাধান এবং Cassandra 4.0.X-এ আপগ্রেড করা রোলব্যাক করার চেয়ে ভালো।
  • আপগ্রেড করার আগে রোলব্যাক পদ্ধতিগুলির সাথে নিজেকে পরিচিত করা গুরুত্বপূর্ণ। উপযুক্ত রোলব্যাক পাথগুলি উপলব্ধ রয়েছে তা নিশ্চিত করার জন্য আপগ্রেডের সময় রোলব্যাকের সূক্ষ্মতাগুলি বিবেচনা করা অত্যন্ত গুরুত্বপূর্ণ।

একক ডেটা সেন্টার

একটি একক ডেটা সেন্টারের মধ্যে Cassandra কে 3.11.X থেকে 4.0.X এ আপগ্রেড করা সহজ, তবে রোলব্যাক জটিল এবং এর ফলে ডাউনটাইম এবং ডেটা ক্ষতি হতে পারে। উৎপাদন কাজের চাপের জন্য, আপগ্রেড শুরু করার আগে নতুন ডেটা সেন্টারে কমপক্ষে Cassandra নোড উপলব্ধ থাকা একটি নতুন ডেটা সেন্টার যুক্ত করার পরামর্শ দেওয়া হচ্ছে। এটি আপনার API ট্র্যাফিকের ডেটা ক্ষতি বা ব্যাঘাত ছাড়াই Cassandra কে রোলব্যাক করতে সক্ষম করবে। আপগ্রেড শেষ হয়ে গেলে বা চেকপয়েন্ট 2 এ পৌঁছানোর পরে এই অতিরিক্ত ডেটা সেন্টারটি বাতিল করা যেতে পারে।

যদি নতুন ডেটা সেন্টার যোগ করা সম্ভব না হয় কিন্তু রোলব্যাক ক্ষমতা এখনও কাম্য হয়, তাহলে Cassandra 3.11.X পুনরুদ্ধারের জন্য ব্যাকআপ প্রয়োজন হবে। তবে, এই পদ্ধতিতে ডাউনটাইম এবং ডেটা ক্ষতি উভয়ই জড়িত থাকতে পারে।

একাধিক ডেটা সেন্টার

এজ ফর প্রাইভেট ক্লাউড ৪.৫২.০২ দিয়ে একাধিক ডেটা সেন্টার পরিচালনা করলে এজ ফর প্রাইভেট ক্লাউড ৪.৫৩.০০-তে আপগ্রেডের সময় রোলব্যাকের ক্ষেত্রে আরও নমনীয়তা পাওয়া যায়।

  • রোলব্যাকগুলি পুরোনো ক্যাসান্ড্রা সংস্করণ (3.11.X) চালিত কমপক্ষে একটি ডেটা সেন্টার থাকার উপর নির্ভর করে।
  • যদি আপনার সম্পূর্ণ Cassandra ক্লাস্টারটি 4.0.X তে আপগ্রেড করা হয়, তাহলে আপনাকে Cassandra 3.11.X তে ফিরে যেতে হবে না। আপনাকে Private Cloud 4.53.00 অথবা 4.52.02 এর অন্যান্য উপাদানগুলির সাথে নতুন Cassandra সংস্করণ ব্যবহার চালিয়ে যেতে হবে।
  1. একবারে একটি করে ক্যাসান্দ্রা ডেটা সেন্টার আপগ্রেড করুন: একটি একক ডেটা সেন্টারের মধ্যে পৃথকভাবে ক্যাসান্দ্রা নোড আপগ্রেড করে শুরু করুন। অন্য ডেটা সেন্টারে যাওয়ার আগে একটি ডেটা সেন্টারের সমস্ত ক্যাসান্দ্রা নোড আপগ্রেড সম্পূর্ণ করুন।
  2. বিরতি দিন এবং যাচাই করুন: একটি ডেটা সেন্টার আপগ্রেড করার পরে, আপনার ব্যক্তিগত ক্লাউড ক্লাস্টার, বিশেষ করে আপগ্রেড করা ডেটা সেন্টার, সঠিকভাবে কাজ করছে কিনা তা নিশ্চিত করার জন্য বিরতি দিন।
  3. মনে রাখবেন: যদি আপনার কমপক্ষে একটি ডেটা সেন্টারে এখনও পুরোনো সংস্করণটি চলমান থাকে তবেই আপনি পূর্ববর্তী ক্যাসান্দ্রা সংস্করণে ফিরে যেতে পারবেন।
  4. সময়-সংবেদনশীল: কার্যকারিতা যাচাই করার জন্য আপনি অল্প সময়ের জন্য (কয়েক ঘন্টা সুপারিশ করা হয়) বিরতি দিতে পারেন, তবে আপনি অনির্দিষ্টকালের জন্য মিশ্র-সংস্করণ অবস্থায় থাকতে পারবেন না। এর কারণ হল একটি অ-অভিন্ন ক্যাসান্ড্রা ক্লাস্টার (বিভিন্ন সংস্করণে নোড সহ) এর কার্যকারিতা সীমাবদ্ধতা রয়েছে।
  5. পুঙ্খানুপুঙ্খ পরীক্ষা: পরবর্তী ডেটা সেন্টার আপগ্রেড করার আগে কর্মক্ষমতা এবং কার্যকারিতার ব্যাপক পরীক্ষার জন্য Apigee জোরালোভাবে সুপারিশ করে। একবার সমস্ত ডেটা সেন্টার আপগ্রেড হয়ে গেলে, পূর্ববর্তী সংস্করণে রোলব্যাক করা অসম্ভব।
দুই-চেকপয়েন্ট প্রক্রিয়া হিসেবে রোলব্যাক
  1. চেকপয়েন্ট ১: প্রাথমিক অবস্থা, ৪.৫২.০২ সংস্করণে সমস্ত উপাদান সহ। যতক্ষণ পর্যন্ত পুরোনো সংস্করণে কমপক্ষে একটি ক্যাসান্দ্রা ডেটা সেন্টার থাকে ততক্ষণ পর্যন্ত সম্পূর্ণ রোলব্যাক সম্ভব।
  2. চেকপয়েন্ট ২: সমস্ত ডেটা সেন্টারের সমস্ত ক্যাসান্ড্রা নোড আপডেট হওয়ার পরে। আপনি এই অবস্থায় ফিরে যেতে পারেন, কিন্তু চেকপয়েন্ট ১ এ ফিরে যেতে পারবেন না।
উদাহরণ

একটি দুই-ডেটা-সেন্টার (DC) ক্লাস্টার বিবেচনা করুন:

  1. শুরুর অবস্থা: উভয় ডিসিতে ক্যাসান্ড্রা নোডগুলি 3.11.X সংস্করণে রয়েছে। অন্যান্য সমস্ত নোডগুলি প্রাইভেট ক্লাউড সংস্করণ 4.52.02 এর জন্য এজে রয়েছে। ধরে নিন প্রতি ডিসিতে তিনটি ক্যাসান্ড্রা নোড।
  2. DC-1 আপগ্রেড করুন: DC-1-এর তিনটি ক্যাসান্দ্রা নোড একে একে আপগ্রেড করুন।
  3. বিরতি এবং যাচাইকরণ: ক্লাস্টার, বিশেষ করে DC-1, সঠিকভাবে কাজ করছে কিনা তা নিশ্চিত করার জন্য বিরতি দিন (কর্মক্ষমতা, কার্যকারিতা পরীক্ষা করুন)। আপনি DC-2-তে Cassandra নোড ব্যবহার করে প্রাথমিক অবস্থায় ফিরে যেতে পারেন। মনে রাখবেন, মিশ্র-সংস্করণ Cassandra ক্লাস্টারের সীমাবদ্ধতার কারণে এই বিরতি অস্থায়ী হতে হবে।
  4. DC-2 আপগ্রেড করুন: DC-2-তে বাকি তিনটি ক্যাসান্ড্রা নোড আপগ্রেড করুন। এটি আপনার নতুন রোলব্যাক চেকপয়েন্ট হয়ে উঠবে।
  5. অন্যান্য উপাদান আপগ্রেড করুন: সকল ডেটা সেন্টার, একটি নোড এবং একটি ডেটা সেন্টারে যথারীতি ব্যবস্থাপনা, রানটাইম এবং অ্যানালিটিক্স নোড আপগ্রেড করুন। যদি সমস্যা দেখা দেয়, তাহলে আপনি ধাপ ৪-এর অবস্থায় ফিরে যেতে পারেন।

ক্যাসান্দ্রা আপগ্রেডের পূর্বশর্ত

আপনার প্রাইভেট ক্লাউড ৪.৫২.০২ এর জন্য এজ সহ ক্যাসান্ড্রা ৩.১১.১৬ চালানো উচিত এবং নিম্নলিখিতগুলি নিশ্চিত করা উচিত:
  1. সম্পূর্ণ ক্লাস্টারটি ক্যাসান্ড্রা ৩.১১.১৬ এর সাথে কার্যকর এবং সম্পূর্ণরূপে কার্যকর।
  2. কম্প্যাকশন কৌশলটি LeveledCompactionStrategy তে সেট করা আছে (সংস্করণ 4.52.02 এ আপগ্রেডের জন্য একটি পূর্বশর্ত)।
  3. নিশ্চিত করুন যে নীচের প্রতিটি ধাপটি প্রাইভেট ক্লাউডের জন্য এজ-এ ক্যাসান্ড্রা 3.11-এর প্রাথমিক আপগ্রেডের অংশ হিসাবে সম্পন্ন হয়েছে, 4.52.02।

    • পূর্ববর্তী আপগ্রেডের সময় প্রতিটি ক্যাসান্ড্রা নোডে post_upgrade কমান্ডটি কার্যকর করা হয়েছিল।
    • পূর্ববর্তী আপগ্রেডের সময় drop_old_tables কমান্ডটি সম্পূর্ণ Cassandra ক্লাস্টারে কার্যকর করা হয়েছিল।

যদি আপনি নিশ্চিত না হন যে প্রাইভেট ক্লাউড ৪.৫২.০২ এর জন্য এজ ব্যবহার করার সময় ক্যাসান্ড্রা ৩.১১ এ post_upgrade এবং drop_old_tables কমান্ডগুলি কার্যকর করা হয়েছিল, তাহলে ৪.৫৩.০১ এ আপগ্রেড করার চেষ্টা করার আগে আপনি নিরাপদে সেগুলি পুনরায় চালাতে পারেন।

ধাপ ১: আপগ্রেডের জন্য প্রস্তুত হোন

নিচের ধাপগুলি আপনার তৈরি করা স্ট্যান্ডার্ড ফাইলগুলির পাশাপাশি, যেমন কম্পোনেন্ট আপগ্রেড সক্ষম করার জন্য Apigee-এর স্ট্যান্ডার্ড কনফিগারেশন ফাইল

  1. Apigee ব্যবহার করে Cassandra ব্যাকআপ করুন।
  2. ক্যাসান্ড্রা নোডের ভিএম স্ন্যাপশট নিন (যদি সম্ভব হয়)।
  3. নিশ্চিত করুন যে পোর্ট 9042 সমস্ত এজ ফর প্রাইভেট ক্লাউড উপাদান থেকে, যার মধ্যে রয়েছে ম্যানেজমেন্ট সার্ভার, মেসেজ প্রসেসর, রাউটার, Qpid এবং Postgres, ক্যাসান্ড্রা নোডগুলিতে অ্যাক্সেসযোগ্য, যদি ইতিমধ্যে কনফিগার করা না থাকে। আরও তথ্যের জন্য পোর্টের প্রয়োজনীয়তাগুলি দেখুন।

ধাপ ২: সমস্ত ক্যাসান্দ্রা নোড আপগ্রেড করুন

প্রতিটি ডেটা সেন্টারে, প্রতিটি ডেটা সেন্টারে, প্রতিটি ক্যাসান্দ্রা নোড একে একে আপডেট করা উচিত। একটি ডেটা সেন্টারের মধ্যে নোড আপগ্রেড করার মধ্যে, একই ডেটা সেন্টারে অন্য একটি নোড আপগ্রেড করার আগে একটি আপডেটেড নোড সম্পূর্ণরূপে শুরু হয়েছে এবং ক্লাস্টারে যোগদান করেছে কিনা তা নিশ্চিত করার জন্য কয়েক মিনিট অপেক্ষা করুন।

একটি ডেটা সেন্টারের মধ্যে সমস্ত ক্যাসান্দ্রা নোড আপগ্রেড করার পরে, পরবর্তী ডেটা সেন্টারে নোডগুলি নিয়ে এগিয়ে যাওয়ার আগে কিছু সময় (30 মিনিট থেকে কয়েক ঘন্টা) অপেক্ষা করুন। এই সময়ের মধ্যে, আপডেট করা ডেটা সেন্টারটি পুঙ্খানুপুঙ্খভাবে পর্যালোচনা করুন এবং নিশ্চিত করুন যে আপনার Apigee ক্লাস্টারের কার্যকরী এবং কর্মক্ষমতা মেট্রিক্স অক্ষত আছে। এই পদক্ষেপটি ডেটা সেন্টারের স্থিতিশীলতা নিশ্চিত করার জন্য অত্যন্ত গুরুত্বপূর্ণ যেখানে Cassandra সংস্করণ 4.0.X এ আপগ্রেড করা হয়েছে, যখন Apigee এর বাকি উপাদানগুলি 4.52.02 সংস্করণে থাকবে।

  1. একটি Cassandra নোড আপগ্রেড করতে, নিম্নলিখিত কমান্ডটি চালান:
    /opt/apigee/apigee-setup/bin/update.sh -c cs -f configFile
  2. একবার একটি নোড আপডেট হয়ে গেলে, এগিয়ে যাওয়ার আগে কিছু বৈধতা চালানোর জন্য নোডে নিম্নলিখিত কমান্ডটি চালান:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra validate_upgrade -f configFile
  3. উপরেরটি নিচের লাইন বরাবর কিছু আউটপুট দেবে:
    Cassandra version is verified - [cqlsh 6.0.0 | Cassandra 4.0.18 | CQL spec 3.4.5 | Native protocol v5] 
    Metadata is verified
  4. Cassandra নোডে নিম্নলিখিত post_upgrade কমান্ডটি চালান:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra post_upgrade
  5. Cassandra নোডে সূচকগুলি পুনর্নির্মাণ করতে নিম্নলিখিত nodetool কমান্ডগুলি চালান:
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms api_products api_products_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms app_credentials app_credentials_api_products_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms app_credentials app_credentials_organization_app_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms app_credentials app_credentials_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms app_end_user app_end_user_app_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_app_family_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_app_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_app_type_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_parent_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_parent_status_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_status_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms maps maps_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_access_tokens oauth_10_access_tokens_app_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_access_tokens oauth_10_access_tokens_consumer_key_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_access_tokens oauth_10_access_tokens_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_access_tokens oauth_10_access_tokens_status_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_request_tokens oauth_10_request_tokens_consumer_key_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_request_tokens oauth_10_request_tokens_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_verifiers oauth_10_verifiers_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_verifiers oauth_10_verifiers_request_token_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_20_access_tokens oauth_20_access_tokens_app_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_20_access_tokens oauth_20_access_tokens_client_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_20_access_tokens oauth_20_access_tokens_refresh_token_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_20_authorization_codes oauth_20_authorization_codes_client_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_20_authorization_codes oauth_20_authorization_codes_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect companies companies_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect companies companies_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect companies companies_status_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect company_developers company_developers_company_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect company_developers company_developers_developer_email_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect company_developers company_developers_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect developers developers_email_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect developers developers_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect developers developers_status_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index cache cache_entries cache_entries_cache_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index audit audits audits_operation_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index audit audits audits_requesturi_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index audit audits audits_responsecode_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index audit audits audits_timestamp_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index audit audits audits_user_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis a_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis a_org_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_a_active_rev
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_a_def_index_template
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_a_def_method_template
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_a_latest_rev
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_a_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_a_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_base_url
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_is_active
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_is_latest
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_org_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_rel_ver
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_rev_num
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_a_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_api_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_ar_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_base_url
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_org_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_r_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_r_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_res_path
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_rev_num
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_a_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_api_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_ar_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_base_url
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_org_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_res_path
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_rev_num
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 schemas s_api_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 schemas s_ar_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 security sa_api_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 security sa_ar_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 template t_a_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 template t_a_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 template t_entity
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 template t_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 template t_org_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 template_auth au_api_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index dek keys usecase_index
    যদি আপনি monetization ব্যবহার করেন, তাহলে monetization keyspaces সম্পর্কিত নিম্নলিখিত rebuild index কমান্ডগুলিও চালান:
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint limits limits_created_date_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint limits limits_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint limits limits_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint limits limits_updated_date_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_created_date_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_currency_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_dev_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_limit_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_prod_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_reason_code_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_sub_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint invitations invitations_company_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint invitations invitations_created_at_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint invitations invitations_developer_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint invitations invitations_lastmodified_at_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint invitations invitations_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus triggers triggers_env_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus triggers triggers_job_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus triggers triggers_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus job_details job_details_job_class_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus job_details job_details_job_group_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus job_details job_details_job_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus org_triggers org_triggers_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus triggers_suite triggers_suite_group_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus triggers_suite triggers_suite_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus triggers_suite triggers_suite_suite_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index notification notification_service_item notification_service_item_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index notification notification_service_item notification_service_item_status_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index notification notification_service_black_list_item notification_service_black_list_item_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index notification notification_service_black_list_item notification_service_black_list_item_to_email_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index notification notification_email_template_item notification_email_template_item_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index notification notification_email_template_item notification_email_template_item_org_id_idx

ধাপ ৩: সকল ম্যানেজমেন্ট নোড আপগ্রেড করুন

সকল অঞ্চলের সকল ম্যানেজমেন্ট নোড একে একে আপগ্রেড করুন:

/opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile

ধাপ ৪: সকল রানটাইম নোড আপগ্রেড করুন

সকল অঞ্চলের সকল রাউটার এবং মেসেজ প্রসেসর নোড একে একে আপগ্রেড করুন:

/opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile

ধাপ ৫: প্রাইভেট ক্লাউড ৪.৫৩.০১ উপাদানের জন্য বাকি সমস্ত এজ আপগ্রেড করুন

সকল অঞ্চলে অবশিষ্ট সকল edge-qpid-server এবং edge-postgres-server নোড একে একে আপগ্রেড করুন।

Zookeeper 3.8.4-এ আপগ্রেড করা আবশ্যক

এজ ফর প্রাইভেট ক্লাউডের এই রিলিজে জুকিপার ৩.৮.৪-এর আপগ্রেড অন্তর্ভুক্ত রয়েছে। এই আপগ্রেডের অংশ হিসেবে, সমস্ত জুকিপার ডেটা জুকিপার ৩.৮.৪-এ স্থানান্তরিত হবে।

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

আপডেট প্রক্রিয়া চলাকালীন, লিডার নোড বন্ধ হয়ে গেলে Zookeeper-এ ক্ষণিকের জন্য বিলম্ব হতে পারে অথবা লেখার ব্যর্থতা দেখা দিতে পারে। এটি Zookeeper-এ লেখা পরিচালনার ক্রিয়াকলাপগুলিকে প্রভাবিত করতে পারে, যেমন প্রক্সি স্থাপনের অপারেশন, এবং Apigee অবকাঠামোগত পরিবর্তন, যেমন একটি বার্তা প্রসেসর সংযোজন বা অপসারণ ইত্যাদি। Zookeeper-এর আপগ্রেডের সময় Apigee-এর রানটাইম API-গুলিতে কোনও প্রভাব ফেলা উচিত নয় (যদি না এই রানটাইম APIগুলি ম্যানেজমেন্ট API-গুলিকে কল করে) নীচের পদ্ধতি অনুসরণ করে।

উচ্চ স্তরে, আপগ্রেড প্রক্রিয়ার মধ্যে প্রতিটি নোডের ব্যাকআপ নেওয়া জড়িত। এর পরে সমস্ত পর্যবেক্ষক এবং অনুসরণকারীকে আপগ্রেড করা হয় এবং অবশেষে লিডার নোডকে আপগ্রেড করা হয়।

ব্যাকআপ নিন

রোলব্যাকের প্রয়োজন হলে Zookeeper-এর সমস্ত নোডের ব্যাকআপ নিন। মনে রাখবেন যে রোলব্যাক Zookeeper-কে ব্যাকআপ নেওয়ার সময়ের অবস্থায় পুনরুদ্ধার করবে। দ্রষ্টব্য: ব্যাকআপ নেওয়ার পর থেকে (যার তথ্য Zookeeper-এ সংরক্ষিত আছে) Apigee-তে কোনও স্থাপনা বা অবকাঠামোগত পরিবর্তন পুনরুদ্ধারের সময় হারিয়ে যাবে।

  /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper backup

যদি আপনি ভার্চুয়াল মেশিন ব্যবহার করেন এবং আপনার সেই ক্ষমতা থাকে, তাহলে VM স্ন্যাপশট বা ব্যাকআপ পুনরুদ্ধার বা রোলব্যাকের জন্যও নেওয়া যেতে পারে (যদি প্রয়োজন হয়)।

নেতা, অনুসারী এবং পর্যবেক্ষকদের চিহ্নিত করুন

দ্রষ্টব্য: নিচের নমুনা কমান্ডগুলি Zookeeper-এ ডেটা পাঠানোর জন্য nc ইউটিলিটি ব্যবহার করে। আপনি Zookeeper-এ ডেটা পাঠানোর জন্য বিকল্প ইউটিলিটিও ব্যবহার করতে পারেন।

  1. যদি এটি ZooKeeper নোডে ইনস্টল না থাকে, তাহলে nc ইনস্টল করুন:
      sudo yum install nc
  2. নোডে নিম্নলিখিত nc কমান্ডটি চালান, যেখানে 2181 হল ZooKeeper পোর্ট:
      echo stat | nc localhost 2181

    আপনি নিম্নলিখিত মত আউটপুট দেখতে পাবেন:

      Zookeeper version: 3.8.4-5a02a05eddb59aee6ac762f7ea82e92a68eb9c0f, built on 2022-02-25 08:49 UTC
      Clients:
       /0:0:0:0:0:0:0:1:41246[0](queued=0,recved=1,sent=0)
      
      Latency min/avg/max: 0/0.2518/41
      Received: 647228
      Sent: 647339
      Connections: 4
      Outstanding: 0
      Zxid: 0x400018b15
      Mode: follower
      Node count: 100597

    নোডের আউটপুটের Mode লাইনে, নোড কনফিগারেশনের উপর নির্ভর করে আপনি পর্যবেক্ষক, নেতা, অথবা অনুসরণকারী (অর্থাৎ একজন ভোটার যিনি নেতা নন) দেখতে পাবেন। দ্রষ্টব্য: একটি ZooKeeper নোড সহ Edge এর একটি স্বতন্ত্র ইনস্টলেশনে, Mode স্বতন্ত্র হিসাবে সেট করা হয়।

  3. প্রতিটি ZooKeeper নোডে ধাপ ১ এবং ২ পুনরাবৃত্তি করুন।

পর্যবেক্ষক এবং অনুসরণকারী নোডগুলিতে Zookeeper আপগ্রেড করুন

প্রতিটি পর্যবেক্ষক এবং অনুসরণকারী নোডে Zookeeper আপগ্রেড করুন নিম্নরূপ:

  1. বাহ্যিক ইন্টারনেট সংযোগ সহ নোডে 4.53.01 আপডেটে বর্ণিত Edge for Private Cloud 4.53.01 এর বুটস্ট্র্যাপ ডাউনলোড করে চালান। নোডে বাহ্যিক ইন্টারনেট সংযোগ আছে কিনা নাকি আপনি অফলাইন ইনস্টলেশন করছেন তার উপর নির্ভর করে প্রক্রিয়াটি সম্ভবত পরিবর্তিত হবে।
  2. জুকিপার কম্পোনেন্ট আপগ্রেড করুন:
      /opt/apigee/apigee-setup/bin/update.sh -c zk -f <silent-config-file>
    দ্রষ্টব্য: যদি এই নোডগুলিতে অন্যান্য উপাদান ইনস্টল করা থাকে (যেমন Cassandra), তাহলে আপনি এখনই সেগুলিও আপগ্রেড করতে পারেন (যেমন cs,zk প্রোফাইলের ক্ষেত্রে) অথবা আপনি পরে অন্যান্য উপাদানগুলি আপগ্রেড করতে পারেন। Apigee সুপারিশ করে যে আপনি প্রথমে Zookeeper আপগ্রেড করুন এবং অন্যান্য উপাদান আপগ্রেড করার আগে আপনার ক্লাস্টারটি সঠিকভাবে কাজ করছে কিনা তা নিশ্চিত করুন।
  3. প্রতিটি জুকিপার পর্যবেক্ষক এবং অনুসরণকারী নোডে উপরের ধাপগুলি পুনরাবৃত্তি করুন।

নেতা বন্ধ করুন

সমস্ত পর্যবেক্ষক এবং অনুসরণকারী নোড আপগ্রেড হয়ে গেলে, লিডারটি বন্ধ করুন। লিডার হিসাবে চিহ্নিত নোডে, নীচের কমান্ডটি চালান:

  /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper stop

মনে রাখবেন যে এই ইভেন্টের সময়, নতুন নেতা নির্বাচিত হওয়ার আগে, Zookeeper-এ ক্ষণিকের বিলম্ব বা লেখার ব্যর্থতা হতে পারে। এটি Zookeeper-এ লেখার ক্রিয়াকলাপগুলিকে প্রভাবিত করতে পারে যেমন প্রক্সি স্থাপনের ক্রিয়া বা Apigee অবকাঠামোগত পরিবর্তন, যেমন বার্তা প্রসেসর যোগ করা বা অপসারণ করা ইত্যাদি।

নতুন নেতা নির্বাচিত হয়েছেন কিনা তা যাচাই করুন

উপরের " নেতা, অনুসারী এবং পর্যবেক্ষক সনাক্ত করুন" বিভাগের ধাপগুলি ব্যবহার করে, বিদ্যমান নেতাকে থামিয়ে দেওয়ার পরে, অনুসারীদের মধ্য থেকে একজন নতুন নেতা নির্বাচিত হয়েছে কিনা তা যাচাই করুন। মনে রাখবেন যে নেতা বর্তমান নেতার চেয়ে ভিন্ন কোনও ডেটা সেন্টারে নির্বাচিত হতে পারতেন।

আপগ্রেড লিডার

উপরের পর্যবেক্ষক এবং অনুসরণকারী নোডগুলিতে Zookeeper আপগ্রেড করার মতো একই পদক্ষেপগুলি অনুসরণ করুন।

পুরাতন লিডার নোডটিও আপগ্রেড হয়ে গেলে, ক্লাস্টারের স্বাস্থ্য যাচাই করুন এবং নিশ্চিত করুন যে একটি লিডার নোড আছে।

এজ-রাউটারে Nginx 1.26 আপগ্রেড

পূর্ববর্তী সংস্করণ থেকে Edge for Private Cloud 4.53.01 এ আপগ্রেড করলে Nginx সফ্টওয়্যার স্বয়ংক্রিয়ভাবে সর্বশেষ সংস্করণে (1.26.x) আপগ্রেড হয় না। Nginx 1.26 এ নথিভুক্ত পরিবর্তনগুলির ফলে Apigee Edge 4.53.01 এ পরিবর্তনের ফলে যে কোনও দুর্ঘটনাজনিত রানটাইম পার্শ্ব প্রতিক্রিয়া প্রতিরোধ করার জন্য এটি করা হয়েছে। নিম্ন পরিবেশে যাচাইয়ের পরে আপনি ম্যানুয়ালি Nginx 1.20.x থেকে 1.26.x এ আপগ্রেড করতে পারেন। ম্যানুয়ালি আপগ্রেড করতে:

  1. নিশ্চিত করুন যে এজ-রাউটার নোডে সর্বশেষ 4.53.01 সফ্টওয়্যার রয়েছে।

    /opt/apigee/apigee-service/bin/apigee-service edge-router version
  2. আপনার বর্তমানে ব্যবহৃত Nginx সংস্করণটি পরীক্ষা করে যাচাই করুন।

    /opt/nginx/sbin/nginx -V

    যদি আপনি Nginx এর পুরোনো সংস্করণ ব্যবহার করেন, তাহলে রাউটার নোডে Nginx কে 1.26.X সংস্করণে আপগ্রেড করতে নীচের পদক্ষেপগুলি অনুসরণ করতে পারেন।

  3. রাউটার নোডে এজ-রাউটার প্রক্রিয়া বন্ধ করুন

    /opt/apigee/apigee-service/bin/apigee-service edge-router stop
  4. রাউটার নোডে nginx সফ্টওয়্যার আপগ্রেড করুন

    dnf update apigee-nginx
  5. Nginx সংস্করণটি আপডেট করা হয়েছে কিনা তা যাচাই করুন।

    /opt/nginx/sbin/nginx -V
  6. নোডে রাউটার প্রক্রিয়া শুরু করুন

    /opt/apigee/apigee-service/bin/apigee-service edge-router start
  7. প্রতিটি রাউটার নোডে একবারে একটি করে প্রক্রিয়াটি পুনরাবৃত্তি করুন।

পোস্টগ্রেস ১৭-তে আপগ্রেড করা আবশ্যক

এজের এই রিলিজে পোস্টগ্রেস ১৭-তে একটি আপগ্রেড অন্তর্ভুক্ত রয়েছে। সেই আপগ্রেডের অংশ হিসাবে, সমস্ত পোস্টগ্রেস ডেটা পোস্টগ্রেস ১৭-তে স্থানান্তরিত হয়।

বেশিরভাগ এজ প্রোডাকশন সিস্টেম মাস্টার-স্ট্যান্ডবাই রেপ্লিকেশনের জন্য কনফিগার করা দুটি পোস্টগ্রেস নোড ব্যবহার করে। আপডেট প্রক্রিয়া চলাকালীন, পোস্টগ্রেস নোডগুলি আপডেটের জন্য বন্ধ থাকাকালীন, বিশ্লেষণ ডেটা এখনও Qpid নোডগুলিতে লেখা হয়। পোস্টগ্রেস নোডগুলি আপডেট হয়ে অনলাইনে ফিরে আসার পরে, বিশ্লেষণ ডেটা পোস্টগ্রেস নোডগুলিতে পুশ করা হয়।

আপনি কীভাবে পোস্টগ্রেস আপডেট করবেন তা নির্ভর করে আপনি আপনার পোস্টগ্রেস নোডের জন্য ডেটা স্টোরেজ কীভাবে কনফিগার করেছেন তার উপর:

  • যদি আপনি আপনার পোস্টগ্রেস নোডের জন্য স্থানীয় ডেটা স্টোরেজ ব্যবহার করেন , তাহলে আপগ্রেডের সময়কালের জন্য আপনাকে একটি নতুন পোস্টগ্রেস স্ট্যান্ডবাই নোড ইনস্টল করতে হবে। আপগ্রেড সম্পূর্ণ হওয়ার পরে, আপনি নতুন পোস্টগ্রেস স্ট্যান্ডবাই নোডটি বাতিল করতে পারেন।

    যদি কোনও কারণে আপডেটটি রোলব্যাক করতে হয় তবে অতিরিক্ত পোস্টগ্রেস স্ট্যান্ডবাই নোড প্রয়োজন। যদি আপনাকে আপডেটটি রোলব্যাক করতে হয়, তাহলে নতুন পোস্টগ্রেস স্ট্যান্ডবাই নোডটি রোলব্যাকের পরে মাস্টার পোস্টগ্রেস নোডে পরিণত হয়। অতএব, যখন আপনি নতুন পোস্টগ্রেস স্ট্যান্ডবাই নোড ইনস্টল করেন, তখন এটি এমন একটি নোডে থাকা উচিত যা পোস্টগ্রেস সার্ভারের সমস্ত হার্ডওয়্যার প্রয়োজনীয়তা পূরণ করে, যেমন এজ ইনস্টলেশন প্রয়োজনীয়তাগুলিতে সংজ্ঞায়িত করা হয়েছে।

    প্রোটোটাইপিং এবং পরীক্ষার জন্য ব্যবহৃত টপোলজি, এজের ১-নোড এবং ২-নোড কনফিগারেশনে, আপনার কাছে কেবল একটি পোস্টগ্রেস নোড থাকবে। আপনি নতুন পোস্টগ্রেস নোড তৈরি না করেই সরাসরি এই পোস্টগ্রেস নোডগুলি আপডেট করতে পারেন।

  • যদি আপনি আপনার Postgres নোডের জন্য নেটওয়ার্ক স্টোরেজ ব্যবহার করেন , যেমন Apigee সুপারিশ করেছে, তাহলে আপনাকে একটি নতুন Postgres নোড ইনস্টল করতে হবে না। নীচের পদ্ধতিগুলিতে, আপনি ইনস্টল করার জন্য নির্দিষ্ট পদক্ষেপগুলি এড়িয়ে যেতে পারেন এবং পরে একটি নতুন Postgres স্ট্যান্ডবাই নোড বাতিল করতে পারেন।

    আপডেট প্রক্রিয়া শুরু করার আগে, পোস্টগ্রেস দ্বারা ব্যবহৃত ডেটা স্টোরের একটি নেটওয়ার্ক স্ন্যাপশট নিন। তারপর, যদি আপডেটের সময় কোনও ত্রুটি দেখা দেয় এবং আপনাকে রোল ব্যাক করতে বাধ্য করা হয়, তাহলে আপনি সেই স্ন্যাপশট থেকে পোস্টগ্রেস নোডটি পুনরুদ্ধার করতে পারেন।

একটি নতুন পোস্টগ্রেস স্ট্যান্ডবাই নোড ইনস্টল করা হচ্ছে

এই পদ্ধতিটি একটি নতুন নোডে একটি Postgres স্ট্যান্ডবাই সার্ভার তৈরি করে। নিশ্চিত করুন যে আপনি আপনার বিদ্যমান Edge সংস্করণের (4.52.02 অথবা 4.53.00) জন্য একটি নতুন Postgres স্ট্যান্ডবাই সার্ভার ইনস্টল করেছেন, 4.53.01 সংস্করণের জন্য নয়।

ইনস্টলটি সম্পাদন করতে, আপনার বর্তমান সংস্করণ এজ ইনস্টল করার জন্য যে কনফিগারেশন ফাইলটি ব্যবহার করেছিলেন সেই একই ফাইলটি ব্যবহার করুন।

একটি নতুন পোস্টগ্রেস স্ট্যান্ডবাই নোড তৈরি করতে:

  1. বর্তমান Postgres মাস্টারে, নিম্নলিখিত টোকেন সেট করতে /opt/apigee/customer/application/postgresql.properties ফাইলটি সম্পাদনা করুন। যদি সেই ফাইলটি বিদ্যমান না থাকে, তাহলে এটি তৈরি করুন:
    conf_pg_hba_replication.connection=host replication apigee existing_standby_ip/32 trust\ \nhost replication apigee new_standby_ip/32 trust

    যেখানে existing_standby_ip হল বর্তমান Postgres স্ট্যান্ডবাই সার্ভারের IP ঠিকানা এবং new_standby_ip হল নতুন স্ট্যান্ডবাই নোডের IP ঠিকানা।

  2. Postgres মাস্টারে apigee-postgresql পুনরায় চালু করুন:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
  3. মাস্টারে /opt/apigee/apigee-postgresql/conf/pg_hba.conf ফাইলটি দেখে নতুন স্ট্যান্ডবাই নোডটি যোগ করা হয়েছে কিনা তা যাচাই করুন। আপনি সেই ফাইলটিতে নিম্নলিখিত লাইনগুলি দেখতে পাবেন:
    host replication apigee existing_standby_ip/32 trust
    host replication apigee new_standby_ip/32 trust
  4. নতুন পোস্টগ্রিস স্ট্যান্ডবাই সার্ভার ইনস্টল করুন:
    1. আপনার বর্তমান সংস্করণ Edge ইনস্টল করার জন্য যে কনফিগারেশন ফাইলটি ব্যবহার করেছিলেন তা সম্পাদনা করে নিম্নলিখিতগুলি নির্দিষ্ট করুন:
      # IP address of the current master:
      PG_MASTER=192.168.56.103
      # IP address of the new standby node
      PG_STANDBY=192.168.56.102
    2. Edge apigee-setup ইউটিলিটি ইনস্টল করুন -এ বর্ণিত SELinux অক্ষম করুন।
    3. আপনি যদি বর্তমানে Edge 4.52.02 ব্যবহার করেন:

      1. /tmp/bootstrap_4.52.02.sh এ Edge bootstrap_4.52.02.sh ফাইলটি ডাউনলোড করুন:
        curl https://software.apigee.com/bootstrap_4.52.02.sh -o /tmp/bootstrap_4.51.00.sh
      2. এজ apigee-service ইউটিলিটি এবং নির্ভরতা ইনস্টল করুন:
        sudo bash /tmp/bootstrap_4.52.02.sh apigeeuser=uName apigeepassword=pWord

      আপনি যদি বর্তমানে Edge 4.53.00 ব্যবহার করেন:

      1. /tmp/bootstrap_4.53.00.sh এ Edge bootstrap_4.53.00.sh ফাইলটি ডাউনলোড করুন:
        curl https://software.apigee.com/bootstrap_4.53.00.sh -o /tmp/bootstrap_4.53.00.sh
      2. এজ apigee-service ইউটিলিটি এবং নির্ভরতা ইনস্টল করুন:
        sudo bash /tmp/bootstrap_4.53.00.sh apigeeuser=uName apigeepassword=pWord
    4. apigee-setup ইউটিলিটি ইনস্টল করতে apigee-service ব্যবহার করুন:
      /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
    5. পোস্টগ্রেস ইনস্টল করুন:
      /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
    6. নতুন স্ট্যান্ডবাই নোডে, নিম্নলিখিত কমান্ডটি চালান:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

      এটি স্ট্যান্ডবাই কিনা তা যাচাই করুন।

পোস্টগ্রেসের একটি ইন-প্লেস আপগ্রেড সম্পাদন করা হচ্ছে

দ্রষ্টব্য: Postgres-এর ইন-প্লেস আপগ্রেড করার আগে আপনাকে নিম্নলিখিত প্রাথমিক পদক্ষেপগুলি অবশ্যই সম্পাদন করতে হবে।

প্রাথমিক পদক্ষেপ

Postgres-এ ইন-প্লেস আপগ্রেড করার আগে, apigee-postgresqlmax_locks_per_transaction প্রপার্টি আপডেট করার জন্য মাস্টার হোস্ট এবং স্ট্যান্ডবাই উভয় ক্ষেত্রেই নিম্নলিখিত পদক্ষেপগুলি অনুসরণ করুন:

  1. যদি না থাকে, /opt/apigee/customer/application/postgresql.properties ফাইলটি তৈরি করুন।
  2. এই ফাইলের মালিকানা apigee তে পরিবর্তন করুন:
    sudo chown apigee:apigee /opt/apigee/customer/application/postgresql.properties
  3. ফাইলটিতে নিম্নলিখিত সম্পত্তি যোগ করুন:
    conf/postgresql.conf+max_locks_per_transaction=30000
  4. apigee-postgresql কনফিগার করুন:
    apigee-service apigee-postgresql configure
  5. apigee-postgresql পুনরায় চালু করুন:
    apigee-service apigee-postgresql restart

ইন-প্লেস আপগ্রেড সম্পাদন করুন

Postgres 17-এ ইন-প্লেস আপগ্রেড করতে, নিম্নলিখিত পদক্ষেপগুলি অনুসরণ করুন:

  1. মাস্টার হোস্টে পোস্টগ্রেস আপগ্রেড করুন
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f /opt/silent.conf
  2. মাস্টার হোস্টে সেটআপ কমান্ডটি চালান:
    apigee-service apigee-postgresql setup -f /opt/silent.conf
  3. মাস্টার হোস্টে কনফিগার কমান্ডটি চালান:
    apigee-service apigee-postgresql configure
  4. মাস্টার হোস্ট পুনরায় চালু করুন:
    apigee-service apigee-postgresql restart
  5. এটিকে মাস্টার হিসেবে কনফিগার করুন:
    apigee-service apigee-postgresql setup-replication-on-master -f /opt/silent.conf
  6. নিশ্চিত করুন যে মাস্টার হোস্ট শুরু হয়েছে:
    apigee-service apigee-postgresql wait_for_ready
  7. স্ট্যান্ডবাই বন্ধ করুন:
    apigee-service apigee-postgresql stop
  8. স্ট্যান্ডবাই আপগ্রেড করুন।

    দ্রষ্টব্য: যদি এই ধাপে ত্রুটি/ব্যর্থতা দেখা দেয়, তাহলে এটি উপেক্ষা করা যেতে পারে। update.sh একটি ভুল কনফিগারেশন সহ স্ট্যান্ড-বাই সার্ভার শুরু করার চেষ্টা করবে। যদি Postgres ইনস্টলেশনটি 17 এ আপগ্রেড করা হয়, তাহলে ত্রুটিটি উপেক্ষা করা যেতে পারে।

    /opt/apigee/apigee-setup/bin/update.sh -c ps -f /opt/silent.conf
  9. স্ট্যান্ডবাই বন্ধ আছে কিনা তা নিশ্চিত করুন:
    apigee-service apigee-postgresql stop
  10. পুরানো স্ট্যান্ডবাই কনফিগারেশনটি সরান:
    rm -rf /opt/apigee/data/apigee-postgresql/
  11. স্ট্যান্ডবাই সার্ভারে প্রতিলিপি সেট আপ করুন:
    apigee-service apigee-postgresql setup-replication-on-standby -f /opt/silent.conf
  12. Remove the line conf/postgresql.conf+max_locks_per_transaction=30000 from the file /opt/apigee/customer/application/postgresql.properties on both the master host and standby. This line was added in the preliminary step .

After completing this procedure, the standby will start successfully.

Decommissioning a Postgres node

After the update completes, decommission the new standby node:

  1. Make sure Postgres is running:
    /opt/apigee/apigee-service/bin/apigee-all status

    If Postgres is not running, start it:

    /opt/apigee/apigee-service/bin/apigee-all start
  2. Get the UUID of the new standby node by running the following curl command on the new standby node:
    curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self

    You should see the UUID of the node at the end of the output, in the form:

    "type" : [ "postgres-server" ],
    "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
  3. Stop the new standby node by running the following command on the new standby node:
    /opt/apigee/apigee-service/bin/apigee-all stop
  4. On the Postgres master node, edit /opt/apigee/customer/application/postgresql.properties to remove the new standby node from conf_pg_hba_replication.connection :
    conf_pg_hba_replication.connection=host replication apigee existing_standby_ip/32 trust
  5. Restart apigee-postgresql on the Postgres master:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
  6. Verify that the new standby node was removed by viewing the /opt/apigee/apigee-postgresql/conf/pg_hba.conf file on the master. You should see only the following line in that file:
    host replication apigee existing_standby_ip/32 trust
  7. Delete the UUID of the standby node from ZooKeeper by making the following Edge management API call on the Management Server node:
    curl -u sysAdminEmail:password -X DELETE http://ms_IP:8080/v1/servers/new_standby_uuid

Post-upgrade steps for Postgres

After a major Postgres upgrade, the internal statistics of Postgres are wiped out. These statistics aid the Postgres query planner in utilizing the most optimal indexes and paths to execute queries.

Postgres can gradually rebuild its statistics over time as queries are executed and when the autovacuum daemon runs. However, until the statistics are rebuilt, your queries may be slow.

To address this issue, execute ANALYZE on all tables in the database on the master Postgres node. Alternatively, you can execute ANALYZE for a few tables at a time.

Steps for updating Apigee SSO from older versions

In Edge for Private Cloud 4.53.01, the IDP keys and certificates used in the apigee-sso component are now configured through a keystore. You will need to export the key and certificate used earlier into a keystore, configure it, and then proceed with the SSO update as usual.

  1. Identify the existing key and certificate used for configuring IDP:
    1. Retrieve the certificate by looking up the value of SSO_SAML_SERVICE_PROVIDER_CERTIFICATE in the SSO installation configuration file or by querying the apigee-sso component for conf_login_service_provider_certificate .

      Use the following command on the SSO node to query apigee-sso for the IDP certificate path. In the output, look for the value in the last line.

      apigee-service apigee-sso configure -search conf_login_service_provider_certificate
    2. Retrieve the key by looking up the value of SSO_SAML_SERVICE_PROVIDER_KEY in the SSO installation configuration file or by querying the apigee-sso component for conf_login_service_provider_key .

      Use the following command on the SSO node to query apigee-sso for the IDP key path. In the output, look for the value on the last line.

      apigee-service apigee-sso configure -search conf_login_service_provider_key
  2. Export the key and certificate to a keystore:
    1. Export the key and certificate to a PKCS12 keystore:
      sudo openssl pkcs12 -export -clcerts -in <certificate_path> -inkey <key_path> -out <keystore_path> -name <alias>

      Parameters:

      • certificate_path : Path to the certificate file retrieved in Step 1.a.
      • key_path : Path to the private key file retrieved in Step 1.b.
      • keystore_path : Path to the newly created keystore containing the certificate and private key.
      • alias : Alias used for the key and certificate pair within the keystore.

      Refer to the OpenSSL documentation for more details.

    2. (Optional) Export the key and certificate from PKCS12 to a JKS keystore:
      sudo keytool -importkeystore -srckeystore <PKCS12_keystore_path> -srcstoretype PKCS12 -destkeystore <destination_keystore_path> -deststoretype JKS -alias <alias>

      Parameters:

      • PKCS12_keystore_path : Path to the PKCS12 keystore created in Step 2.a, containing the certificate and key.
      • destination_keystore_path : Path to the new JKS keystore where the certificate and key will be exported.
      • alias : Alias used for the key and certificate pair within the JKS keystore.
    3. Refer to the keytool documentation for more details.

  3. Change the owner of the output keystore file to the "apigee" user:
    sudo chown apigee:apigee <keystore_file>
  4. Add the following properties in Apigee SSO configuration file and update them with the keystore file path, password, keystore type, and alias:
    # Path to the keystore file
    SSO_SAML_SERVICE_PROVIDER_KEYSTORE_PATH=${APIGEE_ROOT}/apigee-sso/source/conf/keystore.jks
    
    # Keystore password
    SSO_SAML_SERVICE_PROVIDER_KEYSTORE_PASSWORD=Secret123  # Password for accessing the keystore
    
    # Keystore type
    SSO_SAML_SERVICE_PROVIDER_KEYSTORE_TYPE=JKS  # Type of keystore, e.g., JKS, PKCS12
    
    # Alias within keystore that stores the key and certificate
    SSO_SAML_SERVICE_PROVIDER_KEYSTORE_ALIAS=service-provider-cert 
  5. Update Apigee SSO software on the SSO node as usual using the following command:
    /opt/apigee/apigee-setup/bin/update.sh -c sso -f /opt/silent.conf

New Edge UI

This section lists considerations regarding the Edge UI. For more information, see The new Edge UI for Private Cloud .

Install the Edge UI

After you complete the initial installation, Apigee recommends that you install the Edge UI, which is an enhanced user interface for developers and administrators of Apigee Edge for Private Cloud.

Note that the Edge UI requires that you disable Basic authentication and use an IDP such as SAML or LDAP.

For more information, see Install the new Edge UI .

Update with Apigee mTLS

To update Apigee mTLS , do the following steps:

Rolling back an update

In the case of an update failure, you can try to correct the issue, and then execute update.sh again. You can run the update multiple times and it continues the update from where it last left off.

If the failure requires that you roll back the update to your previous version, see Roll back 4.53.01 for detailed instructions.

Logging update information

By default, the update.sh utility writes log information to:

/opt/apigee/var/log/apigee-setup/update.log

If the person running the update.sh utility does not have access to that directory, it writes the log to the /tmp directory as a file named update_username.log .

If the person does not have access to /tmp , the update.sh utility fails.

Zero-downtime update

A zero-downtime update, or rolling update, lets you update your Edge installation without bringing down Edge.

Zero-downtime update is only possible with a 5-node configuration and larger.

The key to zero-downtime upgrading is to remove each Router, one at a time, from the load balancer. You then update the Router and any other components on the same machine as the Router, and then add the Router back to the load balancer.

  1. Update the machines in the correct order for your installation as described Order of machine update .
  2. When it is time to update the Routers, select any one Router and make it unreachable, as described in Enabling/Disabling server (Message Processor/Router) reachability .
  3. Update the selected Router and all other Edge components on the same machine as the Router. All Edge configurations show a Router and Message Processor on the same node.
  4. Make the Router reachable again.
  5. Repeat steps 2 through 4 for the remaining Routers.
  6. Continue the update for any remaining machines in your installation.

Take care of the following before and after the update:

Use a silent configuration file

You must pass a silent configuration file to the update command. The silent configuration file should be the same one that you used to install Edge for Private Cloud 4.52.02 or 4.53.00.

Update to 4.53.01 on a node with an external internet connection

Use the following procedure to update the Edge components on a node:

  1. If present, disable any cron jobs configured to perform a repair operation on Cassandra until after the update completes.
  2. Log in to your node as root to install the Edge RPMs.
  3. Disable SELinux as described in Install the Edge apigee-setup utility .
  4. If you are installing on AWS , execute the following yum-configure-manager commands:
    yum update rh-amazon-rhui-client.noarch
    sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
  5. If you are currently on Edge 4.52.02 or 4.53.00:

    1. Download the Edge bootstrap_4.53.01.sh file to /tmp/bootstrap_4.53.01.sh :
      curl https://software.apigee.com/bootstrap_4.53.01.sh -o /tmp/bootstrap_4.53.01.sh
    2. Install the Edge 4.53.01 apigee-service utility and dependencies by executing the following command:
      sudo bash /tmp/bootstrap_4.53.01.sh apigeeuser=uName apigeepassword=pWord

      Where uName:pWord are the username and password you received from Apigee. If you omit pWord , you will be prompted to enter it.

      By default, the installer checks that you have Java 1.8 installed. If you do not, the installer installs it for you.

      Use the JAVA_FIX option to specify how to handle Java installation. JAVA_FIX takes the following values:

      • I : Install OpenJDK 1.8 (default).
      • C : Continue without installing Java.
      • Q : Quit. For this option, you must install Java yourself.
    3. Use apigee-service to update the apigee-setup utility, as the following example shows:
      /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
    4. Update the apigee-validate utility on the Management Server, as the following example shows:
      /opt/apigee/apigee-service/bin/apigee-service apigee-validate update
    5. Update the apigee-provision utility on the Management Server, as the following example shows:
      /opt/apigee/apigee-service/bin/apigee-service apigee-provision update
    6. Run the update utility on your nodes by executing the following command:
      /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile

      Do this in the order described in Order of machine update .

      কোথায়:

      • component is the Edge component to update. Possible values include:
        • cs : Cassandra
        • edge : All Edge components except Edge UI: Management Server, Message Processor, Router, QPID Server, Postgres Server
        • ldap : OpenLDAP
        • ps : postgresql
        • qpid : qpidd
        • sso : Apigee SSO (if you installed SSO)
        • ue : New Edge UI
        • ui : Classic Edge UI
        • zk : Zookeeper
      • configFile is the same configuration file that you used to define your Edge components during the 4.52.02 or 4.53.00 installation.

      You can run update.sh against all components by setting component to "all", but only if you have an Edge all-in-one (AIO) installation profile. For example:

      /opt/apigee/apigee-setup/bin/update.sh -c all -f ./sa_silent_config
    7. Restart the Edge UI components on all nodes running them, if you haven't done so already:
      /opt/apigee/apigee-service/bin/apigee-service [edge-management-ui|edge-ui] restart
    8. Test the update by running the apigee-validate utility on the Management Server, as described in Test the install .

If you later decide to roll back the update, use the procedure described in Roll back 4.53.01 .

Update to 4.53.01 from a local repo

If your Edge nodes are behind a firewall, or in some other way are prohibited from accessing the Apigee repository over the Internet, then you can perform the update from a local repository, or mirror, of the Apigee repo.

After you create a local Edge repository, you have two options for updating Edge from the local repo:

  • Create a .tar file of the repo, copy the .tar file to a node, and then update Edge from the .tar file.
  • Install a webserver on the node with the local repo so that other nodes can access it. Apigee provides the Nginx webserver for you to use, or you can use your own webserver.

To update from a local 4.53.01 repo:

  1. Create a local 4.53.01 repo as described in "Create a local Apigee repository" at Install the Edge apigee-setup utility .
  2. To install apigee-service from a .tar file :
    1. On the node with the local repo, use the following command to package the local repo into a single .tar file named /opt/apigee/data/apigee-mirror/apigee-4.53.01.tar.gz :
      /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
    2. Copy the .tar file to the node where you want to update Edge. For example, copy it to the /tmp directory on the new node.
    3. On the new node, untar the file to the /tmp directory:
      tar -xzf apigee-4.53.01.tar.gz

      This command creates a new directory, named repos , in the directory containing the .tar file. For example /tmp/repos .

    4. Install the Edge apigee-service utility and dependencies from /tmp/repos :
      sudo bash /tmp/repos/bootstrap_4.53.01.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

      Notice that you include the path to the repos directory in this command.

  3. To install apigee-service using the Nginx webserver:
    1. Configure the Nginx web server as described in "Install from the repo using the Nginx webserver" at Install the Edge apigee-setup utility .
    2. On the remote node, download the Edge bootstrap_4.53.01.sh file to /tmp/bootstrap_4.53.01.sh :
      /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.53.01.sh -o /tmp/bootstrap_4.53.01.sh

      Where uName:pWord are the username and password you set previously for the repo, and remoteRepo is the IP address or DNS name of the repo node.

    3. On the remote node, install the Edge apigee-setup utility and dependencies:
      sudo bash /tmp/bootstrap_4.53.01.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://

      Where uName:pWord are the repo username and password.

  4. Use apigee-service to update the apigee-setup utility, as the following example shows:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup update 
  5. Update the apigee-validate utility on the Management Server, as the following example shows:
    /opt/apigee/apigee-service/bin/apigee-service apigee-validate update
  6. Update the apigee-provision utility on the Management Server, as the following example shows:
    /opt/apigee/apigee-service/bin/apigee-service apigee-provision update
  7. Run the update utility on your nodes in the order described in Order of machine update :
    /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile

    কোথায়:

    • component is the Edge component to update. You typically update the following components:
      • cs : Cassandra
      • edge : All Edge components except Edge UI: Management Server, Message Processor, Router, QPID Server, Postgres Server
      • ldap : OpenLDAP
      • ps : postgresql
      • qpid : qpidd
      • sso : Apigee SSO (if you installed SSO)
      • ue New Edge UI
      • ui : Classic Edge UI
      • zk : Zookeeper
    • configFile is the same configuration file that you used to define your Edge components during the 4.52.02 or 4.53.00 installation.

    You can run update.sh against all components by setting component to "all", but only if you have an Edge all-in-one (AIO) installation profile. For example:

    /opt/apigee/apigee-setup/bin/update.sh -c all -f /tmp/sa_silent_config
  8. Restart the UI components on all nodes running it, if you haven't done so already:
    /opt/apigee/apigee-service/bin/apigee-service [edge-management-ui|edge-ui] restart
  9. Test the update by running the apigee-validate utility on the Management Server, as described in Test the install .

If you later decide to roll back the update, use the procedure described in Roll back 4.53.01 .

Order of machine update

The order that you update the machines in an Edge installation is important:

  • You must update all LDAP nodes before updating any other components. You will need to follow special steps to upgrade LDAP.
  • You must update all Cassandra and ZooKeeper nodes. If you're upgrading from 4.52.02 then, follow the special steps to upgrade cassandra. You will need to follow the special steps to upgrade Zookeeper for 4.52.02 or 4.53.00.
  • You must upgrade all the Management Servers and Router & Message Processors using the -c edge option to update them.
  • You must upgrade all Postgres nodes following the special steps for upgrade Postgres.
  • You must update edge-qpid-server & edge-postgres-server components across all data centers.
  • You must upgrade all Qpid nodes.
  • You must upgrade Edge UI nodes and also upgrade the New Edge UI and SSO nodes(if applicable).
  • There is no separate step to update Monetization. It is updated when you specify the -c edge option.

1-node standalone upgrade

To upgrade a 1-node standalone configuration to 4.53.01:

  1. Update all components:
    /opt/apigee/apigee-setup/bin/update.sh -c all -f configFile
  2. (If you installed apigee-adminapi ) Update the apigee-adminapi utility:
    /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update

2-node standalone upgrade

Update the following components for a 2-node standalone installation:

See Installation topologies for the list of Edge topologies and node numbers.

  1. Update LDAP on machine 1:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  2. Update Cassandra and ZooKeeper on machine 1:
    /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. Update Edge components on machine 1:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  4. Update Postgres on machine 2:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  5. Update Edge components on machine 1:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  6. Update Qpid on Machine 2:
    /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  7. Update the UI on machine 1:
    /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
  8. (If you installed apigee-adminapi ) Updated the apigee-adminapi utility on machine 1:
    /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
  9. (If you installed Apigee SSO) Update Apigee SSO on machine 1:
    /opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file

    Where sso_config_file is the configuration file you created when you installed SSO .

  10. Restart the Edge UI component on machine 1:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

5-node upgrade

Update the following components for a 5-node installation:

See Installation topologies for the list of Edge topologies and node numbers.

  1. Update LDAP on machine 1:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  2. Update Cassandra and ZooKeeper on machine 1, 2, and 3:
    /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. Update Edge components on machine 1, 2, 3:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  4. Update Postgres on machine 4:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  5. Update Postgres on machine 5:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  6. Update Edge components on machine 4, 5:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  7. Update Qpid on machine 4:
    /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  8. Update Qpid on machine 5:
    /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  9. Update the Edge UI:
    • Classic UI: If you are using the classic UI, then update the ui component on machine 1, as the following example shows:
      /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
    • New Edge UI: If you installed the new Edge UI, then update the ue component on the appropriate machine (may not be machine 1):
      /opt/apigee/apigee-setup/bin/update.sh -c ue -f /opt/silent.conf
  10. (If you installed apigee-adminapi ) Updated the apigee-adminapi utility on machine 1:
    /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
  11. (If you installed Apigee SSO) Update Apigee SSO on machine 1:
    /opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file

    Where sso_config_file is the configuration file you created when you installed SSO .

  12. Restart the UI component:
    • Classic UI: If you are using the classic UI, then restart the edge-ui component on machine 1, as the following example shows:
      /opt/apigee/apigee-service/bin/apigee-service edge-ui restart
    • New Edge UI: If you installed the new Edge UI, then restart the edge-management-ui component on the appropriate machine (may not be machine 1):
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui restart

9-node clustered upgrade

Update the following components for a 9-node clustered installation:

See Installation topologies for the list of Edge topologies and node numbers.

  1. Update LDAP on machine 1:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  2. Update Cassandra and ZooKeeper on machine 1, 2, and 3:
    /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. Update Edge components on machine 1, 4, and 5 (Management server, message processor, router) in that order:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  4. Update Postgres on machine 8:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  5. Update Postgres on machine 9:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  6. Update Edge components on machine 6, 7, 8, and 9 in that order:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  7. Update Qpid on machines 6 and 7:
    /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  8. Update either the new UI ( ue ) or classic UI ( ui ) on machine 1:
    /opt/apigee/apigee-setup/bin/update.sh -c [ui|ue] -f configFile
  9. (If you installed apigee-adminapi ) Update the apigee-adminapi utility on machine 1:
    /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
  10. (If you installed Apigee SSO) Update Apigee SSO on machine 1:
    /opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file

    Where sso_config_file is the configuration file you created when you installed SSO .

  11. Restart the UI component:
    • Classic UI: If you are using the classic UI, then restart the edge-ui component on machine 1, as the following example shows:
      /opt/apigee/apigee-service/bin/apigee-service edge-ui restart
    • New Edge UI: If you installed the new Edge UI, then restart the edge-management-ui component on the appropriate machine (may not be machine 1):
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui restart

13-node clustered upgrade

Update the following components for a 13-node clustered installation:

See Installation topologies for the list of Edge topologies and node numbers.

  1. Update LDAP on machine 4 and 5:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  2. Update Cassandra and ZooKeeper on machines 1, 2, and 3:
    /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. Update Edge components on machines 6, 7, 10, and 11 in that order:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  4. Update Postgres on machine 8:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  5. Update Postgres on machine 9:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  6. Update Edge components on machines 12, 13, 8, and 9 in that order:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  7. Update Qpid on machines 12 and 13:
    /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  8. Update either the new UI ( ue ) or classic UI ( ui ) on machines 6 and 7:
    /opt/apigee/apigee-setup/bin/update.sh -c [ui|ue] -f configFile
  9. (If you installed apigee-adminapi ) Updated the apigee-adminapi utility on machines 6 and 7:
    /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
  10. (If you installed Apigee SSO) Update Apigee SSO on machines 6 and 7:
    /opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file

    Where sso_config_file is the configuration file you created when you installed SSO .

  11. Restart the UI component:
    • Classic UI: If you are using the classic UI, then restart the edge-ui component on machines 6 and 7, as the following example shows:
      /opt/apigee/apigee-service/bin/apigee-service edge-ui restart
    • New Edge UI: If you installed the new Edge UI, then restart the edge-management-ui component on machines 6 and 7:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui restart

12-node clustered upgrade

Update the following components for a 12-node clustered installation:

See Installation topologies for the list of Edge topologies and node numbers.

  1. Update LDAP:
    1. Machine 1 in Data Center 1
      /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
    2. Machine 7 in Data Center 2
      /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  2. Update Cassandra and ZooKeeper:
    1. Machines 1, 2 and 3 in Data center 1:
      /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
    2. On machines 7, 8, and 9 in Data Center 2:
      /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. Update Edge components:
    1. On machines 1, 2 and 3 in Data Center 1:
      /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
    2. On machines 7, 8, and 9 in Data Center 2
      /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  4. Update Postgres:
    1. Machine 6 in Data Center 1
      /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
    2. Machine 12 in Data Center 2
      /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  5. Update Edge components:
    1. Machines 4, 5, 6 in Data Center 1
      /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
    2. Machines 10, 11, 12 in Data Center 2
      /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  6. Update qpidd:
    1. Machines 4, 5 in Data Center 1
      1. Update qpidd on machine 4:
        /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
      2. Update qpidd on machine 5:
        /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
    2. Machines 10, 11 in Data Center 2
      1. Update qpidd on machine 10:
        /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
      2. Update qpidd on machine 11:
        /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  7. Update either the new UI ( ue ) or classic UI ( ui ):
    1. Machine 1 in Data Center 1:
      /opt/apigee/apigee-setup/bin/update.sh -c [ui|ue] -f configFile
    2. Machine 7 in Data Center 2:
      /opt/apigee/apigee-setup/bin/update.sh -c [ui|ue] -f configFile
  8. (If you installed apigee-adminapi ) Updated the apigee-adminapi utility:
    1. Machine 1 in Data Center 1:
      /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
    2. Machine 7 in Data Center 2:
      /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
  9. (If you installed Apigee SSO) Update Apigee SSO:
    1. Machine 1 in Data Center 1:
      /opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file
    2. Machine 7 in Data Center 2:
      /opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file
    3. Where sso_config_file is the configuration file you created when you installed SSO .

  10. Restart the new Edge UI ( edge-management-ui ) or classic Edge UI ( edge-ui ) component on machines 1 and 7:
    /opt/apigee/apigee-service/bin/apigee-service [edge-ui|edge-management-ui] restart

For a non-standard configuration

If you have a non-standard configuration, then update Edge components in the following order:

  1. LDAP
  2. Cassandra
  3. চিড়িয়াখানার রক্ষক
  4. Management Server
  5. Message Processor
  6. রাউটার
  7. Postgres
  8. Edge, meaning the "-c edge" profile on all nodes in the order: nodes with Qpid server, Edge Postgres Server.
  9. qpidd
  10. Edge UI (either classic or new)
  11. apigee-adminapi
  12. Apigee SSO

After you finish updating, be sure to restart the Edge UI component on all machines running it.