জেনকিনসকে কীভাবে সঠিকভাবে স্কেল করবেন?


27

আমার প্রকল্পে জেনকিন্স মাস্টার +১ জেনকিনস ক্রীতদাস (২ জন নির্বাহী) আমাদের একটি এডাব্লুএস সার্ভার চালু রয়েছে ... এবং
আমাদের বিল্ডিং পাওয়ারকে বাড়ানোর জন্য আমাদের আরও তিনটি বিকল্প রয়েছে:

  1. স্কেল আপ : এডাব্লুএস উদাহরণটি আরও বড় করুন এবং আরও এক্সিকিউটিউটর যুক্ত করুন।
  2. স্কেল আপ : এডাব্লুএস দৃষ্টান্তটি আরও বড় করুন এবং আরও একটি জেনকিনস স্লেভ প্রক্রিয়া যুক্ত করুন।
  3. স্কেল আউট : একটি জেনকিনস ক্রীতদাসের সাথে আর একটি এডাব্লুএস দৃষ্টান্ত তৈরি করুন এবং এটি মাস্টারের সাথে সংযুক্ত করুন

আমরা 2 করতে চাই আমরা যেমন একটি বড় সংস্থায় আছি এবং আমাদের বর্তমান জেনকিনস মাস্টার ইতিমধ্যে তার প্রয়োজনীয় প্রতিটি জায়গায় অ্যাক্সেস পেয়েছেন। অপশন ৩. "নতুন সার্ভার" জটিল কারণ এটির জন্য আরও আমলাতান্ত্রিক অনুমোদনের দরকার রয়েছে যা কয়েক সপ্তাহ লাগবে।

সুতরাং আমার প্রশ্নগুলি হ'ল:

  • বিকল্প 2 তে কোনও প্রযুক্তিগত সমস্যা আছে? । হতে পারে প্রতিটি জেনকিনস ক্রীতদাসের নির্বাহকরা অন্য দাসের নির্বাহকদের সম্পর্কে অবগত নন?
  • সাধারণভাবে, জেনকিন্স স্কেল করার সর্বোত্তম পদ্ধতির কী? স্কেলিং বা স্কেলিং আউট?

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

2
৩ নম্বরে কেন? জেনকিন্সে চাকরি প্রেরণের স্বাভাবিক উপায় হ'ল মাস্টার্স। এবং নির্দিষ্ট মানদণ্ডের উপর ভিত্তি করে মাস্টার উপযুক্ত দাসের জন্য এটি
নির্বিঘ্নে

এফডাব্লুআইডাব্লু, আপনার বিল্ড স্ট্রাকচারটি কীভাবে বিল্ড মেশিনের রিসোর্সগুলি ব্যবহার করে তা দেখতেও আপনাকে বিশ্লেষণ করতে হবে - স্কেলিং আপ হয়ত সাহায্য করতে পারে না - আমি এমন মামলার মুখোমুখি হয়েছি যেগুলিতে একই মেশিনে 2 সমান্তরাল বিল্ডগুলির বিল্ড সময়টি সম্মিলিত বিল্ড সময়ের চেয়ে দীর্ঘ ছিল একই 2 বিল্ডগুলি ক্রমানুসারে কার্যকর করা হয়েছে, অ-ওভারল্যাপিং। এই ক্ষেত্রে # 3 সত্যিই একমাত্র ব্যবহারিক বিকল্প উপলব্ধ।
ড্যান কর্নিলিস্কু

আমি সম্মত হই যে # 3 আরও ভাল তবে এর পক্ষে আমার পক্ষে যুক্তি বা # 1 এবং # 2 এর সাথে তর্ক নেই ...
অস্কার ফোলি

আপনার পরিবেশের মধ্যে যদি আপনার সুযোগ থাকে তবে আমি একটি ক্ষুদ্রকালীন সমাধানের দিকে নজর দেব। আপনি ইতিমধ্যে এডাব্লুএসে রয়েছেন তা দেখে, কাজের চাপ সামাল দেওয়ার সময় আপনি সহজেই প্রয়োজন অনুযায়ী মেশিনগুলি উপরে এবং নীচে আনতে পারেন। wiki.jenkins.io/display/JENKINS/Amazon+EC2+Plugin
Vega ক্যাসি

উত্তর:


11

একই মেশিনে একাধিক জেনকিন ক্রীতদাস চালানোর কোনও মৌলিক প্রযুক্তিগত সমস্যা নেই । বাস্তবে একই মেশিনে একাধিক স্লেভ চালানো বেশ কয়েকটি ভাল কারণ এটি করার জন্য তালিকাবদ্ধ করে:

এক্সিকিউটারদের সঠিক ব্যবহারের ক্ষেত্রে একই মেশিনে একাধিক ক্রীতদাসের দাবির প্রয়োজন অনেকাংশে বাধ্য হয়, তবে কিছু অনন্য ব্যবহারের বিষয় বিবেচনা করার জন্য রয়েছে:

  • আপনি কনফিগার করা নোডগুলির মধ্যে আরও কনফিগার করতে চান। বলুন আপনার কাছে একটি নোড যথাসম্ভব ব্যবহারের জন্য সেট করা আছে এবং অন্য নোডটি কেবল যখন প্রয়োজন হবে তখনই ব্যবহার করতে হবে।
  • আপনার একাধিক জেনকিন্স মাস্টার ইনস্টলস বিভিন্ন জিনিস তৈরি করতে পারে এবং তাই এই কনফিগারেশনটি আপনাকে একই বাক্সে একাধিক মাস্টার দাস রাখতে দেয়। এটা ঠিক, জেনকিন্সের সাথে আপনি সত্যই দুটি মাস্টার পরিবেশন করতে পারেন।
  • আপনি সম্ভবত ভার্চুয়াল মেশিনগুলি শুরু / থামানো / প্রতিস্থাপনের স্বাচ্ছন্দ্য অর্জন করতে পারেন, সম্ভবত জেনকিনস প্লাগইনগুলির সাথে যেমন লিবিভার্ট স্লেভ প্লাগিনের সাথে একত্রে ।
  • আপনি একই সময়ে অপারেটিং ব্যয় হ্রাস (যেমন আইডলিং ক্রীতদাসদের চালনার জন্য ইউটিলিটি ব্যয়) হ্রাস করে একই সময়ে আপনার হার্ডওয়্যার বিনিয়োগ এবং ব্যবহারকে সর্বাধিক করতে চান to

সাধারণভাবে স্কেলিং আউট পছন্দ করা হয়, প্রাথমিকভাবে কারণ স্কেল আপ করার ক্ষমতা সাধারণত উপলব্ধ শারীরিক সংস্থার ধরণ / আকার দ্বারা সীমাবদ্ধ।

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

উদাহরণস্বরূপ আমি এমন কেসগুলির মুখোমুখি হয়েছি যেখানে একই মেশিনে 2 সমান্তরাল বিল্ডগুলির বিল্ড সময় একই মেশিনে ক্রমবর্ধমান একই 2 বিল্ডের ক্রমবর্ধমান (নন-ওভারল্যাপিং) এর চেয়ে বেশি দীর্ঘ ছিল times এই ক্ষেত্রে আমি এমনকি স্কেলিং বিবেচনা করব না কারণ এটি সামগ্রিকভাবে বিল্ডিংয়ের ক্ষমতা হ্রাস করবে।


5

কুবেরনেটস এবং হেলম ব্যবহার করুন।

আমি জেনকিনস হেলম চার্টটি ব্যবহার করার পরামর্শ দেব। এটি ইনস্টল করে helm install stable/jenkinsএবং স্বয়ংক্রিয়ভাবে স্কেল করে।

https://github.com/kubernetes/charts/tree/master/stable/jenkins


3

আমার মনে হয় আপনার কোনটি করা উচিত নয়;)

ভাল কিন্ডা। আমি মনে করি আপনার আরও নির্বাহকের দরকার, সম্ভবত আপনার বিল্ডগুলি সত্যই সংস্থান নিবিড়? আমি কমপক্ষে 4 চালাতে পারি তবে আমরা কাজের উপর নির্ভর করে 6 থেকে 8 চালাই। আমি এক্সিকিউটরগুলির সাথে # টি কোরের সাথে মিল রাখতে চাই। সুতরাং আপনি আপনার নোডগুলি স্কেল করতে চাইতে পারেন, আমি মনে করি আমরা আমাদের 4-8 এক্সিকিউটারের জন্য একটি এম 4 বড় চালাই।

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


2

আমি স্কেল আপের পরিবর্তে স্কেল করবো, বিকল্পটি 3 এ যাব We আমাদের সমস্ত জেনকিন্স মাস্টাররা ইসিএসের সাথে যোগাযোগ করছে, এভাবে ইসিএসে কাজের চাপ ভাগ করে নিচ্ছে এবং জেনকিন্স মাস্টারকে স্কেল আপ অনুশীলনে পুনরায় তৈরি করার দরকার নেই।

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