Skip to content

Commit 2f3a87d

Browse files
authored
Merge pull request #45418 from cloudwithtanvir/cloudwithtanvir-dev-1.24-bn.1-architecture
[bn] Localize /docs/concepts/overview/working-with-objects
2 parents 190958d + c5a8a0f commit 2f3a87d

File tree

1 file changed

+175
-0
lines changed
  • content/bn/docs/concepts/overview/working-with-objects

1 file changed

+175
-0
lines changed
Lines changed: 175 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,175 @@
1+
---
2+
title: কুবারনেটিসে অবজেক্ট
3+
content_type: concept
4+
weight: 10
5+
description: >
6+
কুবারনেটিস অবজেক্ট হল কুবারনেটিস সিস্টেমে স্থায়ী সত্তা।
7+
কুবারনেটিস আপনার ক্লাস্টারের অবস্থার প্রতিনিধিত্ব করতে এই সত্তাগুলি ব্যবহার করে।
8+
কুবারনেটিস অবজেক্ট মডেল এবং এই বস্তুর সাথে কিভাবে কাজ করতে হয় সে সম্পর্কে জানুন।
9+
simple_list: true
10+
card:
11+
name: concepts
12+
weight: 40
13+
---
14+
15+
<!-- overview -->
16+
17+
এই পৃষ্ঠাটি ব্যাখ্যা করে কুবারনেটিস API-তে কুবারনেটিস অবজেক্টগুলি কীভাবে প্রতিনিধিত্ব করা হয় এবং
18+
আপনি কিভাবে তা `.yaml` ফরম্যাটে প্রকাশ করতে পারেন।
19+
20+
<!-- body -->
21+
22+
## কুবারনেটিস অবজেক্ট বোঝা {#kubernetes-objects}
23+
24+
*কুবারনেটিস অবজেক্ট* হল কুবারনেটিস সিস্টেমের সত্তা সংরক্ষিত এন্টিটিগুলি। কুবারনেটিস এই
25+
এন্টিটিগুলি ব্যবহার করে আপনার ক্লাস্টারের অবস্থা প্রকাশ করতে। বিশেষভাবে, তারা বর্ণনা করতে পারে:
26+
27+
- কোন কন্টেনার অ্যাপ্লিকেশন কি রান করছে (এবং কোন নোডগুলিতে)
28+
- ঐ অ্যাপ্লিকেশনগুলির জন্য রিসোর্স
29+
- ঐ অ্যাপ্লিকেশনগুলির কিভাবে ব্যবহার করতে হবে, উদাহরণস্বরূপ রিস্টার্ট নীতি, আপগ্রেড, এবং ফল্ট-টলারেন্স
30+
31+
একটি কুবারনেটিস অবজেক্ট হল একটি "উদ্দেশ্যের রেকর্ড" - একবার আপনি অবজেক্ট তৈরি করে দিলে,
32+
কুবারনেটিস সিস্টেম সরাসরি এই অবজেক্টটি থাকার নিশ্চয়তার জন্য কাজ করবে। অবজেক্ট তৈরি করে
33+
আপনি সাধারণত কুবারনেটিস সিস্টেমকে বলে দিচ্ছেন যে আপনার ক্লাস্টারের ওয়ার্কলোড কি হবে; এটা
34+
হল আপনার ক্লাস্টারের *কাঙ্ক্ষিত অবস্থা*
35+
36+
কুবারনেটিস অবজেক্টগুলির সাথে কাজ করতে - তা তৈরি, পরিবর্তন করতে বা মুছতে - আপনার
37+
[কুবারনেটিস API](/bn/docs/concepts/overview/kubernetes-api/) ব্যবহার করতে হবে। উদাহরণস্বরূপ,
38+
যখন আপনি `kubectl` কমান্ড-লাইন ইন্টারফেস ব্যবহার করেন, তখন CLI আপনার জন্য প্রয়োজনীয়
39+
কুবারনেটিস API কল করে। আপনি একটি
40+
[Client Libraries](/docs/reference/using-api/client-libraries/) ব্যবহার করে নিজের প্রোগ্রামে কুবারনেটিস API সরাসরি ব্যবহার করতে পারেন।
41+
42+
### অবজেক্ট স্পেক এবং স্ট্যাটাস
43+
44+
প্রায় সব কুবারনেটিস অবজেক্টের একটি `spec` এবং একটি `status` নেস্টেড অবজেক্ট ফিল্ড রয়েছে
45+
যা অবজেক্টের কনফিগারেশন নিয়ন্ত্রণ করে: অবজেক্টের _`spec`_ এবং _`status`_
46+
যে অবজেক্টগুলির `spec` থাকে, আপনার অবজেক্ট তৈরি করতে এটা নির্ধারণ করতে হবে
47+
যখন অবজেক্ট তৈরি করবেন,
48+
যে রিসোর্সের বৈশিষ্ট্য বর্ণনা প্রদান করবেন: এর _কাঙ্ক্ষিত অবস্থা_
49+
50+
`status` অবজেক্টের _বর্তমান অবস্থা_ বর্ণনা করে, যা কুবারনেটিস সিস্টেম এবং এর উপাদানগুলি
51+
প্রদান এবং আপডেট করে। কুবারনেটিস
52+
{{< glossary_tooltip text="control plane" term_id="control-plane" >}}
53+
সরাসরি এবং সক্রিয়ভাবে প্রতিটি অবজেক্টের
54+
বর্তমান অবস্থা পরিচালনা করে যাতে আপনার প্রদত্ত অবস্থা মিলে।
55+
56+
উদাহরণস্বরূপ: কুবারনেটিসে, একটি ডিপ্লয়মেন্ট একটি অবজেক্ট যা আপনার ক্লাস্টারে চলমান একটি
57+
অ্যাপ্লিকেশন প্রতিনিধিত্ব করতে পারে। ডিপ্লয়মেন্ট তৈরি করতে যখন আপনি
58+
ডিপ্লয়মেন্ট তৈরি করেন, আপনি ডিপ্লয়মেন্ট `spec` সেট করতে পারেন যে
59+
আপনি চাইছেন অ্যাপ্লিকেশনের তিনটি রিপ্লিকা চলমান থাকুক।
60+
কুবারনেটিস সিস্টেম ডিপ্লয়মেন্ট স্পেক পড়ে এবং আপনার প্রদত্ত ডিপ্লয়মেন্ট
61+
এর তিনটি ইনস্ট্যান্স চালু করে, এই স্ট্যাটাস আপনার স্পেক অনুসারে আপডেট করে।
62+
যদি সেই ইনস্ট্যান্সগুলোর মধ্যে কোনওটি ব্যর্থ হয় (একটি স্ট্যাটাস পরিবর্তন),
63+
কুবারনেটিস সিস্টেম স্পেক এবং স্ট্যাটাস মধ্যে পার্থক্যের প্রতিক্রিয়া দিয়ে একটি
64+
সংশোধন করে এই ক্ষেত্রে, একটি প্রতিস্থাপন ইনস্ট্যান্স চালু করে।
65+
66+
বিস্তারিত তথ্যের জন্য অবজেক্ট স্পেক, স্ট্যাটাস এবং মেটাডেটা দেখুন,
67+
[Kubernetes API Conventions](https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md).
68+
69+
### একটি কুবারনেটিস অবজেক্ট বর্ণনা
70+
71+
যখন আপনি কুবারনেটিসে একটি অবজেক্ট তৈরি করবেন, আপনাকে অবজেক্ট spec প্রদান করতে হবে
72+
যা দরকার তার কাঙ্ক্ষিত অবস্থা বর্ণনা করে এবং অবজেক্ট সম্পর্কে
73+
কিছু মৌলিক তথ্য (যেমন নাম) প্রদান করতে হবে। যখন আপনি অবজেক্ট তৈরি
74+
করতে কুবারনেটিস API ব্যবহার করেন (এটা সরাসরি বা `kubectl` এর মাধ্যমে),
75+
তখন ঐ API অনুরোধটি এই তথ্যকে একটি JSON রিকোয়েস্ট বডি হিসেবে অন্তর্ভুক্ত করতে হবে।
76+
সাধারণত, আপনি একটি manifest নামে পরিচিত ফাইলে kubectl কে তথ্য প্রদান করেন। নিয়ম অনুসারে, ম্যানিফেস্ট হল YAML (আপনি JSON
77+
ফরম্যাটও ব্যবহার করতে পারেন)। HTTP-এর মাধ্যমে API অনুরোধ করার সময় টুল যেমন kubectl একটি ম্যানিফেস্ট থেকে তথ্যকে JSON বা অন্য
78+
সমর্থিত সিরিয়ালাইজেশন ফরম্যাটে রূপান্তর করে।
79+
80+
এখানে একটি উদাহরণ ম্যানিফেস্ট দেওয়া হল একটি কুবারনেটিস ডিপ্লয়মেন্টের জন্য প্রয়োজনীয়
81+
ক্ষেত্রগুলি এবং অবজেক্ট স্পেকের জন্যের একটি নমুনা:
82+
83+
{{% code_sample file="application/deployment.yaml" %}}
84+
85+
একটি উপরের মতো ম্যানিফেস্ট ফাইল ব্যবহার করে একটি ডিপ্লয়মেন্ট তৈরি করার একটি উপায় হল
86+
[`kubectl apply`](/bn/docs/reference/generated/kubectl/kubectl-commands#apply) কমান্ড ব্যবহার
87+
করা, `kubectl` এর কমান্ড-লাইন ইন্টারফেসে `yaml` ফাইলটি আর্গুমেন্ট হিসেবে পাঠানো। একটি উদাহরণ:
88+
89+
```shell
90+
kubectl apply -f https://k8s.io/examples/application/deployment.yaml
91+
```
92+
93+
আউটপুট এর অনুরূপ:
94+
95+
```
96+
deployment.apps/nginx-deployment created
97+
```
98+
99+
100+
### প্রয়োজনীয় ক্ষেত্র
101+
102+
আপনার কুবারনেটিস অবজেক্ট এর জন্য ম্যানিফেস্ট (YAML বা JSON ফাইল) এ নিম্নলিখিত ক্ষেত্রগুলির জন্য মান নির্ধারণ করতে হবে:
103+
104+
* `apiVersion` - আপনি কোন ভার্সনের কুবারনেটিস API ব্যবহার করছেন তা উল্লেখ করতে হবে
105+
* `kind` - আপনি কোন ধরনের অবজেক্ট তৈরি করতে চান তা উল্লেখ করতে হবে
106+
* `metadata` - অবজেক্ট যে সাহায্য করে অনন্যভাবে সনাক্ত করা যায়, যেমন `name` স্ট্রিং, `UID`, এবং ঐচ্ছিক `namespace`
107+
* `spec` - অবজেক্টের জন্য আপনি কি অবস্থা চান
108+
109+
অবজেক্ট spec সুনির্দিষ্ট ফরম্যাট প্রতিটি কুবারনেটিস অবজেক্টের জন্য আলাদা, এবং
110+
সেই বস্তুর জন্য নির্দিষ্ট নেস্টেড ক্ষেত্র রয়েছে। [Kubernetes API রেফারেন্স](/bn/docs/reference/kubernetes-api/)
111+
ব্যবহার করে আপনি যে সমস্ত অবজেক্ট তৈরি করতে পারেন তার জন্য নির্দিষ্ট ফরম্যাট খুঁজে পেতে সাহায্য করতে পারে।
112+
113+
উদাহরণস্বরূপ, দেখুন [`spec` ফিল্ড](/bn/docs/reference/kubernetes-api/workload-resources/pod-v1/#PodSpec)
114+
Pod API রেফারেন্স এর জন্য।
115+
প্রতিটি Pod এর জন্য, `.spec` ক্ষেত্রটি পড এবং তার কাঙ্ক্ষিত অবস্থা (যেমন সেই পডের মধ্যে প্রতিটি কন্টেইনারের জন্য কন্টেইনার ইমেজের নাম)
116+
নির্দিষ্ট করে৷
117+
আরও একটি অবজেক্ট স্পেসিফিকেশনের উদাহরণ হল
118+
[`spec` ফিল্ড](/bn/docs/reference/kubernetes-api/workload-resources/stateful-set-v1/#StatefulSetSpec)
119+
StatefulSet API এর জন্য। StatefulSet এর জন্য, `.spec` ফিল্ড নির্দিষ্ট করে এবং সেট করে
120+
এর অবস্থা।
121+
StatefulSet এর `.spec` এর মধ্যে একটি [টেমপ্লেট](/bn/docs/concepts/workloads/pods/#pod-templates)
122+
পড অবজেক্টের জন্য । সেই টেমপ্লেটটি Pods বর্ণনা করে যা
123+
StatefulSet কন্ট্রোলার স্টেটফুলসেট স্পেসিফিকেশন সন্তুষ্ট করার জন্য তৈরি করবে।
124+
অন্যান্য প্রকারের অবজেক্ট গুলির জন্য বিভিন্ন `.status` থাকতে পারে; আবার, API রেফারেন্স পৃষ্ঠাগুলি
125+
এই `.status` ফিল্ডের গঠন এবং এর প্রত্যেক বিভিন্ন প্রকারের অবজেক্টের জন্য তার বিষয়বস্তু বিবরণ করে।
126+
127+
{{< note >}}
128+
YAML কনফিগারেশন ফাইল লেখার অতিরিক্ত তথ্যের জন্য
129+
[কনফিগারেশন সেরা অনুশীলন](/bn/docs/concepts/configuration/overview/) দেখুন।
130+
{{< /note >}}
131+
132+
## সার্ভার সাইড ফিল্ড ভেরিফিকেশন
133+
134+
কুবারনেটিস v1.25 থেকে শুরু করে, API সার্ভার সার্ভার সাইড
135+
[field validation](/bn/docs/reference/using-api/api-concepts/#field-validation)
136+
যা অব্যক্ত বা পুনরায় ফিল্ড অনুমান করে একটি অবজেক্টে। এটি সমস্ত কার্যকারিতা প্রদান করে
137+
`kubectl --validate` এর সার্ভার সাইড এ কর্মক্ষমতা।
138+
139+
`kubectl` টুলটি ব্যবহার করে `--validate` ফ্ল্যাগ ব্যবহার করে ফিল্ড ভেরিফিকেশনের স্তর সেট করে। এটি গ্রহণ করে
140+
মান `ignore`, `warn`, এবং `strict` এবং এটি `true` (`strict` এর সমান)
141+
এবং `false` ( `ignore` এর সমান) মান গ্রহণ করে। `kubectl` এর ডিফল্ট ভেরিফিকেশন সেটিং হল `--validate=true`
142+
143+
`Strict`
144+
: Strict ফিল্ড ভেরিফিকেশন, ভেরিফিকেশন ব্যর্থ হওয়ায় errors দেখায়
145+
146+
`Warn`
147+
: ফিল্ড ভেরিফিকেশন করা হয়, কিন্তু errors গুলি অনুরোধ ব্যর্থ হওয়ার পরিবর্তে সতর্কতা হিসাবে প্রকাশ করা হয়
148+
149+
`Ignore`
150+
: কোনো সার্ভার সাইড ফিল্ড ভেরিফিকেশন করা হয় না
151+
152+
যখন `kubectl` এর একটি API সার্ভারে সংযোগ করতে পারে না যে কোন ফিল্ড ভেরিফিকেশন সাপোর্ট করে তখন এটি ফেলে যায়
153+
ক্লায়েন্ট-সাইড ভেরিফিকেশন ব্যবহার করা হয়। কুবারনেটিস 1.27 এবং তারপরের সংস্করণ সবসময় ফিল্ড ভেরিফিকেশন প্রদান করে;
154+
পুরাতন কুবারনেটিস রিলিসেগুলিতে এটি হতে পারে না। যদি আপনার ক্লাস্টার v1.27 এর চেয়ে পুরানো হয় তবে এপনার কুবারনেটিস
155+
সংস্করণের জন্য ডকুমেন্টেশন চেক করুন।
156+
157+
## {{% heading "whatsnext" %}}
158+
159+
যদি আপনি নতুন কুবারনেটিসে এসেছেন, তাহলে নিম্নলিখিত বিষয়গুলি সম্পর্কে আরো পড়ুন:
160+
161+
* [Pods](/bn/docs/concepts/workloads/pods/) যা হলে সবচেয়ে গুরুত্বপূর্ণ মৌলিক কুবারনেটিস অবজেক্ট।
162+
* [Deployment](/bn/docs/concepts/workloads/controllers/deployment/) অবজেক্টগুলি।
163+
* [Controllers](/bn/docs/concepts/architecture/controller/) কুবারনেটিসে।
164+
* [kubectl](/bn/docs/reference/kubectl/) এবং [kubectl কমান্ড](/bn/docs/reference/generated/kubectl/kubectl-commands)
165+
166+
[কুবারনেটিস অবজেক্ট ম্যানেজমেন্ট](/bn/docs/concepts/overview/working-with-objects/object-management/)
167+
`kubectl` ব্যবহার করে অবজেক্ট পরিচালনা করার উপায়গুলি বিস্তারিত ভাবে বর্ণনা করে।
168+
আপনার কাছে যদি আগে থেকে না থাকে তাহলে [kubectl ইনস্টল করুন](/bn/docs/tasks/tools/#kubectl)
169+
170+
কুবারনেটিস API সাধারণভাবে সম্পর্কে জানতে, পড়ুন:
171+
172+
* [Kubernetes API overview](/bn/docs/reference/using-api/)
173+
174+
কুবারনেটিসে অবজেক্টগুলির বিস্তারিত জানতে, এই বিভাগে অন্যান্য পৃষ্ঠাগুলি পড়ুন:
175+
<!-- Docsy automatically includes a list of pages in the section -->

0 commit comments

Comments
 (0)