Puppet কী?
Puppet একটি ওপেন সোর্স সিস্টেম ম্যানেজমেন্ট টুল যা কনফিগারেশন ম্যানেজমেন্ট কেন্দ্রীভূত ও অটোমেট করার জন্য। কনফিগারেশন ম্যানেজমেন্ট হল একটি এন্টারপ্রাইজের হার্ডওয়্যার ও সফটওয়্যার বর্ণনা করার তথ্যের বিস্তারিত রেকর্ডিং ও আপডেটিং।
আর্কিটেকচার
- Puppet-এর দুটি লেয়ার: একটি কনফিগারেশন ল্যাঙ্গুয়েজ যা বর্ণনা করে হোস্ট ও সার্ভিসগুলো কেমন দেখাবে, এবং একটি অブস্ট্রাকশন লেয়ার যা অ্যাডমিনিস্ট্রেটরকে কনফিগারেশন ইমপ্লিমেন্ট করতে দেয় বিভিন্ন প্ল্যাটফর্মে, যার মধ্যে Unix, Linux, Windows এবং OS X।
- অ্যাডমিনিস্ট্রেটররা একটি সার্ভিসের কনফিগারেশন একটি পলিসি হিসেবে এনকোড করতে পারেন, যা Puppet তারপর মনিটর ও এনফোর্স করে।
টেকনোলজি
Puppet Ruby-এ লেখা এবং নিজস্ব ডোমেন-স্পেসিফিক ল্যাঙ্গুয়েজ (DSL) ব্যবহার করে মডিউল তৈরি ও ম্যানেজ করতে। Puppet কনফিগারেশন ম্যানেজমেন্টের বেসিক ভার্সন, যাকে Open Source Puppet বলা হয়, Puppet-এর ওয়েবসাইট থেকে সরাসরি উপলব্ধ এবং Apache 2.0 লাইসেন্সের অধীনে। Puppet Enterprise-এ অতিরিক্ত কার্যকারিতা রয়েছে অর্কেস্ট্রেশন, রোল-ভিত্তিক অ্যাক্সেস কন্ট্রোল (RBAC) এবং কমপ্লায়েন্স রিপোর্টিং।
Puppet ইকোসিস্টেম
Puppet Labs ওয়েবসাইট অনেক কমিউনিটি মডিউল অফার করে ইনফ্রাস্ট্রাকচার-অজ-কোড বর্ণনা ও ম্যানেজ করার জন্য। Puppet Labs Open Source Puppet এবং কমিউনিটি মডিউলের সিনার্জিকে Puppet ecosystem বলে।
জনপ্রিয় মডিউল
- Puppet Forge: ৪,০০০+ প্রি-বিল্ট ইউজার-কন্ট্রিবিউটেড মডিউল অ্যাক্সেস প্রদান করে।
- Beaker: একাধিক VM-এর মধ্যে ইন্টারঅ্যাকশনের অ্যাকসেপটেন্স টেস্টিং-ফোকাসড টেস্ট হারনেস।
- Facter: নোডসंबന്ധী বেসিক ফ্যাক্ট সংগ্রহ টুল (হার্ডওয়্যার, নেটওয়ার্ক, ওএস টাইপ/ভার্সন)।
- Hiera: কনফিগারেশন ডেটার জন্য কি/ভ্যালু লুকআপ টুল।
- MCollective: সার্ভার অর্কেস্ট্রেশন বা প্যারালেল জব এক্সিকিউশন সিস্টেম বিল্ড করার ফ্রেমওয়ার্ক।
- PuppetDB: প্রতিটি নোডের ইনফরমেশন সংরক্ষণকারী সার্চেবল ডেটাবেস।
- Razor: বেয়ার-মেটাল VM ও ভার্চুয়াল সিস্টেম ডিসকভার ও ডিপ্লয় করার অ্যাডভান্সড প্রোভিশনিং অ্যাপ্লিকেশন।
- Trapperkeeper: দীর্ঘ-চলমান অ্যাপ্লিকেশন হোস্ট করার জন্য Clojure ফ্রেমওয়ার্ক।
আরও দেখুন: policy-based management