প্রকল্প সম্পর্কে

বটলরকেট OS একটি ফ্রি এবং ওপেন-সোর্স লিনাক্স-ভিত্তিক অপারেটিং সিস্টেম যা অ্যামাজন দ্বারা তৈরি করা হয়েছে কন্টেইনার ওয়ার্কলোড নিরাপদে এবং নির্ভরযোগ্যভাবে হোস্ট করার জন্য। ঐতিহ্যবাহী সাধারণ-উদ্দেশ্য লিনাক্স ডিস্ট্রিবিউশনের বিপরীতে, বটলরকেট ডিফল্ট রানটাইম পরিবেশ থেকে প্যাকেজ ম্যানেজার এবং ইন্টারঅ্যাকটিভ শেলের মতো অপ্রয়োজনীয় উপাদান সরিয়ে তার আক্রমণের পৃষ্ঠকে ন্যূনতম করে। এর স্থাপত্য নিরাপত্তা, রক্ষণাবেক্ষণযোগ্যতা এবং ধারাবাহিকতাকে অগ্রাধিকার দেয়। মূল বৈশিষ্ট্য: - অপরিবর্তনীয় ফাইলসিস্টেম: রুট ফাইলসিস্টেমটি শুধুমাত্র-পঠনযোগ্য, যা অননুমোদিত বা দুর্ঘটনাজনিত পরিবর্তন রোধ করে যা স্থিতিশীলতার সাথে আপস করতে পারে। - API-চালিত কনফিগারেশন: সিস্টেম সেটিংস ম্যানুয়াল ফাইল সম্পাদনার পরিবর্তে একটি স্থানীয় HTTP API-এর মাধ্যমে পরিচালিত হয়। এটি কাঠামোগত, বৈধ কনফিগারেশন পরিবর্তনের অনুমতি দেয় যা আপডেট জুড়ে স্বয়ংক্রিয়ভাবে স্থানান্তরিত হয়। - নির্ভরযোগ্য আপডেট: বটলরকেট একটি দ্বৈত-পার্টিশন আপডেট প্রক্রিয়া (A/B পার্টিশন) ব্যবহার করে। এটি দ্য আপডেট ফ্রেমওয়ার্ক (TUF) দ্বারা সুরক্ষিত সম্পূর্ণ ফাইলসিস্টেম ইমেজ ডাউনলোড করে এবং নতুন সংস্করণে রিবুট করে। বুট ব্যর্থ হলে, এটি স্বয়ংক্রিয়ভাবে পূর্ববর্তী অবস্থায় ফিরে যায়। - হোস্ট কন্টেইনার: ম্যানেজমেন্ট কাজগুলি মূল অর্কেস্ট্রেটরের বাইরে চলমান পৃথক কন্টেইনারে (কন্ট্রোল এবং অ্যাডমিন কন্টেইনার) বিচ্ছিন্ন থাকে, যা নিশ্চিত করে যে ম্যানেজমেন্ট ওভারহেড ওয়ার্কলোড কর্মক্ষমতাকে প্রভাবিত করে না। সমর্থিত পরিবেশ: বটলরকেট বিভিন্ন কন্টেইনার অর্কেস্ট্রেটর এবং ক্লাউড প্ল্যাটফর্মের জন্য উপযুক্ত নির্দিষ্ট ভ্যারিয়েন্ট অফার করে: - AWS EKS (Kubernetes): `aws-k8s-1.31` থেকে `1.36` পর্যন্ত ভ্যারিয়েন্ট, NVIDIA GPU-সক্ষম সংস্করণ সহ। - AWS ECS: `aws-ecs-2` এবং `aws-ecs-3` এর মতো ভ্যারিয়েন্ট, স্ট্যান্ডার্ড এবং FIPS-সম্মত মোড উভয়ই সমর্থন করে। - VMware: Kubernetes ওয়ার্কার নোড ভ্যারিয়েন্ট (`vmware-k8s-*`)। অ্যাক্সেস এবং ম্যানেজমেন্ট: ডিফল্টরূপে, নিরাপত্তা বাড়াতে SSH অক্ষম করা হয়। প্রশাসকরা সিস্টেম অ্যাক্সেস করতে পারেন: 1. কন্ট্রোল কন্টেইনার: নেটওয়ার্ক এক্সপোজার ছাড়াই কমান্ড চালাতে এবং লগ দেখতে AWS Systems Manager (SSM) সেশন ম্যানেজার ব্যবহার করে। 2. অ্যাডমিন কন্টেইনার: একটি ঐচ্ছিক কন্টেইনার যা উন্নত ডিবাগিংয়ের জন্য SSH অ্যাক্সেস এবং `sheltie`-এর মাধ্যমে রুট শেল অ্যাক্সেস প্রদান করে। কনফিগারেশন `apiclient` টুলের মাধ্যমে বা ইনস্ট্যান্স ইনিশিয়ালাইজেশনের সময় TOML/JSON সেটিংস পাস করে পরিচালিত হয়। সিস্টেমটি Kubernetes ক্লাস্টার ইন্টিগ্রেশন, ECS এজেন্ট কনফিগারেশন, নেটওয়ার্ক প্রক্সি, NTP, কার্নেল প্যারামিটার এবং কাস্টম CA সার্টিফিকেট সহ বিভিন্ন সেটিংস সমর্থন করে। কমিউনিটি এবং অবদান: বটলরকেট GitHub আলোচনা এবং Meetup গ্রুপের মাধ্যমে কমিউনিটি অংশগ্রহণকে উৎসাহিত করে। অবদানকারী গাইডের মাধ্যমে অবদান স্বাগত। নিরাপত্তা সমস্যাগুলি পাবলিক ইস্যু ট্র্যাকারের পরিবর্তে সরাসরি নিরাপত্তা দলে রিপোর্ট করা উচিত। আর্কিটেকচার: OSটি x86_64 এবং ARM64 (aarch64) আর্কিটেকচার সমর্থন করে, যা সমর্থিত ক্লাউড প্রদানকারীদের মধ্যে বিস্তৃত হার্ডওয়্যার ডিপ্লয়মেন্টের জন্য উপযুক্ত করে তোলে।