কুবারনেটিস ডকুমেন্টেশনের এই বিভাগে এমন পৃষ্ঠা রয়েছে যা দেখায় কিভাবে পৃথক টাস্ক করতে হয়। সাধারণত পদক্ষেপের একটি সংক্ষিপ্ত ক্রম দিয়ে একটি টাস্ক পেজ দেখায় কিভাবে একটি একক জিনিস করতে হয়।
আপনি যদি একটি টাস্ক পৃষ্ঠা লিখতে চান, দেখুন কীভাবে একটি ডকুমেন্টেশন পুল রিকোয়েস্ট তৈরি করা যায়।
কুবারনেটিস কমান্ড-লাইন টুল, kubectl
আপনাকে কুবারনেটিস ক্লাস্টারগুলির বিরুদ্ধে কমান্ড চালাতে অনুমতি দেয় ।
আপনি অ্যাপ্লিকেশন স্থাপন করতে, ক্লাস্টার সংস্থান পরিদর্শন ও পরিচালনা করতে এবং লগ দেখতে kubectl ব্যবহার করতে পারেন।
আরও তথ্যের জন্য kubectl অপারেশনগুলির একটি সম্পূর্ণ তালিকা সহ দেখুন
kubectl রেফারেন্স ডকুমেন্টেশন।
kubectl বিভিন্ন লিনাক্স প্ল্যাটফর্ম, macOS এবং Windows এ ইনস্টলযোগ্য। নীচে আপনার পছন্দের অপারেটিং সিস্টেম খুঁজুন।
kind আপনাকে কুবারনেটিস চালাতে দেয়
আপনার স্থানীয় কম্পিউটারে। আপনি
ডকার অথবা পডম্যান ইনস্টল এবং কনফিগার করুন।
এই ধরনের কুইক শুরু পৃষ্ঠা আপনাকে কী করতে হবে তা দেখায়।
বিভিন্ন ধরনের কুইক স্টার্ট গাইড দেখুন
kind এর মতো, minikube একটি টুল যা আপনাকে স্থানীয়ভাবে কুবারনেটিস চালাতে দেয় ।
minikube আপনার ব্যক্তিগত কম্পিউটারের (উইন্ডোজ, ম্যাকোস এবং লিনাক্স পিসি সহ) উপর একটি একক-নোড কুবারনেটিস ক্লাস্টার চালায়
যাতে আপনি চেষ্টা করে দেখতে পারেন কুবারনেটিস, বা দৈনন্দিন উন্নয়ন কাজের জন্য।
আপনি অফিসিয়াল নির্দেশিকা শুরু করুন! অনুসরণ করতে পারেন যদি আপনার ফোকাস হয় টুল ইনস্টল করার উপর।
minikube শুরু করুন! গাইডটি দেখুন
একবার আপনার minikube কাজ করলে, আপনি এটি একটি নমুনা অ্যাপ্লিকেশন চালাতে ব্যবহার করতে পারেন ।
আপনি কুবারনেটিস ক্লাস্টার তৈরি এবং পরিচালনা করতে kubeadm টুল ব্যবহার করতে পারেন। এটি একটি ন্যূনতম কার্যকর, নিরাপদ ক্লাস্টার আপ এবং ব্যবহারকারী বান্ধব উপায়ে চালানোর জন্য প্রয়োজনীয় ক্রিয়া সম্পাদন করে।
kubeadm ইনস্টল করা আপনাকে দেখায় কিভাবে kubeadm ইনস্টল করতে হয়। একবার ইনস্টল হয়ে গেলে আপনি এটিকে একটি ক্লাস্টার তৈরি করতে ব্যবহার করতে পারেন।
আপনাকে অবশ্যই একটি kubectl সংস্করণ ব্যবহার করতে হবে যা আপনার ক্লাস্টারের একটি ছোট সংস্করণের পার্থক্যের মধ্যে রয়েছে। উদাহরণস্বরূপ, একটি v1.35 ক্লায়েন্ট v1.34, v1.35, এবং v1.36 নিয়ন্ত্রণ প্লেন এর সাথে যোগাযোগ করতে পারে। kubectl এর সর্বশেষ সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করা অপ্রত্যাশিত সমস্যাগুলি এড়াতে সাহায্য করে৷
macOS এ kubectl ইনস্টল করার জন্য নিম্নলিখিত পদ্ধতি রয়েছেঃ
১. সর্বশেষ রিলিজ ডাউনলোড করুন:
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl"
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/arm64/kubectl"
একটি নির্দিষ্ট সংস্করণ ডাউনলোড করতে, নির্দিষ্ট সংস্করণের সাথে কমান্ডের $(curl -L -s https://dl.k8s.io/release/stable.txt) অংশটি প্রতিস্থাপন করুন।
উদাহরণস্বরূপ, Intel macOS-এ সংস্করণ 1.35.0 ডাউনলোড করতে, টাইপ করুন:
curl -LO "https://dl.k8s.io/release/v1.35.0/bin/darwin/amd64/kubectl"
এবং অ্যাপল সিলিকনে macOS এর জন্য, টাইপ করুন:
curl -LO "https://dl.k8s.io/release/v1.35.0/bin/darwin/arm64/kubectl"
২. বাইনারি যাচাই করুন (ঐচ্ছিক)
kubectl checksum ফাইল ডাউনলোড করুন:
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl.sha256"
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/arm64/kubectl.sha256"
চেকসাম ফাইলের বিপরীতে kubectl বাইনারি যাচাই করুন:
echo "$(cat kubectl.sha256) kubectl" | shasum -a 256 --check
বৈধ হলে, আউটপুট হল:
kubectl: OK
চেক ব্যর্থ হলে, shasum অশূন্য স্থিতি সহ প্রস্থান করে এবং অনুরূপ আউটপুট প্রিন্ট করে:
kubectl: FAILED
shasum: WARNING: 1 computed checksum did NOT match
৩. kubectl বাইনারি এক্সিকিউটেবল করুন।
chmod +x ./kubectl
৪. আপনার সিস্টেম PATH-এ একটি ফাইল অবস্থানে kubectl বাইনারি সরান।
sudo mv ./kubectl /usr/local/bin/kubectl
sudo chown root: /usr/local/bin/kubectl
/usr/local/bin আপনার PATH এনভায়রনমেন্ট ভেরিয়েবলে আছে।৫. আপনার ইনস্টল করা সংস্করণ আপ-টু-ডেট কিনা তা নিশ্চিত করতে পরীক্ষা করুন:
kubectl version --client
উপরের কমান্ডটি একটি সতর্কতা তৈরি করবে:
WARNING: This version information is deprecated and will be replaced with the output from kubectl version --short.
আপনি এই সতর্কতা উপেক্ষা করতে পারেন. আপনি শুধুমাত্র kubectl এর যে সংস্করণটি ইনস্টল করেছেন তা পরীক্ষা করছেন।
অথবা সংস্করণের বিস্তারিত দেখার জন্য এটি ব্যবহার করুন:
kubectl version --client --output=yaml
৬. প্লাগইন ইনস্টল করার পরে, ইনস্টলেশন ফাইলগুলি পরিষ্কার করুন:
rm kubectl kubectl.sha256
আপনি যদি macOS-এ থাকেন এবং Homebrew প্যাকেজ ম্যানেজার ব্যবহার করেন, তাহলে আপনি Homebrew-এর সাথে kubectl ইনস্টল করতে পারেন।
১. ইনস্টলেশন কমান্ড চালান:
brew install kubectl
অথবা,
brew install kubernetes-cli
২. আপনার ইনস্টল করা সংস্করণ আপ-টু-ডেট কিনা তা নিশ্চিত করতে পরীক্ষা করুন:
kubectl version --client
আপনি যদি macOS এ থাকেন এবং Macports প্যাকেজ ম্যানেজার ব্যবহার করেন, তাহলে আপনি ম্যাকপোর্টের সাথে kubectl ইনস্টল করতে পারেন।
১. ইনস্টলেশন কমান্ড চালান:
sudo port selfupdate
sudo port install kubectl
২. আপনার ইনস্টল করা সংস্করণ আপ-টু-ডেট কিনা তা নিশ্চিত করতে পরীক্ষা করুন:
kubectl version --client
kubectl-এর জন্য একটি কুবারনেটিস ক্লাস্টার খুঁজে পেতে এবং অ্যাক্সেস পেতে, যার জন্য প্রয়োজন
kubeconfig ফাইল,
যা স্বয়ংক্রিয়ভাবে তৈরি হয় যখন আপনি একটি ক্লাস্টার তৈরি করেন
kube-up.sh
ব্যবহার করে অথবা সফলভাবে একটি Minikube ক্লাস্টার স্থাপন করুন।
ডিফল্টরূপে, kubectl কনফিগারেশন ~/.kube/config এ অবস্থিত।
ক্লাস্টার অবস্থা পেয়ে kubectl সঠিকভাবে কনফিগার করা হয়েছে তা পরীক্ষা করুন:
kubectl cluster-info
আপনি যদি একটি URL দেখতে পান, তাহলে আপনার ক্লাস্টার অ্যাক্সেস করার জন্য kubectl সঠিকভাবে কনফিগার করা হয়েছে।
আপনি যদি নিম্নলিখিতগুলোর মতো একটি বার্তা দেখতে পান, তাহলে বুঝবেন যে kubectl সঠিকভাবে কনফিগার করা হয়নি অথবা একটি Kubernetes ক্লাস্টারের সাথে সংযোগ করতে সক্ষম নয়।
সার্ভারের সাথে সংযোগ <server-name:port> প্রত্যাখ্যান করা হয়েছিল - আপনি কি সঠিক হোস্ট বা পোর্ট উল্লেখ করেছেন?
উদাহরণস্বরূপ, আপনি যদি আপনার ল্যাপটপে (স্থানীয়ভাবে) একটি কুবারনেটিস ক্লাস্টার চালাতে চান, তাহলে আপনাকে প্রথমে মিনিকুবের মতো একটি টুল ইনস্টল করতে হবে এবং তারপরে উপরে বর্ণিত কমান্ডগুলি পুনরায় চালাতে হবে।
যদি kubectl ক্লাস্টার-তথ্য url প্রতিক্রিয়া প্রদান করে কিন্তু আপনি আপনার ক্লাস্টার অ্যাক্সেস করতে না পারেন, এটি সঠিকভাবে কনফিগার করা হয়েছে কিনা তা পরীক্ষা করতে, ব্যবহার করুন:
kubectl cluster-info dump
কুবারনেটিস 1.26-এ, kubectl নিম্নলিখিত ক্লাউড প্রদানকারীদের পরিচালিত কুবারনেটিস অফারগুলোর জন্য অন্তর্নির্মিত অথেনটিকেশন সরিয়ে দিয়েছে। এই প্রদানকারীরা ক্লাউডের-নির্দিষ্ট অথেনটিকেশন প্রদানের জন্য kubectl প্লাগইন প্রকাশ করেছে। নির্দেশাবলীর জন্য, নিম্নলিখিত প্রদানকারী ডকুমেন্টেশন পড়ুন:
(একই ত্রুটির বার্তা দেখার অন্যান্য কারণও থাকতে পারে, এই পরিবর্তনের সাথে সম্পর্কিত নয়।)
kubectl Bash, Zsh, Fish এবং PowerShell-এর জন্য অটোকমপ্লিট সমর্থন প্রদান করে যা আপনাকে অনেক টাইপিং বাঁচাতে পারে।
নীচে Bash, Fish, এবং Zsh-এর জন্য স্বয়ংসম্পূর্ণতা সেট আপ করার পদ্ধতিগুলি রয়েছে৷
Bash-এর জন্য kubectl কমপ্লিশন স্ক্রিপ্ট kubectl completion bash দিয়ে তৈরি করা যেতে পারে। আপনার শেলে এই স্ক্রিপ্টটি সোর্স করা kubectl সম্পূর্ণতা সক্ষম করে।
কিন্তু, kubectl কমপ্লিসন স্ক্রিপ্ট নির্ভর করে bash-completion যা আপনাকে আগে ইনস্টল করতে হবে।
এখানে নির্দেশাবলী অনুমান করে আপনি ব্যাশ 4.1+ ব্যবহার করছেন। আপনি রান করে আপনার ব্যাশের সংস্করণটি পরীক্ষা করতে পারেন:
echo $BASH_VERSION
যদি এটি খুব পুরানো হয়, আপনি Homebrew ব্যবহার করে এটি ইনস্টল/আপগ্রেড করতে পারেন:
brew install bash
আপনার শেল পুনরায় লোড করুন এবং যাচাই করুন যে পছন্দসই সংস্করণটি ব্যবহার করা হচ্ছে:
echo $BASH_VERSION $SHELL
Homebrew সাধারণত /usr/local/bin/bash এ ইনস্টল হয়।
আপনি পরীক্ষা করতে পারেন যদি আপনার bash-completion v2 ইতিমধ্যেই type _init_completion দিয়ে ইনস্টল করা আছে। যদি না হয়, আপনি homebrew দিয়ে এটি ইনস্টল করতে পারেন:
brew install bash-completion@2
এই কমান্ডের আউটপুটে যেমন বলা হয়েছে, আপনার ~/.bash_profile ফাইলে নিম্নলিখিত যোগ করুন:
brew_etc="$(brew --prefix)/etc" && [[ -r "${brew_etc}/profile.d/bash_completion.sh" ]] && . "${brew_etc}/profile.d/bash_completion.sh"
আপনার শেল পুনরায় লোড করুন এবং যাচাই করুন যে bash-completion v2 সঠিকভাবে type _init_completion দিয়ে ইনস্টল করা আছে।
আপনাকে এখন নিশ্চিত করতে হবে যে আপনার সমস্ত শেল সেশনে kubectl কমপ্লিসনের স্ক্রিপ্টটি পাওয়া যায়। এটি অর্জন করার একাধিক উপায় রয়েছে:
আপনার ~/.bash_profile ফাইলে কমপ্লিসনের স্ক্রিপ্ট উৎস করুন:
echo 'source <(kubectl completion bash)' >>~/.bash_profile
/usr/local/etc/bash_completion.d ডিরেক্টরিতে কমপ্লিসনের স্ক্রিপ্ট যোগ করুন:
kubectl completion bash >/usr/local/etc/bash_completion.d/kubectl
আপনার যদি kubectl এর জন্য একটি উপনাম থাকে তবে আপনি সেই উপনামের সাথে কাজ করার জন্য শেল কমপ্লিসন বাড়াতে পারেন:
echo 'alias k=kubectl' >>~/.bash_profile
echo 'complete -o default -F __start_kubectl k' >>~/.bash_profile
আপনি যদি হোমব্রু দিয়ে kubectl ইনস্টল করেন (যেমন এখানে ব্যাখ্যা করা হয়েছে), তাহলে kubectl কমপ্লিসনের স্ক্রিপ্ট ইতিমধ্যেই /-এ থাকা উচিত usr/local/etc/bash_completion.d/kubectl। সেক্ষেত্রে আপনার কিছু করার দরকার নেই।
BASH_COMPLETION_COMPAT_DIR ডিরেক্টরির সমস্ত ফাইলকে উৎস করে, তাই পরবর্তী দুটি পদ্ধতি কাজ করে।যে কোনো ক্ষেত্রে, আপনার শেল পুনরায় লোড করার পরে, kubectl সমাপ্তি কাজ করা উচিত।
fish এর জন্য kubectl সমাপ্তি স্ক্রিপ্ট kubectl completion fish কমান্ড দিয়ে তৈরি করা যেতে পারে। আপনার শেলের মধ্যে সমাপ্তি স্ক্রিপ্ট সোর্স করা kubectl স্বয়ংক্রিয় সমাপ্তি চালু করে।
আপনার সমস্ত শেল সেশনে এটি করতে, আপনার ~/.config/fish/config.fish ফাইলে নিম্নলিখিত লাইন যুক্ত করুন:
kubectl completion fish | source
আপনার শেল পুনরায় লোড করার পরে, kubectl স্বয়ংক্রিয় সমাপ্তি কাজ করা উচিত।
Zsh-এর জন্য kubectl কমপ্লিশন স্ক্রিপ্ট kubectl completion zsh কমান্ড দিয়ে তৈরি করা যেতে পারে। আপনার শেলে সমাপ্তি স্ক্রিপ্ট সোর্স করা kubectl স্বয়ংসম্পূর্ণতা সক্ষম করে। 12
আপনার সমস্ত শেল সেশনে এটি করতে, আপনার ~/.zshrc ফাইলে নিম্নলিখিত যোগ করুন:
source <(kubectl completion zsh)
আপনার যদি kubectl-এর একটি উপনাম থাকে, kubectl স্বয়ংসম্পূর্ণতা স্বয়ংক্রিয়ভাবে এটির সাথে কাজ করবে।
আপনার শেল পুনরায় লোড করার পরে, kubectl স্বয়ংসম্পূর্ণতা কাজ করা উচিত।
যদি আপনি একটি ত্রুটি পান যেমন 2: command not found: compdef, তাহলে আপনার ~/.zshrc ফাইলের শুরুতে নিম্নলিখিত যোগ করুন:
autoload -Uz compinit
compinit
kubectl convert প্লাগইন ইনস্টল করুনকুবারনেটিস কমান্ড-লাইন টুল kubectl এর জন্য একটি প্লাগইন, যা আপনাকে বিভিন্ন আপিআই সংস্করণ এর মধ্যে রূপান্তর করতে দেয়।
এটি নতুন কুবারনেটিস রিলিজের সাথে একটি অ-বঞ্চিত আপিআই সংস্করণে স্থানান্তর করতে বিশেষভাবে সহায়ক হতে পারে।
আরও তথ্যের জন্য, অপ্রচলিত apis-এ মাইগ্রেট করুন
১. কমান্ড সহ সর্বশেষ রিলিজ ডাউনলোড করুন:
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl-convert"
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/arm64/kubectl-convert"
২. বাইনারি যাচাই করুন (ঐচ্ছিক)
kubectl-convert checksum ফাইলটি ডাউনলোড করুন:
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl-convert.sha256"
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/arm64/kubectl-convert.sha256"
চেকসাম ফাইলের বিপরীতে kubectl-রূপান্তর বাইনারি যাচাই করুন:
echo "$(cat kubectl-convert.sha256) kubectl-convert" | shasum -a 256 --check
বৈধ হলে, আউটপুট হল:
kubectl-convert: OK
চেক ব্যর্থ হলে, shasum অশূন্য স্থিতি সহ প্রস্থান করে এবং অনুরূপ আউটপুট প্রিন্ট করে:
kubectl-convert: FAILED
shasum: WARNING: 1 computed checksum did NOT match
৩. kubectl-রূপান্তর বাইনারি এক্সিকিউটেবল করুন
chmod +x ./kubectl-convert
৪. আপনার সিস্টেম PATH-এ একটি ফাইল অবস্থানে kubectl-রূপান্তর বাইনারি সরান।
sudo mv ./kubectl-convert /usr/local/bin/kubectl-convert
sudo chown root: /usr/local/bin/kubectl-convert
/usr/local/bin আপনার PATH এনভায়রনমেন্ট ভেরিয়েবলে আছে।৫. প্লাগইন সফলভাবে ইনস্টল করা হয়েছে যাচাই করুন
kubectl convert --help
আপনি যদি একটি ত্রুটি দেখতে না পান, এর মানে হল প্লাগইনটি সফলভাবে ইনস্টল করা হয়েছে।
৬. প্লাগইন ইনস্টল করার পরে, ইনস্টলেশন ফাইলগুলি পরিষ্কার করুন:
rm kubectl-convert kubectl-convert.sha256
আপনাকে অবশ্যই একটি kubectl সংস্করণ ব্যবহার করতে হবে যা আপনার ক্লাস্টারের একটি ছোট সংস্করণের পার্থক্যের মধ্যে রয়েছে। উদাহরণ স্বরূপ, একটি v1.35 ক্লায়েন্ট v1.34, v1.35, and v1.36 কন্ট্রল প্লেনের সাথে যোগাযোগ করতে পারবে। kubectl এর সর্বশেষ সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করা অপ্রত্যাশিত সমস্যাগুলি এড়াতে সাহায্য করে৷
উইন্ডোজে kubectl ইনস্টল করার জন্য নিম্নলিখিত পদ্ধতিগুলো অনুসরণ করতে পারেন:
সর্বশেষ 1.35 প্যাচ রিলিজ ডাউনলোড করুন: kubectl 1.35.0।
অথবা যদি আপনার curl ইনস্টল থাকে, এই কমান্ডটি ব্যবহার করুন:
curl.exe -LO "https://dl.k8s.io/release/v1.35.0/bin/windows/amd64/kubectl.exe"
বাইনারি যাচাই করুন (অপশনাল)
kubectl চেকসাম ফাইলটি ডাউনলোড করুন:
curl.exe -LO "https://dl.k8s.io/v1.35.0/bin/windows/amd64/kubectl.exe.sha256"
চেকসাম ফাইলের বিপরীতে kubectl বাইনারি যাচাই করুন:
ডাউনলোড করা চেকসাম ফাইলের সাথে ম্যানুয়ালি CertUtil এর আউটপুট তুলনা করতে কমান্ড প্রম্পট ব্যবহার করে:
CertUtil -hashfile kubectl.exe SHA256
type kubectl.exe.sha256
একটি True বা False ফলাফল পেতে -eq অপারেটর ব্যবহার করে যাচাইকরণ স্বয়ংক্রিয় করতে PowerShell ব্যবহার করে:
$(Get-FileHash -Algorithm SHA256 .\kubectl.exe).Hash -eq $(Get-Content .\kubectl.exe.sha256)
আপনার PATH এনভায়রনমেন্ট ভেরিয়েবলে kubectl বাইনারি ফোল্ডারটি অ্যাপেন্ড বা প্রিপেন্ড করুন।
kubectl-এর সংস্করণ ডাউনলোড করা একই রকম তা নিশ্চিত করতে পরীক্ষা করুন
kubectl version --client
উপরের কমান্ডটি একটি সতর্ক বার্তা তৈরি করবে:
WARNING: This version information is deprecated and will be replaced with the output from kubectl version --short.
আপনি এই সতর্কতা উপেক্ষা করতে পারেন. আপনি শুধুমাত্র kubectl এর যে সংস্করণটি ইনস্টল করেছেন তা পরীক্ষা করছেন।
অথবা সংস্করণের বিস্তারিত দেখার জন্য এটি ব্যবহার করুন:
kubectl version --client --output=yaml
প্লাগইন ইনস্টল করার পরে, ইনস্টলেশন ফাইলগুলি পরিষ্কার করুন:
del kubectl.exe kubectl.exe.sha256
PATH-এ kubectl এর নিজস্ব সংস্করণ যোগ করে।
আপনি যদি আগে ডকার ডেস্কটপ ইনস্টল করে থাকেন, তাহলে আপনাকে ডকার ডেস্কটপ ইনস্টলার দ্বারা যোগ করা একটির আগে আপনার PATH এন্ট্রি স্থাপন করতে হবে অথবা ডকার ডেস্কটপের kubectl সরিয়ে ফেলতে হবে।উইন্ডোজে kubectl ইনস্টল করতে আপনি উভয় Chocolatey প্যাকেজ ম্যানেজার, Scoop কমান্ড-লাইন ইনস্টলার, অথবা winget প্যাকেজ ম্যানেজার ব্যবহার করতে পারেন।
choco install kubernetes-cli
scoop install kubectl
winget install -e --id Kubernetes.kubectl
আপনার ইনস্টল করা সংস্করণ আপ-টু-ডেট কিনা তা নিশ্চিত করতে পরীক্ষা করুন:
kubectl version --client
আপনার হোম ডিরেক্টরিতে নেভিগেট করুন:
# If you're using cmd.exe, run: cd %USERPROFILE%
cd ~
.kube ডিরেক্টরি তৈরি করুন:
mkdir .kube
আপনার তৈরি করা .kube ডিরেক্টরিতে ঢুকে পড়ুন:
cd .kube
একটি দূরবর্তী Kubernetes ক্লাস্টার ব্যবহার করতে kubectl কনফিগার করুরু
New-Item config -type file
kubectl-এর জন্য একটি কুবারনেটিস ক্লাস্টার খুঁজে পেতে এবং অ্যাক্সেস পেতে, যার জন্য প্রয়োজন
kubeconfig ফাইল,
যা স্বয়ংক্রিয়ভাবে তৈরি হয় যখন আপনি একটি ক্লাস্টার তৈরি করেন
kube-up.sh
ব্যবহার করে অথবা সফলভাবে একটি Minikube ক্লাস্টার স্থাপন করুন।
ডিফল্টরূপে, kubectl কনফিগারেশন ~/.kube/config এ অবস্থিত।
ক্লাস্টার অবস্থা পেয়ে kubectl সঠিকভাবে কনফিগার করা হয়েছে তা পরীক্ষা করুন:
kubectl cluster-info
আপনি যদি একটি URL দেখতে পান, তাহলে আপনার ক্লাস্টার অ্যাক্সেস করার জন্য kubectl সঠিকভাবে কনফিগার করা হয়েছে।
আপনি যদি নিম্নলিখিতগুলোর মতো একটি বার্তা দেখতে পান, তাহলে বুঝবেন যে kubectl সঠিকভাবে কনফিগার করা হয়নি অথবা একটি Kubernetes ক্লাস্টারের সাথে সংযোগ করতে সক্ষম নয়।
সার্ভারের সাথে সংযোগ <server-name:port> প্রত্যাখ্যান করা হয়েছিল - আপনি কি সঠিক হোস্ট বা পোর্ট উল্লেখ করেছেন?
উদাহরণস্বরূপ, আপনি যদি আপনার ল্যাপটপে (স্থানীয়ভাবে) একটি কুবারনেটিস ক্লাস্টার চালাতে চান, তাহলে আপনাকে প্রথমে মিনিকুবের মতো একটি টুল ইনস্টল করতে হবে এবং তারপরে উপরে বর্ণিত কমান্ডগুলি পুনরায় চালাতে হবে।
যদি kubectl ক্লাস্টার-তথ্য url প্রতিক্রিয়া প্রদান করে কিন্তু আপনি আপনার ক্লাস্টার অ্যাক্সেস করতে না পারেন, এটি সঠিকভাবে কনফিগার করা হয়েছে কিনা তা পরীক্ষা করতে, ব্যবহার করুন:
kubectl cluster-info dump
কুবারনেটিস 1.26-এ, kubectl নিম্নলিখিত ক্লাউড প্রদানকারীদের পরিচালিত কুবারনেটিস অফারগুলোর জন্য অন্তর্নির্মিত অথেনটিকেশন সরিয়ে দিয়েছে। এই প্রদানকারীরা ক্লাউডের-নির্দিষ্ট অথেনটিকেশন প্রদানের জন্য kubectl প্লাগইন প্রকাশ করেছে। নির্দেশাবলীর জন্য, নিম্নলিখিত প্রদানকারী ডকুমেন্টেশন পড়ুন:
(একই ত্রুটির বার্তা দেখার অন্যান্য কারণও থাকতে পারে, এই পরিবর্তনের সাথে সম্পর্কিত নয়।)
kubectl Bash, Zsh, Fish এবং PowerShell-এর জন্য ওটোকম্পিট সমর্থন প্রদান করে, যা আপনাকে অনেক টাইপিং করা থেকে রক্ষা করতে পারে।
পাওয়ারশেলের জন্য ওটোকম্পিট সেট আপ করার পদ্ধতিগুলি নীচে দেওয়া হল।
PowerShell-এর জন্য kubectl সমাপ্তি স্ক্রিপ্ট kubectl completion powershell কমান্ড দিয়ে তৈরি করা যেতে পারে।
আপনার সমস্ত শেল সেশনে এটি করতে, আপনার $PROFILE ফাইলে নিম্নলিখিত লাইন যোগ করুন:
kubectl completion powershell | Out-String | Invoke-Expression
এই কমান্ডটি প্রতিটি PowerShell স্টার্ট আপে স্বয়ংক্রিয় সমাপ্তি স্ক্রিপ্ট পুনরায় তৈরি করবে। আপনি চাইলে জেনারেট করা স্ক্রিপ্টটি সরাসরি আপনার $PROFILE ফাইলে যোগ করতে পারেন।
আপনার $PROFILE ফাইলে জেনারেট করা স্ক্রিপ্ট যোগ করতে, আপনার পাওয়ারশেল প্রম্পটে নিম্নলিখিত লাইনটি চালান:
kubectl completion powershell >> $PROFILE
আপনার শেল পুনরায় লোড করার পরে, kubectl স্বয়ংক্রিয় সমাপ্তি কাজ করা উচিত।
kubectl convert প্লাগইন ইনস্টল করুনকুবারনেটিস কমান্ড-লাইন টুল kubectl এর জন্য একটি প্লাগইন, যা আপনাকে বিভিন্ন আপিআই সংস্করণ এর মধ্যে রূপান্তর করতে দেয়।
এটি নতুন কুবারনেটিস রিলিজের সাথে একটি অ-বঞ্চিত আপিআই সংস্করণে স্থানান্তর করতে বিশেষভাবে সহায়ক হতে পারে।
আরও তথ্যের জন্য, অপ্রচলিত apis-এ মাইগ্রেট করুন
কমান্ড সহ সর্বশেষ রিলিজ ডাউনলোড করুন:
curl.exe -LO "https://dl.k8s.io/release/v1.35.0/bin/windows/amd64/kubectl-convert.exe"
বাইনারি যাচাই করুন (অপশনাল)।
kubectl-convert চেকসাম ফাইলটি ডাউনলোড কর্সনা
curl.exe -LO "https://dl.k8s.io/v1.35.0/bin/windows/amd64/kubectl-convert.exe.sha256"
চেকসাম ফাইলের বিপরীতে kubectl-convert বাইনারি যাচাই করুন:
ডাউনলোড করা চেকসাম ফাইলের সাথে ম্যানুয়ালি CertUtil এর আউটপুট তুলনা করতে কমান্ড প্রম্পট ব্যবহার করে:
CertUtil -hashfile kubectl-convert.exe SHA256
type kubectl-convert.exe.sha256
একটি True বা False ফলাফল পেতে -eq অপারেটর ব্যবহার করে যাচাইকরণ স্বয়ংক্রিয় করতে PowerShell ব্যবহার করে:
$($(CertUtil -hashfile .\kubectl-convert.exe SHA256)[1] -replace " ", "") -eq $(type .\kubectl-convert.exe.sha256)
আপনার PATH এনভায়রনমেন্ট ভেরিয়েবলের সাথে kubectl-convert বাইনারি ফোল্ডারটি অ্যাপেন্ড বা প্রিপেন্ড করুন।
প্লাগইন সফলভাবে ইনস্টল করা হয়েছে যাচাই করুন।
kubectl convert --help
আপনি যদি একটি ত্রুটি দেখতে না পান, এর মানে হল প্লাগইনটি সফলভাবে ইনস্টল করা হয়েছে।
প্লাগইন ইনস্টল করার পরে, ইনস্টলেশন ফাইলগুলি পরিষ্কার করুন:
del kubectl-convert.exe kubectl-convert.exe.sha256
আপনাকে অবশ্যই একটি kubectl সংস্করণ ব্যবহার করতে হবে যা আপনার ক্লাস্টারের একটি ছোট সংস্করণের পার্থক্যের মধ্যে রয়েছে। উদাহরণস্বরূপ, একটি v1.35 ক্লায়েন্ট v1.34, v1.35, এবং v1.36 এর কন্ট্রোল প্লেনের সাথে যোগাযোগ করতে পারে। kubectl এর সর্বশেষ সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করা অপ্রত্যাশিত সমস্যাগুলি এড়াতে সাহায্য করে৷
লিনাক্সে kubectl ইনস্টল করার জন্য নিম্নলিখিত পদ্ধতি বিদ্যমানঃ
১. কমান্ড সহ সর্বশেষ রিলিজ ডাউনলোড করুন:
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
একটি নির্দিষ্ট সংস্করণ ডাউনলোড করতে, নির্দিষ্ট সংস্করণের সাথে কমান্ডের $(curl -L -s https://dl.k8s.io/release/stable.txt) অংশটি প্রতিস্থাপন করুন।
উদাহরণস্বরূপ, লিনাক্সে সংস্করণ 1.35.0 ডাউনলোড করতে, টাইপ করুন:
curl -LO https://dl.k8s.io/release/v1.35.0/bin/linux/amd64/kubectl
২. বাইনারি যাচাই করুন (ঐচ্ছিক)
kubectl চেকসাম ফাইল ডাউনলোড করুন:
curl -LO "https://dl.k8s.io/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256"
চেকসাম ফাইলের বিপরীতে kubectl বাইনারি যাচাই করুন:
echo "$(cat kubectl.sha256) kubectl" | sha256sum --check
বৈধ হলে, আউটপুট হবে:
kubectl: OK
চেক ব্যর্থ হলে, sha256 অশূন্য স্থিতি সহ প্রস্থান করে এবং অনুরূপ আউটপুট প্রিন্ট করে:
kubectl: FAILED
sha256sum: WARNING: 1 computed checksum did NOT match
৩. kubectl ইনস্টল করুন
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
যদি আপনার টার্গেট সিস্টেমে রুট অ্যাক্সেস না থাকে, তাহলেও আপনি ~/.local/bin ডিরেক্টরিতে kubectl ইনস্টল করতে পারেন:
chmod +x kubectl
mkdir -p ~/.local/bin
mv ./kubectl ~/.local/bin/kubectl
# and then append (or prepend) ~/.local/bin to $PATH
৪. আপনার ইনস্টল করা সংস্করণ আপ-টু-ডেট কিনা তা নিশ্চিত করতে পরীক্ষা করুন:
kubectl version --client
উপরের কমান্ডটি একটি সতর্কতা তৈরি করবে:
WARNING: This version information is deprecated and will be replaced with the output from kubectl version --short.
আপনি এই সতর্কতা উপেক্ষা করতে পারেন। আপনি শুধুমাত্র kubectl এর সংস্করণটি পরীক্ষা করছেন যা আপনি ইনস্টল করেছেন।
অথবা সংস্করণের বিস্তারিত দেখার জন্য এটি ব্যবহার করুনঃ
kubectl version --client --output=yaml
১. apt প্যাকেজ ইনডেক্স আপডেট করুন এবং Kubernetes apt রিপোযিটোরী ব্যবহার করার জন্য প্রয়োজনীয় প্যাকেজ ইনস্টল করুন:
sudo apt-get update
sudo apt-get install -y ca-certificates curl
আপনি যদি ডেবিয়ান ৯ (স্ট্রেচ) বা তার আগে ব্যবহার করেন তবে আপনাকে apt-transport-https ইনস্টল করতে হবে:
sudo apt-get install -y apt-transport-https
২. গুগল ক্লাউড পাবলিক সাইনিং কী ডাউনলোড করুন:
sudo curl -fsSLo /etc/apt/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg
৩. কুবারনেটিস apt রিপোযিটোরী যোগ করুন:
echo "deb [signed-by=/etc/apt/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
৪. নতুন রিপোযিটোরীর সাথে apt প্যাকেজ ইনডেক্স আপডেট করুন এবং kubectl ইনস্টল করুন:
sudo apt-get update
sudo apt-get install -y kubectl
/etc/apt/keyrings ডিফল্টরূপে বিদ্যমান নেই।
আপনার প্রয়োজন হলে আপনি এই ডিরেক্টরিটি তৈরি করতে পারেন, এটি ওয়ার্ল্ড-রিডেবল কিন্তু শুধুমাত্র অ্যাডমিনদের দ্বারা লেখার যোগ্য।cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch
enabled=1
gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOF
sudo yum install -y kubectl
kubectl-এর জন্য একটি কুবারনেটিস ক্লাস্টার খুঁজে পেতে এবং অ্যাক্সেস পেতে, যার জন্য প্রয়োজন
kubeconfig ফাইল,
যা স্বয়ংক্রিয়ভাবে তৈরি হয় যখন আপনি একটি ক্লাস্টার তৈরি করেন
kube-up.sh
ব্যবহার করে অথবা সফলভাবে একটি Minikube ক্লাস্টার স্থাপন করুন।
ডিফল্টরূপে, kubectl কনফিগারেশন ~/.kube/config এ অবস্থিত।
ক্লাস্টার অবস্থা পেয়ে kubectl সঠিকভাবে কনফিগার করা হয়েছে তা পরীক্ষা করুন:
kubectl cluster-info
আপনি যদি একটি URL দেখতে পান, তাহলে আপনার ক্লাস্টার অ্যাক্সেস করার জন্য kubectl সঠিকভাবে কনফিগার করা হয়েছে।
আপনি যদি নিম্নলিখিতগুলোর মতো একটি বার্তা দেখতে পান, তাহলে বুঝবেন যে kubectl সঠিকভাবে কনফিগার করা হয়নি অথবা একটি Kubernetes ক্লাস্টারের সাথে সংযোগ করতে সক্ষম নয়।
সার্ভারের সাথে সংযোগ <server-name:port> প্রত্যাখ্যান করা হয়েছিল - আপনি কি সঠিক হোস্ট বা পোর্ট উল্লেখ করেছেন?
উদাহরণস্বরূপ, আপনি যদি আপনার ল্যাপটপে (স্থানীয়ভাবে) একটি কুবারনেটিস ক্লাস্টার চালাতে চান, তাহলে আপনাকে প্রথমে মিনিকুবের মতো একটি টুল ইনস্টল করতে হবে এবং তারপরে উপরে বর্ণিত কমান্ডগুলি পুনরায় চালাতে হবে।
যদি kubectl ক্লাস্টার-তথ্য url প্রতিক্রিয়া প্রদান করে কিন্তু আপনি আপনার ক্লাস্টার অ্যাক্সেস করতে না পারেন, এটি সঠিকভাবে কনফিগার করা হয়েছে কিনা তা পরীক্ষা করতে, ব্যবহার করুন:
kubectl cluster-info dump
কুবারনেটিস 1.26-এ, kubectl নিম্নলিখিত ক্লাউড প্রদানকারীদের পরিচালিত কুবারনেটিস অফারগুলোর জন্য অন্তর্নির্মিত অথেনটিকেশন সরিয়ে দিয়েছে। এই প্রদানকারীরা ক্লাউডের-নির্দিষ্ট অথেনটিকেশন প্রদানের জন্য kubectl প্লাগইন প্রকাশ করেছে। নির্দেশাবলীর জন্য, নিম্নলিখিত প্রদানকারী ডকুমেন্টেশন পড়ুন:
(একই ত্রুটির বার্তা দেখার অন্যান্য কারণও থাকতে পারে, এই পরিবর্তনের সাথে সম্পর্কিত নয়।)
kubectl Bash, Zsh, Fish এবং PowerShell-এর জন্য অটোকম্পিসন সমর্থন প্রদান করে, যা আপনাকে অনেক টাইপিং বাঁচাতে পারে।
নীচে Bash, Fish, এবং Zsh-এর জন্য স্বয়ংসম্পূর্ণতা সেট আপ করার পদ্ধতিগুলি রয়েছে৷
ব্যাশ-এর জন্য kubectl কমপ্লিশন স্ক্রিপ্ট kubectl completion bash কমান্ড দিয়ে তৈরি করা যেতে পারে। আপনার শেলে সমাপ্তি স্ক্রিপ্ট সোর্স করা kubectl অটোকমপ্লিসন সক্ষম করে।
যাইহোক, কমপ্লিসন স্ক্রিপ্ট ব্যাশ-কমপ্লিসন এর উপর নির্ভর করে, তার মানে হচ্ছে আপনাকে প্রথমে এই সফ্টওয়্যারটি ইনস্টল করতে হবে (আপনার ব্যাশ-কমপ্লিসন ইতিমধ্যেই ইনস্টল করা আছে কিনা তা type _init_completion চালিয়ে পরীক্ষা করতে পারেন)।
ব্যাশ-কমপ্লিসন অনেক প্যাকেজ ম্যানেজার দ্বারা প্রদান করা হয় (এখানে দেখুন)। আপনি এটিকে apt-get install bash-completion অথবা yum install bash-completion, ইত্যাদি দিয়ে ইনস্টল করতে পারেন।
উপরের কমান্ডগুলি /usr/share/bash-completion/bash_completion তৈরি করে, যা ব্যাশ-কমপ্লিসন এর প্রধান স্ক্রিপ্ট। আপনার প্যাকেজ ম্যানেজারের উপর নির্ভর করে, আপনাকে ম্যানুয়ালি এই ফাইলটি আপনার ~/.bashrc ফাইলে সোর্স করতে হবে।
জানতে চাইলে, আপনার শেল পুনরায় লোড করুন এবং type_init_completion চালান। কমান্ডটি সফল হলে, আপনি ইতিমধ্যেই সেট করেছেন, অন্যথায় আপনার ~/.bashrc ফাইলে নিম্নলিখিত যোগ করুন:
source /usr/share/bash-completion/bash_completion
আপনার শেল পুনরায় লোড করুন এবং type _init_completion লিখে ব্যাশ-কমপ্লিসন সঠিকভাবে ইনস্টল করা হয়েছে কিনা তা যাচাই করুন।
আপনাকে এখন নিশ্চিত করতে হবে যে kubectl সমাপ্তি স্ক্রিপ্টটি আপনার সমস্ত শেল সেশনে পাওয়া যায়। আপনি এটি করতে পারেন যা দুটি উপায় আছেঃ
echo 'source <(kubectl completion bash)' >>~/.bashrc
kubectl completion bash | sudo tee /etc/bash_completion.d/kubectl > /dev/null
আপনার যদি kubectl এর জন্য একটি অ্যালিঅ্যাস থাকে তবে আপনি সেই অ্যালিঅ্যাসের সাথে কাজ করার জন্য শেল কমপ্লিসন বাড়াতে পারেনঃ
echo 'alias k=kubectl' >>~/.bashrc
echo 'complete -o default -F __start_kubectl k' >>~/.bashrc
/etc/bash_completion.d-এ সমস্ত কমপ্লিসন স্ক্রিপ্ট।উভয় পন্থা সমতুল্য। আপনার শেল পুনরায় লোড করার পরে, kubectl অটোকমপ্লিসন কাজ করা উচিত। শেলের বর্তমান সেশনে ব্যাশ অটোকমপ্লিসন সক্ষম করতে, ~/.bashrc ফাইলটি উৎস করুনঃ
source ~/.bashrc
fish এর জন্য kubectl সমাপ্তি স্ক্রিপ্ট kubectl completion fish কমান্ড দিয়ে তৈরি করা যেতে পারে। আপনার শেলের মধ্যে সমাপ্তি স্ক্রিপ্ট সোর্স করা kubectl স্বয়ংক্রিয় সমাপ্তি চালু করে।
আপনার সমস্ত শেল সেশনে এটি করতে, আপনার ~/.config/fish/config.fish ফাইলে নিম্নলিখিত লাইন যুক্ত করুন:
kubectl completion fish | source
আপনার শেল পুনরায় লোড করার পরে, kubectl স্বয়ংক্রিয় সমাপ্তি কাজ করা উচিত।
Zsh-এর জন্য kubectl কমপ্লিশন স্ক্রিপ্ট kubectl completion zsh কমান্ড দিয়ে তৈরি করা যেতে পারে। আপনার শেলে সমাপ্তি স্ক্রিপ্ট সোর্স করা kubectl স্বয়ংসম্পূর্ণতা সক্ষম করে। 12
আপনার সমস্ত শেল সেশনে এটি করতে, আপনার ~/.zshrc ফাইলে নিম্নলিখিত যোগ করুন:
source <(kubectl completion zsh)
আপনার যদি kubectl-এর একটি উপনাম থাকে, kubectl স্বয়ংসম্পূর্ণতা স্বয়ংক্রিয়ভাবে এটির সাথে কাজ করবে।
আপনার শেল পুনরায় লোড করার পরে, kubectl স্বয়ংসম্পূর্ণতা কাজ করা উচিত।
যদি আপনি একটি ত্রুটি পান যেমন 2: command not found: compdef, তাহলে আপনার ~/.zshrc ফাইলের শুরুতে নিম্নলিখিত যোগ করুন:
autoload -Uz compinit
compinit
kubectl convert প্লাগইন ইনস্টল করুনকুবারনেটিস কমান্ড-লাইন টুল kubectl এর জন্য একটি প্লাগইন, যা আপনাকে বিভিন্ন আপিআই সংস্করণ এর মধ্যে রূপান্তর করতে দেয়।
এটি নতুন কুবারনেটিস রিলিজের সাথে একটি অ-বঞ্চিত আপিআই সংস্করণে স্থানান্তর করতে বিশেষভাবে সহায়ক হতে পারে।
আরও তথ্যের জন্য, অপ্রচলিত apis-এ মাইগ্রেট করুন
১. কমান্ড সহ সর্বশেষ রিলিজ ডাউনলোড করুন:
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl-convert"
২. বাইনারি যাচাই করুন (ঐচ্ছিক)
kubectl-convert চেকসাম ফাইলটি ডাউনলোড করুন:
curl -LO "https://dl.k8s.io/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl-convert.sha256"
চেকসাম ফাইলের বিপরীতে kubectl-রূপান্তর বাইনারি যাচাই করুন:
echo "$(cat kubectl-convert.sha256) kubectl-convert" | sha256sum --check
বৈধ হলে, আউটপুট হল:
kubectl-convert: OK
চেক ব্যর্থ হলে, sha256 অশূন্য স্থিতি সহ প্রস্থান করে এবং অনুরূপ আউটপুট প্রিন্ট করে:
kubectl-convert: FAILED
sha256sum: WARNING: 1 computed checksum did NOT match
৩. kubectl-convert ইনস্টল করুন
sudo install -o root -g root -m 0755 kubectl-convert /usr/local/bin/kubectl-convert
৪. প্লাগইন সফলভাবে ইনস্টল করা হয়েছে যাচাই করুন
kubectl convert --help
আপনি যদি একটি ত্রুটি দেখতে না পান, এর মানে হল প্লাগইনটি সফলভাবে ইনস্টল করা হয়েছে।
৫. প্লাগইন ইনস্টল করার পরে, ইনস্টলেশন ফাইলগুলি পরিষ্কার করুন:
rm kubectl-convert kubectl-convert.sha256