ডিবাগিংয়ের জন্য কুবারনেটস ইনগ্রেস লগ পান

Dibaginyera Jan Ya Kubaranetasa Inagresa Laga Pana



আপনি কি জানেন ডিবাগ করার জন্য গেট কুবারনেটস ইনগ্রেস লগ কি? নেটওয়ার্কিং সমস্যাগুলি ক্রমবর্ধমানভাবে নির্ণয় করা আরও চ্যালেঞ্জিং কারণ স্থাপনাগুলি বৃহত্তর এবং বৃহত্তর হয়ে উঠছে৷ এই টিউটোরিয়ালটি আপনাকে দেখায় কিভাবে ingress-nginx kubectl প্লাগইন ব্যবহার করে ইনগ্রেস কন্ট্রোলারের মাধ্যমে আপনার অ্যাপ্লিকেশনের অ্যাক্সেস ডিবাগ করতে হয়। আসুন প্রথমে কুবারনেটস ইনগ্রেসের সংজ্ঞাটি দেখি যা মূল বিষয়টি আরও ভালভাবে বোঝার জন্য গুরুত্বপূর্ণ।

কুবারনেটস ইনগ্রেস কি?

প্রবেশের সংজ্ঞা তার আক্ষরিক অর্থে 'প্রবেশ'।







কুবারনেটস সম্প্রদায়ের মধ্যে, এটিও সত্য। একটি ট্রাফিক যা ক্লাস্টারে প্রবেশ করে তাকে প্রবেশ হিসাবে উল্লেখ করা হয়, যখন একটি ট্র্যাফিক যা ক্লাস্টার ছেড়ে যায় তাকে প্রস্থান হিসাবে উল্লেখ করা হয়।




একটি নেটিভ Kubernetes রিসোর্স হিসেবে, ইনগ্রেস পড, ডিপ্লোয়মেন্ট ইত্যাদির সাথে তুলনীয়। আপনি ইনগ্রেস ব্যবহার করে DNS রাউটিং কনফিগারেশনের সাথে তাল মিলিয়ে চলতে পারেন। প্রবেশ নিয়ন্ত্রক যা রাউটিং সম্পাদন করে। এটা ইংগ্রেস অবজেক্ট থেকে রাউটিং নিয়ম পড়ে যা etcd এ সংরক্ষিত থাকে। Kubernetes প্রবেশ না করে, আপনি স্থাপনার মধ্যে একটি পরিষেবা টাইপ লোড ব্যালেন্সার অন্তর্ভুক্ত করে বাইরের বিশ্বের কাছে একটি অ্যাপ্লিকেশন প্রকাশ করতে পারেন।



কুবারনেটস ইনগ্রেস কিভাবে কাজ করে?

দুটি মূল বিষয় রয়েছে যা সম্পর্কে আপনাকে পরিষ্কার হতে হবে। এইগুলো:





কুবারনেটস ইনগ্রেস রিসোর্স

এই সংস্থানটি ক্লাস্টারে সমস্ত DNS রাউটিং নিয়ম বজায় রাখার দায়িত্বে রয়েছে। DNS রাউটিং নিয়মগুলি Kubernetes Ingress রিসোর্সে নির্দিষ্ট করা আছে, একটি নেটিভ Kubernetes রিসোর্স। অন্য কথায়, আপনি অভ্যন্তরীণ Kubernetes পরিষেবা গন্তব্যস্থলে বাহ্যিক DNS ট্র্যাফিক ম্যাপ করেন।



কুবারনেটস ইনগ্রেস কন্ট্রোলার

ইনগ্রেস রিসোর্স দ্বারা বাস্তবায়িত ডিএনএস নিয়মগুলিতে অ্যাক্সেস লাভ করার মাধ্যমে, কুবারনেটস ইনগ্রেস কন্ট্রোলার (এনজিনএক্স/এইচএপ্রক্সি, ইত্যাদি) রাউটিংয়ের দায়িত্বে থাকে।

ইনগ্রেস কন্ট্রোলারের বাস্তবায়ন কুবারনেটসের স্থানীয় নয়। ফলস্বরূপ, এটি একটি ক্লাস্টার ডিফল্ট হতে পারে না।

প্রবেশের নিয়মগুলি কার্যকর করার জন্য, আমাদের অবশ্যই একটি প্রবেশ নিয়ন্ত্রক কনফিগার করতে হবে। বাজারে অনেক ওপেন সোর্স এবং ব্যবসায়িক প্রবেশ নিয়ন্ত্রক রয়েছে। একটি বিপরীত ওয়েব প্রক্সি সার্ভারের একটি ক্লাস্টার সংস্করণ একটি প্রবেশ নিয়ন্ত্রক হিসাবে কাজ করে। এই Kubernetes-ভিত্তিক বিপরীত প্রক্সি সার্ভারটি একটি লোড ব্যালেন্সার পরিষেবার কাছে উন্মুক্ত।

ইনগ্রেস কন্ট্রোলার কি?

ইনগ্রেস কন্ট্রোলার নামে একটি ক্লাস্টার-চলমান প্রোগ্রাম ইনগ্রেস রিসোর্স অনুসরণ করে একটি HTTP লোড ব্যালেন্সার কনফিগার করে। লোড ব্যালেন্সার একটি বাহ্যিকভাবে স্থাপন করা হার্ডওয়্যার বা ক্লাউড লোড ব্যালেন্সার হতে পারে, অথবা এটি ক্লাস্টারের মধ্যে সফ্টওয়্যার হিসাবে কাজ করতে পারে। বিভিন্ন লোড ব্যালেন্সারের জন্য বিভিন্ন ইনগ্রেস কন্ট্রোলার বাস্তবায়ন প্রয়োজন।

NGINX ব্যবহার করার সময়, লোড ব্যালেন্সার এবং ইনগ্রেস কন্ট্রোলার উভয়ই একটি পডে স্থাপন করা হয়।

অনুগ্রহ করে মনে রাখবেন যে ইনগ্রেস রিসোর্স কাজ করার জন্য একটি সক্রিয় ইনগ্রেস কন্ট্রোলার অবশ্যই ক্লাস্টারে উপস্থিত থাকতে হবে।

ইনগ্রেস কন্ট্রোলারগুলি স্বয়ংক্রিয়ভাবে একটি ক্লাস্টারের সাথে চালু হয় না, অন্যান্য ধরনের কন্ট্রোলারের বিপরীতে যা কিউবে-কন্ট্রোলার-ম্যানেজার বাইনারির একটি উপাদান হিসাবে কাজ করে।

পূর্বশর্ত:

আপনার একটি Kubernetes ক্লাস্টার প্রয়োজন, এবং আপনার ক্লাস্টারের সাথে সংযোগ করতে আপনাকে অবশ্যই kubectl কমান্ড-লাইন টুল কনফিগার করতে হবে। আপনি kubectl কমান্ড-লাইন টুল ব্যবহার করে Kubernetes ক্লাস্টারে কমান্ড ইস্যু করতে পারেন। অ্যাপ্লিকেশনগুলি স্থাপন করা যেতে পারে, ক্লাস্টার সংস্থানগুলি পরিদর্শন এবং পরিচালনা করা যেতে পারে এবং লগগুলি kubectl ব্যবহার করে দেখা যেতে পারে।

আপনার যদি বর্তমানে একটি ক্লাস্টার না থাকে, তবে মিনিকুব একটি তৈরি করতে ব্যবহার করা যেতে পারে। Minikube হল একটি স্থানীয় Kubernetes যার লক্ষ্য Kubernetes শেখা এবং বিকাশ করা সহজ করা।

আপনার যদি ভার্চুয়াল মেশিন এনভায়রনমেন্ট বা ডকার (বা একইভাবে সামঞ্জস্যপূর্ণ) কন্টেইনার এনভায়রনমেন্ট থাকে তবে কুবারনেটস শুধুমাত্র একটি কমান্ড দিয়ে অ্যাক্সেস করা যেতে পারে। এখন ধাপে ধাপে প্রক্রিয়া শুরু করা যাক:

ধাপ 1: মিনিকুব শুরু করুন

মিনিকুব টুল ব্যবহার করে, আপনি স্থানীয়ভাবে কুবারনেটস চালাতে পারেন। Minikube আপনার কম্পিউটারে একটি অল-ইন-ওয়ান বা মাল্টি-নোড স্থানীয় কুবারনেটস ক্লাস্টার চালায় প্রতিদিনের ডেভেলপমেন্ট কাজের জন্য বা কুবারনেটস পরীক্ষা করার জন্য (উইন্ডোজ, লিনাক্স পিসি এবং ম্যাকওএস সহ)। মিনিকুব শুরু করার কমান্ড এখানে:

> মিনিকুব শুরু করুন



ধাপ 2: ইনগ্রেস কন্ট্রোলার সক্ষম করুন

আমরা এই ধাপে NGINX ইনগ্রেস কন্ট্রোলারকে কীভাবে সক্রিয় করতে হয় তা প্রদর্শন করব। নিম্নলিখিত কমান্ডটি সম্পাদন করুন:

> মিনিকুব অ্যাডঅন সক্ষম প্রবেশ



ধাপ 3: NGINX ইনগ্রেস কন্ট্রোলার কাজ করছে কি না তা যাচাই করুন

এখন, NGINX কন্ট্রোলার সক্রিয় কিনা তা যাচাই করা গুরুত্বপূর্ণ। নিম্নলিখিত কমান্ডটি নিশ্চিত করতে ব্যবহার করা যেতে পারে:

> kubectl শুঁটি পেতে -n ingress-nginx



অনুগ্রহ করে সচেতন থাকুন যে আপনি হয়তো লক্ষ্য করবেন না যে এই পডগুলি এক মিনিট পর্যন্ত সঠিকভাবে কাজ করছে। আউটপুট আগের ছবিতে প্রদর্শিত হয়।

ধাপ 4: একটি হ্যালো ওয়ার্ল্ড অ্যাপ তৈরি করুন

এখানে, আমরা একটি স্থাপনা তৈরি করতে নিম্নলিখিত কমান্ডটি ব্যবহার করি:

> kubectl ডিপ্লয়মেন্ট ওয়েব তৈরি করে --ছবি =gcr.io / google-নমুনা / হ্যালো-অ্যাপ: 1.0



যে কমান্ডটি কার্যকর করা হয় এবং এর ফলাফল পূর্বের ছবিতে সংযুক্ত করা হয়। আউটপুটে, 'হ্যালো-অ্যাপ' দেখা যাবে।

ধাপ 5: স্থাপনা প্রকাশ করুন

এখন, আমরা আপনাকে একটি নির্দিষ্ট স্থাপনার প্রকাশ করার জন্য একটি কমান্ড দেখাব। আদেশটি নিম্নরূপ উল্লেখ করা হয়েছে:

> kubectl expose deployment Kalsoom  - -টাইপ = নোডপোর্ট --বন্দর = 8080



আপনি আগের ছবিতে 'পরিষেবা/কলসুম উন্মুক্ত' আউটপুট দেখতে পারেন।

ধাপ 6: নোডপোর্টের মাধ্যমে পরিষেবাটিতে যান

এটি একটি গুরুত্বপূর্ণ পদক্ষেপ যেখানে আমরা আপনাকে দেখাব কিভাবে আপনি নোডপোর্টের মাধ্যমে তৈরি পরিষেবাটি দেখতে পারেন। এই উদ্দেশ্য অর্জনের নির্দেশ নিম্নে দেওয়া হয়েছে:

> মিনিকুব সার্ভিস কালসুম  --url



আউটপুট সহ কমান্ডটি পূর্বের ছবিতে সংযুক্ত করা হয়েছে।

এখন, Minikube IP ঠিকানা এবং NodePort নমুনা অ্যাপটি দেখতে সহজ করে তোলে। আপনি নিম্নলিখিত ধাপে অ্যাপটি অ্যাক্সেস করতে ইনগ্রেস রিসোর্স ব্যবহার করতে পারেন।

ধাপ 7: একটি প্রবেশ তৈরি করুন

এখানে, আমরা একটি ইনগ্রেস তৈরি করি যা আপনার পরিষেবাতে ট্রাফিক প্রেরণ করে। আদেশটি নিম্নরূপ উল্লেখ করা হয়েছে:

> kubectl প্রয়োগ করুন -চ https: // k8s.io / উদাহরণ / সেবা / নেটওয়ার্কিং / উদাহরণ- ingress.yaml



আপনি দেখতে পাচ্ছেন, কমান্ডটি সফলভাবে কার্যকর করা হয়েছে।

ধাপ 8: আইপি ঠিকানা যাচাই করুন

আইপি ঠিকানা সেট করা আছে কি না তা আমরা পরীক্ষা করি। এর জন্য, আমরা নিম্নলিখিত প্রদত্ত কমান্ড ব্যবহার করি:

> kubectl প্রবেশ করা



আউটপুটে, আপনি ADDRESS কলামে একটি IPv4 ঠিকানা দেখতে পাবেন৷

উপসংহার

এই নিবন্ধে NGINX ইনগ্রেস কন্ট্রোলারের লগিংয়ের একটি ওভারভিউ দেওয়া হয়েছে। সংক্ষেপে বলতে গেলে, NGINX-এর অ্যাক্সেস এবং ত্রুটি লগগুলি সহ ইনগ্রেস কন্ট্রোলার প্রক্রিয়ার লগগুলি যা NGINX কনফিগারেশন তৈরি করে এবং এটি প্রয়োগ করার জন্য NGINX পুনরায় লোড করে, NGINX ইনগ্রেস কন্ট্রোলার দ্বারা উপলব্ধ করা হয়।