আমি কীভাবে স্বয়ংক্রিয়ভাবে একটি এডাব্লুএস অটো স্কেলিং গ্রুপে একটি নতুন চিত্র চক্র করতে পারি?


21

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

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


2
এটি সম্ভবত আরও কার্যকর যদি আপনি নিজের নতুন প্রবর্তন কনফিগারেশন তৈরি করার পরে এবং আপনার অটোক্যাসিং গ্রুপ আপডেট করার পরে, আপনি প্রতিটি উদাহরণকে অস্বাস্থ্যকর (যেমন ব্যবহার করা as-set-instance-health) হিসাবে চিহ্নিত করেন , যাতে অটোক্যাসিং কেবলমাত্র একটি নতুন উদাহরণ দিয়ে এটি প্রতিস্থাপন করে।
cyberx86

উত্তর:


10

আমি এটি করতে "এডাব্লুএস-এইচএ-রিলিজ" পরামর্শ দিতে চাই - এডাব্লুএস-এইচএ-রিলিজ যেভাবে কাজ করে:

  1. যদি বর্তমান অটোক্যাসিং গ্রুপ এবং ইএলবি স্বাস্থ্যকর যে 5 টি দৃষ্টান্ত রিপোর্ট করে,
  2. এডাব্লুএস-এইচএ-রিলিজ উত্পাদনে একটি নতুন উদাহরণ এনেছে এবং ইএলবিটিকে এটি স্বাস্থ্যকর হিসাবে চিহ্নিত করার জন্য অপেক্ষা করে (মোট স্বাস্থ্যকর উদাহরণের সংখ্যা 6 এ নিয়ে আসে)
  3. একটি পুরানো উদাহরণ সরিয়ে দেয় (মোট নিচে 5)
  4. পরিষেবাতে অন্য উদাহরণ এনেছে (মোট 6 টি)
  5. একটি পুরানো উদাহরণ সরিয়ে দেয় (মোট নিচে 5)
  6. এবং যতক্ষণ না সমস্ত দৃষ্টান্ত প্রতিস্থাপন করা হয়

এই ক্ষেত্রে, আপনি ডাউনটাইম ছাড়াই নতুন কোড বা নতুন এএমআই সংস্করণ শিপ করতে পারবেন এবং সম্পূর্ণ নতুন উদাহরণগুলির সুবিধা পেতে পারেন। অ্যাডাব্লুএস-এইচএ-রিলিজ সরঞ্জামটি https://github.com/colinbjohnson/aws-missing-tools এ উপলব্ধ ।


9

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

আপনি এডাব্লুএস সিএলআই প্যারামিটার এবং উদাহরণগুলি এখানে দেখতে পারেন: http://docs.aws.amazon.com/cli/latest/references/autoscaling/update-auto-scaling-group.html


চিয়ার্স, এটি একটি দুর্দান্ত সুবিধাজনক, ঝামেলা-মুক্ত পদ্ধতি।
এলাদ নাভা

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

6

আমি এই দৃশ্যটি যেভাবে পরিচালনা করি তা হ'ল মেঘ গঠনে অ্যাডাব্লুএস :: অটোসক্লিং :: অটোসকলিংগ্রুপ অবজেক্টের আপডেটপোলি বৈশিষ্ট্যটি ব্যবহার করা। ক্লাউড গঠনের স্ট্যাকটি আপডেট করা হলে এটি উদাহরণগুলির সাইক্লিং পরিচালনা করবে।

কিছু রেফারেন্স। http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy .html


একটি টন @ গ্রায়েম ধন্যবাদ। আমার কোনও ধারণা ছিল না ক্লাউডফর্মেশন এই কার্যকারিতাটি সরবরাহ করে।
এজেবি

ঠিক আমি খুঁজছেন ছিল কি. এডাব্লুএস কনসোলের পরিবর্তনগুলি লকড হওয়ায় আমরা জিনকিন্সের মাধ্যমে আমাদের স্ট্যাকগুলি স্থাপন করি।
গ্রেগ বাইলস

3

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


আপনার অর্থ "নেটফ্লিক্স অ্যাসগার্ড"

4
নেটফ্লিক্স অ্যাসগার্ড এখন
হ্রাস করা

0

সত্যই এটি করার সত্যিই ভাল উপায় নেই। এটি করার সবচেয়ে ভাল উপায়টি হ'ল এএসজি নামের একটি সংস্করণ রাখা। আমি যখনই এএমআই আপডেট করি তখনই আমি নতুন সংস্করণ সহ একটি নতুন এএসজি + লঞ্চ কনফিগার তৈরি করি যাতে এটি অন্য দলের সাথে বিরোধ না করে। তারপরে আমি পুরানো গোষ্ঠীর সমস্ত দৃষ্টান্ত সমাপ্ত করি।

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


0

আমি এখানে যেমন পোস্ট করেছি (অনুরূপ প্রশ্ন, কেবলমাত্র টেরফর্মের সাথে), এটি কোনওভাবেই ASG তে অন্তর্নির্মিত নয়, আপনি যদি ক্লাউডফর্মেশন ব্যবহার করেন তবে except আমি এটির সাথেও লড়াই করেছি, সুতরাং "রোলার" লেখা শেষ করেছিলাম যা একাধিক এএসজি দেখে, তাদের অবস্থা এবং আপডেটগুলি পরীক্ষা করে। মতামত নিতে সর্বদা খুশি। http://github.com/deitch/aws-asg-roller

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