ক্যানারি রিলিজ কৌশল বনাম নীল / সবুজ


125

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

নীল / সবুজ প্রকাশ সম্পর্কে আমার বোঝা হল যে আপনার কাছে 2 মিররযুক্ত উত্পাদন পরিবেশ ("নীল" এবং "সবুজ") রয়েছে এবং আপনি একবারে নীল বা সবুজ উভয় নোডের পরিবর্তনের দিকে চাপ দিন এবং তারপরে নিয়ন্ত্রণের জন্য নেটওয়ার্ক জাদু ব্যবহার করুন পরিবেশ ব্যবহারকারীদের ডিএনএসের মাধ্যমে পাঠানো হয়।

সুতরাং, আমি শুরু করার আগে, আমি এখন পর্যন্ত যা কিছু বলেছি তা যদি ভুল হয় তবে দয়া করে আমাকে সংশোধন করে শুরু করুন!

ধরে নিই আমি ট্র্যাকে কমবেশি, তারপরে দুটি কৌশল সম্পর্কে কয়েকটি প্রশ্ন:

  • এমন কি এমন পরিস্থিতিতে আছে যেখানে নীল / সবুজ রঙের চেয়ে ক্যানারি পছন্দ হয় এবং তার বিপরীতে?
  • এমন পরিস্থিতিতে কি আছে যেখানে একটি মোতায়েনের মডেল একই সাথে উভয় কৌশল প্রয়োগ করতে পারে?

5
আপনার বোঝাপড়াটি দুর্দান্ত, তবে আমি একবারে সমস্ত নোডে মোতায়েনের প্রয়োজন হিসাবে নীল সবুজ কৌশলটি বলব না। আপনি নিজের পছন্দ মতো নিখরচায় এগুলিকে স্থাপন করতে পারেন - একমাত্র চাপ আপনার নিজস্ব সময়সীমা। অতিরিক্তভাবে, আপনি আপনার নোডের কেবলমাত্র একটি উপসেটে পরিবর্তনগুলি মুক্তি দিতে নীল-সবুজ ব্যবহার করতে পারেন (উদাহরণস্বরূপ কেবলমাত্র অনেকগুলি এপিআই এন্ডপয়েন্ট পুলের মধ্যে একটি পরিবর্তন করে)।
প্যাট্রিক এম

1
এই ধারণাগুলির খুব সুন্দর যোগফল আমি প্রথমে পরিষ্কার সংজ্ঞা ছাড়াই সর্বত্র দেখতে পাচ্ছি!
খেরাউদ

উত্তর:


94

নীল-সবুজ প্রকাশ সহজ এবং দ্রুত।

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

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

মোতায়েনের অটোমেশন চেষ্টা করে, তাই বেশিরভাগ সংস্থাগুলি প্রতিবার একটি কৌশল বা অন্যটি ব্যবহার করার পরিকল্পনা করবে।

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

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


রঙের অর্থ সম্পর্কে কয়েকটি শব্দ: - পুরানো পরিবেশটি নীল, নতুন সবুজ হতে পারে। - পরবর্তী প্রকাশে, পুরানো সবুজ হবে। উইকি:> অনেক ভাষায় ইংরাজীতে যা "নীল" এবং "সবুজ" হিসাবে বর্ণিত হয় তার মধ্যে পার্থক্য হয় না এবং পরিবর্তে উভয় প্রসারিত একটি কভার শব্দ ব্যবহার করা হয় - "গ্রু"
কিনজেলোম

ক্যানারি সবসময় নীল / সবুজ থেকে দ্রুত হয় না। এটি সবই সিআই এবং সিডি ওয়ার্কফ্লোতে নির্ভর করে!
লিগামার

81

আমি এই বিষয়টিতে এখানে একটি বিশদ রচনা লিখেছি: http://blog.itaysk.com/2017/11/20/dep रोजगार-strategies- সংজ্ঞায়িত

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

নীল সবুজ: এখানে চিত্র বর্ণনা লিখুন

ক্যানারি: এখানে চিত্র বর্ণনা লিখুন


4
আপনার চিত্রগুলি দুর্দান্ত, আমি তাদের এখানে আপনার উত্তরে এম্বেড করার বিষয়টি বিবেচনা করতে পারি, তবে ব্যাখ্যাটির সাথে লিঙ্কটিকে আরও গভীর ডুব দিয়ে রাখছি।
কুইকশিফ্টিন

ধন্যবাদ। তাদের যুক্ত করেছে
30:48

4
খুব ভাল ব্যাখ্যা। তবে এটি ক্যানারি ইলাস্ট্রেসে ব্যবহারকারীর লোড শতাংশের নমুনা দেখানো আরও ভাল।
নিকলি

ক্যানারি মুক্তির চিত্রটিতে "সময়" এবং "পরে" এর মধ্যে পার্থক্য কী? আমি "পরে" নীল / সবুজ প্রকাশের মতো দেখতে প্রত্যাশা করেছি
কেস 115

উভয় পদ্ধতিই নতুন সংস্করণটি মূল্যায়ন করে ঝুঁকি হ্রাস করতে বোঝায়। এর মধ্যে নতুন সংস্করণটি মোতায়েন করা হয়েছে তবে কীভাবে এগিয়ে যাওয়া যায় সে সম্পর্কে এখনও কোনও সিদ্ধান্ত হয়নি। পরে ইতিবাচক সিদ্ধান্তের পরে এগিয়ে যাওয়ার সিদ্ধান্ত নেওয়া হয়েছিল।
itaysk

5

যদিও এই দুটি পদই একে অপরের সাথে বেশ ঘনিষ্ঠ দেখায় তবে তাদের মধ্যে সূক্ষ্ম পার্থক্য রয়েছে। একটি আপনার কার্যকারিতা প্রকাশের উপর আস্থা রাখে এবং অন্যটি আপনার মুক্তির পথে আস্থা রাখে।

হলদে

  1. ক্যানারি রিলিজ হ'ল পুরো অবকাঠামোতে ঘূর্ণায়মান হওয়ার আগে ব্যবহারকারীদের একটি ছোট্ট সাবসেটে পরিবর্তন আস্তে আস্তে উত্পাদনে একটি নতুন সফ্টওয়্যার সংস্করণ প্রবর্তনের ঝুঁকি হ্রাস করার একটি কৌশল।

  2. নতুন সংস্করণটি কীভাবে কার্য সম্পাদন করবে (অন্যান্য অ্যাপ্লিকেশন, সিপিইউ, মেমরি, ডিস্ক ব্যবহার ইত্যাদির সাথে একীভূত হবে) তার ধারণা পেতে চলেছে।

নীল সবুজ:

  1. এটি শূন্য ডাউনটাইম মোতায়েনের সাথে অনুমানযোগ্য মুক্তি সম্পর্কে আরও বেশি।
  2. ব্যর্থতার ক্ষেত্রে সহজ রোলব্যাকস।
  3. সম্পূর্ণ স্বয়ংক্রিয়ভাবে স্থাপন প্রক্রিয়া

4

এখানে কিছু ইনলাইন সংজ্ঞা দেওয়া হল -

  • নীল-সবুজ স্থাপনা - কোনও অ্যাপ্লিকেশনটির নতুন সংস্করণ স্থাপন করার সময়, দ্বিতীয় পরিবেশ তৈরি করা হয়। নতুন পরিবেশ পরীক্ষা করা হয়ে গেলে এটি পুরানো সংস্করণ থেকে নেওয়া হয়। পুরানো পরিবেশটি তখন বন্ধ করা যায়।

     

  • এ / বি পরীক্ষা - একই সাথে একটি অ্যাপ্লিকেশনের দুটি সংস্করণ চলছে running অনুরোধের একটি অংশ প্রত্যেকের কাছে যায়। বিকাশকারীরা তখন সংস্করণগুলি তুলনা করতে পারেন।  
  • ক্যানারি রিলিজ - পুরানো সংস্করণগুলি সহ একটি মাইক্রোসারওয়াইসের একটি নতুন সংস্করণ শুরু করা হয়েছে। নতুন সংস্করণটি তারপরে অনুরোধগুলির একটি অংশ নিতে পারে এবং দলটি পরীক্ষা করতে পারে যে কীভাবে এই নতুন সংস্করণটি সামগ্রিক সিস্টেমের সাথে ইন্টারেক্ট করে।

2

সংজ্ঞা একটি ভাল শুরু। আমি মনে করি এটি যদি আপনার "মুক্তি" সংজ্ঞাটিকে "মোতায়েন" এবং "প্রকাশ (কার্যকারিতা)" তে বিভক্ত করে তোলে তবে এটি আপনার কৌশলের সিদ্ধান্ত নিতেও সহায়তা করে।

স্থাপন করা (বাইনারি)

আপনার পণ্যকে (উত্পাদন) সিস্টেমে বাইনারি মোতায়েনের ক্রিয়া।

মুক্তি (কার্যকারিতা)

(গোষ্ঠী) ব্যবহারকারীদের কার্যকারিতা উপলব্ধতার ব্যবস্থাপনার ক্রিয়া।

কেন? "মুক্তি" দেওয়ার সময় আপনার সাধারণত দুটি (একাধিক) উদ্বেগ থাকে: 1) বাগ / পিছনের দিকে সামঞ্জস্যতা ইত্যাদি)) নতুন বৈশিষ্ট্যের বৈধতা / ব্যবহারযোগ্যতা যাচাই করা হচ্ছে

তারপরে ক্যানারি বা নীল / সবুজ বা ধূসর / মিশ্র মোড কৌশলটি বেছে নেওয়ার আগে নিজেকে জিজ্ঞাসা করুন: নতুন সংস্করণ প্রকাশ / মোতায়েন করার সময় আমাদের কী উদ্বেগ? এবং কেবলমাত্র যদি আপনি আপনার উদ্বেগগুলি জানেন তবে আপনার কৌশলটি বেছে নিন।

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

বৈশিষ্ট্যযুক্ত পতাকা

"কনফিগার করা" (শীতল বা এমনকি গরম) এর ক্রিয়া যা কার্যকারিতা (নয়) যার (গ্রুপ) ব্যবহারকারীদের জন্য উপলব্ধ

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.