রোল ব্যাক Apigee Edge 4.53.00

আপনি যদি এজ 4.53.00-এ একটি আপডেটের সময় একটি ত্রুটির সম্মুখীন হন, আপনি ত্রুটির কারণ হওয়া উপাদানটিকে ফিরিয়ে আনতে পারেন এবং তারপরে আবার আপডেটের চেষ্টা করুন৷

আপনি এজ 4.53.00 কে নিম্নলিখিত ছোট রিলিজ সংস্করণে ফিরিয়ে আনতে পারেন:

  • সংস্করণ 4.52.02

একটি সংস্করণ রোল ব্যাক করার সাথে আপনার আপগ্রেড করা প্রতিটি উপাদানকে রোল ব্যাক করা জড়িত। অতিরিক্তভাবে, ক্যাসান্ড্রাকে 4.52.02 সংস্করণে ফিরিয়ে আনার সময় আপনাকে বিশেষ বিবেচনায় রাখা উচিত।

দুটি পরিস্থিতি আছে যেখানে আপনি একটি রোলব্যাক করতে চাইতে পারেন:

  1. আগের বড় বা ছোট রিলিজে ফিরে যান । উদাহরণস্বরূপ 4.53.00 থেকে 4.52.02 পর্যন্ত।
  2. একই রিলিজে আগের প্যাচ রিলিজে ফিরে যান । উদাহরণস্বরূপ, 4.53.00.01 থেকে 4.53.00.00 পর্যন্ত।

আরও তথ্যের জন্য, Apigee Edge রিলিজ প্রক্রিয়া দেখুন।

রোলব্যাক অর্ডার

কম্পোনেন্টগুলির রোলব্যাক করা উচিত বিপরীত ক্রমে সেগুলি আপগ্রেড করা হয়েছে, ব্যতীত ম্যানেজমেন্ট সার্ভারগুলি ক্যাসান্দ্রার পরে রোলব্যাক করা উচিত।

প্রাইভেট ক্লাউড 4.53.00 এর জন্য রোলব্যাকের একটি সাধারণ সাধারণ অর্ডার নীচের মত দেখাবে:

  1. রোলব্যাক পোস্টগ্রেস, Qpid এবং অন্যান্য বিশ্লেষণ-সম্পর্কিত উপাদান
  2. রোলব্যাক রাউটার এবং বার্তা প্রসেসর
  3. রোলব্যাক ক্যাসান্দ্রা, চিড়িয়াখানা
  4. রোলব্যাক ম্যানেজমেন্ট সার্ভার

উদাহরণ স্বরূপ, ধরা যাক আপনি সম্পূর্ণ ক্যাসান্ড্রা ক্লাস্টার, আপনার সমস্ত ব্যবস্থাপনা সার্ভার এবং কয়েকটি আরএমপি 4.52.02 সংস্করণ থেকে 4.53.00 সংস্করণে আপগ্রেড করেছেন এবং রোলব্যাক করতে চান৷ এই ক্ষেত্রে, আপনি হবে:

  1. এক এক করে সব RMP রোলব্যাক করুন
  2. ব্যাকআপ ব্যবহার করে পুরো ক্যাসান্দ্রা ক্লাস্টার রোলব্যাক করুন
  3. রোলব্যাক এজ ম্যানেজমেন্ট সার্ভার নোড একে একে

কে একটি রোলব্যাক সঞ্চালন করতে পারেন

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

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

সাধারণ কোড সহ উপাদান

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

  • edge-management-server (ম্যানেজমেন্ট সার্ভার)
  • edge-message-processor (মেসেজ প্রসেসর)
  • edge-router (রাউটার)
  • edge-postgres-server (Postgres সার্ভার)
  • edge-qpid-server (Qpid সার্ভার)

উদাহরণস্বরূপ, যদি আপনার নোডে ম্যানেজমেন্ট সার্ভার, রাউটার এবং মেসেজ প্রসেসর ইনস্টল করা থাকে, তবে তাদের যে কোনো একটিকে রোলব্যাক করতে আপনাকে অবশ্যই তিনটিই রোল ব্যাক করতে হবে।

ক্যাসান্দ্রার রোলব্যাক

ক্যাসান্দ্রার রোলব্যাক

যখন একটি নির্দিষ্ট নোডে ক্যাসান্দ্রার একটি বড় আপগ্রেড করা হয়, তখন ক্যাসান্দ্রা সেই নোডে সংরক্ষিত ডেটার স্কিমা পরিবর্তন করে। ফলস্বরূপ, একটি সরাসরি ইন-প্লেস রোলব্যাক সম্ভব নয়।

রোলব্যাক দৃশ্যকল্প

Cassandra 4.0.X, প্রাইভেট ক্লাউড 4.53.00 এর জন্য এজ এর সাথে উপলব্ধ, প্রাইভেট ক্লাউড 4.52.02 এর অন্যান্য উপাদানগুলির সাথে সামঞ্জস্যপূর্ণ।

আপনি ব্যবহার করতে পারেন এমন বিভিন্ন রোলব্যাক কৌশলগুলির সংক্ষিপ্তসারের জন্য অনুগ্রহ করে নীচের টেবিলটি পড়ুন:

দৃশ্যকল্প রোলব্যাক কৌশল
একক ডিসি, কিছু ক্যাসান্দ্রা নোড আপগ্রেড করা হয়েছে ব্যাকআপ ব্যবহার করুন
একক ডিসি, সমস্ত ক্যাসান্দ্রা নোড আপগ্রেড করা হয়েছে ক্যাসান্দ্রাকে রোলব্যাক করবেন না। অন্যান্য উপাদান ফিরে পাকানো যেতে পারে.
একক ডিসি, সমস্ত নোড (ক্যাসান্ড্রা এবং অন্যান্য) আপগ্রেড করা হয়েছে ক্যাসান্দ্রাকে রোলব্যাক করবেন না। অন্যান্য উপাদান ফিরে পাকানো যেতে পারে.
একাধিক ডিসি, এক ডিসিতে কিছু নোড আপগ্রেড করা হয়েছে বিদ্যমান ডিসি থেকে পুনর্নির্মাণ
একাধিক ডিসি, কিছু ডিসি-তে সমস্ত ক্যাসান্দ্রা নোড আপগ্রেড করা হয়েছে বিদ্যমান ডিসি থেকে পুনর্নির্মাণ
একাধিক ডিসি, শেষ ডিসির ক্যাসান্দ্রা নোড আপগ্রেড করা হচ্ছে আপগ্রেড শেষ করার চেষ্টা করুন। যদি সম্ভব না হয়, ব্যাকআপ ব্যবহার করে 1 ডিসি রোলব্যাক করুন । রোলড-ব্যাক ডিসি থেকে অবশিষ্ট ডিসিগুলি পুনর্নির্মাণ করুন
একাধিক ডিসি, সমস্ত ক্যাসান্দ্রা নোড আপগ্রেড করা হয়েছে ক্যাসান্দ্রাকে রোলব্যাক করবেন না। অন্যান্য উপাদান ফিরে পাকানো যেতে পারে.
একাধিক ডিসি, সমস্ত নোড (ক্যাসান্ড্রা এবং অন্যান্য) আপগ্রেড করা হয়েছে ক্যাসান্দ্রাকে রোলব্যাক করবেন না। অন্যান্য উপাদান ফিরে পাকানো যেতে পারে.

সাধারণ বিবেচনা

একটি রোলব্যাক বিবেচনা করার সময়, নিম্নলিখিত মনে রাখবেন:

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

পুনঃনির্মাণ ব্যবহার করে রোলব্যাক ক্যাসান্দ্রা

পূর্বশর্ত

  • আপনি একাধিক ডেটা সেন্টার জুড়ে প্রাইভেট ক্লাউড 4.52.02 ক্লাস্টারের জন্য একটি এজ পরিচালনা করছেন।
  • আপনি Cassandra কে 3.11.X থেকে 4.0.X এ আপগ্রেড করার প্রক্রিয়ার মধ্যে আছেন এবং আপগ্রেড করার সময় সমস্যার সম্মুখীন হয়েছেন৷
  • আপনার ক্লাস্টারে কমপক্ষে একটি সম্পূর্ণ কার্যকরী ডেটা সেন্টার রয়েছে যা এখনও Cassandra (Cassandra 3.11.X) এর পুরানো সংস্করণ চালাচ্ছে৷

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

উচ্চ-স্তরের পদক্ষেপ

  1. একটি ডেটা সেন্টার নির্বাচন করুন (হয় আংশিকভাবে বা সম্পূর্ণরূপে আপগ্রেড করা হয়েছে) যা আপনি রোল ব্যাক করতে চান৷ রানটাইম ট্রাফিককে একটি ভিন্ন কার্যকরী ডেটা সেন্টারে ডাইভার্ট করুন।
  2. ডেটা সেন্টারে বীজ নোড সনাক্ত করুন এবং বীজ নোডগুলির একটি দিয়ে শুরু করুন।
  3. ক্যাসান্দ্রা নোড বন্ধ করুন, আনইনস্টল করুন এবং পরিষ্কার করুন।
  4. নোডে ক্যাসান্ড্রার পুরোনো সংস্করণটি ইনস্টল করুন এবং প্রয়োজন অনুসারে এটি কনফিগার করুন।
  5. পূর্বে যোগ করা অতিরিক্ত কনফিগারেশনগুলি সরান।
  6. ডেটা সেন্টারের সমস্ত বীজ নোডের জন্য উপরের ধাপগুলি এক এক করে পুনরাবৃত্তি করুন।
  7. ডেটা সেন্টারে সমস্ত অবশিষ্ট ক্যাসান্ড্রা নোডগুলির জন্য উপরের ধাপগুলি একের পর এক পুনরাবৃত্তি করুন৷
  8. বিদ্যমান কার্যকরী ডেটা সেন্টার থেকে এক এক করে নোডগুলি পুনর্নির্মাণ করুন।
  9. ক্যাসান্দ্রার সাথে সংযুক্ত ডেটা সেন্টারের সমস্ত প্রান্ত-* উপাদানগুলি পুনরায় চালু করুন।
  10. পরীক্ষা করুন এবং এই ডেটা সেন্টারে ট্রাফিক ফিরিয়ে আনুন।
  11. প্রতিটি ডেটা সেন্টারের জন্য এক এক করে ধাপগুলি পুনরাবৃত্তি করুন।

বিস্তারিত পদক্ষেপ

  1. একটি ডেটা সেন্টার বেছে নিন যেখানে সমস্ত বা কিছু ক্যাসান্দ্রা নোড আপগ্রেড করা হয়েছে। এই ডেটা সেন্টার থেকে সমস্ত রানটাইম প্রক্সি ট্র্যাফিক এবং ম্যানেজমেন্ট ট্রাফিক ডাইভার্ট করুন যখন এই ডেটা সেন্টারে ক্যাসান্ড্রা নোডগুলি রোল ব্যাক করা হচ্ছে৷ নোডগুলিতে nodetool ring কমান্ড কার্যকর করা হলে সমস্ত ক্যাসান্দ্রা নোডগুলি ইউএন (উপর/স্বাভাবিক) অবস্থায় রয়েছে তা নিশ্চিত করুন। যদি নির্দিষ্ট নোডগুলি ডাউন থাকে তবে সমস্যাটির সমাধান করুন এবং চালিয়ে যাওয়ার আগে সেই নোডগুলিকে ফিরিয়ে আনুন।

    নীচের উদাহরণ দেখুন:

    $ /opt/apigee/apigee-cassandra/bin/nodetool status
    Datacenter: dc-1
    ================
    Status=Up/Down
    |/ State=Normal/Leaving/Joining/Moving
    --  Address      Load       Tokens       Owns (effective)  Host ID                               Rack
    UN  DC1-1IP1  456.41 KiB  1            100.0%            78fc4ddd-2ed9-4a8c-98a2-63a38c2f1920  ra-1
    UN  DC1-1IP2  870.93 KiB  1            100.0%            160db01a-64ab-43a7-b9ea-3b7f8f66d52b  ra-1
    UN  DC1-1IP3  824.08 KiB  1            100.0%            21d61543-d59e-403a-bf5d-bfe7f664baa6  ra-1
    Datacenter: dc-2
    ================
    Status=Up/Down
    |/ State=Normal/Leaving/Joining/Moving
    --  Address      Load       Tokens       Owns (effective)  Host ID                               Rack
    UN  DC2-1IP1   802.08 KiB  1            100.0%            583e0576-336d-4ce7-9729-2ae74e0abde2  ra-1
    UN  DC2-1IP2   844.4 KiB  1            100.0%            fef794d5-f4c2-4a4e-bb05-9adaeb4aea4b  ra-1
    UN  DC2-1IP3   878.12 KiB  1            100.0%            3894b3d9-1f5a-444d-83db-7b1e338bbfc9  ra-1
            

    পুরো ক্লাস্টারের বর্তমান অবস্থা বোঝার জন্য আপনি নোডগুলিতে nodetool describecluster চালাতে পারেন। উদাহরণস্বরূপ, নিম্নলিখিতটি একটি 2-ডেটা-সেন্টার ক্লাস্টারের একটি উদাহরণ দেখায় যেখানে সমস্ত DC-1 নোডগুলি ক্যাসান্দ্রা সংস্করণ 4-এ রয়েছে, যেখানে সমস্ত DC-2 নোডগুলি ক্যাসান্দ্রা সংস্করণ 3-তে রয়েছে:

    # On nodes where Cassandra is upgraded
    $ /opt/apigee/apigee-cassandra/bin/nodetool describecluster
    Cluster Information:
        Name: Apigee
        Snitch: org.apache.cassandra.locator.PropertyFileSnitch
        DynamicEndPointSnitch: enabled
        Partitioner: org.apache.cassandra.dht.RandomPartitioner
        Schema versions:
            2eadcd74-0245-309a-9992-3625afa70038: [DC-1-IP1, DC-1-IP2, DC-1-IP3]
            129dc15e-198e-3c11-b64c-701044a3a1ad: [DC-2-IP1, DC-2-IP2, DC-2-IP3]
    
    Stats for all nodes:
        Live: 6
        Joining: 0
        Moving: 0
        Leaving: 0
        Unreachable: 0
    
    Data Centers:
        dc-1 #Nodes: 3 #Down: 0
        dc-2 #Nodes: 3 #Down: 0
    
    Database versions:
        4.0.13: [DC-1-IP1:7000, DC-1-IP2:7000, DC-1-IP3:7000]
        3.11.16: [DC-2-IP1:7000, DC-2-IP2:7000, DC-2-IP3:7000]
    
    Keyspaces:
        system_schema -> Replication class: LocalStrategy {}
        system -> Replication class: LocalStrategy {}
        auth -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        cache -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        devconnect -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        dek -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        user_settings -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        apprepo -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        kms -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        identityzone -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        audit -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        analytics -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        keyvaluemap -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        counter -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        apimodel_v2 -> Replication class: NetworkTopologyStrategy {dc-2=3, dc-1=3}
        system_distributed -> Replication class: SimpleStrategy {replication_factor=3}
        system_traces -> Replication class: SimpleStrategy {replication_factor=2}
        system_auth -> Replication class: SimpleStrategy {replication_factor=1}
    
    # On nodes where Cassandra is not upgraded
    $ /opt/apigee/apigee-cassandra/bin/nodetool describecluster
    Cluster Information:
        Name: Apigee
        Snitch: org.apache.cassandra.locator.PropertyFileSnitch
        DynamicEndPointSnitch: enabled
        Partitioner: org.apache.cassandra.dht.RandomPartitioner
        Schema versions:
            2eadcd74-0245-309a-9992-3625afa70038: [DC-1-IP1, DC-1-IP2, DC-1-IP3]
            129dc15e-198e-3c11-b64c-701044a3a1ad: [DC-2-IP1, DC-2-IP2, DC-2-IP3]
            
  2. ডেটা সেন্টারে বীজ নোডগুলি সনাক্ত করুন: পরিশিষ্টে বীজ নোডগুলি কীভাবে সনাক্ত করতে হয় সে বিভাগটি পড়ুন। বীজ নোডগুলির একটিতে নীচের পদক্ষেপগুলি সম্পাদন করুন:
  3. ক্যাসান্দ্রার নোড থেকে ডেটা থামান, আনইনস্টল করুন এবং পরিষ্কার করুন। এই ডেটা সেন্টারে ক্যাসান্দ্রা সংস্করণ 4-এ প্রথম বীজ নোডটি বেছে নিন। এটা বন্ধ করুন।
    # Stop Cassandra service on the node
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    
    # Uninstall Cassandra software
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
    
    # Wipe out Cassandra data
    rm -rf /opt/apigee/data/apigee-cassandra
            
  4. নোডে পুরানো ক্যাসান্ড্রা সফ্টওয়্যার ইনস্টল করুন এবং কিছু কনফিগারেশন সেট করুন। প্রাইভেট ক্লাউড 4.52.02 এর জন্য এজের বুটস্ট্র্যাপ ফাইলটি চালান।
  5. # Download bootstrap of 4.52.02
    curl https://software.apigee.com/bootstrap_4.52.02.sh -o /tmp/bootstrap_4.52.02.sh -u ‘uName:pWord’
    
    # Execute bootstrap of 4.52.02
    sudo bash /tmp/bootstrap_4.52.02.sh apigeeuser=uName apigeepassword=pWord
        

Cassandra কনফিগারেশন সেট করুন

  1. /opt/apigee/customer/application/cassandra.properties ফাইলটি তৈরি বা সম্পাদনা করুন।
  2. ফাইলে নিম্নলিখিত বিষয়বস্তু যোগ করুন। ipOfNode হল নোডের IP ঠিকানা যা Cassandra অন্যান্য Cassandra নোডের সাথে যোগাযোগ করতে ব্যবহার করে:
    conf_jvm_options_custom_settings=-Dcassandra.replace_address=ipOfNode -Dcassandra.allow_unsafe_replace=true
  3. নিশ্চিত করুন যে ফাইলটি এপিজি ব্যবহারকারীর মালিকানাধীন এবং পাঠযোগ্য:
    chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
  4. ক্যাসান্দ্রা ইনস্টল এবং সেট আপ করুন:
    • Cassandra সংস্করণ 3.11.X ইনস্টল করুন:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra install
    • স্ট্যান্ডার্ড কনফিগারেশন ফাইল পাস করে ক্যাসান্দ্রা সেট আপ করুন:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra setup -f configFile
    • নিশ্চিত করুন যে Cassandra 3.11.X ইনস্টল করা আছে এবং পরিষেবাটি চলছে:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra version
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra status
  5. নোড শুরু হয়েছে তা যাচাই করুন। এই নোড এবং ক্লাস্টারের অন্যান্য নোডগুলিতে নিম্নলিখিত কমান্ডটি পরীক্ষা করুন। নোডের রিপোর্ট করা উচিত যে এটি "UN" (আপ/স্বাভাবিক) অবস্থায় রয়েছে:
    /opt/apigee/apigee-cassandra/bin/nodetool status
  6. /opt/apigee/customer/application/cassandra.properties ফাইল থেকে আগে যোগ করা অতিরিক্ত কনফিগারেশনগুলি সরান।
  7. ডাটা সেন্টারের সমস্ত ক্যাসান্ড্রা বীজ নোডগুলিতে 3 থেকে 6 ধাপগুলি পুনরাবৃত্তি করুন, একে একে।
  8. ডেটা সেন্টারের সমস্ত অবশিষ্ট ক্যাসান্ড্রা নোডগুলিতে 3 থেকে 6 ধাপগুলি পুনরাবৃত্তি করুন, একে একে।
  9. পুরানো Cassandra সংস্করণ চলমান একটি ডেটা সেন্টার থেকে ডেটা সেন্টারের সমস্ত নোড পুনর্নির্মাণ করুন। এই ধাপটি একবারে একটি নোড সম্পাদন করুন:
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild -dc <name of working DC>
    এই পদ্ধতিতে কিছু সময় লাগতে পারে। প্রয়োজনে আপনি streamingthroughput সামঞ্জস্য করতে পারেন। ব্যবহার করে স্থিতি পরীক্ষা করুন:
    /opt/apigee/apigee-cassandra/bin/nodetool netstats
  10. এক এক করে ডেটা সেন্টারের সমস্ত প্রান্ত-* উপাদানগুলি পুনরায় চালু করুন:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  11. যাচাই করুন এবং এই ডেটা সেন্টারে ট্রাফিক ফিরিয়ে আনুন। এই ডেটা সেন্টারে রানটাইম ট্র্যাফিক এবং ম্যানেজমেন্ট API-এর জন্য কিছু বৈধতা চালান এবং প্রক্সি এবং ম্যানেজমেন্ট API ট্র্যাফিককে এটিতে ফেরত পাঠানো শুরু করুন।
  12. আপনি রোল ব্যাক করতে চান প্রতিটি ডেটা সেন্টারের জন্য উপরের ধাপগুলি পুনরাবৃত্তি করুন।

ব্যাকআপ ব্যবহার করে রোলব্যাক ক্যাসান্দ্রা

পূর্বশর্ত

  1. আপনি Cassandra কে 3.11.X থেকে 4.0.X এ আপগ্রেড করার প্রক্রিয়ার মধ্যে আছেন এবং আপগ্রেড করার সময় সমস্যার সম্মুখীন হয়েছেন৷
  2. আপনি যে নোডটি ফিরিয়ে আনছেন তার জন্য আপনার কাছে ব্যাকআপ রয়েছে। 3.11.X থেকে 4.0.X পর্যন্ত আপগ্রেড করার চেষ্টা করার আগে ব্যাকআপ নেওয়া হয়েছিল৷

ধাপ

  1. আপনি রোল ব্যাক করতে চান একটি নোড নির্বাচন করুন. আপনি যদি ব্যাকআপ ব্যবহার করে ডেটা সেন্টারে সমস্ত নোডগুলিকে রোলব্যাক করে থাকেন তবে প্রথমে বীজ নোডগুলি দিয়ে শুরু করুন৷ পরিশিষ্টে "কীভাবে বীজ নোড সনাক্ত করতে হয়" বিভাগটি পড়ুন।

  2. ক্যাসান্ড্রা নোড বন্ধ করুন, আনইনস্টল করুন এবং পরিষ্কার করুন:

    # Stop Cassandra service on the node
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    
    # Uninstall Cassandra software
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
    
    # Wipe Cassandra data
    rm -rf /opt/apigee/data/apigee-cassandra
    
  3. নোডে পুরানো ক্যাসান্ড্রা সফ্টওয়্যার ইনস্টল করুন এবং এটি কনফিগার করুন:

    • প্রাইভেট ক্লাউড 4.52.02 এর জন্য এজের বুটস্ট্র্যাপ ফাইলটি চালান:
    • # Download bootstrap for 4.52.02
      curl https://software.apigee.com/bootstrap_4.52.02.sh -o /tmp/bootstrap_4.52.02.sh -u ‘uName:pWord’
      
      # Execute bootstrap for 4.52.02
      sudo bash /tmp/bootstrap_4.52.02.sh apigeeuser=uName apigeepassword=pWord
      
    • ফাইল তৈরি বা সম্পাদনা করুন /opt/apigee/customer/application/cassandra.properties :
    • conf_jvm_options_custom_settings=-Dcassandra.replace_address=ipOfNode -Dcassandra.allow_unsafe_replace=true
    • নিশ্চিত করুন যে ফাইলটি এপিজি ব্যবহারকারীর মালিকানাধীন এবং পাঠযোগ্য:
    • chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
    • ক্যাসান্দ্রা ইনস্টল এবং সেট আপ করুন:
    • # Install Cassandra version 3.11.X
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra install
      
      # Set up Cassandra with the standard configuration file
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra setup -f configFile
      
      # Verify Cassandra version and check service status
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra version
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra status
      

    নোড শুরু হয়েছে তা যাচাই করুন। এই নোড এবং ক্লাস্টারের অন্যান্য নোডগুলিতে নিম্নলিখিত কমান্ডটি পরীক্ষা করুন। নোডগুলিকে রিপোর্ট করা উচিত যে এই নোডটি "UN" অবস্থায় রয়েছে:

    /opt/apigee/apigee-cassandra/bin/nodetool status
  4. ক্যাসান্দ্রা পরিষেবা বন্ধ করুন এবং ব্যাকআপ পুনরুদ্ধার করুন। আরো বিস্তারিত জানার জন্য ব্যাকআপ এবং পুনরুদ্ধার ডকুমেন্টেশন পড়ুন:

    # Stop Cassandra service on the node
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    
    # Wipe the data directory in preparation for restore
    rm -rf /opt/apigee/data/apigee-cassandra/data
    
    # Restore the backup taken before the upgrade attempt
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restore backupFile
            
  5. একবার ব্যাকআপ পুনরুদ্ধার করা হলে, অতিরিক্ত কনফিগারেশনগুলি সরান:

    /opt/apigee/customer/application/cassandra.properties ফাইল থেকে আগে যোগ করা কনফিগারেশন সরান।

  6. নোডে ক্যাসান্ড্রা পরিষেবা শুরু করুন:

    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra start
  7. প্রতিটি ক্যাসান্ড্রা নোডের ধাপগুলি পুনরাবৃত্তি করুন যা আপনি ব্যাকআপ ব্যবহার করে রোল ব্যাক করতে চান, একবারে একটি।

  8. একবার সমস্ত ক্যাসান্ড্রা নোড পুনরুদ্ধার করা হলে, সমস্ত প্রান্ত-* উপাদানগুলি একে একে পুনরায় চালু করুন:

    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
            

ব্যাকআপ অপ্টিমাইজেশান (উন্নত বিকল্প)

ব্যাকআপ পুনরুদ্ধার করার সময় আপনি সম্ভাব্যভাবে ডেটা ক্ষতি কমিয়ে আনতে পারেন (বা বাদ দিতে পারেন) যদি আপনার কাছে সাম্প্রতিক ডেটা রয়েছে এমন প্রতিলিপি উপলব্ধ থাকে। যদি প্রতিলিপিগুলি পাওয়া যায়, ব্যাকআপ পুনরুদ্ধার করার পরে, পুনরুদ্ধার করা নোডটিতে একটি মেরামত চালান।

পরিশিষ্ট

কিভাবে বীজ নোড সনাক্ত করতে হয়

একটি ডাটা সেন্টারের যেকোনো ক্যাসান্ড্রা নোডে, নিম্নলিখিত কমান্ডটি চালান:

/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure -search conf_cassandra_seeds

কমান্ডটি একাধিক লাইন আউটপুট করবে। আউটপুট শেষ লাইন জন্য দেখুন. শেষ লাইনে তালিকাভুক্ত IP ঠিকানাগুলি হল বীজ নোড। নীচের উদাহরণে, DC-1-IP1 , DC-1-IP2 , DC-2-IP1 , এবং DC-2-IP2 হল বীজ নোড আইপি:

Found key conf_cassandra_seeds, with value, "127.0.0.1", in /opt/apigee/apigee-cassandra/token/default.properties

Found key conf_cassandra_seeds, with value, 127.0.0.1, in /opt/apigee/apigee-cassandra/token/application/cassandra.properties

Found key conf_cassandra_seeds, with value, "DC-1-IP1, DC-1-IP2, DC-2-IP1, DC-2-IP2", in /opt/apigee/token/application/cassandra.properties
apigee-configutil: apigee-cassandra: # OK

আগের বড় বা ছোট রিলিজে ফিরে যান

পূর্ববর্তী বড় বা ছোট রিলিজে ফিরে যেতে, উপাদানটি হোস্ট করে এমন প্রতিটি নোডে নিম্নলিখিতগুলি করুন:

  1. আপনি যে সংস্করণে ফিরে আসতে চান তার জন্য bootstrap.sh ফাইলটি ডাউনলোড করুন:

    • 4.52.02 এ ফিরে যেতে, bootstrap_4.52.02.sh ডাউনলোড করুন :
      curl https://software.apigee.com/bootstrap_4.52.02.sh -o /tmp/bootstrap_4.52.02.sh 
  2. কম্পোনেন্টটিকে রোল ব্যাক করতে থামান:
    1. নোডে সাধারণ কোড সহ যেকোনও কম্পোনেন্ট রোল ব্যাক করতে, আপনাকে অবশ্যই সেগুলি বন্ধ করতে হবে, যেমনটি নিম্নলিখিত উদাহরণটি দেখায়:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-server stop
      /opt/apigee/apigee-service/bin/apigee-service edge-router stop
      /opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop
      /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
    2. নোডে অন্য কোনো কম্পোনেন্ট রোল ব্যাক করতে, শুধু সেই কম্পোনেন্ট বন্ধ করুন:
      /opt/apigee/apigee-service/bin/apigee-service component stop
  3. আপনি যদি নগদীকরণকে রোল ব্যাক করছেন, তাহলে সমস্ত ম্যানেজমেন্ট সার্ভার এবং মেসেজ প্রসেসর নোড থেকে এটি আনইনস্টল করুন:
    /opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
  4. নোডে রোল ব্যাক করতে উপাদানটি আনইনস্টল করুন:
    1. নোডে সাধারণ কোড সহ যেকোনও কম্পোনেন্ট রোল ব্যাক করতে, আপনাকে অবশ্যই edge-gateway কম্পোনেন্ট গ্রুপ আনইনস্টল করে সেগুলিকে আনইনস্টল করতে হবে, যেমনটি নিম্নলিখিত উদাহরণটি দেখায়:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
    2. নোডে অন্য কোনো কম্পোনেন্ট রোল ব্যাক করতে, সেই কম্পোনেন্টটিকে আনইনস্টল করুন, যেমন নিচের উদাহরণটি দেখায়:
      /opt/apigee/apigee-service/bin/apigee-service component uninstall

      যেখানে component হল কম্পোনেন্টের নাম।

    3. এজ রাউটারটি রোল ব্যাক করতে, আপনাকে edge-gateway কম্পোনেন্ট গ্রুপ আনইনস্টল করার পাশাপাশি /opt/nginx/conf.d ফাইলের বিষয়বস্তু মুছে ফেলতে হবে:
      cd /opt/nginx/conf.d
      rm -rf *
  5. apigee-setup 4.53.00 সংস্করণ আনইনস্টল করুন:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. apigee-service ইউটিলিটি এবং এর নির্ভরতাগুলির 4.52.02 সংস্করণ ইনস্টল করুন। নিম্নলিখিত উদাহরণটি apigee-service 4.52.02 সংস্করণ ইনস্টল করে:
    sudo bash /tmp/bootstrap_4.52.02.sh apigeeuser=uName apigeepassword=pWord

    যেখানে uName এবং pWord হল ব্যবহারকারীর নাম এবং পাসওয়ার্ড আপনি Apigee থেকে পেয়েছেন। আপনি pWord বাদ দিলে, আপনাকে এটি লিখতে বলা হবে।

    যদি আপনি একটি ত্রুটি পান, নিশ্চিত করুন যে আপনি ধাপ 1 এ bootstrap.sh ফাইলটি ডাউনলোড করেছেন৷

  7. apigee-setup ইনস্টল করুন:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  8. উপাদানটির পুরানো সংস্করণ ইনস্টল করুন:
    /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile

    যেখানে component ইন্সটল করার কম্পোনেন্ট এবং configFile হল আপনার পুরানো সংস্করণের জন্য কনফিগারেশন ফাইল।

  9. আপনি যদি Qpid চালু করেন, তাহলে iptables ফ্লাশ করুন:
    sudo iptables -F
  10. প্রতিটি নোডের জন্য এই প্রক্রিয়াটি পুনরাবৃত্তি করুন যা আপনি যে উপাদানটিকে ফিরিয়ে আনছেন সেটি হোস্ট করে।

আগের প্যাচ রিলিজে ফিরে যান

একটি নির্দিষ্ট প্যাচ রিলিজে একটি উপাদান রোল ব্যাক করতে, প্রতিটি নোডে নিম্নলিখিতগুলি করুন যা উপাদানটি হোস্ট করে:

  1. নির্দিষ্ট উপাদান সংস্করণ ডাউনলোড করুন:
    /opt/apigee/apigee-service/bin/apigee-service component_version install

    যেখানে component_version হল কম্পোনেন্ট এবং প্যাচ রিলিজ ইনস্টল করার জন্য। যেমন:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui-4.53.00-0.0.20254 install

    আপনি যদি Apigee অনলাইন রেপো ব্যবহার করেন, আপনি নিম্নলিখিত কমান্ড ব্যবহার করে উপলব্ধ উপাদান সংস্করণ নির্ধারণ করতে পারেন:

    yum --showduplicates list comp

    যেমন:

    yum --showduplicates list edge-ui
  2. উপাদান ইনস্টল করতে apigee-setup ব্যবহার করুন:
    /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile

    যেমন:

    /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile

    মনে রাখবেন যে আপনি এটি ইনস্টল করার সময় শুধুমাত্র উপাদানের নাম উল্লেখ করেন, সংস্করণ নয়।

  3. প্রতিটি নোডের জন্য এই প্রক্রিয়াটি পুনরাবৃত্তি করুন যা আপনি যে উপাদানটিকে ফিরিয়ে আনছেন সেটি হোস্ট করে।

এমটিএলএস রোল ব্যাক করুন

mTLS আপডেট রোল ব্যাক করতে, সমস্ত হোস্টে নিম্নলিখিত পদক্ষেপগুলি করুন:

  1. Apigee বন্ধ করুন:
    apigee-all stop
  2. mTLS বন্ধ করুন:
    apigee-service apigee-mtls uninstall
  3. mTLS পুনরায় ইনস্টল করুন:
    apigee-service apigee-mtls install
    apigee-service apigee-mtls setup -f /opt/silent.conf