জবাবদিহি করার মূল উপাদানগুলি বুঝুন - পর্ব 1
রেস হ্যাট সার্টিফাইড স্পেশালিস্ট ইন আনসিবল অটোমেশন পরীক্ষায় (এক্স 407) একটি নতুন শংসাপত্র প্রোগ্রাম যা রেড হ্যাট দ্বারা আপনার দক্ষতা পরীক্ষা করে সিস্টেম এবং অ্যাপ্লিকেশনগুলির কনফিগারেশন স্বয়ংক্রিয়রূপে ব্যবহার করতে পারেন।
সিরিজটির শিরোনাম হবে "রেড হ্যাট সার্টিফিকেট বিশেষজ্ঞ ইন রিসাল অটোমেশন পরীক্ষায় (এক্স 407)" এবং রেড হ্যাট এন্টারপ্রাইজ লিনাক্স 7.5 এবং উত্তরীয় 2.7 এর উপর ভিত্তি করে নিম্নলিখিত পরীক্ষার উদ্দেশ্যগুলি অন্তর্ভুক্ত করা হয়েছে, যা আমরা এই উত্তরীয় সিরিজটি অন্তর্ভুক্ত করব:
আপনার দেশে ফিজ দেখতে এবং পরীক্ষার জন্য নিবন্ধন করতে, উত্তর অটোমেশন পরীক্ষার পৃষ্ঠাটি দেখুন।
উত্তরীয় সিরিজের এই পর্ব 1 এ, আমরা জবাবদিস্টের মূল উপাদানগুলির কিছু প্রাথমিক ওভারভিউ নিয়ে আলোচনা করব।
উত্তরীয় হ'ল রেডহ্যাট একটি বিনামূল্যে এবং ওপেনসোর্স অটোমেশন প্ল্যাটফর্ম যা আপনাকে একটি কেন্দ্রীয় অবস্থান থেকে একাধিক সার্ভার পরিচালনা এবং নিয়ন্ত্রণ করতে সক্ষম করে। এটি বিশেষভাবে আদর্শ যখন আপনার একাধিক এবং পুনরাবৃত্তিমূলক কাজ করা উচিত যা সম্পাদন করা প্রয়োজন। সুতরাং এই প্রতিটি প্রত্যন্ত নোডে লগ ইন এবং আপনার কাজগুলি সম্পাদন করার পরিবর্তে আপনি কোনও কেন্দ্রীয় অবস্থান থেকে স্বাচ্ছন্দ্যে এটি করতে পারেন এবং স্বাচ্ছন্দ্যে আপনার সার্ভারগুলি পরিচালনা করতে পারেন।
আপনি যখন অ্যাপ্লিকেশন মোতায়েনের ক্ষেত্রে ধারাবাহিকতা বজায় রাখতে চান, মানুষের ত্রুটি হ্রাস করতে হবে এবং পুনরাবৃত্তিমূলক এবং কিছুটা জাগতিক কাজগুলি স্বয়ংক্রিয় করতে চান তখন এটি উপকারী।
অবশ্যই, উত্তরযোগ্য অন্যান্য বিকল্প রয়েছে যেমন পুতুল, শেফ এবং লবণ। তবে, উত্তরযোগ্য বেশিরভাগ ক্ষেত্রেই বেশি পছন্দ করা হয় কারণ এটি ব্যবহার করা সহজ এবং শেখা সহজ।
আপনি জিজ্ঞাসা করতে শিখতে কেন এটি সহজ? এটি কারণ হ'ল উত্তরীয় তার কনফিগারেশন এবং অটোমেশন চাকরিতে YAML (তবুও অন্য একটি মার্কআপ ল্যাঙ্গুয়েজ) ব্যবহার করে যা মানব-পঠনযোগ্য এবং অনুসরণযোগ্য easy ওয়াইএএমএল অন্যান্য অটোমেশন প্ল্যাটফর্মগুলির বিপরীতে দূরবর্তী সার্ভারগুলির সাথে যোগাযোগের জন্য এসএসএইচ প্রোটোকল ব্যবহার করে যার সাথে যোগাযোগের জন্য আপনাকে দূরবর্তী নোডগুলিতে এজেন্ট ইনস্টল করতে হবে।
আমরা উত্তরীয়দের সাথে শুরু করার আগে, গুরুত্বপূর্ণ যে আপনি কিছু বুনিয়াদি পরিভাষার সাথে পরিচিত হোন যাতে আমরা এগিয়ে যাওয়ার সাথে সাথে আপনি হারিয়ে বা বিভ্রান্ত না হন।
ইনভেন্টরি এমন একটি পাঠ্য ফাইল যা আপনি পরিচালনা ও কনফিগার করছেন এমন সার্ভার বা নোডের একটি তালিকা রয়েছে। সাধারণত, সার্ভারগুলি তাদের হোস্টনাম বা আইপি ঠিকানার ভিত্তিতে তালিকাভুক্ত হয়।
ইনভেন্টরি ফাইলটিতে তাদের আইপি ঠিকানার দ্বারা সংজ্ঞায়িত দূরবর্তী সিস্টেম থাকতে পারে:
10.200.50.50 10.200.50.51 10.200.50.52
বিকল্পভাবে, তারা গ্রুপ অনুযায়ী তালিকাভুক্ত করা যেতে পারে। নীচের উদাহরণে, আমাদের 2 টি গোষ্ঠী - ওয়েব সার্ভার এবং ডাটাবেসগুলির অধীনে সার্ভার রয়েছে। এইভাবে তাদের গ্রুপের নাম অনুসারে উল্লেখ করা যেতে পারে তাদের আইপি ঠিকানা নয়। এটি অপারেশন প্রক্রিয়াটিকে আরও সহজ করে তোলে।
[webservers] 10.200.50.60 10.200.50.61 [databases] 10.200.50.70 10.200.50.71
আপনি যদি একটি বৃহত উত্পাদন পরিবেশে থাকেন তবে একাধিক সার্ভারের সাথে একাধিক গোষ্ঠী থাকতে পারে।
একটি প্লেবুক কনফিগারেশন ম্যানেজমেন্ট স্ক্রিপ্টগুলির একটি সেট যা সংজ্ঞা দেয় যে দূরবর্তী হোস্ট বা হোস্ট মেশিনের একটি গ্রুপে কীভাবে কার্য সম্পাদন করা যায়। স্ক্রিপ্ট বা নির্দেশাবলী YAML ফর্ম্যাটে লেখা হয়।
উদাহরণস্বরূপ, CentOS 7 এ অ্যাপাচি ওয়েবসারভার ইনস্টল করার জন্য আপনার কাছে একটি প্লেবুক ফাইল থাকতে পারে এবং এটি httpd.yml কল করতে পারে।
প্লেবুক তৈরি করতে কমান্ডটি চালান।
$ touch playbook_name.yml
উদাহরণস্বরূপ, httpd নামে একটি প্লেবুক তৈরি করতে কমান্ডটি চালান।
$ touch httpd.yml
একটি YAML ফাইল 3 হাইফেন দ্বারা প্রদর্শিত হিসাবে শুরু হয় ফাইলের অভ্যন্তরে নিম্নলিখিত নির্দেশাবলী যুক্ত করুন।
--- - name: This installs and starts Apache webserver hosts: webservers tasks: - name: Install Apache Webserver yum: name=httpd state=latest - name: check httpd status service: name=httpd state=started
উপরের প্লেবুকটি ইনভেন্টরি ফাইলটিতে ওয়েব সার্ভার হিসাবে সংজ্ঞায়িত দূরবর্তী সিস্টেমে অ্যাপাচি ওয়েব সার্ভার ইনস্টল করে। ওয়েবসভারটি ইনস্টল করার পরে, অ্যাপাসিলে পরে অ্যাপাচি ওয়েব সার্ভারটি চালু এবং চলমান কিনা তা পরীক্ষা করে দেখুন।
মডিউলগুলি দূরবর্তী হোস্ট বা সার্ভারগুলিতে কমান্ড কার্যকর করতে প্লেবুকগুলিতে ব্যবহৃত কোডের পৃথক ইউনিট। প্রতিটি মডিউল একটি যুক্তি দ্বারা অনুসরণ করা হয়।
মডিউলটির মূল বিন্যাসটি কী: মান।
- name: Install apache packages yum: name=httpd state=present
উপরের YAML কোড স্নিপেটে, -নাম এবং yum মডিউল।
একটি উত্তরযোগ্য নাটক হ'ল একটি স্ক্রিপ্ট বা একটি নির্দেশ যা কোনও সার্ভারে চালিত হওয়া কাজটি সংজ্ঞায়িত করে। নাটকগুলির একটি সংগ্রহ একটি প্লেবুক গঠন করে। অন্য কথায়, একটি প্লেবুক হ'ল একাধিক নাটকের একটি সংকলন, যার প্রতিটি স্পষ্টভাবে একটি সার্ভারে চালিত করার জন্য কাজকে শর্ত করে। YAML ফর্ম্যাটে নাটকগুলি বিদ্যমান।
প্রোগ্রামিংয়ে যদি আপনার পটভূমি থাকে তবে সম্ভবত আপনি ভেরিয়েবল ব্যবহার করেছেন। মূলত, একটি ভেরিয়েবল একটি মান উপস্থাপন করে। একটি ভেরিয়েবলের মধ্যে অক্ষর, সংখ্যা এবং আন্ডারস্কোর অন্তর্ভুক্ত থাকে তবে অক্ষর দিয়ে সর্বদা শুরু হওয়া উচিত।
যখন পরিবর্তনগুলি এক সিস্টেম থেকে অন্য সিস্টেমে পরিবর্তিত হয় তখন ব্যবহার করা হয়। এটি কনফিগারেশন বা বিভিন্ন পরিষেবা এবং বৈশিষ্ট্যগুলির সময় বিশেষভাবে সত্য।
এখানে 3 প্রধান ধরণের ভেরিয়েবল রয়েছে:
- প্লেবুকের ভেরিয়েবলগুলি
- ইনভেন্টরি ভেরিয়েবল
- বিশেষ পরিবর্তনশীল
উত্তরযোগ্যতে, ভেরিয়েবলগুলি প্রথমে ভার্স কে ব্যবহার করে সংজ্ঞায়িত করা হয়, তারপরে ভেরিয়েবলের নাম এবং মানটি ব্যবহার করা হয়।
সিনট্যাক্সটি দেখানো হয়েছে:
vars: Var name1: ‘My first variable’ Var name2: ‘My second variable’
নীচের কোড বিবেচনা করুন।
- hosts: webservers vars: - web_directory:/var/www/html/
উপরের উদাহরণে, এখানে চলকটি ওয়েব_ডাইরেক্টরি এবং এটি/var/www/html/পাথে ডিরেক্টরি তৈরি করার জন্য জবাবদিহিদের নির্দেশ দেয়।
ঘটনাগুলি হস্ট সিস্টেমে কোনও প্লেবুক কার্যকর করার সময় উত্তরগুলির দ্বারা সংগ্রহ করা সিস্টেমের বৈশিষ্ট্য। বৈশিষ্ট্যগুলির মধ্যে কয়েকটি উল্লেখ করার জন্য হোস্টনাম, ওএস পরিবার, সিপিইউ টাইপ এবং সিপিইউ কোর অন্তর্ভুক্ত রয়েছে।
কমান্ডটি ব্যবহারের জন্য উপলব্ধ কত সংখ্যক তথ্য উপলব্ধ রয়েছে তার এক ঝলক দেখতে।
$ ansible localhost -m setup
আপনি দেখতে পাচ্ছেন যে ডিফল্টরূপে বিশাল সংখ্যক তথ্য প্রদর্শিত হয়েছে। আপনি ফিল্টার পরামিতি হিসাবে প্রদর্শিত হিসাবে ব্যবহার আরও ফলাফল সঙ্কুচিত করতে পারেন।
$ ansible localhost -m setup -a "filter=*ipv4"
জবাবদিহি হিসাবে, একটি কনফিগারেশন ফাইল হ'ল এমন ফাইল যা বিভিন্ন প্যারামিটার সেটিংস ধারণ করে যা উত্তরযোগ্য কীভাবে চালায় তা নির্ধারণ করে। ডিফল্ট কনফিগারেশন ফাইলটি// etc/উত্তরযোগ্য/ডিরেক্টরিতে অবস্থিত উত্তরযোগ্য সিএফজি ফাইল g
আপনি চালিয়ে কনফিগারেশন ফাইলটি দেখতে পারেন:
$ cat /etc/ansible/ansible.cfg
যেমন আপনি পর্যবেক্ষণ করতে পারেন, বেশ কয়েকটি পরামিতি যেমন ইনভেন্টরি এবং লাইব্রেরি ফাইলের পাথ, সুডো ব্যবহারকারী, প্লাগইন ফিল্টার, মডিউল ইত্যাদি অন্তর্ভুক্ত করা হয় These
অতিরিক্তভাবে, আপনার ডিফল্ট কনফিগারেশন ফাইলটি বাদ দিয়ে উত্তরীয়দের সাথে একাধিক কনফিগারেশন ফাইল থাকতে পারে।
জবাবদিহি করার মূল উপাদানগুলির দিকে নজর রেখে আমরা আশা করি আপনি এগিয়ে যাওয়ার সাথে সাথে আপনি এগুলি আপনার আঙ্গুলের উপরে রাখবেন এবং সেগুলি বেছে নেওয়ার মতো অবস্থানে রয়েছেন। আপনার পরবর্তী বিষয় আমাদের সাথে যোগ দিন।