Amazon ڪمپني
Bottlerocket (رستي طور، نالو ڏنو ويو نن homemade بليڪ پاؤڊر راڪيٽس) ڪنٽينرز لاءِ پهريون او ايس ناهي، پر اهو امڪان آهي ته اهو AWS خدمتن سان ڊفالٽ انضمام جي ڪري وڏي پئماني تي ٿي ويندو. جيتوڻيڪ سسٽم Amazon ڪلائوڊ تي مرڪوز آهي، اوپن سورس ڪوڊ ان کي ڪٿي به تعمير ڪرڻ جي اجازت ڏئي ٿو: مقامي طور تي سرور تي، راسبري پي تي، ڪنهن به مقابلي واري بادل ۾، ۽ جيتوڻيڪ هڪ ڪنٽينر واري ماحول ۾.
هي هڪ مڪمل طور تي قابل متبادل آهي CoreOS ورڇ لاءِ جيڪو Red Hat دفن ڪيو.
حقيقت ۾، Amazon ويب سروسز ڊويزن ۾ اڳ ۾ ئي Amazon Linux آهي، جيڪو تازو ئي ان جي ٻئي ورزن ۾ آيو آهي: اهو هڪ عام مقصد جي تقسيم آهي جيڪو ڊڪر ڪنٽينر ۾ هلائي سگهجي ٿو يا لينڪس KVM، Microsoft Hyper-V، ۽ VMware سان. ESXi hypervisors. اهو AWS ڪلاؤڊ تي هلائڻ لاءِ بهتر ڪيو ويو، پر Bottlerocket جي ڇڏڻ سان، هر ڪنهن کي حوصلا افزائي ڪئي وئي آهي نئين سسٽم ڏانهن اپڊيٽ ڪرڻ لاءِ جيڪو وڌيڪ محفوظ، جديد، ۽ گهٽ وسيلن کي استعمال ڪري ٿو.
AWS اعلان ڪيو Bottlerocket
انتهائي minimalism
لينڪس هر شيءِ مان ڪڍيو ويو آهي جيڪو ڪنٽينرز کي هلائڻ جي ضرورت ناهي. هي ڊزائن، ڪمپني جي مطابق، حملي جي سطح کي گھٽائي ٿو.
هن جو مطلب آهي ته ٿورڙا پيڪيجز بنيادي سسٽم تي نصب ٿيل آهن، جيڪا او ايس کي برقرار رکڻ ۽ تازه ڪاري ڪرڻ آسان بڻائي ٿي، ۽ وسيلن جي استعمال کي گهٽائڻ، انحصار جي سبب مسئلن جي امڪان کي پڻ گھٽائي ٿي. بنيادي طور تي، هتي هر شيء الڳ ڪنٽينرز ۾ ڪم ڪري ٿو، ۽ بنيادي نظام عملي طور تي ننگا آهي.
Amazon سڀني شيل ۽ ترجمانن کي پڻ ختم ڪري ڇڏيو آهي، انهن جي استعمال جي خطري کي ختم ڪرڻ يا صارفين کي حادثاتي طور تي استحقاق وڌائڻ. minimalism ۽ سيڪيورٽي جي خاطر، بنيادي تصوير ۾ ڪمانڊ شيل، هڪ SSH سرور، يا پٿون وانگر تشريح ڪيل ٻوليون شامل نه آهن. ايڊمنسٽريٽر ٽولز هڪ الڳ سروس ڪنٽينر ۾ رکيل آهن، جيڪو ڊفالٽ طور بند ٿيل آهي.
سسٽم ٻن طريقن سان منظم ڪيو ويو آهي: API ۽ آرڪيسٽريشن ذريعي.
هڪ پيڪيج مينيجر جي بدران جيڪو سافٽ ويئر جي انفرادي ٽڪر کي اپڊيٽ ڪري ٿو، Bottlerocket هڪ مڪمل فائل سسٽم تصوير ڊائون لوڊ ڪري ٿو ۽ ان ۾ ريبوٽ ڪري ٿو. جيڪڏهن هڪ لوڊ ناڪام ٿئي ٿي، اهو خودڪار طور تي واپس ڦري ٿو، ۽ ڪم لوڊ ناڪامي کي دستي طور تي رول بيڪ کي ٽريڪ ڪري سگھي ٿو (API ذريعي حڪم).
فريم ورڪ /etc
RAM ۾ فائل سسٽم سان نصب ٿيل /etc
سپورٽ نه آهي: سيٽنگون بچائڻ لاءِ توهان کي API استعمال ڪرڻ گهرجي يا ڪارڪردگي کي الڳ ڪنٽينرز ۾ منتقل ڪرڻ گهرجي.
API اپڊيٽ اسڪيم
حفاظت
ڪنٽينر لينڪس ڪرنل جي معياري ميکانيزم جي ذريعي ٺاهيا ويا آهن - cgroups، namespaces ۽ seccomp، ۽ استعمال ڪيا ويندا آهن هڪ جبري رسائي ڪنٽرول سسٽم جي طور تي، يعني اضافي اڪيلائي لاءِ.
ڊفالٽ طور، پاليسيون ڪنٽينرز ۽ ڪنيل جي وچ ۾ وسيلن کي حصيداري ڪرڻ لاء فعال آهن. بائنريز کي جھنڊن سان محفوظ ڪيو ويو آھي استعمال ڪندڙن يا پروگرامن کي انھن تي عمل ڪرڻ کان روڪڻ لاءِ. ۽ جيڪڏهن ڪو فائيل سسٽم تائين پهچي ٿو، Bottlerocket ڪنهن به تبديلين کي چيڪ ڪرڻ ۽ ٽريڪ ڪرڻ لاء هڪ اوزار پيش ڪري ٿو.
"تصديق ٿيل بوٽ" موڊ ڊيوائس-ميپر-verity فنڪشن ذريعي لاڳو ڪيو ويو آهي (
سسٽم ۾ هڪ فلٽر پڻ آهي
عملدرآمد ماڊل
استعمال ڪندڙ جي وضاحت
تاليف
حفاظت
ناڪامي موڊ
وسيلن تائين رسائي
استعمال ڪندڙ
ڪم
ها
ڪوبہ
استعمال ڪندڙ جا حق
عمل ۾ مداخلت
سسٽم ڪال، غلطي
نيوڪلي
ڪم
في
جامد
في
ڪرنل خوف
سڌي
بي بي ايف جي
واقعو
ها
JIT، CO-RE
تصديق، JIT
غلطي جو پيغام
محدود مددگار
ڪيئن BPF باقاعده صارف يا ڪرنل ليول ڪوڊ کان مختلف آهي
AWS چيو Bottlerocket "هڪ آپريٽنگ ماڊل کي ملازمت ڏئي ٿو جيڪو سيڪيورٽي کي وڌيڪ وڌائيندو آهي ڪنيڪشن کي روڪڻ جي ذريعي انتظامي استحقاق سان پيداوار سرورز" ۽ "وڏي ورهايل سسٽم لاءِ مناسب آهي جتي هر فرد جي ميزبان تي ڪنٽرول محدود آهي."
سسٽم منتظمين لاءِ هڪ ايڊمنسٽريٽر ڪنٽينر فراهم ڪيو ويو آهي. پر AWS اهو نه ٿو سمجهي ته هڪ منتظم کي اڪثر Bottlerocket اندر ڪم ڪرڻ جي ضرورت پوندي: "هڪ الڳ Bottlerocket مثال ۾ لاگ ان ٿيڻ جو عمل غير معمولي عملن لاءِ آهي: ترقي يافته ڊيبگنگ ۽ مسئلو حل ڪرڻ،"
زنگ آلود ٻولي
ڪرنل جي چوٽي تي OS اوزار گهڻو ڪري Rust ۾ لکيل آهي. هيءَ ٻولي پنهنجي فطرت مطابق آهي
جھنڊو ڊفالٽ طور لاڳو ڪيو ويندو آھي جڏھن تعمير --enable-default-pie
и --enable-default-ssp
قابل عمل فائلن جي ايڊريس اسپيس جي بي ترتيب ڪرڻ کي چالو ڪرڻ لاءِ (
C/C++ پيڪيجز لاءِ، اضافي جھنڊا شامل آھن -Wall
, -Werror=format-security
, -Wp,-D_FORTIFY_SOURCE=2
, -Wp,-D_GLIBCXX_ASSERTIONS
и -fstack-clash-protection
.
زنگ ۽ C/C ++ کان علاوه، ڪجهه پيڪيجز Go ۾ لکيل آهن.
AWS خدمتن سان انضمام
ساڳئي ڪنٽينر آپريٽنگ سسٽم کان فرق اهو آهي ته Amazon AWS تي هلائڻ ۽ ٻين AWS خدمتن سان ضم ٿيڻ لاءِ Bottlerocket کي بهتر ڪيو آهي.
سڀ کان وڌيڪ مشهور ڪنٽينر آرڪيسٽرٽر ڪبرنيٽس آهي، تنهنڪري AWS پنهنجي انٽرپرائز ڪبرنيٽس سروس (EKS) سان انضمام متعارف ڪرايو آهي. آرڪيسٽريشن جا اوزار هڪ الڳ ڪنٽرول ڪنٽينر ۾ ايندا آهن
اهو ڏسڻ لاء دلچسپ ٿيندو ته ڇا Bottlerocket بند ڪري ٿو، ماضي ۾ ڪجهه ساڳئي شروعاتن جي ناڪامي ڏني وئي. مثال طور، Vmware کان PhotonOS اڻڄاتل ٿي ويو، ۽ ريڊ هٽ خريد ڪيو CoreOS ۽
AWS خدمتن ۾ Bottlerocket جي انضمام هن سسٽم کي پنهنجي طريقي سان منفرد بڻائي ٿو. اهو شايد بنيادي سبب آهي ڇو ته ڪجهه صارفين کي ترجيح ڏئي سگهي ٿو Bottlerocket ٻين distros جهڙوڪ CoreOS يا Alpine. سسٽم شروعاتي طور تي EKS ۽ ECS سان ڪم ڪرڻ لاءِ ٺهيل آهي، پر اسين ورجائيندا آهيون ته اهو ضروري ناهي. پهريون، Bottlerocket ڪري سگهو ٿا
Bottlerocket سورس ڪوڊ GitHub تي Apache 2.0 لائسنس تحت شايع ٿيل آهي. ڊولپرز اڳ ۾ ئي آهن
اشتهارن جي حقن تي
وي ڊي سينا پيش آيون
جو ذريعو: www.habr.com