একটি কুবারনেটস স্থাপনা তৈরি করুন

Ekati Kubaranetasa Sthapana Tairi Karuna



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

পদ্ধতি

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

উদাহরণ # 01

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







কুবারনেটস ক্লাস্টারে দুটি নোড রয়েছে। ক্লাস্টারের নোডটি হয় ভার্চুয়াল মেশিন বা বেয়ার মেটাল আকারে কম্পিউটার (ভৌতিক) হতে পারে এবং এর কার্যকারিতা হল মেশিনটি ক্লাস্টারের জন্য কাজ করার মতো কাজ করা। প্রতিটি নোডের কুবেলেট থাকে এবং এটি কুবারনেটস ক্লাস্টারের নিয়ন্ত্রণ সমতলের সাথে যোগাযোগ করে এবং নোড পরিচালনা করে। সুতরাং, ক্লাস্টারের ফাংশন, যখনই আমরা কুবারনেটে একটি অ্যাপ্লিকেশন স্থাপন করি, আমরা পরোক্ষভাবে কুবারনেটস ক্লাস্টারের কন্ট্রোল প্লেনকে কন্টেইনারগুলি চালু করতে বলি। তারপর, কন্ট্রোল প্লেন কন্টেইনারগুলিকে কুবারনেটস ক্লাস্টারের নোডগুলিতে চালিত করে।



এই নোডগুলি তখন কুবারনেটসের API এর মাধ্যমে কন্ট্রোল প্লেনের সাথে সমন্বয় করে যা কন্ট্রোল প্যানেল দ্বারা উন্মুক্ত হয়। এবং এগুলি কুবারনেটস ক্লাস্টারের সাথে মিথস্ক্রিয়া করার জন্য শেষ ব্যবহারকারী দ্বারাও ব্যবহার করা যেতে পারে।



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





স্থাপনার জন্য, আমরা মিনিকুব ব্যবহার করব যা আমরা সিস্টেমে মিনিকুবকে আগে থেকে ইনস্টল করেছি। এখন, এটির সাথে কাজ শুরু করতে, আমরা প্রথমে মিনিকুব কাজ করছে এবং সঠিকভাবে ইনস্টল করা আছে কিনা তা পরীক্ষা করব এবং টার্মিনাল উইন্ডোতে এটি করতে নিম্নলিখিত কমান্ডটি টাইপ করুন:

$ মিনিকুব সংস্করণ

কমান্ডের ফলাফল হবে:



এখন, আমরা এগিয়ে যাব এবং কমান্ড ছাড়াই মিনিকুব শুরু করার চেষ্টা করব

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

উপরের কমান্ড অনুসরণ করে, মিনিকুব এখন একটি পৃথক ভার্চুয়াল মেশিন চালু করেছে এবং সেই ভার্চুয়াল মেশিনে, একটি কুবারনেটস ক্লাস্টার এখন চলছে। সুতরাং, আমাদের এখন টার্মিনালে একটি চলমান কুবারনেটস ক্লাস্টার রয়েছে। ক্লাস্টারের তথ্য খুঁজতে বা জানতে, আমরা 'kubectl' কমান্ড ইন্টারফেস ব্যবহার করব। এর জন্য, আমরা 'kubectl version' কমান্ড টাইপ করে kubectl ইনস্টল করা আছে কিনা তা পরীক্ষা করব।

$ kubectl সংস্করণ

kubectl ইনস্টল এবং কনফিগার করা হয়. এটি ক্লায়েন্ট এবং সার্ভার সম্পর্কেও তথ্য দেয়। এখন, আমরা Kubernetes ক্লাস্টার চালাচ্ছি যাতে আমরা 'kubectl cluster-info' হিসাবে kubectl কমান্ড ব্যবহার করে এর বিশদ বিবরণ জানতে পারি।

$ kubectl ক্লাস্টার-তথ্য

আসুন এখন 'kubectl get nodes' কমান্ডটি ব্যবহার করে কুবারনেটস ক্লাস্টারের নোডগুলি পরীক্ষা করি।

$ kubectl নোড পেতে

ক্লাস্টারটিতে শুধুমাত্র একটি নোড রয়েছে এবং এর স্থিতি প্রস্তুত যার মানে এই নোডটি এখন অ্যাপ্লিকেশনগুলি গ্রহণ করার জন্য প্রস্তুত৷

আমরা এখন kubectl কমান্ড লাইন ইন্টারফেস ব্যবহার করে একটি স্থাপনা তৈরি করব যা Kubernetes API এর সাথে কাজ করে এবং Kubernetes ক্লাস্টারের সাথে যোগাযোগ করে। যখন আমরা একটি নতুন স্থাপনা তৈরি করি, তখন আমাদের অ্যাপ্লিকেশনটির চিত্র এবং অ্যাপ্লিকেশনটির অনুলিপিগুলির সংখ্যা নির্দিষ্ট করতে হবে এবং আমরা একটি স্থাপনা তৈরি করার পরে এটিকে কল এবং আপডেট করা যেতে পারে। Kubernetes-এ চালানোর জন্য নতুন স্থাপনা তৈরি করতে, 'Kubernetes create deployment' কমান্ডটি ব্যবহার করুন। এবং এটির জন্য, স্থাপনার নাম এবং অ্যাপ্লিকেশনটির জন্য ছবির অবস্থানও উল্লেখ করুন।

এখন, আমরা একটি নতুন অ্যাপ্লিকেশন স্থাপন করেছি এবং উপরের কমান্ডটি সেই নোডের সন্ধান করেছে যার উপর অ্যাপ্লিকেশনটি চালানো যেতে পারে যা এই ক্ষেত্রে শুধুমাত্র একটি ছিল। এখন, 'kubectl get deployments' কমান্ডটি ব্যবহার করে স্থাপনার তালিকা পান এবং আমাদের নিম্নলিখিত আউটপুট থাকবে:

$ kubectl স্থাপনা পেতে

হোস্ট এবং কুবারনেটস ক্লাস্টারের মধ্যে একটি সংযোগ তৈরি করতে আমরা প্রক্সি হোস্টে অ্যাপ্লিকেশনটি দেখব।

প্রক্সিটি দ্বিতীয় টার্মিনালে চলছে যেখানে টার্মিনাল 1 এ প্রদত্ত কমান্ডগুলি কার্যকর করা হয় এবং তাদের ফলাফল সার্ভারে টার্মিনাল 2 এ দেখানো হয়: 8001।

কুবারনেটস অ্যাপ্লিকেশনের জন্য পডটি কার্যকর করার একক। তাই এখানে, আমরা পডের নাম উল্লেখ করব এবং API এর মাধ্যমে এটি অ্যাক্সেস করব।

উপসংহার

এই নির্দেশিকা Kubernetes-এ স্থাপনা তৈরির পদ্ধতি নিয়ে আলোচনা করে। আমরা মিনিকুব কুবারনেটস বাস্তবায়নে স্থাপনা চালিয়েছি। আমরা প্রথমে একটি Kubernetes ক্লাস্টার তৈরি করতে শিখেছি এবং তারপর এই ক্লাস্টার ব্যবহার করে আমরা Kubernetes-এ নির্দিষ্ট অ্যাপ্লিকেশন চালানোর জন্য একটি স্থাপনা তৈরি করেছি।