د کوبرنیټس کارګر نوډونه: ډیری کوچني یا څو لوی؟

د کوبرنیټس کارګر نوډونه: ډیری کوچني یا څو لوی؟
کله چې د کبرنیټس کلستر رامینځته کړئ ، پوښتنې راپورته کیدی شي: څومره کارګر نوډونه تنظیم کول او کوم ډول؟ د پریمیس کلستر لپاره څه غوره دي: څو پیاوړي سرورونه واخلئ یا ستاسو د ډیټا مرکز کې لسګونه زاړه ماشینونه وکاروئ؟ ایا دا غوره ده چې په بادل کې اته واحد کور یا دوه کواډ کور مثالونه واخلئ؟

د دې پوښتنو ځوابونه په مقاله کې دي. ډینیل ویبل، د سافټویر انجنیر او د Learnk8s تعلیمي پروژې ښوونکی د کمانډ په ژباړه کې Kubernetes aaS له Mail.ru څخه.

د کلستر ظرفیت

په عموم کې، د Kubernetes کلستر د لوی "supernode" په توګه فکر کیدی شي. د دې ټول کمپیوټري ځواک د دې د ټولو اجزاو نوډونو ځواک مجموعه ده.

ستاسو د مطلوب کلستر ظرفیت هدف ترلاسه کولو لپاره ډیری لارې شتون لري. د مثال په توګه، موږ د 8 پروسیسر کور او 32 GB رام ټول ظرفیت سره کلستر ته اړتیا لرو ځکه چې د غوښتنلیکونو سیټ ډیری سرچینو ته اړتیا لري. بیا تاسو کولی شئ دوه نوډونه د 16 GB حافظې سره یا څلور نوډونه د 8 GB حافظې سره ، دوه کواډ کور پروسیسرونه یا څلور ډبل کور سره نصب کړئ.

دلته د کلستر جوړولو لپاره یوازې دوه ممکنه لارې دي:

د کوبرنیټس کارګر نوډونه: ډیری کوچني یا څو لوی؟
دواړه اختیارونه د ورته ظرفیت سره کلستر تولیدوي، مګر لاندې ترتیب څلور کوچني نوډونه لري او پورتنۍ ترتیب دوه لوی نوډونه لري.

کوم انتخاب غوره دی؟

د دې پوښتنې ځواب لپاره، راځئ چې د دواړو اختیارونو ګټې وګورو. موږ یې په یوه جدول کې لنډیز کړي دي.

څو لوی نوډونه

ډیری کوچني نوډونه

د کلستر اسانه مدیریت (که دا په اساس وي)

اسانه اتوماتیک کول

ارزانه (که پر بنسټ وي)

نرخ لږ توپیر لري (په بادل کې)

کولی شي د سرچینې ژور غوښتنلیکونه پرمخ بوځي

بشپړ نقل

سرچینې په ډیر اغیزمن ډول کارول کیږي (د سیسټم ډیمونونو کې لږ سر
د لوړ کلستر غلطی زغم

مهرباني وکړئ په یاد ولرئ چې موږ یوازې د کارګر نوډونو په اړه خبرې کوو. د اصلي نوډونو شمیر او اندازې غوره کول په بشپړ ډول مختلف موضوع ده.

نو، راځئ چې د میز څخه هر ټکی په ډیر تفصیل سره بحث وکړو.

لومړی اختیار: څو لوی نوډونه

ترټولو سخت انتخاب د ټول کلستر ظرفیت لپاره یو کارګر نوډ دی. په پورته مثال کې، دا به د 16 CPU کور او 16 GB رام سره یو واحد کارګر نوډ وي.

Плюсы

پلس نمبر 1. اسانه مدیریت
د ټولې بیړۍ په پرتله د څو ماشینونو اداره کول اسانه دي. دا د تازه معلوماتو او فکسونو رامینځته کولو لپاره ګړندی دی ، او دا همغږي کول اسانه دي. په مطلق شمیر کې د ناکامیو شمیر هم کم دی.

مهرباني وکړئ په یاد ولرئ چې پورته ټول ستاسو په هارډویر، ستاسو سرورونو، او نه د بادل مثالونو باندې تطبیق کیږي.

په بادل کې وضعیت بل ډول دی. هلته، مدیریت د بادل خدمت چمتو کونکي لخوا اداره کیږي. په دې توګه، په بادل کې د لسو نوډونو اداره کول د یو نوډ اداره کولو څخه ډیر توپیر نلري.

په بادل کې د پوډونو تر مینځ د ټرافیک روټینګ او د بار ویش په اتوماتيک ډول ترسره کیږي: د انټرنیټ څخه راځي ټرافیک د اصلي بار بیلنسر ته لیږل کیږي، کوم چې ټرافيک د یو نوډ بندر ته لیږدوي (د نوډ پورټ خدمت په هر کلستر نوډ کې د 30000-32767 حد کې بندر ټاکي). د کیوب پراکسي لخوا ټاکل شوي مقررات له نوډ څخه پوډ ته ټرافیک لیږدوي. دلته په دوو نوډونو کې د لسو پوډونو لپاره څه ښکاري:

د کوبرنیټس کارګر نوډونه: ډیری کوچني یا څو لوی؟
پرو #2: په هر نوډ کې لږ لګښت
یو پیاوړی موټر ډیر ګران دی، مګر د بیې زیاتوالی اړین ندی چې خطي وي. په بل عبارت، یو لس کور سرور د 10 GB حافظې سره معمولا د ورته مقدار حافظې سره د لسو واحد کور سرورونو څخه ارزانه دی.

مګر په یاد ولرئ چې دا قاعده معمولا د بادل خدماتو کې کار نه کوي. د ټولو لوی بادل چمتو کونکو اوسني قیمتونو سکیمونو کې ، نرخونه د ظرفیت سره په قطعي ډول لوړیږي.

په دې توګه، په بادل کې تاسو معمولا نشئ کولی په ډیرو پیاوړو سرورونو کې خوندي کړئ.

پرو # 3: تاسو کولی شئ د سرچینو متمرکز غوښتنلیکونه پرمخ وړئ
ځینې ​​غوښتنلیکونه په کلستر کې پیاوړي سرورونو ته اړتیا لري. د مثال په توګه، که چیرې د ماشین زده کړې سیسټم 8 GB حافظې ته اړتیا ولري، تاسو به نشئ کولی دا په 1 GB نوډونو کې پرمخ وړئ، مګر یوازې لږترلږه د یو لوی کارګر نوډ سره.

Минусы

نیمګړتیا نمبر 1. په هر نوډ کې ډیری پوډونه
که ورته دنده په لږو نوډونو کې ترسره شي، نو هر یو به په طبیعي توګه ډیر پوډونه ولري.

دا کیدای شي یوه ستونزه وي.

دلیل یې دا دی چې هر ماډل د کانټینر چلولو وخت (د مثال په توګه ډاکر) ته یو څه سر معرفي کوي ، په بیله بیا کیوبیلټ او کیډوایزر.

د مثال په توګه، یو کیوبیلټ په منظم ډول ټول کانټینرونه په نوډ کې د ژوندي پاتې کیدو لپاره پلټنه کوي — څومره چې کانټینرونه ډیر وي ، هومره ډیر کار کوبلیټ باید ترسره کړي.

CAdvisor په نوډ کې د ټولو کانټینرونو لپاره د سرچینو کارولو احصایې راټولوي، او کبلیټ په منظم ډول دا معلومات پوښتنې کوي او د API له لارې یې چمتو کوي. یوځل بیا ، ډیر کانټینرونه د دواړو cAdvisor او کبلیټ لپاره ډیر کار معنی لري.

که چیرې د ماډلونو شمیر زیات شي، دا کولی شي سیسټم ورو کړي او حتی د هغې اعتبار کمزوری کړي.

د کوبرنیټس کارګر نوډونه: ډیری کوچني یا څو لوی؟
د Kubernetes په ذخیره کې ځینې شکایت وکړدا نوډونه د چمتو / نه چمتو حالتونو ترمینځ کودیږي ځکه چې په نوډ کې د ټولو کانټینرونو منظم کبلیټ چیک ډیر وخت نیسي.
د دې دلیل لپاره Kubernetes وړاندیز کوي چې په هر نوډ کې له 110 څخه ډیر پوډونه ځای په ځای نکړي. د نوډ فعالیت پورې اړه لري، تاسو کولی شئ په هر نوډ کې ډیر پوډونه چل کړئ، مګر دا اټکل کول ګران دي چې آیا ستونزې به وي یا هرڅه به سم کار وکړي. دا د مخه د کار ازمويلو ارزښت لري.

نیمګړتیا نمبر 2. د نقل کولو محدودیت
ډیر لږ نوډونه د غوښتنلیک نقل کولو اغیزمن حد محدودوي. د مثال په توګه، که تاسو د پنځو نقلونو سره د لوړ شتون غوښتنلیک ولرئ مګر یوازې دوه نوډونه، نو د غوښتنلیک اغیزمنه کچه دوه ته راټیټه شوې.

پنځه نقلونه یوازې په دوو نوډونو ویشل کیدی شي، او که یو له دوی څخه ناکام شي، دا به په یوځل کې ډیری نقلونه له مینځه یوسي.

که تاسو پنځه نوډونه یا ډیر لرئ، هر نقل به په جلا نوډ کې پرمخ ځي، او د یو نوډ ناکامي به په ډیرو کې یو نقل لرې کړي.

په دې توګه، د لوړ شتون اړتیاوې ممکن په کلستر کې یو ټاکلی لږترلږه نوډونو ته اړتیا ولري.

نیمګړتیا نمبر 3. د ناکامۍ بدې پایلې
د لږ شمیر نوډونو سره، هر ناکامي ډیرې جدي پایلې لري. د مثال په توګه، که تاسو یوازې دوه نوډونه لرئ او یو یې ناکام شي، ستاسو نیمایي ماډلونه سمدلاسه ورک شي.

البته، Kubernetes به د کار بار له ناکامه نوډ څخه نورو ته انتقال کړي. مګر که د دوی لږ شمیر شتون ولري، نو ممکن کافي وړیا ظرفیت شتون ونلري. د پایلې په توګه، ستاسو ځینې غوښتنلیکونه به شتون ونلري تر هغه چې تاسو ناکام شوي نوډ راوړي.

په دې توګه، څومره نور نوډونه، د هارډویر ناکامۍ اغیزه کمه ده.

نیمګړتیا #4: د اتوماتیک کولو نور ګامونه
Kubernetes د کلاوډ زیربنا لپاره د کلستر آٹو سکیلینګ سیسټم لري، کوم چې تاسو ته اجازه درکوي په اتوماتيک ډول ستاسو د اوسني اړتیاو پراساس نوډونه اضافه یا لرې کړئ. د لوی نوډونو سره، اتوماتیک کول ډیر ناڅاپي او پیچلي کیږي. د مثال په توګه، په دوو نوډونو کې، د اضافي نوډ اضافه کول به سمدلاسه د کلستر ظرفیت 50٪ زیات کړي. او تاسو باید د دې سرچینو لپاره پیسې ورکړئ، حتی که تاسو ورته اړتیا نلرئ.

په دې توګه، که تاسو د اتوماتیک کلستر سکیلینګ کارولو پلان لرئ، نوډونه کوچني وي، ډیر انعطاف وړ او ارزانه پیمانه به تاسو ترلاسه کړئ.

اوس راځئ چې د لوی شمیر کوچني نوډونو ګټې او زیانونه وګورو.

دوهم اختیار: ډیری کوچني نوډونه

د دې کړنلارې ګټې په اصل کې د ډیری لوی نوډونو سره د مخالف اختیار د زیانونو څخه سرچینه اخلي.

Плюсы

پرو # 1: د ناکامۍ لږ اغیز
څومره چې نور نوډونه، په هر نوډ کې لږ پوډونه. د مثال په توګه، که تاسو په هرو لسو نوډونو کې سل ماډلونه ولرئ، نو هر نوډ به په اوسط ډول لس ماډلونه ولري.

پدې توګه ، که یو نوډ ناکام شي ، تاسو یوازې د کار بار 10٪ له لاسه ورکوئ. امکانات دا دي چې یوازې یو لږ شمیر نقلونه به اغیزمن شي او ټول غوښتنلیک به فعال پاتې شي.

سربیره پردې ، پاتې نوډونه به احتمال ولري د ناکام نوډ کاري بار اداره کولو لپاره کافي وړیا سرچینې ولري ، نو کوبرنیټس کولی شي په آزاده توګه پوډونه له سره تنظیم کړي او ستاسو غوښتنلیکونه به نسبتا ګړندي فعال حالت ته راستون شي.

پرو #2: ښه نقل
که چیرې کافي نوډونه شتون ولري ، د کوبرنیټس مهالویش کونکی کولی شي ټولو عکسونو ته مختلف نوډونه وټاکي. په دې توګه، که یو نوډ ناکام شي، یوازې یو نقل به اغیزمن شي او غوښتنلیک به شتون ولري.

Минусы

نیمګړتیا نمبر 1. کنټرول ستونزمن دی
د نوډونو لوی شمیر اداره کول خورا ستونزمن دي. د مثال په توګه، هر Kubernetes نوډ باید د نورو ټولو سره اړیکه ونیسي، دا دی، د اړیکو شمیر په څلور اړخیزه توګه وده کوي، او دا ټولې اړیکې باید تعقیب شي.

د کبرنیټس کنټرولر مدیر کې نوډ کنټرولر په منظم ډول په کلستر کې د ټولو نوډونو څخه تیریږي ترڅو روغتیا وګوري - څومره نوډونه ، په کنټرولر کې ډیر بار.

د etcd ډیټابیس بار هم مخ په ډیریدو دی - هر کوبیلټ او کیوب پراکسي زنګونه څارونکی د etcd لپاره (د API له لارې)، کوم چې etcd باید د اعتراض تازه معلومات نشر کړي.

په عموم کې، هر کارګر نوډ د ماسټر نوډونو سیسټم برخو باندې اضافي بار اچوي.

د کوبرنیټس کارګر نوډونه: ډیری کوچني یا څو لوی؟
Kubernetes په رسمي ډول د کلسترونو ملاتړ کوي د نوډونو شمیر تر 5000 پورې. په هرصورت، په عمل کې لا دمخه 500 نوډونه شتون لري کولی شي غیر معمولي ستونزې رامینځته کړي.

د کارګر نوډونو لوی شمیر اداره کولو لپاره ، تاسو باید ډیر پیاوړي ماسټر نوډونه غوره کړئ. د مثال په توګه، کیوب اپ په اتوماتيک ډول نصب شي د ماسټر نوډ لپاره د درست VM اندازه د کارګر نوډونو شمیر پورې اړه لري. يعنې، څومره چې کارګر نوډونه زيات وي، هغومره بايد ماسټر نوډونه ډېر ګټور وي.

د دې ځانګړو ستونزو د حل لپاره ځانګړي پرمختګونه شتون لري، لکه واقعی کیوبلیټ. دا سیسټم تاسو ته اجازه درکوي محدودیتونه تیر کړئ او د ډیری کارګر نوډونو سره کلسترونه جوړ کړئ.

نیمګړتیا #2: د سر ډیر لګښتونه.
په هر کارګر نوډ کې، Kubernetes د سیسټم ډیمونونو سیټ چلوي - پدې کې د کانټینر چلولو وخت (لکه ډاکر)، کیوب پراکسي او کیوبیلټ شامل دي، په شمول د caAdvisor. په ګډه دوی د یوې ټاکلې اندازې سرچینې مصرفوي.

که تاسو ډیری کوچني نوډونه لرئ، په هر نوډ کې د دې سر تناسب لوی دی. د مثال په توګه، تصور وکړئ چې ټول سیسټم ډیمونونه په یو واحد نوډ کې یوځای د 0,1 CPU کور او 0,1 GB حافظه کاروي. که تاسو د 10 GB حافظې سره یو لس کور نوډ ولرئ، نو ډیمون د کلستر ظرفیت 1٪ مصرفوي. له بلې خوا، د 1 GB حافظې سره په لسو واحد کور نوډونو کې، ډیمون به د کلستر ظرفیت 10٪ واخلي.

په دې توګه، لږ نوډونه، په اغیزمنه توګه زیربنا کارول کیږي.

نیمګړتیا نمبر 3. د منابعو غیر موثره ګټه اخیستنه
په کوچنیو نوډونو کې، دا ممکن وي چې د سرچینې پاتې برخې ډیرې کوچنۍ وي چې کوم کاري بار وټاکي، نو دوی نه کارول کیږي.

د مثال په توګه، هر پوډ د 0,75 GB حافظې ته اړتیا لري. که تاسو لس نوډونه لرئ، هر یو د 1GB حافظې سره، تاسو کولی شئ لس پوډونه چل کړئ، هر نوډ د 0,25GB غیر استعمال شوي حافظې سره پریږدئ.

دا پدې مانا ده چې د ټول کلستر حافظه 25٪ ضایع کیږي.

د 10 GB حافظې سره په لوی نوډ کې ، تاسو کولی شئ له دې ماډلونو څخه 13 چل کړئ - او د 0,25 GB یوازې یوه نه کارول شوې ټوټه به وي.

په دې حالت کې، یوازې 2,5٪ حافظه ضایع کیږي.

په دې توګه، سرچینې په لویو نوډونو کې په غوره توګه کارول کیږي.

څو لوی نوډونه یا ډیری کوچني؟

نو، کوم یو غوره دی: په کلستر کې یو څو لوی نوډونه یا ډیری کوچني؟ د تل په څیر، هیڅ روښانه ځواب شتون نلري. ډیر د غوښتنلیک ډول پورې اړه لري.

د مثال په توګه، که یو غوښتنلیک د 10 GB حافظې ته اړتیا ولري، لوی نوډونه یو څرګند انتخاب دی. او که چیرې غوښتنلیک د لوړ شتون لپاره لس چنده نقل ته اړتیا ولري ، نو دا په سختۍ سره یوازې په دوه نوډونو کې د نقلونو ځای په ځای کولو خطر ارزښت لري - په کلستر کې باید لږترلږه لس نوډونه وي.

په منځنیو حالاتو کې، د هر انتخاب د ګټو او زیانونو پر بنسټ انتخاب وکړئ. شاید ځینې دلیلونه د نورو په پرتله ستاسو وضعیت سره ډیر تړاو ولري.

او دا اړینه نده چې ټول نوډونه ورته اندازه جوړه کړئ. هیڅ شی تاسو نه منع کوي چې لومړی د ورته اندازې نوډونو سره تجربه وکړئ ، بیا دوی ته د مختلف اندازې نوډونه اضافه کړئ ، په کلستر کې یې یوځای کړئ. د Kubernetes په کلستر کې د کارګر نوډونه کیدای شي په بشپړه توګه متضاد وي. نو تاسو کولی شئ د دواړو طریقو ګټې یوځای کولو هڅه وکړئ.

هیڅ یو ترکیب شتون نلري، او هر حالت خپل ځانګړتیاوې لري، او یوازې تولید به حقیقت وښيي.

ژباړه د بادل پلیټ فارم ټیم لخوا چمتو شوې Mail.ru کلاوډ حلونه.

د Kubernetes په اړه نور معلومات: 25 د کلسترونو اداره کولو او پلي کولو لپاره ګټورې وسیلې.

سرچینه: www.habr.com

Add a comment