ټوپر ویئر: د فیسبوک کوبرنیټس وژونکی؟

د Tupperware سره په هره پیمانه د کلسترونو اغیزمن او د باور وړ مدیریت

ټوپر ویئر: د فیسبوک کوبرنیټس وژونکی؟

نن ورځ سیسټمونه @ سکیل کنفرانس موږ Tupperware معرفي کړ، زموږ د کلستر مدیریت سیسټم چې په ملیونونو سرورونو کې کانټینرونه تنظیموي چې زموږ نږدې ټول خدمات پرمخ وړي. موږ لومړی په 2011 کې Tupperware ځای پرځای کړل، او له هغه وخت راهیسې زموږ زیربنا وده کړې. 1 د معلوماتو مرکز تر ټول پورې 15 جیو ویشل شوي ډیټا مرکزونه. په دې ټول وخت کې، Tupperware لاهم ولاړ نه و او زموږ سره یې وده وکړه. موږ به تاسو ته وښیو چې څنګه Tupperware د لومړۍ درجې کلستر مدیریت چمتو کوي، پشمول د دولتي خدماتو لپاره مناسب ملاتړ، د ټولو ډیټا مرکزونو لپاره یو واحد کنټرول پینل، او په ریښتیني وخت کې د خدماتو ترمنځ د ظرفیت ویشلو وړتیا. موږ به هغه درسونه هم شریک کړو چې موږ یې زده کړل لکه څنګه چې زموږ زیربنا وده کوي.

Tupperware مختلف کارونه ترسره کوي. د غوښتنلیک پراختیا کونکي دا د غوښتنلیکونو رسولو او اداره کولو لپاره کاروي. دا د غوښتنلیک کوډ او انحصار په عکس کې بسته کوي او سرورونو ته یې د کانټینرونو په توګه وړاندې کوي. کانټینرونه په ورته سرور کې د غوښتنلیکونو ترمینځ انزوا چمتو کوي ترڅو پراختیا کونکي د غوښتنلیک منطق سره معامله وکړي او د سرورونو موندلو یا د تازه معلوماتو اداره کولو په اړه اندیښنه ونلرئ. Tupperware د سرور فعالیت هم څاري، او که دا ناکامي ومومي، دا د ستونزې لرونکي سرور څخه کانټینرونه لیږدوي.

د ظرفیت پلان جوړونکي انجینران د بودیجې او محدودیتونو پراساس ټیمونو ته د سرور ظرفیت تخصیص کولو لپاره Tupperware کاروي. دوی دا د سرور کارولو ښه کولو لپاره هم کاروي. د ډیټا سنټر چلونکي ټوپر ویئر ته مخه کوي ترڅو د ډیټا مرکزونو کې کانټینرونه په سمه توګه توزیع کړي او د ساتنې پرمهال کانټینرونه ودروي یا حرکت وکړي. د دې څخه مننه، د سرورونو، شبکو او تجهیزاتو ساتل لږترلږه انساني مداخلې ته اړتیا لري.

د Tupperware جوړښت

ټوپر ویئر: د فیسبوک کوبرنیټس وژونکی؟

د Tupperware PRN جوړښت زموږ د معلوماتو مرکزونو یوه برخه ده. سیمه د ډیټا مرکز ډیری ودانۍ لري (PRN1 او PRN2) نږدې موقعیت لري. موږ پلان لرو چې یو کنټرول پینل جوړ کړو چې په یوه سیمه کې به ټول سرورونه اداره کړي.

د غوښتنلیک پراختیا کونکي د Tupperware دندو په بڼه خدمات وړاندې کوي. یوه دنده د څو کانټینرونو څخه جوړه ده، او دا ټول عموما د ورته غوښتنلیک کوډ چلوي.

Tupperware د کانټینرونو چمتو کولو او د دوی د ژوند دوره اداره کولو مسؤلیت لري. دا د څو برخو څخه جوړه ده:

  • د Tupperware فرنټ اینډ د کاروونکي انٹرفیس، CLI، او نورو اتوماتیک وسیلو لپاره APIs چمتو کوي چې له لارې تاسو کولی شئ د Tupperware سره اړیکه ونیسئ. دوی ټول داخلي جوړښت د Tupperware دندې مالکینو څخه پټوي.
  • د Tupperware شیډولر د کنټرول پینل دی چې د کانټینر او دندې ژوند دورې اداره کولو لپاره مسؤل دی. دا په سیمه ایز او نړیواله کچه ځای پر ځای شوی، چیرې چې سیمه ایز مهالویشونکی په یوه سیمه کې سرورونه اداره کوي او نړیوال مهالویشونکی د مختلفو سیمو څخه سرورونه اداره کوي. مهالویش کونکی په شارډونو ویشل شوی، او هر شارډ د دندو یو سیټ اداره کوي.
  • د Tupperware شیډولر پراکسي داخلي شارډینګ پټوي او د Tupperware کاروونکو لپاره د شیشې یو مناسب واحد پین چمتو کوي.
  • د Tupperware مختص کونکی سرورونو ته کانتینرونه ګماري. مهالویش کونکی د کانټینرونو ودرول ، پیل کول ، تازه کول او ناکامي اداره کوي. اوس مهال، یو تخصیص کوونکی کولی شي ټوله سیمه اداره کړي پرته له دې چې په برخو ویشل شي. (په اصطلاحاتو کې توپیر په یاد ولرئ. د مثال په توګه، په Tupperware کې شیډولر د کنټرول پینل سره مطابقت لري. کوبنیټس، او د Tupperware تخصیص کونکی په Kubernetes کې د مهالویش په نوم یادیږي.)
  • د سرچینې بروکر د سرور او خدماتو پیښو لپاره د حقیقت سرچینه ذخیره کوي. موږ د هر ډیټا مرکز لپاره د سرچینې بروکر چلوو، او دا د ډیټا مرکز کې د سرورونو په اړه ټول معلومات ذخیره کوي. د سرچینې بروکر او د ظرفیت مدیریت سیسټم، یا د سرچینو چمتو کولو سیسټم، په متحرک ډول پریکړه کوي چې کوم مهالویش تحویلي کوم سرور کنټرولوي. د روغتیا چک خدمت سرورونه څاري او د سرچینې بروکر کې د دوی روغتیا په اړه معلومات ذخیره کوي. که یو سرور ستونزه ولري یا ساتنې ته اړتیا ولري ، د سرچینې بروکر تخصیص کونکي او مهالویش کونکي ته وايي چې کانټینرونه ودروي یا نورو سرورونو ته یې واړوي.
  • د Tupperware اجنټ یو ډیمون دی چې په هر سرور کې روان دی چې د کانټینرونو چمتو کول او لرې کول اداره کوي. غوښتنلیکونه د کانټینر دننه چلیږي ، کوم چې دوی ته ډیر انزوا او بیا تولید وړتیا ورکوي. پر د تیر کال سیسټمونه @ سکیل کنفرانس موږ دمخه تشریح کړی چې څنګه د انفرادي Tupperware کانټینرونه د عکسونو ، btrfs ، cgroupv2 او systemd په کارولو سره رامینځته کیږي.

د Tupperware ځانګړتیاوې

Tupperware په ډیری لارو کې د نورو کلستر مدیریت سیسټمونو سره ورته دی لکه Kubernetes او Mesos، مګر توپیرونه هم شتون لري:

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

موږ دا په زړه پوري ب featuresې رامینځته کړې ترڅو په پراخه نړیوال مشترکه سرور بیړۍ کې د مختلف بې ریاسته او دولتي غوښتنلیکونو ملاتړ وکړي.

د دولتي خدماتو لپاره جوړ شوی ملاتړ.

Tupperware یو شمیر مهم دولتي خدمتونه پرمخ وړي چې د فیسبوک، انسټاګرام، میسنجر او WhatsApp لپاره دوامداره محصول ډیټا ذخیره کوي. دا کیدای شي د کلیدي ارزښت جوړو لوی پلورنځي وي (د بیلګې په توګه ZippyDB) او د معلوماتو ذخیره کولو څارنه (د مثال په توګه، ODS ګوریلا и سکوبا). د دولتي خدماتو ساتل اسانه ندي، ځکه چې سیسټم باید ډاډ ترلاسه کړي چې د کانټینرونو عرضه کولی شي د لوی پیمانه خنډونو سره مقاومت وکړي، په شمول د شبکې بندیدل یا د بریښنا بندیدل. او پداسې حال کې چې دودیز تخنیکونه، لکه د غلطو ډومینونو په اوږدو کې د کانټینرونو ویشل، د بې دولت خدماتو لپاره ښه کار کوي، دولتي خدمتونه اضافي ملاتړ ته اړتیا لري.

د مثال په توګه، که چیرې د سرور ناکامي د یو ډیټابیس ریپلیکا شتون نلري، ایا تاسو باید اتوماتیک ساتنه فعاله کړئ چې د 50 حوض څخه په 10 سرورونو کې کورونه تازه کړي؟ په وضعیت پورې اړه لري. که د دې 50 سرورونو څخه یو د ورته ډیټابیس بل نقل ولري ، نو دا به غوره وي چې انتظار وکړئ او په یوځل کې 2 نقلونه له لاسه ورنکړي. د دې لپاره چې په متحرک ډول د سیسټم ساتنې او فعالیت په اړه پریکړې وکړو، موږ د داخلي معلوماتو نقل کولو او د هر دولتي خدمت ځای پرځای کولو منطق په اړه معلوماتو ته اړتیا لرو.

د ټاسک کنټرول انٹرفیس دولتي خدماتو ته اجازه ورکوي چې پریکړو اغیزه وکړي چې د معلوماتو شتون اغیزه کوي. د دې انٹرفیس په کارولو سره ، مهالویش کوونکی د کانټینر عملیاتو په اړه بهرني غوښتنلیکونو ته خبر ورکوي (بیا پیل ، تازه کول ، مهاجرت ، ساتنه). یو دولتي خدمت یو کنټرولر پلي کوي چې Tupperware ته وایي کله چې دا د هر عملیات ترسره کول خوندي وي، او دا عملیات په لنډمهاله توګه بدل یا ځنډول کیدی شي. په پورته مثال کې، د ډیټابیس کنټرولر کولی شي Tupperware ته ووایي چې د 49 سرورونو څخه 50 تازه کړي، مګر د اوس لپاره یو ځانګړی سرور (X) پریږدئ. د پایلې په توګه ، که چیرې د کرنل تازه کولو موده تیریږي او ډیټابیس لاهم نشي کولی ستونزه لرونکي عکس بحال کړي ، توپر ویئر به لاهم د ایکس سرور تازه کړي.

ټوپر ویئر: د فیسبوک کوبرنیټس وژونکی؟

په Tupperware کې ډیری دولتي خدمتونه TaskControl په مستقیم ډول نه کاروي، مګر د ShardManager له لارې، په فیسبوک کې د دولتي خدماتو رامینځته کولو لپاره یو عام پلیټ فارم. د Tupperware سره، پراختیا کونکي کولی شي د دوی اراده په سمه توګه مشخص کړي چې څنګه کانټینرونه باید د ډیټا مرکزونو کې توزیع شي. د ShardManager سره، پراختیا کونکي خپل اراده مشخصوي چې څنګه د ډیټا شارډونه باید په کانټینرونو کې وویشل شي. ShardManager د ډیټا ځای پرځای کولو او د دې غوښتنلیکونو نقل کولو څخه خبر دی او د ټاسک کنټرول انٹرفیس له لارې د Tupperware سره اړیکه نیسي ترڅو د مستقیم غوښتنلیک ښکیلتیا پرته د کانټینر عملیات مهالویش کړي. دا ادغام د دولتي خدماتو مدیریت خورا ساده کوي ، مګر د TaskControl ډیر وړتیا لري. د مثال په توګه، زموږ پراخه ویب پاڼه بې ریاسته ده او د ټاسک کنټرول کاروي ترڅو کانټینرونو ته د تازه معلوماتو کچه په متحرک ډول تنظیم کړي. بالاخره ویب ټیر د ډیری سافټویر ریلیزونو په چټکۍ سره بشپړولو توان لري هره ورځ پرته له موافقت شتون څخه.

د معلوماتو مرکزونو کې د سرورونو اداره کول

کله چې Tupperware په لومړي ځل په 2011 کې پیل شو، هر سرور کلستر د جلا شیډولر لخوا اداره کیده. وروسته بیا، د فیسبوک کلستر د سرور ریکونو یوه ډله وه چې د یوې شبکې سویچ سره وصل و، او د معلوماتو مرکز ډیری کلسترونه ځای پر ځای کړل. مهالویش کونکی کولی شي یوازې په یوه کلستر کې سرورونه اداره کړي، پدې معنی چې دنده نشي کولی په ډیری کلسترونو کې خپور شي. زموږ زیربنا وده وکړه، موږ په زیاتیدونکي توګه کلسترونه لیکلي. څرنګه چې Tupperware نشي کولی دا دنده پرته له کوم بدلون څخه نورو کلسترونو ته انتقال کړي، دا د غوښتنلیک پراختیا کونکو او د معلوماتو مرکز آپریټرانو ترمنځ ډیرې هڅې او محتاط همغږۍ ته اړتیا لري. دا پروسه د ضایع شوي سرچینو په پایله کې رامینځته شوه کله چې سرورونه د میاشتو لپاره بې کاره وو د بندولو پروسیجرونو له امله.

موږ د سرچینو بروکر رامینځته کړی ترڅو د کلستر تخریب ستونزه حل کړي او د ساتنې نور ډولونه همغږي کړي. د سرچینې بروکر د سرور سره تړلي ټول فزیکي معلومات تعقیبوي او په متحرک ډول پریکړه کوي چې کوم مهالویش هر سرور کنټرولوي. په متحرک ډول د سرورونو سره د مهالویش سره نښلول شیډولر ته اجازه ورکوي چې په مختلف ډیټا مرکزونو کې سرورونه اداره کړي. څرنګه چې د Tupperware دنده نور په یو واحد کلستر پورې محدود نه ده، د Tupperware کاروونکي کولی شي مشخص کړي چې څنګه کانټینرونه باید په غلط ډومینونو کې وویشل شي. د مثال په توګه، یو پرمخ وړونکی کولی شي خپله اراده اعلان کړي (ووایه: "زما دنده په PRN سیمه کې په 2 غلط ډومینونو کې پرمخ وړم") پرته له دې چې د ځانګړي شتون زون مشخص کړي. Tupperware پخپله به د دې ارادې پلي کولو لپاره مناسب سرورونه ومومي، حتی که کلستر یا خدمت له منځه یوړل شي.

د ټول نړیوال سیسټم ملاتړ لپاره د توزیع وړ

په تاریخي توګه، زموږ زیربنا د انفرادي ټیمونو لپاره په سلګونو وقف شوي سرور حوضونو ویشل شوي. د ټوټې کولو او د معیارونو نشتوالي له امله، موږ لوړ عملیاتي لګښتونه درلودل، او بې کاره سرورونه بیا کارول خورا ستونزمن وو. د تیر کال په کنفرانس کې سیسټمونه @ سکیل موږ وړاندې کړل د خدمت په توګه زیربنا (IaaS)، کوم چې باید زموږ زیربنا په یو لوی واحد سرور پارک کې متحد کړي. مګر یو واحد سرور پارک خپل مشکلات لري. دا باید ځینې اړتیاوې پوره کړي:

  • د توزیع وړتیا. زموږ زیربنا وده وکړه ځکه چې موږ په هره سیمه کې د معلوماتو مرکزونه اضافه کړل. سرورونه کوچني او د انرژي اغیزمن شوي دي، نو په هره سیمه کې ډیری نور شتون لري. د پایلې په توګه، په هره سیمه کې یو واحد مهالویش نشي کولی د کانټینرونو شمیر اداره کړي چې په هره سیمه کې په سلګونو زره سرورونو کې پرمخ وړل کیدی شي.
  • باور حتی که چیرې مهالویش دومره اندازه شي ، د مهالویش لوی ساحه پدې معنی ده چې د خطا ډیر خطر شتون لري او د کانټینر ټوله سیمه ممکن د کنټرول وړ نه وي.
  • د خطا زغم. د لوی زیربنا ناکامۍ په حالت کې (د بیلګې په توګه، د شبکې ناکامۍ یا د بریښنا بندیدو له امله د مهالویش چلونکي سرورونه ناکام کیږي)، منفي پایلې باید په سیمه کې د سرورونو یوازې یوه برخه اغیزه وکړي.
  • د کار آسانتیاوې. داسې ښکاري چې تاسو اړتیا لرئ د یوې سیمې لپاره څو خپلواک مهال ویش چل کړئ. مګر د اسانتیا له نظره، د سیمې ګډ حوض ته د ننوتلو یوه نقطه د ظرفیت او دندو اداره کول اسانه کوي.

موږ شیډولر په شارډونو ویشلی ترڅو د لوی ګډ حوض ساتلو ستونزې حل کړي. هر شیډولر شارډ په سیمه کې د خپلو دندو سیټ اداره کوي، او دا د مهالویش سره تړلی خطر کموي. لکه څنګه چې ګډ حوض وده کوي، موږ کولی شو نور شیډولر شارډونه اضافه کړو. د Tupperware کاروونکو لپاره، شارډز او شیډولر پراکسي د یو کنټرول پینل په څیر ښکاري. دوی اړ نه دي چې د شارډونو یوې ډلې سره کار وکړي چې دندې تنظیموي. د مهالویش شارډونه په بنسټیز ډول د کلستر شیډولرونو څخه توپیر لري چې موږ دمخه کارولی و ، کله چې د کنټرول پینل د شبکې ټوپولوژي مطابق د سرورونو ګډ حوض په ثابت ډول ویشلو پرته ویشل شوی و.

د لچک وړ کمپیوټري سره د کارونې موثریت ته وده ورکړئ

څومره چې زموږ زیربناوې لویې وي، هغومره مهمه دا ده چې زموږ د سرورونو څخه په اغیزمنه توګه کار واخیستل شي ترڅو د زیربناوو لګښتونه ښه شي او بار کم شي. د سرور کارولو موثریت زیاتولو لپاره دوه لارې شتون لري:

  • لچک وړ کمپیوټري - د خاموش ساعتونو په جریان کې آنلاین خدمتونه اندازه کړئ او د آفلاین کاري بارونو لپاره آزاد شوي سرورونه وکاروئ ، لکه د ماشین زده کړې او MapReduce دندې.
  • ډیر بار کول - آنلاین خدمات او د بست کاري بار په ورته سرورونو کې ځای په ځای کړئ ترڅو د بیچ کاري بار په ټیټ لومړیتوب کې پرمخ بوځي.

زموږ د معلوماتو مرکزونو کې خنډ دی د بریښنا کارول. له همدې امله، موږ کوچني، د انرژۍ اغیزمن سرورونه غوره کوو چې یوځای د پروسس کولو ځواک چمتو کوي. له بده مرغه، په کوچني سرورونو کې د لږ CPU او حافظې سره، ډیر بار کول لږ اغیزمن دي. البته، موږ کولی شو د کوچني خدماتو څو کانټینرونه په یو کوچني انرژي اغیزمن سرور کې ځای په ځای کړو چې لږ پروسیسر سرچینې او حافظه مصرفوي، مګر لوی خدمتونه به پدې حالت کې ټیټ فعالیت ولري. له همدې امله، موږ زموږ د لوی خدماتو پراختیا کونکو ته مشوره ورکوو چې دوی غوره کړي ترڅو دوی ټول سرورونه وکاروي.


اساسا ، موږ د لچک وړ کمپیوټري په کارولو سره د کارونې موثریت ته وده ورکوو. زموږ ډیری لوی خدمتونه، لکه د نیوز فیډ، د پیغام رسولو ځانګړتیا، او د مخکښې پای ویب ټایر، د ورځې وخت پورې اړه لري. موږ په قصدي توګه آنلاین خدمتونه د خاموش ساعتونو په جریان کې کموو او د آفلاین کاري بارونو لپاره آزاد شوي سرورونه کاروو، لکه د ماشین زده کړه او MapReduce دندې.

ټوپر ویئر: د فیسبوک کوبرنیټس وژونکی؟

موږ له تجربې پوهیږو چې دا غوره ده چې ټول سرورونه د لچک وړ ظرفیت واحدونو په توګه چمتو کړئ ځکه چې لوی خدمتونه دواړه لوی تمویل کونکي او د لچک وړ ظرفیت لوی مصرف کونکي دي ، او د ټولو سرورونو کارولو لپاره مطلوب دي. کله چې سرور د خاموش ساعتونو په جریان کې د آنلاین خدماتو څخه خلاص شي ، د سرچینې بروکر سرور مهالویش کونکي ته په اجاره ورکوي ترڅو پدې باندې آفلاین کاري بارونه پرمخ بوځي. که چیرې آنلاین خدمت خورا لوړ بار تجربه کړي، د سرچینې بروکر ژر تر ژره پور اخیستل شوی سرور بیرته راګرځوي او د مهالویش کونکي سره یوځای، آنلاین خدمت ته بیرته راولي.

زده شوي درسونه او د راتلونکي لپاره پلانونه

په تیرو 8 کلونو کې، موږ د فیسبوک د چټکې ودې سره د ساتلو لپاره Tupperware ته وده ورکوو. موږ هغه څه شریکوو چې موږ زده کړل او امید لرو چې دا به د نورو سره مرسته وکړي چې د ګړندۍ وده کونکي زیربنا اداره کړي:

  • د کنټرول پینل او سرورونو ترمینځ انعطاف وړ اړیکه تنظیم کړئ چې دا اداره کوي. دا انعطاف د کنټرول پینل ته اجازه ورکوي چې په مختلف ډیټا مرکزونو کې سرورونه اداره کړي، د کلسترونو له مینځه وړلو او ساتنې اتومات کولو کې مرسته کوي، او د لچک وړ کمپیوټري په کارولو سره د متحرک ظرفیت تخصیص وړ کوي.
  • په سیمه کې د یو واحد کنټرول پینل سره ، دا د دندو سره کار کولو لپاره خورا اسانه کیږي او د لوی شریک سرور بیړۍ اداره کول اسانه کیږي. په یاد ولرئ چې د کنټرول پینل د ننوتلو یو واحد نقطه ساتي، حتی که د هغې داخلي جوړښت د پیمانې یا غلطی زغملو دلیلونو لپاره جلا شوی وي.
  • د پلگ ان ماډل په کارولو سره ، د کنټرول پینل کولی شي د راتلونکو کانټینر عملیاتو بهرني غوښتنلیکونه خبر کړي. سربیره پردې ، دولتي خدمات کولی شي د کانټینر مدیریت دودیز کولو لپاره د پلگ ان انٹرفیس وکاروي. د دې پلگ ان ماډل سره، د کنټرول پینل سادگي چمتو کوي پداسې حال کې چې په اغیزمنه توګه ډیری مختلف دولتي خدمتونه وړاندې کوي.
  • موږ باور لرو چې لچک وړ کمپیوټري، چیرې چې موږ د بست دندو، ماشین زده کړې، او نورو غیر عاجل خدماتو لپاره د بسپنه ورکوونکو خدماتو څخه ټول سرورونه لیرې کوو، د وړو، انرژی وړ سرورونو موثریت ښه کولو لپاره غوره لاره ده.

موږ یوازې د پلي کولو پیل کوو د واحد نړیوال شریک سرور بیړۍ. اوس مهال زموږ شاوخوا 20٪ سرورونه په ګډ حوض کې دي. د 100٪ لاسته راوړلو لپاره، ډیری مسلې باید په ګوته شي، پشمول د شریک ذخیره کولو حوض ساتل، اتوماتیک ساتنه، د کراس کرایه کونکي اړتیاو اداره کول، د سرور کارولو ښه کول، او د ماشین زده کړې کاري بارونو لپاره مالتړ ښه کول. موږ انتظار نه شو کولی چې دې ننګونو ته غاړه کیږدو او خپلې بریاوې شریکې کړو.

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

Add a comment