এই ডকুমেন্টে তথ্য পুরানো হতে পারে
এই ডকুমেন্টটির আসলটির চেয়ে পুরানো আপডেটের তারিখ রয়েছে, তাই এতে থাকা তথ্য পুরানো হতে পারে৷ আপনি ইংরেজি পড়তে সক্ষম হলে, সবচেয়ে আপ-টু-ডেট তথ্যের জন্য ইংরেজি ভার্সনটি দেখুন: Production environment
প্রোডাকশন এনভায়রনমেন্ট
একটি প্রোডাকশন-কোয়ালিটির কুবারনেটিস ক্লাস্টারের জন্য পরিকল্পনা এবং প্রস্তুতি প্রয়োজন। আপনার কুবারনেটিস ক্লাস্টার যদি গুরুতর ওয়ার্কলোড চালাতে হয়, তাহলে এটি অবশ্যই সহনশীল হওয়ার জন্য কনফিগার করতে হবে। এই পৃষ্ঠাটি ব্যাখ্যা করে যে আপনি একটি প্রোডাকশন-রেডি ক্লাস্টার সেট আপ করতে নিতে পারেন, অথবা প্রোডাকশন ব্যবহারের জন্য একটি বিদ্যমান ক্লাস্টার প্রচার করতে পারেন। আপনি যদি ইতিমধ্যেই প্রোডাকশন সেটআপের সাথে পরিচিত হন এবং লিঙ্কগুলি চান তবে সরাসরি পরবর্তী কি তে যান।
প্রোডাকশন বিবেচনা
সাধারণত, ব্যক্তিগত শিক্ষা, ডেভেলপমেন্ট, বা টেস্ট এনভায়রনমেন্ট কুবারনেটিস এর চেয়ে বেশি প্রয়োজনীয়তা রয়েছে একটি প্রোডাকশন কুবারনেটিস ক্লাস্টার এনভায়রনমেন্টে। একটি প্রোডাকশন এনভায়রনমেন্টের প্রয়োজন হতে পারে অনেক ব্যবহারকারীর দ্বারা নিরাপদ অ্যাক্সেস, ধারাবাহিক প্রাপ্যতা, এবং চাহিদা পরিবর্তনে মানিয়ে নেওয়ার জন্য রিসোর্স।
আপনি যেখানে আপনার প্রোডাকশন কুবারনেটিস এনভায়রনমেন্ট লাইভ করাতে চান তা নির্ধারণ করুন (প্রেমিসেস বা একটি ক্লাউড) এবং আপনি যে পরিমাণ ব্যবস্থাপনা নিতে চান বা অন্যদের হাতে দিতে চান, বিবেচনা করুন কিভাবে একটি কুবারনেটিস ক্লাস্টারের জন্য আপনার প্রয়োজনীয়তাগুলি নিম্নলিখিত সমস্যাগুলির দ্বারা প্রভাবিত হয়:
প্রাপ্যতা: একটি একক-মেশিন কুবারনেটিস লার্নিং এনভায়রনমেন্ট ব্যর্থতার একক পয়েন্ট আছে। একটি অত্যন্ত প্রাপ্য ক্লাস্টার তৈরি করার অর্থ বিবেচনা করা:
- ওয়ার্কার নোড থেকে কন্ট্রোল প্লেন আলাদা করা।
- মাল্টিপল নোডের উপর কন্ট্রোল প্লেন কম্পোনেন্ট প্রতিলিপি করা।
- ক্লাস্টারের API সার্ভার-এ ব্যালেন্সিং ট্রাফিক লোড করুন।
- পর্যাপ্ত ওয়ার্কার নোড এভেইল্যাবল থাকা, বা দ্রুত এভেইল্যাবল হতে সক্ষম, কারণ পরিবর্তিত ওয়ার্কলোড এটি নিশ্চিত করে।
স্কেল: আপনি যদি আশা করেন আপনার প্রোডাকশন কুবারনেটিস এনভায়রনমেন্ট একটি স্থিতিশীল পরিমাণে চাহিদা পাবে, তাহলে আপনি আপনার প্রয়োজনীয় ক্ষমতার জন্য সেট আপ করতে সক্ষম হবেন এবং সম্পন্ন হবেন। কিন্তু, যদি সময়ের সাথে সাথে আপনার চাহিদা বাড়ে বা নাটকীয়ভাবে পরিবর্তন করে সিজন বা বিশেষ ইভেন্টের মতো জিনিসের উপর ভিত্তি করে, তাহলে আপনাকে পরিকল্পনা করতে হবে কিভাবে কন্ট্রোল প্লেন এবং ওয়ার্কার নোডগুলিতে আরও অনুরোধ থেকে বর্ধিত চাপ কমাতে বা অব্যবহৃত রিসোর্সগুলি কমাতে স্কেল কমাতে হবে।
নিরাপত্তা এবং অ্যাক্সেস ব্যবস্থাপনা: আপনার নিজের কুবারনেটিস লার্নিং ক্লাস্টারে আপনার সম্পূর্ণ অ্যাডমিন সুবিধা রয়েছে। কিন্তু গুরুত্বপূর্ণ ওয়ার্কলোড সহ ভাগ করা ক্লাস্টার, এবং এক বা দুইজনের বেশি ব্যবহারকারীর জন্য কে এবং কি ক্লাস্টার রিসোর্স অ্যাক্সেস করতে পারে তার জন্য আরও পরিমার্জিত পদ্ধতির প্রয়োজন। আপনি রোল-বেসড অ্যাক্সেস কন্ট্রোল (RBAC) এবং অন্যান্য নিরাপত্তা ব্যবস্থা ব্যবহার করতে পারেন যাতে ব্যবহারকারী এবং ওয়ার্কলোড তাদের প্রয়োজনীয় রিসোর্সগুলিতে অ্যাক্সেস পেতে পারে ওয়ার্কলোড, এবং ক্লাস্টার নিজেই নিরাপদ। পলিসি এবং কন্টেইনার রিসোর্স পরিচালনার মাধ্যমে ব্যবহারকারী এবং ওয়ার্কলোড যে রিসোর্সগুলি অ্যাক্সেস করতে পারে তার উপর আপনি সীমা নির্ধারণ করতে পারেন।
কুবারনেটিস প্রোডাকশন এনভায়রনমেন্ট নিজে থেকে তৈরি করার আগে, এই কাজের কিছু বা সমস্ত কিছু টার্নকি ক্লাউড সলিউশন প্রদানকারী বা অন্যান্য কুবারনেটিস পার্টনারস এর কাছে হস্তান্তর করার কথা বিবেচনা করুন। বিকল্প অন্তর্ভুক্ত:
- সার্ভারহীন: কোনও ক্লাস্টার পরিচালনা না করেই কেবল তৃতীয় পক্ষের টুলসগুলিতে ওয়ার্কলোড চালান। CPU ব্যবহার, মেমরি এবং ডিস্ক অনুরোধের মতো জিনিসগুলির জন্য আপনাকে চার্জ করা হবে।
- ম্যানেজড কন্ট্রোল প্লেন: প্রদানকারীকে স্কেল এবং প্রাপ্যতা পরিচালনা করতে দিন ক্লাস্টারের কন্ট্রোল প্লেন, সেইসাথে প্যাচ এবং আপগ্রেড হ্যান্ডেল করতে দিন।
- ম্যানেজড ওয়ার্কার নোড: আপনার প্রয়োজন মেটাতে নোডের পুল কনফিগার করুন, তারপর প্রদানকারী নিশ্চিত করে যে সেই নোডগুলি আয়ত্তগত এবং প্রয়োজনে আপগ্রেড বাস্তবায়নের জন্য প্রস্তুত।
- ইন্টিগ্রেশন: এমন প্রদানকারী আছে যারা কুবারনেটিসকে অন্য সার্ভিসের সাথে একীভূত করে যা আপনার প্রয়োজন হতে পারে, যেমন স্টোরেজ, কন্টেইনার রেজিস্ট্রি, অথেনটিকেশন পদ্ধতি, এবং ডেভেলপমেন্ট টুলস।
আপনি নিজে একটি প্রোডাকশন কুবারনেটিস ক্লাস্টার তৈরি করুন বা অংশীদার এর সাথে কাজ করুন, নিম্নলিখিত বিভাগগুলি পর্যালোচনা করুন যাতে আপনার প্রয়োজনগুলি মূল্যায়ন করা যায় আপনার ক্লাস্টারের কন্ট্রোল প্লেন, ওয়ার্কার নোড, ইউজার অ্যাক্সেস, এবং ওয়ার্কলোড রিসোর্স।
প্রোডাকশন ক্লাস্টার সেটআপ
একটি প্রোডাকশন-কোয়ালিটির কুবারনেটিস ক্লাস্টারে, কন্ট্রোল প্লেন সার্ভিসগুলি থেকে ক্লাস্টার পরিচালনা করে যা মাল্টিপল কম্পিউটারে ছড়িয়ে দেওয়া যেতে পারে বিভিন্ন উপায়ে. প্রতিটি ওয়ার্কার নোড, যাইহোক, একটি একক সত্তা প্রতিনিধিত্ব করে যে কুবারনেটিস পড চালানোর জন্য কনফিগার করা হয়েছে।
প্রোডাকশন কন্ট্রোল প্লেন
সহজতম কুবারনেটিস ক্লাস্টারে একই মেশিনে পুরো কন্ট্রোল প্লেন এবং ওয়ার্কার নোড সার্ভিসগুলি চলে। আপনি ওয়ার্কার নোডগুলি যোগ করে সেই এনভায়রনমেন্ট বাড়াতে পারেন, যেমনটি কুবারনেটিস কম্পোনেন্ট এ চিত্রিত চিত্রে প্রতিফলিত হয়েছে। যদি ক্লাস্টারটি অল্প সময়ের জন্য পাওয়া যায় বা কিছু গুরুতর ভুল হয়ে গেলে তা বাতিল করা যেতে পারে, তাহলে এটি আপনার প্রয়োজন মেটাতে পারে।
আপনার যদি আরও স্থায়ী, অত্যন্ত সহজলভ্য ক্লাস্টারের প্রয়োজন হয় তবে, আপনার কন্ট্রোল প্লেন প্রসারিত করার উপায়গুলি বিবেচনা করা উচিত। নকশা অনুসারে, একক মেশিনে চলমান এক-মেশিন কন্ট্রোল প্লেন সার্ভিসগুলি খুব বেশি সহজলভ্য নয়। যদি ক্লাস্টার চালু রাখা এবং চালানো এবং কিছু ভুল হয়ে গেলে তা মেরামত করা যায় তা নিশ্চিত করা গুরুত্বপূর্ণ, এই পদক্ষেপগুলি বিবেচনা করুন:
- ডিপ্লয়মেন্ট টুল নির্বাচন করুন: আপনি kubeadm, kops, এবং kubespray-এর মতো টুল ব্যবহার করে একটি কন্ট্রোল প্লেন স্থাপন করতে পারেন। প্রতিটি ডিপ্লয়মেন্ট পদ্ধতি ব্যবহার করে প্রোডাকশন-কোয়ালিটির ডিপ্লয়মেন্টের জন্য টিপস শিখতে ডিপ্লয়মেন্ট টুলের সাথে কুবারনেটিস ইনস্টল করার পদ্ধতি দেখুন। বিভিন্ন কন্টেইনার রানটাইম আপনার ডিপ্লয়মেন্টের সাথে ব্যবহার করার জন্য সহজলভ্য।
- সার্টিফিকেট পরিচালনা করুন: কন্ট্রোল প্লেন সার্ভিসগুলির মধ্যে সুরক্ষিত যোগাযোগ সার্টিফিকেট ব্যবহার করে প্রয়োগ করা হয়। সার্টিফিকেটগুলি স্থাপনের সময় স্বয়ংক্রিয়ভাবে তৈরি হয় বা আপনি আপনার নিজের সার্টিফিকেট কর্তৃপক্ষ ব্যবহার করে সেগুলি তৈরি করতে পারেন৷ বিস্তারিত জানার জন্য PKI সার্টিফিকেট এবং প্রয়োজনীয়তা দেখুন।
- apiserver এর জন্য লোড ব্যালেন্সার কনফিগার করুন: বিভিন্ন নোডে চলমান apiserver সার্ভিস দৃষ্টান্তগুলিতে বহিরাগত API অনুরোধগুলি বিতরণ করতে একটি লোড ব্যালেন্সার কনফিগার করুন। দেখুন একটি বাহ্যিক লোড ব্যালেন্সার তৈরি করুন বিস্তারিত জানার জন্য.
- পৃথক এবং ব্যাকআপ etcd সার্ভিস: etcd সার্ভিসগুলি হয় অন্যান্য কন্ট্রোল প্লেন সার্ভিসগুলির মতো একই মেশিনে চলতে পারে বা অতিরিক্ত নিরাপত্তা এবং প্রাপ্যতার জন্য আলাদা মেশিনে চলতে পারে। যেহেতু etcd ক্লাস্টার কনফিগারেশন ডেটা সঞ্চয় করে, তাই etcd ডাটাবেসের ব্যাকআপ নিয়মিত করা উচিত যাতে আপনি প্রয়োজনে সেই ডাটাবেসটি মেরামত করতে পারেন। etcd কনফিগার করা এবং ব্যবহার করার বিষয়ে বিস্তারিত জানার জন্য etcd FAQ দেখুন। কুবারনেটিস-এর জন্য অপারেটিং etcd ক্লাস্টার দেখুন এবং kubeadm-এর সাথে একটি উচ্চ প্রাপ্যতা etcd ক্লাস্টার সেট আপ করুন বিস্তারিত জানার জন্য।
- মাল্টিপল কন্ট্রোল প্লেন সিস্টেম তৈরি করুন: উচ্চ প্রাপ্যতা জন্য, কন্ট্রোল প্লেন একটি একক মেশিনে সীমাবদ্ধ করা উচিত নয়। যদি কন্ট্রোল প্লেন সার্ভিসগুলি একটি init সার্ভিস দ্বারা চালিত হয় (যেমন systemd), প্রতিটি সার্ভিস কমপক্ষে তিনটি মেশিনে চালানো উচিত। যাইহোক, কুবারনেটিস-এ পড হিসাবে কন্ট্রোল প্লেন সার্ভিসগুলি চালানো নিশ্চিত করে যে আপনার অনুরোধ করা সার্ভিসগুলির প্রতিলিপিকৃত সংখ্যা সর্বদা সহজলভ্য থাকবে৷ সময়সূচী ত্রুটি সহনশীল হওয়া উচিত, কিন্তু অত্যন্ত সহজলভ্য নয়। কুবারনেটিস সার্ভিসগুলির লিডার নির্বাচন করার জন্য কিছু ডিপ্লয়মেন্টে টুলগুলি Raft সম্মতিমূলক অ্যালগরিদম সেট আপ করে৷ যদি প্রাইমারিটা চলে যায়, অন্য একটি সার্ভিস নিজেকে নির্বাচন করে এবং দখল করে নেয়।
- মাল্টিপল জোন স্প্যান করুন: যদি আপনার ক্লাস্টারকে সর্বদা এভেইল্যাবল রাখা গুরুত্বপূর্ণ হয়, তবে একটি ক্লাস্টার তৈরি করার কথা বিবেচনা করুন যা মাল্টিপল ডেটা সেন্টার জুড়ে চলে, ক্লাউড এনভায়রনমেন্টে জোন হিসাবে উল্লেখ করা হয়। জোনের গ্রুপগুলিকে রিজিওন হিসাবে উল্লেখ করা হয়। একই রিজিওনে মাল্টিপল জোনে একটি ক্লাস্টার ছড়িয়ে দেওয়ার মাধ্যমে, এটি একটি জোন অপ্রাপ্য হয়ে গেলেও আপনার ক্লাস্টারটি কাজ করা চালিয়ে যাওয়ার সম্ভাবনাকে উন্নত করতে পারে। বিস্তারিত জানার জন্য মাল্টিপল জোনে চলমান দেখুন।
- চলমান ফিচারগুলি পরিচালনা করুন: আপনি যদি সময়ের সাথে সাথে আপনার ক্লাস্টার রাখার পরিকল্পনা করেন তবে এর স্বাস্থ্য এবং নিরাপত্তা বজায় রাখার জন্য আপনাকে কিছু কাজ করতে হবে। উদাহরণস্বরূপ, আপনি যদি kubeadm-এর সাথে ইনস্টল করেন, তাহলে আপনাকে সার্টিফিকেট ম্যানেজমেন্ট এবং kubeadm ক্লাস্টার আপগ্রেড করা সাহায্য করার জন্য নির্দেশাবলী রয়েছে। কুবারনেটিস অ্যাডমিনিস্ট্রেটিভ কাজগুলির একটি দীর্ঘ তালিকার জন্য একটি ক্লাস্টার পরিচালনা দেখুন।
আপনি যখন কন্ট্রোল প্লেন সার্ভিসগুলি চালান তখন এভেইল্যাবল বিকল্পগুলি সম্পর্কে জানতে, kube-apiserver, kube-controller-manager দেখুন, এবং kube-scheduler কম্পোনেন্ট পৃষ্ঠা। হাইলি এভেইল্যাবল কন্ট্রোল প্লেন উদাহরণের জন্য, হাইলি এভেইল্যাবল টপোলজির বিকল্পগুলি, kubeadm-এর সাহায্যে হাইলি এভেইল্যাবল ক্লাস্টার তৈরি করা দেখুন, এবং অপারেটিং etcd ক্লাস্টার-এর জন্য কুবারনেটিস। একটি etcd ব্যাকআপ প্ল্যান তৈরির তথ্যের জন্য একটি etcd ক্লাস্টার ব্যাক আপ করা দেখুন।
প্রোডাকশন ওয়ার্কার নোড
প্রোডাকশন-কোয়ালিটির ওয়ার্কলোড স্থিতিস্থাপক হতে হবে এবং তারা যেকোন কিছুর উপর নির্ভর করে স্থিতিস্থাপক হতে হবে (যেমন CoreDNS)। আপনি নিজের কন্ট্রোল প্লেন পরিচালনা করুন বা একটি ক্লাউড প্রদানকারী আপনার জন্য এটা করে, আপনাকে বিবেচনা করতে হবে কিভাবে আপনি আপনার ওয়ার্কার নোডগুলি পরিচালনা করতে চান (এছাড়াও সহজভাবে নোড হিসাবে উল্লেখ করা হয়)।
- নোডগুলি কনফিগার করুন: নোডগুলি ফিজিক্যাল বা ভার্চুয়াল মেশিন হতে পারে। আপনি যদি
নিজের নোডগুলি তৈরি করতে এবং পরিচালনা করতে চান তবে আপনি একটি সমর্থিত অপারেটিং সিস্টেম ইনস্টল করতে পারেন,
তারপরে উপযুক্ত নোড সার্ভিসগুলি
যোগ করুন এবং চালান। বিবেচনা করুন:
- উপযুক্ত মেমরি, সিপি উ, এবং ডিস্কের গতি এবং স্টোরেজ ক্ষমতা এভেইল্যাবল থাকার মাধ্যমে আপনি যখন নোড সেট আপ করেন তখন আপনার ওয়ার্কলোডের চাহিদা।
- জেনেরিক কম্পিউটার সিস্টেমগুলি করবে কিনা বা আপনার কাছে এমন ওয়ার্কলোড আছে যেগুলির জন্য জিপিউ প্রসেসর, উইন্ডোজ নোড, বা ভিএম আইসোলেশন প্রয়োজন।
- ভ্যালিডেট নোড: কিভাবে একটি নোড একটি কুবারনেটিস ক্লাস্টারে যোগদানের প্রয়োজনীয়তা পূরণ করে তা নিশ্চিত করার তথ্যের জন্য ভ্যালিড নোড সেটআপ দেখুন।
- ক্লাস্টারে নোড যোগ করুন: আপনি যদি নিজের ক্লাস্টার পরিচালনা করেন তাহলে আপনি আপনার নিজস্ব মেশিন সেট আপ করে নোড যোগ করতে পারেন এবং হয় সেগুলিকে ম্যানুয়ালি যোগ করে অথবা ক্লাস্টারের apiserver এ নিজেদের নিবন্ধন করতে পারেন। এই উপায়ে নোড যোগ করার জন্য কুবারনেটিস কিভাবে সেট আপ করতে হয় সে সম্পর্কে তথ্যের জন্য নোডসমুহ বিভাগটি দেখুন।
- নোড স্কেল করুন: আপনার ক্লাস্টারের শেষ পর্যন্ত যে ক্ষমতা প্রয়োজন তা প্রসারিত করার জন্য একটি পরিকল্পনা করুন। আপনার চালানোর জন্য কতগুলি পড এবং কন্টেইনার প্রয়োজন তার উপর ভিত্তি করে আপনার কতগুলি নোড প্রয়োজন তা নির্ধারণ করতে সাহায্য করতে বড় ক্লাস্টারগুলির জন্য বিবেচনা দেখুন। আপনি যদি নিজে নোড পরিচালনা করেন, তাহলে এর অর্থ হতে পারে আপনার নিজের ফিজিক্যাল টুল কেনা এবং ইনস্টল করা।
- নোড অটোস্কেল করুন: আপনার নোডগুলি স্বয়ংক্রিয়ভাবে পরিচালনা করার জন্য উপলব্ধ সরঞ্জামগুলি এবং তাদের সরবরাহ করা ক্ষমতা সম্পর্কে জানতে Cluster Autoscaling পড়ুন।
- নোড স্বাস্থ্য পরীক্ষা সেট আপ করুন: গুরুত্বপূর্ণ ওয়ার্কলোডের জন্য, আপনি নিশ্চিত করতে চান যে সেই নোডগুলিতে চলমান নোড এবং পডগুলি স্বাস্থ্যকর। নোড প্রবলেম ডিটেক্টর daemon ব্যবহার করে, আপনি নিশ্চিত করতে পারেন আপনার নোডগুলি সুস্থ।
প্রোডাকশন ব্যবহারকারী ব্যবস্থাপনা
প্রোডাকশনে, আপনি হয়ত এমন একটি মডেল থেকে সরে যাচ্ছেন যেখানে আপনি বা একটি ছোট গ্রুপ ক্লাস্টারে প্রবেশ করছেন যেখানে সম্ভাব্য কয়েক ডজন বা শত শত লোক থাকতে পারে। একটি লার্নিং এনভায়রনমেন্ট বা প্ল্যাটফর্ম প্রোটোটাইপে, আপনি যা করেন তার জন্য আপনার একটি একক অ্যাডমিনিস্ট্রেটিভ অ্যাকাউন্ট থাকতে পারে । প্রোডাকশনে, আপনি বিভিন্ন নেমস্পেসে বিভিন্ন স্তরের অ্যাক্সেস সহ আরও অ্যাকাউন্ট চাইবেন।
একটি প্রোডাকশন-কোয়ালিটির ক্লাস্টার নেওয়ার অর্থ হল আপনি কীভাবে বেছে বেছে অন্য ব্যবহারকারীদের অ্যাক্সেসের অনুমতি দিতে চান তা নির্ধারণ করা। বিশেষ করে, যারা আপনার ক্লাস্টার (অথেনটিকেশন) অ্যাক্সেস করার চেষ্টা করে তাদের পরিচয় যাচাই করার জন্য এবং তারা যা জিজ্ঞাসা করছে (অথোরাইজেশন) করার অনুমতি আছে কিনা তা নির্ধারণ করার জন্য আপনাকে কৌশল নির্বাচন করতে হবেঃ
- অথেনটিকেশন: apiserver ব্যবহারকারীদের অথেনটিকেশন করতে পারে ক্লায়েন্ট সার্টিফিকেট, bearer টোকেন, একটি অথেনটিকেশন প্রক্সি, বা HTTP মৌলিক অথেনটিকেশন ব্যবহার করে। আপনি কোন অথেনটিকেশন পদ্ধতি ব্যবহার করতে চান তা নির্বাচন করতে পারেন। প্লাগইন ব্যবহার করে, apiserver আপনার প্রতিষ্ঠানের বিদ্যমান সুবিধা নিতে পারে অথেনটিকেশন পদ্ধতি, যেমন LDAP বা Kerberos। দেখা অথেনটিকেশন কুবারনেটিস ব্যবহারকারীদের অথেনটিকেশনের এই বিভিন্ন পদ্ধতির বর্ণনার জন্য।
- অথোরাইজেশন: আপনি যখন আপনার নিয়মিত ব্যবহারকারীদের অথোরাইজেশন করার জন্য প্রস্তুত হন, আপনি সম্ভবত
RBAC এবং ABAC অথোরাইজেশনের মধ্যে বেছে নেবেন। ব্যবহারকারীর অ্যাকাউন্ট অথোরাইজেশনের জন্য বিভিন্ন মোড পর্যালোচনা করতে
অথোরাইজেশন ওভারভিউ দেখুন (সেইসাথে আপনার ক্লাস্টারে সার্ভিস
অ্যাকাউন্ট অ্যাক্সেস):
- রোল-বেসড অ্যাক্সেস কন্ট্রোল (RBAC): অথেন্টিকেটেড ব্যবহারকারীদের নির্দিষ্ট সেটের অনুমতি প্রদান করে আপনাকে আপনার ক্লাস্টারে অ্যাক্সেস বরাদ্দ করতে দেয়। একটি নির্দিষ্ট নেমস্পেস (Role) বা সমগ্র ক্লাস্টার জুড়ে (ClusterRole) অনুমতিগুলি বরাদ্দ করা যেতে পারে। তারপর RoleBindings এবং ClusterRoleBindings ব্যবহার করে, সেই অনুমতিগুলি নির্দিষ্ট ব্যবহারকারীদের সাথে সংযুক্ত করা যেতে পারে।
- অ্যাট্রিবিউট-বেসড অ্যাক্সেস কন্ট্রোল (ABAC): আপনাকে ক্লাস্টারে রিসোর্স অ্যাট্রিবিউটের উপর ভিত্তি করে পলিসি তৈরি করতে দেয় এবং সেই অ্যাট্রিবিউটগুলির উপর ভিত্তি করে অ্যাক্সেসের অনুমতি দেয় বা অস্বীকার করে। একটি পলিসি ফাইলের প্রতিটি লাইন ভার্শনিং বৈশিষ্ট্য (apiVersion এবং kind) এবং বিষয় (ব্যবহারকারী বা গ্রুপ), রিসোর্স বৈশিষ্ট্য, নন-রিসোর্সে বৈশিষ্ট্য (/version বা /apis) এবং শুধুমাত্র পঠনযোগ্য বৈশিষ্ট্যের সাথে মেলে বিশেষ বৈশিষ্ট্যগুলির একটি মানচিত্র সনাক্ত করে। বিস্তারিত জানার জন্য উদাহরণ দেখুন.
যেহেতু কেউ আপনার প্রোডাকশন কুবারনেটস ক্লাস্টারে অথেনটিকেশন এবং অথোরাইজেশন সেট আপ করছে, এখানে কিছু বিষয় বিবেচনা করার আছেঃ
- অথোরাইজেশন মোড সেট করুন: যখন Kubernetes API সার্ভার (kube-apiserver) শুরু হয়, তখন সমর্থিত অথেনটিকেশন মোডগুলি --authorization-mode ফ্ল্যাগ ব্যবহার করে সেট করতে হবে। উদাহরণস্বরূপ, kube-adminserver.yaml ফাইলে (/etc/kubernetes/manifests-এ) সেই ফ্ল্যাগটি Node,RBAC-তে সেট করা যেতে পারে। এটি অথেন্টিকেটেড অনুরোধের জন্য নোড এবং RBAC অথোরাইজেশনের অনুমতি দেবে।
- ব্যবহারকারী সার্টিফিকেট এবং রোল বাইন্ডিং (RBAC)ভর্তি নিয়ন্ত্রক বিবেচনা করুন: আপনি যদি RBAC অথোরাইজেশন ব্যবহার করেন, ব্যবহারকারীরা একটি CertificateSigningRequest (CSR) তৈরি করতে পারে যা ক্লাস্টার CA দ্বারা স্বাক্ষরিত হতে পারে। তারপর আপনি প্রতিটি ব্যবহারকারীর রোল এবং ক্লাস্টার রোল বাইন্ড করতে পারেন। বিস্তারিত জানার জন্য সার্টিফিকেট স্বাক্ষরের অনুরোধ দেখুন।
- অ্যাট্রিবিউটগুলিকে একত্রিত করে এমন পলিসি তৈরি করুন (ABAC): আপনি যদি ABAC অথোরাইজেশন ব্যবহার করেন, আপনি নির্দিষ্ট রিসোর্সগুলি (যেমন একটি পড), নেমস্পেস, বা apiGroup অ্যাক্সেস করার জন্য নির্বাচিত ব্যবহারকারী বা গ্রুপগুলিকে অথোরাইজেশন করার জন্য পলিসিগুলি গঠনের জন্য অ্যাট্রিবিউটগুলিকে সংমিশ্রণ বরাদ্দ করতে পারেন। আরও তথ্যের জন্য, উদাহরণ দেখুন।
- অ্যাডমিশন কন্ট্রোলারদের বিবেচনা করুন: API সার্ভারের মাধ্যমে যে অনুরোধগুলি আসতে পারে তার অথোরাইজেশনের অতিরিক্ত ফর্মগুলির মধ্যে রয়েছে ওয়েবহুক টোকেন অথেনটিকেশন। API সার্ভারে অ্যাডমিশন কন্ট্রোলার যোগ করে ওয়েবহুক এবং অন্যান্য বিশেষ অথোরাইজেশনের ধরন সক্ষম করতে হবে।
ওয়ার্কলোডের রিসোর্সের সীমা নির্ধারণ করুন
প্রোডাকশন ওয়ার্কলোডের চাহিদা কুবারনেটিস কন্ট্রোল প্লেনের ভিতরে এবং বাইরে উভয় ক্ষেত্রেই চাপ সৃষ্টি করতে পারে। আপনার ক্লাস্টারের ওয়ার্কলোডের প্রয়োজনের জন্য সেট আপ করার সময় এই আইটেমগুলি বিবেচনা করুনঃ
- নেমস্পেস সীমা সেট করুন: মেমরি এবং সিপিইউ এর মত জিনিসগুলিতে প্রতি-নেমস্পেস কোটা সেট করুন। বিস্তারিত জানার জন্য Manage Memory, CPU, and API Resources দেখুন। এছাড়াও আপনি উত্তরাধিকার সীমার জন্য হায়ারার্কিক্যাল নেমস্পেস সেট করতে পারেন।
- ডিএনএস চাহিদার জন্য প্রস্তুত করুন: আপনি যদি আশা করেন যে ওয়ার্কলোড ব্যাপকভাবে বৃদ্ধি পাবে, আপনার DNS সার্ভিসটিও স্কেল বাড়াতে প্রস্তুত থাকতে হবে। দেখুন একটি ক্লাস্টারে DNS সার্ভিসটি অটোস্কেল করুন।
- অতিরিক্ত সার্ভিস অ্যাকাউন্ট তৈরি করুন: ব্যবহারকারীর অ্যাকাউন্টগুলি নির্ধারণ করে যে ব্যবহারকারীরা
একটি ক্লাস্টারে কী করতে পারে, যখন একটি সার্ভিস অ্যাকাউন্ট একটি নির্দিষ্ট নেমস্পেসের মধ্যে পড
অ্যাক্সেসকে সংজ্ঞায়িত করে। ডিফল্টরূপে, একটি পড তার নেমস্পেস থেকে ডিফল্ট সার্ভিস অ্যাকাউন্টে নেয়।
একটি নতুন সার্ভিস অ্যাকাউন্ট তৈরি করার তথ্যের জন্য সার্ভিস অ্যাকাউন্ট পরিচালনা করা
দেখুন। উদাহরণস্বরূপ, আপনি চাইতে পারেন:
- সিক্রেট যোগ করুন যা একটি পড একটি নির্দিষ্ট কন্টেইনার রেজিস্ট্রি থেকে ইমেজ পুল করতে ব্যবহার করতে পারে। উদাহরণের জন্য পডের জন্য সার্ভিস অ্যাকাউন্ট কনফিগার করুন দেখুন।
- একটি সার্ভিস অ্যাকাউন্টে RBAC অনুমতিগুলি বরাদ্দ করুন৷ বিস্তারিত জানার জন্য সার্ভিস অ্যাকাউন্ট অনুমতি দেখুন।
এর পরের কি
- আপনি নিজের প্রোডাকশন তৈরি করতে চান কিনা তা স্থির করুন কুবারনেটিস বা এভেইল্যাবল টার্নকি ক্লাউড সলিউশন অথবা কুবারনেটিস অংশীদার থেকে একটি পেতে চান।
- আপনি যদি নিজের ক্লাস্টার তৈরি করতে চান, তাহলে পরিকল্পনা করুন আপনি কীভাবে সার্টিফিকেট পরিচালনা করতে চান এবং etcd এর মতো ফিচারগুলির জন্য উচ্চ প্রাপ্যতা সেট আপ করুন) এবং API সার্ভার।
- kubeadm থেকে ডিপ্লয়মেন্ট পদ্ধতি বেছে নিন, kops অথবা Kubespray।
- আপনার অথেনটিকেশন এবং অথোরাইজেশন পদ্ধতি নির্ধারণ করে ব্যবহারকারী ব্যবস্থাপনা কনফিগার করুন।
- রিসোর্স লিমিট, DNS autoscaling সেট আপ করে অ্যাপ্লিকেশন ওয়ার্কলোডের জন্য প্রস্তুত করুন /) এবং সার্ভিস অ্যাকাউন্ট।