অ্যাপাচি নিফাই (Apache NiFi) একটি শক্তিশালী ডেটা ফ্লো ব্যবস্থাপনা প্ল্যাটফর্ম, যা ডেটা সংগ্রহ, প্রক্রিয়া এবং স্থানান্তরের জন্য ব্যবহৃত হয়। যদিও NiFi তার গ্রাফিক্যাল ইন্টারফেস (UI) এর মাধ্যমে অত্যন্ত ব্যবহারযোগ্য, তবে NiFi CLI (Command Line Interface) ব্যবহার করে Automation এবং Workflow Management করার অনেক সুবিধা রয়েছে। CLI ব্যবহার করলে আপনি স্ক্রিপ্টিংয়ের মাধ্যমে বিভিন্ন ফ্লো অপারেশন স্বয়ংক্রিয়ভাবে পরিচালনা করতে পারবেন এবং ডেটা ফ্লো অ্যাডমিনিস্ট্রেশনকে আরও কার্যকরী করতে পারবেন।
NiFi CLI ব্যবহার করে আপনি NiFi ফ্লো পরিচালনা, প্রোসেসর কনফিগারেশন, ডেটা ফ্লো স্ট্যাটাস মনিটরিং, এবং আরও অনেক কাজ করতে পারেন। এটি বিশেষ করে তখন কার্যকরী যখন আপনাকে NiFi ক্লাস্টারের সাথে কাজ করতে হয় বা স্বয়ংক্রিয়ভাবে বিভিন্ন অপারেশন পরিচালনা করতে হয়।
NiFi CLI (Command Line Interface) একটি টুল যা NiFi সার্ভার এবং এর ডেটা ফ্লো প্রোসেসরের উপর বিভিন্ন কমান্ড চালানোর সুযোগ দেয়। NiFi CLI আপনাকে গ্রাফিক্যাল ইন্টারফেস ছাড়াই NiFi ক্লাস্টার পরিচালনা করতে সাহায্য করে, যেমন ফ্লো চালানো, প্রোসেসর শুরু/বন্ধ করা, ডেটা ফ্লো মনিটর করা, এবং আরো।
NiFi CLI ব্যবহার করে, আপনি NiFi ফ্লো এবং তার কম্পোনেন্টগুলিকে automate করতে পারেন। এটি স্বয়ংক্রিয়ভাবে নির্দিষ্ট টাস্ক বা অপারেশন চালানোর জন্য উপযুক্ত, যেমন:
NiFi-তে Workflow Management এর অর্থ হল পুরো ডেটা ফ্লো পরিকল্পনা এবং তার কার্যক্রম নিয়ন্ত্রণ করা। NiFi CLI ব্যবহার করে আপনি ডেটা ফ্লো তে প্রোসেসর যুক্ত করতে, প্রোসেসরের কনফিগারেশন পরিবর্তন করতে, ফ্লো চালাতে বা থামাতে পারেন, এবং আরও অনেক কার্যক্রম পরিচালনা করতে পারেন।
CLI কমান্ডগুলি স্বয়ংক্রিয়ভাবে নির্দিষ্ট কাজগুলি বাস্তবায়ন করতে সক্ষম করে, এবং ব্যবহারকারীরা স্ক্রিপ্ট লিখে তাদের ডেটা ফ্লো এবং কাজের ব্যবস্থাপনা আরও সহজে করতে পারেন।
NiFi CLI ব্যবহার করতে, প্রথমে NiFi ইনস্টল করা থাকতে হবে। NiFi-তে CLI এর জন্য nifi-toolkit প্রয়োজন হবে, যা NiFi ডিস্ট্রিবিউশনের সাথে আসে। এই টুলটিকে ইনস্টল এবং কনফিগার করার পর, আপনি বিভিন্ন কমান্ড দিয়ে NiFi ফ্লো পরিচালনা করতে পারেন।
NiFi Toolkit ডাউনলোড এবং ইনস্টল: NiFi টুলকিট ডাউনলোড করে সেটআপ করুন:
wget https://archive.apache.org/dist/nifi/1.18.0/nifi-toolkit-1.18.0-bin.tar.gz
tar -xvf nifi-toolkit-1.18.0-bin.tar.gz
cd nifi-toolkit-1.18.0/bin
nifi-cli কনফিগারেশন: NiFi CLI চালাতে nifi-cli.sh
স্ক্রিপ্ট ব্যবহার করা হয়।
./nifi-cli.sh
NiFi CLI ব্যবহার করে আপনি একটি বা একাধিক প্রোসেসর শুরু বা বন্ধ করতে পারেন। এই কাজটি automation এর মাধ্যমে করা যেতে পারে, যাতে সময় বাঁচানো যায় এবং ডেটা ফ্লো পরিচালনা আরও দ্রুত হয়।
প্রোসেসর শুরু করা:
./nifi-cli.sh start processor <processor-id>
প্রোসেসর বন্ধ করা:
./nifi-cli.sh stop processor <processor-id>
NiFi CLI ব্যবহার করে আপনি ডেটা ফ্লো এক্সপোর্ট বা ইম্পোর্ট করতে পারেন। এটি ফ্লো ব্যাকআপ নেওয়ার জন্য বা একাধিক পরিবেশে একই ফ্লো প্রয়োগ করতে ব্যবহৃত হয়।
Flow Export:
./nifi-cli.sh export flow -i <flow-id> -f <filename.xml>
Flow Import:
./nifi-cli.sh import flow -f <filename.xml>
NiFi CLI এর মাধ্যমে আপনি প্রোসেস গ্রুপ গঠন, পরিবর্তন এবং ডিলিট করতে পারেন। এটি একাধিক প্রোসেসর এবং অন্যান্য কম্পোনেন্টকে একত্রিত করে ফ্লো পরিচালনা সহজ করে তোলে।
Process Group List:
./nifi-cli.sh list process-groups
Process Group Create:
./nifi-cli.sh create process-group -n <group-name> -p <parent-group-id>
NiFi CLI ব্যবহার করে আপনি সিস্টেমের বর্তমান স্ট্যাটাস দেখতে পারেন, যেমন প্রোসেসরের স্ট্যাটাস, কনফিগারেশন এবং প্রোসেস ফ্লো আউটপুট। এটি ফ্লো মনিটরিং এবং ডিবাগিং করার জন্য কার্যকরী।
Flow Status:
./nifi-cli.sh status flow
NiFi CLI এবং স্ক্রিপ্টিং ব্যবহার করে আপনি ডেটা ফ্লো-এর জন্য বিভিন্ন টাস্ক অটোমেট করতে পারেন। উদাহরণস্বরূপ, আপনি প্রতিদিন একটি নির্দিষ্ট সময়ে ফাইল প্রসেসিং ফ্লো চালাতে একটি শিডিউল করতে পারেন।
Automation Script Example (যেমন cron-job):
echo "0 0 * * * /path/to/nifi-cli.sh start processor <processor-id>" | crontab -
NiFi CLI NiFi ব্যবহারকারীদের জন্য একটি শক্তিশালী টুল যা Automation এবং Workflow Management সহজ করে তোলে। NiFi CLI ব্যবহার করে আপনি প্রোসেসর শুরু/বন্ধ করতে, ডেটা ফ্লো এক্সপোর্ট বা ইম্পোর্ট করতে, এবং প্রোসেস গ্রুপ বা ফ্লো স্ট্যাটাস মনিটর করতে পারেন। এটি NiFi ফ্লো এবং এর কার্যক্রম পরিচালনা করতে একটি প্রোডাকশন পরিবেশে স্বয়ংক্রিয়ভাবে কাজ করার সুবিধা প্রদান করে। CLI-এর মাধ্যমে স্ক্রিপ্টিংয়ের মাধ্যমে বিভিন্ন টাস্ক চালানোর ফলে NiFi এর কার্যক্ষমতা এবং ব্যবস্থাপনা আরও সহজ এবং কার্যকরী হয়।
common.read_more