Skip to content

Conversation

Moh0ps
Copy link

@Moh0ps Moh0ps commented Sep 1, 2025

Add persian translation for docs/setup/production-environment/tools/kubeadm

@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Sep 1, 2025
@k8s-ci-robot k8s-ci-robot added size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. sig/docs Categorizes an issue or PR as relevant to SIG Docs. labels Sep 1, 2025
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign nate-double-u for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@Moh0ps
Copy link
Author

Moh0ps commented Sep 1, 2025

/language fa

@k8s-ci-robot k8s-ci-robot added the language/fa Issues or PRs related to Persian language label Sep 1, 2025
Copy link

netlify bot commented Sep 1, 2025

Pull request preview available for checking

Built without sensitive environment variables

Name Link
🔨 Latest commit 45bc0bd
🔍 Latest deploy log https://app.netlify.com/projects/kubernetes-io-main-staging/deploys/68d97370f3432500086892ca
😎 Deploy Preview https://deploy-preview-52135--kubernetes-io-main-staging.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link

@Behiuu Behiuu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please review pointed line.

[Service]
Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf"
Environment="KUBELET_CONFIG_ARGS=--config=/var/lib/kubelet/config.yaml"
# This is a file that "kubeadm init" and "kubeadm join" generate at runtime, populating
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please check translation from line 24 to 30

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Behiuu Please explain your concern more clearly.


{{< warning >}}
این دستورالعمل‌ها تمام بسته‌های کوبرنتیز را از هرگونه ارتقاء سیستم مستثنی می‌کنند.
دلیل این امر این است که kubeadm و کوبرنتیز نیاز به توجه ویژه به ارتقاء دارند. (/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
دلیل این امر این است که kubeadm و کوبرنتیز نیاز به توجه ویژه به ارتقاء دارند. (/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/).
دلیل این امر این است که kubeadm و کوبرنتیز نیاز به [فرایند ویژه ارتقاء](/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/) دارند.

* برای تحمل swap، `failSwapOn: false` را به پیکربندی kubelet یا به عنوان یک آرگومان خط فرمان اضافه کنید.
توجه: حتی اگر `failSwapOn: false` ارائه شود، بارهای کاری به طور پیش‌فرض به swap دسترسی نخواهند داشت.
این را می‌توان با تنظیم `swapBehavior`، دوباره در پرونده(فایل) پیکربندی kubelet، تغییر داد. برای استفاده از swap، `swapBehavior` را به غیر از تنظیم پیش‌فرض `NoSwap` تنظیم کنید.
برای جزئیات بیشتر به [مدیریت حافظه swap](/docs/concepts/architecture/nodes/#swap-memory) مراجعه کنید.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
برای جزئیات بیشتر به [مدیریت حافظه swap](/docs/concepts/architecture/nodes/#swap-memory) مراجعه کنید.
برای جزئیات بیشتر به [مدیریت حافظه swap](/docs/concepts/cluster-administration/swap-memory-management) مراجعه کنید.

Keep the same path as the source

curl -fsSL https://pkgs.k8s.io/core:/stable:/{{< param "version" >}}/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg
```

{{< caution >}}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
{{< caution >}}
{{< note >}}


{{< caution >}}
در نسخه‌های قدیمی‌تر از دبیان ۱۲ و اوبونتو ۲۲.۰۴، پوشه(folder) `/etc/apt/keyrings` به طور پیش‌فرض وجود ندارد و باید قبل از دستور curl ایجاد شود.
{{< /caution >}}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
{{< /caution >}}
{{< /note >}}


پیکربندی درایور cgroup هم مجری کانتینر و هم kubelet دارای یک ویژگی به نام ["cgroup driver"](/docs/setup/production-environment/container-runtimes/#cgroup-drivers) هستند که برای مدیریت cgroupها در دستگاه‌های لینوکس مهم است.

{{< caution >}}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
{{< caution >}}
{{< warning >}}

تطبیق مجری کانتینر و درایورهای cgroup kubelet مورد نیاز است یا در غیر این صورت فرآیند kubelet با شکست مواجه خواهد شد.

برای جزئیات بیشتر به [پیکربندی درایور cgroup](/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/) مراجعه کنید.
{{< /caution >}}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
{{< /caution >}}
{{< /warning >}}


## عیب‌یابی

اگر با kubeadm به مشکل برخوردید، لطفاً به [مستندات عیب‌یابی] ما (/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/) مراجعه کنید.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
اگر با kubeadm به مشکل برخوردید، لطفاً به [مستندات عیب‌یابی] ما (/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/) مراجعه کنید.
اگر با kubeadm به مشکل برخوردید، لطفاً به [مستندات عیب‌یابی](/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/) ما مراجعه کنید.


بسیار محتمل است که دستگاه‌های سخت‌افزاری نشانی(آدرس) های منحصر به فردی داشته باشند، اگرچه برخی از ماشین‌های مجازی ممکن است مقادیر یکسانی داشته باشند. کوبرنتیز از این مقادیر برای شناسایی منحصر به فرد گره‌ها در خوشه(cluster) استفاده می‌کند. اگر این مقادیر برای هر گره(node) منحصر به فرد نباشند، فرآیند نصب ممکن است [با شکست مواجه شود](https://github.com/kubernetes/kubeadm/issues/31).

## adapters شبکه را بررسی کنید
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
## adapters شبکه را بررسی کنید
## بررسی آداپتورهای شبکه

{{< glossary_tooltip text="container runtime" term_id="container-runtime" >}}،
{{< glossary_tooltip term_id="kubelet" text="kubelet">}}، و یک افزونه {{< glossary_tooltip text="Container Network Interface" term_id="cni" >}} می‌شود.

برای کمک به شما در جلوگیری از خطاهای غیرمنتظره ناشی از عدم پشتیبانی از نسخه هسته، kubeadm بررسی پیش از اجرای «SystemVerification» را اجرا می‌کند. اگر نسخه هسته(kernel) پشتیبانی نشود، این بررسی با شکست مواجه می‌شود.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
برای کمک به شما در جلوگیری از خطاهای غیرمنتظره ناشی از عدم پشتیبانی از نسخه هسته، kubeadm بررسی پیش از اجرای «SystemVerification» را اجرا می‌کند. اگر نسخه هسته(kernel) پشتیبانی نشود، این بررسی با شکست مواجه می‌شود.
برای کمک به شما در جلوگیری از خطاهای غیرمنتظره ناشی از عدم پشتیبانی از نسخه هسته، kubeadm بررسی پیش از اجرای `SystemVerification` را اجرا می‌کند. اگر نسخه هسته(kernel) پشتیبانی نشود، این بررسی با شکست مواجه می‌شود.


* `kubeadm`: (cluster)دستور راه اندازی خوشه.

* `kubelet`: مؤلفه‌ای که روی تمام ماشین‌های موجود در خوشه(cluster) شما اجرا می‌شود و کارهایی مانند راه‌اندازی پادها و کانتینرها را انجام می‌دهد.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* `kubelet`: مؤلفه‌ای که روی تمام ماشین‌های موجود در خوشه(cluster) شما اجرا می‌شود و کارهایی مانند راه‌اندازی پادها و کانتینرها را انجام می‌دهد.
* `kubelet`: مؤلفه‌ای که روی تمام ماشین‌های موجود در خوشه شما اجرا می‌شود و کارهایی مانند راه‌اندازی پادها و کانتینرها را انجام می‌دهد.


* `kubelet`: مؤلفه‌ای که روی تمام ماشین‌های موجود در خوشه(cluster) شما اجرا می‌شود و کارهایی مانند راه‌اندازی پادها و کانتینرها را انجام می‌دهد.

* `kubectl`: ابزار خط فرمان برای ارتباط با خوشه(cluster) شما.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* `kubectl`: ابزار خط فرمان برای ارتباط با خوشه(cluster) شما.
* `kubectl`: ابزار خط فرمان برای ارتباط با خوشه شما.

پوشه(folder) را برای دانلود پرونده‌(فایل)های دستور تعریف کنید:

{{< note >}}
متغیر `DOWNLOAD_DIR` باید روی یک پوشه(folder) قابل نوشتن تنظیم شود.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
متغیر `DOWNLOAD_DIR` باید روی یک پوشه(folder) قابل نوشتن تنظیم شود.
متغیر `DOWNLOAD_DIR` باید روی یک پوشه قابل نوشتن تنظیم شود.

Avoid repetitive “(folder)”

```

{{< note >}}
توزیع لینوکس Flatcar Container (folder)پوشه `/usr` را به عنوان یک پرونده سیستم فقط خواندنی mount می‌کند.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
توزیع لینوکس Flatcar Container (folder)پوشه `/usr` را به عنوان یک پرونده سیستم فقط خواندنی mount می‌کند.
توزیع لینوکس Flatcar Container پوشه `/usr` را به عنوان یک پرونده سیستم فقط خواندنی mount می‌کند.

Avoid repetitive “(folder)”


{{< note >}}
توزیع لینوکس Flatcar Container (folder)پوشه `/usr` را به عنوان یک پرونده سیستم فقط خواندنی mount می‌کند.
قبل از راه اندازی خوشه(cluster) خود، باید مراحل بیشتری را برای پیکربندی یک پوشه(folder) قابل نوشتن انجام دهید.
Copy link
Member

@xirehat xirehat Sep 11, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
قبل از راه اندازی خوشه(cluster) خود، باید مراحل بیشتری را برای پیکربندی یک پوشه(folder) قابل نوشتن انجام دهید.
قبل از راه اندازی خوشه خود، باید مراحل بیشتری را برای پیکربندی یک پوشه قابل نوشتن انجام دهید.

Avoid repetitive “(folder)”
Avoid repetitive “(cluster)”

{{< note >}}
توزیع لینوکس Flatcar Container (folder)پوشه `/usr` را به عنوان یک پرونده سیستم فقط خواندنی mount می‌کند.
قبل از راه اندازی خوشه(cluster) خود، باید مراحل بیشتری را برای پیکربندی یک پوشه(folder) قابل نوشتن انجام دهید.
برای یادگیری نحوه راه‌اندازی یک پوشه(folder) قابل نوشتن، به [راهنمای عیب‌یابی Kubeadm](/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/#usr-mounted-read-only) مراجعه کنید.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
برای یادگیری نحوه راه‌اندازی یک پوشه(folder) قابل نوشتن، به [راهنمای عیب‌یابی Kubeadm](/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/#usr-mounted-read-only) مراجعه کنید.
برای یادگیری نحوه راه‌اندازی یک پوشه قابل نوشتن، به [راهنمای عیب‌یابی Kubeadm](/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/#usr-mounted-read-only) مراجعه کنید.

Avoid repetitive “(folder)”

- 10.96.0.10
```

برای جزئیات بیشتر در مورد `KubeletConfiguration`، به [این بخش](#تنظیم kubelet با استفاده از kubeadm) نگاهی بیندازید.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
برای جزئیات بیشتر در مورد `KubeletConfiguration`، به [این بخش](#تنظیم kubelet با استفاده از kubeadm) نگاهی بیندازید.
برای جزئیات بیشتر در مورد `KubeletConfiguration`، به [این بخش](#پیکربندی-kubelets-با-استفاده-از-kubeadm) نگاهی بیندازید.


### گردش کار هنگام استفاده از `kubeadm init`

وقتی `kubeadm init` را فراخوانی می‌کنید، پیکربندی kubelet در مسیر `/var/lib/kubelet/config.yaml` روی دیسک ذخیره می‌شود و همچنین در یک نقشه پیکربندی `kubelet-config` در فضای نام `kube-system` خوشه(cluster) آپلود می‌شود. یک پرونده(فایل) پیکربندی kubelet همچنین در مسیر `/etc/kubernetes/kubelet.conf` با پیکربندی پایه در سطح خوشه(cluster) برای همه kubelet های خوشه(cluster) نوشته می‌شود. این پرونده(فایل) پیکربندی به گواهی‌های کلاینت اشاره می‌کند که به kubelet اجازه می‌دهد با سرور API ارتباط برقرار کند. این امر نیاز به `[انتشار پیکربندی سطح خوشه(cluster) به هر kubelet](#انتشار-پیکربندی-سطح-خوشه(cluster)-به-هر-kubelet)` را برطرف می‌کند.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
وقتی `kubeadm init` را فراخوانی می‌کنید، پیکربندی kubelet در مسیر `/var/lib/kubelet/config.yaml` روی دیسک ذخیره می‌شود و همچنین در یک نقشه پیکربندی `kubelet-config` در فضای نام `kube-system` خوشه(cluster) آپلود می‌شود. یک پرونده(فایل) پیکربندی kubelet همچنین در مسیر `/etc/kubernetes/kubelet.conf` با پیکربندی پایه در سطح خوشه(cluster) برای همه kubelet های خوشه(cluster) نوشته می‌شود. این پرونده(فایل) پیکربندی به گواهی‌های کلاینت اشاره می‌کند که به kubelet اجازه می‌دهد با سرور API ارتباط برقرار کند. این امر نیاز به `[انتشار پیکربندی سطح خوشه(cluster) به هر kubelet](#انتشار-پیکربندی-سطح-خوشه(cluster)-به-هر-kubelet)` را برطرف می‌کند.
وقتی `kubeadm init` را فراخوانی می‌کنید، پیکربندی kubelet در مسیر `/var/lib/kubelet/config.yaml` روی دیسک ذخیره می‌شود و همچنین در یک نقشه پیکربندی `kubelet-config` در فضای نام `kube-system` خوشه(cluster) آپلود می‌شود. یک پرونده(فایل) پیکربندی kubelet همچنین در مسیر `/etc/kubernetes/kubelet.conf` با پیکربندی پایه در سطح خوشه(cluster) برای همه kubelet های خوشه(cluster) نوشته می‌شود. این پرونده(فایل) پیکربندی به گواهی‌های کلاینت اشاره می‌کند که به kubelet اجازه می‌دهد با سرور API ارتباط برقرار کند. این امر نیاز به [انتشار پیکربندی سطح خوشه(cluster) به هر kubelet](#انتشار-پیکربندی-سطح-خوشه-به-هر-kubelet) را برطرف می‌کند.


وقتی `kubeadm init` را فراخوانی می‌کنید، پیکربندی kubelet در مسیر `/var/lib/kubelet/config.yaml` روی دیسک ذخیره می‌شود و همچنین در یک نقشه پیکربندی `kubelet-config` در فضای نام `kube-system` خوشه(cluster) آپلود می‌شود. یک پرونده(فایل) پیکربندی kubelet همچنین در مسیر `/etc/kubernetes/kubelet.conf` با پیکربندی پایه در سطح خوشه(cluster) برای همه kubelet های خوشه(cluster) نوشته می‌شود. این پرونده(فایل) پیکربندی به گواهی‌های کلاینت اشاره می‌کند که به kubelet اجازه می‌دهد با سرور API ارتباط برقرار کند. این امر نیاز به `[انتشار پیکربندی سطح خوشه(cluster) به هر kubelet](#انتشار-پیکربندی-سطح-خوشه(cluster)-به-هر-kubelet)` را برطرف می‌کند.

برای پرداختن به الگوی دومِ [ارائه جزئیات پیکربندی مختص به نمونه](#ارائه-جزئیات-پیکربندی-مختص-به-نمونه)، kubeadm یک پرونده(فایل) محیطی را در `/var/lib/kubelet/kubeadm-flags.env` می‌نویسد که شامل فهرستی از پرچم‌هایی است که باید هنگام شروع به kubelet منتقل شوند. پرچم‌ها در پرونده(فایل) به این شکل ارائه می‌شوند:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
برای پرداختن به الگوی دومِ [ارائه جزئیات پیکربندی مختص به نمونه](#ارائه-جزئیات-پیکربندی-مختص-به-نمونه)، kubeadm یک پرونده(فایل) محیطی را در `/var/lib/kubelet/kubeadm-flags.env` می‌نویسد که شامل فهرستی از پرچم‌هایی است که باید هنگام شروع به kubelet منتقل شوند. پرچم‌ها در پرونده(فایل) به این شکل ارائه می‌شوند:
برای پرداختن به الگوی دومِ [ارائه جزئیات پیکربندی مختص به نمونه](#ارائه-جزئیات-پیکربندی-مختص-به-هر-نمونه)، kubeadm یک پرونده(فایل) محیطی را در `/var/lib/kubelet/kubeadm-flags.env` می‌نویسد که شامل فهرستی از پرچم‌هایی است که باید هنگام شروع به kubelet منتقل شوند. پرچم‌ها در پرونده(فایل) به این شکل ارائه می‌شوند:


وقتی پرونده(فایل) `/etc/kubernetes/kubelet.conf` نوشته می‌شود، kubelet اجرای TLS راه انداز را به پایان رسانده است. Kubeadm پس از تکمیل TLS راه انداز ، پرونده(فایل) `/etc/kubernetes/bootstrap-kubelet.conf` را حذف می‌کند.

## پرونده(فایل) افزایش قابلیت kubelet برای systemd
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
## پرونده(فایل) افزایش قابلیت kubelet برای systemd
## پرونده نصبی kubelet برای systemd


| Package name | Description |
|--------------|-------------|
| `kubeadm` | ابزار خط فرمان `/usr/bin/kubeadm` (فایل)و پرونده [kubelet drop-in file](#the-kubelet-drop-in-file-for-systemd) را برای kubelet نصب می‌کند. |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| `kubeadm` | ابزار خط فرمان `/usr/bin/kubeadm` (فایل)و پرونده [kubelet drop-in file](#the-kubelet-drop-in-file-for-systemd) را برای kubelet نصب می‌کند. |
| `kubeadm` | ابزار خط فرمان `/usr/bin/kubeadm` و [پرونده نصبی kubelet](#پرونده-نصبی-kubelet-برای-systemd) را برای kubelet نصب می‌کند. |

`kubeadm` به همراه پیکربندی نحوه‌ی اجرای kubelet توسط systemd ارائه می‌شود.
توجه داشته باشید که دستور kubeadm CLI (فایل)هرگز به این پرونده drop-in دست نمی‌زند.

این پرونده(فایل) پیکربندی که توسط بسته `kubeadm` (https://github.com/kubernetes/release/blob/cd53840/cmd/krel/templates/latest/kubeadm/10-kubeadm.conf) نصب شده است، در مسیر `/usr/lib/systemd/system/kubelet.service.d/10-kubeadm.conf` نوشته شده و توسط systemd استفاده می‌شود. این پرونده، بسته اصلی `kubelet.service` (https://github.com/kubernetes/release/blob/cd53840/cmd/krel/templates/latest/kubelet/kubelet.service) را تکمیل می‌کند.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
این پرونده(فایل) پیکربندی که توسط بسته `kubeadm` (https://github.com/kubernetes/release/blob/cd53840/cmd/krel/templates/latest/kubeadm/10-kubeadm.conf) نصب شده است، در مسیر `/usr/lib/systemd/system/kubelet.service.d/10-kubeadm.conf` نوشته شده و توسط systemd استفاده می‌شود. این پرونده، بسته اصلی `kubelet.service` (https://github.com/kubernetes/release/blob/cd53840/cmd/krel/templates/latest/kubelet/kubelet.service) را تکمیل می‌کند.
این پرونده پیکربندی که توسط [بسته kubeadm](https://github.com/kubernetes/release/blob/cd53840/cmd/krel/templates/latest/kubeadm/10-kubeadm.conf) نصب شده است، در مسیر `/usr/lib/systemd/system/kubelet.service.d/10-kubeadm.conf` نوشته شده و توسط systemd استفاده می‌شود. این پرونده، بسته اصلی [`kubelet.service`](https://github.com/kubernetes/release/blob/cd53840/cmd/krel/templates/latest/kubelet/kubelet.service) را تکمیل می‌کند.

---
reviewers:
- sig-cluster-lifecycle
title: راه‌اندازی خوشه etcd با قابلیت دسترسی بالا با kubeadm
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
title: راه‌اندازی خوشه etcd با قابلیت دسترسی بالا با kubeadm
title: راه‌اندازی خوشه etcd با قابلیت دسترسی بالا با kubeadm


## {{% heading "prerequisites" %}}

- سه میزبان که می‌توانند از طریق پورت‌های TCP 2379 و 2380 با یکدیگر ارتباط برقرار کنند. این سند این پورت‌های پیش‌فرض را در نظر گرفته است. با این حال، آنها از طریق پرونده(فایل)(فایل) پیکربندی kubeadm قابل تنظیم هستند.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- سه میزبان که می‌توانند از طریق پورت‌های TCP 2379 و 2380 با یکدیگر ارتباط برقرار کنند. این سند این پورت‌های پیش‌فرض را در نظر گرفته است. با این حال، آنها از طریق پرونده(فایل)(فایل) پیکربندی kubeadm قابل تنظیم هستند.
- سه میزبان که می‌توانند از طریق پورت‌های TCP 2379 و 2380 با یکدیگر ارتباط برقرار کنند. این سند این پورت‌های پیش‌فرض را در نظر گرفته است. با این حال، آنها از طریق پرونده(فایل) پیکربندی kubeadm قابل تنظیم هستند.

- سه میزبان که می‌توانند از طریق پورت‌های TCP 2379 و 2380 با یکدیگر ارتباط برقرار کنند. این سند این پورت‌های پیش‌فرض را در نظر گرفته است. با این حال، آنها از طریق پرونده(فایل)(فایل) پیکربندی kubeadm قابل تنظیم هستند.
- هر میزبان باید systemd و یک پوسته سازگار با bash نصب شده داشته باشد.
- هر میزبان باید [یک مجری کانتینر، kubelet و kubeadm نصب شده داشته باشد](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/).
- هر میزبان باید به رجیستری پرونده(فایل) image کانتینر کوبرنتیز (`registry.k8s.io`) دسترسی داشته باشد یا پرونده(فایل) image از etcd مورد نیاز را با استفاده از `kubeadm config images list/pull` فهرست/دریافت کند. این راهنما نمونه‌های etcd را به عنوان [static pods](/docs/tasks/configure-pod-container/static-pod/) که توسط یک kubelet مدیریت می‌شود، تنظیم می‌کند.
Copy link
Member

@xirehat xirehat Sep 13, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- هر میزبان باید به رجیستری پرونده(فایل) image کانتینر کوبرنتیز (`registry.k8s.io`) دسترسی داشته باشد یا پرونده(فایل) image از etcd مورد نیاز را با استفاده از `kubeadm config images list/pull` فهرست/دریافت کند. این راهنما نمونه‌های etcd را به عنوان [static pods](/docs/tasks/configure-pod-container/static-pod/) که توسط یک kubelet مدیریت می‌شود، تنظیم می‌کند.
- هر میزبان باید به رجیستری container image کوبرنتیز (`registry.k8s.io`) دسترسی داشته باشد یا پرونده image از etcd مورد نیاز را با استفاده از `kubeadm config images list/pull` فهرست/دریافت کند. این راهنما نمونه‌های etcd را به عنوان [پاد‌های استاتیک](/docs/tasks/configure-pod-container/static-pod/) که توسط یک kubelet مدیریت می‌شود، تنظیم می‌کند.

- هر میزبان باید systemd و یک پوسته سازگار با bash نصب شده داشته باشد.
- هر میزبان باید [یک مجری کانتینر، kubelet و kubeadm نصب شده داشته باشد](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/).
- هر میزبان باید به رجیستری پرونده(فایل) image کانتینر کوبرنتیز (`registry.k8s.io`) دسترسی داشته باشد یا پرونده(فایل) image از etcd مورد نیاز را با استفاده از `kubeadm config images list/pull` فهرست/دریافت کند. این راهنما نمونه‌های etcd را به عنوان [static pods](/docs/tasks/configure-pod-container/static-pod/) که توسط یک kubelet مدیریت می‌شود، تنظیم می‌کند.
- برخی زیرساخت‌ها برای کپی کردن پرونده‌(فایل)ها بین میزبان‌ها. به عنوان مثال `ssh` و `scp` می‌توانند این نیاز را برآورده کنند.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- برخی زیرساخت‌ها برای کپی کردن پرونده‌(فایل)ها بین میزبان‌ها. به عنوان مثال `ssh` و `scp` می‌توانند این نیاز را برآورده کنند.
- برخی زیرساخت‌ها برای کپی کردن پرونده‌ها بین میزبان‌ها. به عنوان مثال `ssh` و `scp` می‌توانند این نیاز را برآورده کنند.

1. kubelet را طوری پیکربندی کنید که به عنوان مدیر سرویس برای etcd عمل کند.

{{< note >}}شما باید این کار را روی هر میزبانی که etcd باید در آن اجرا شود، انجام دهید.{{< /note >}}
از آنجایی که etcd ابتدا ایجاد شده است، شما باید با ایجاد یک پرونده(فایل) واحد جدید که اولویت بالاتری نسبت به پرونده(فایل) واحد kubelet ارائه شده توسط kubeadm دارد، اولویت سرویس را لغو کنید.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
از آنجایی که etcd ابتدا ایجاد شده است، شما باید با ایجاد یک پرونده(فایل) واحد جدید که اولویت بالاتری نسبت به پرونده(فایل) واحد kubelet ارائه شده توسط kubeadm دارد، اولویت سرویس را لغو کنید.
از آنجایی که etcd ابتدا ایجاد شده است، شما باید با ایجاد یک پرونده واحد جدید که اولویت بالاتری نسبت به پرونده واحد kubelet ارائه شده توسط kubeadm دارد، اولویت سرویس را لغو کنید.


1. ایجاد پرونده‌های پیکربندی برای kubeadm.

با استفاده از اسکریپت زیر، یک پرونده(فایل) پیکربندی kubeadm برای هر میزبانی که قرار است یک عضو etcd روی آن اجرا شود، ایجاد کنید.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
با استفاده از اسکریپت زیر، یک پرونده(فایل) پیکربندی kubeadm برای هر میزبانی که قرار است یک عضو etcd روی آن اجرا شود، ایجاد کنید.
با استفاده از اسکریپت زیر، یک پرونده پیکربندی kubeadm برای هر میزبانی که قرار است یک عضو etcd روی آن اجرا شود، ایجاد کنید.

kubeadm init phase certs etcd-ca
```

این دو پرونده(فایل) را ایجاد می‌کند:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
این دو پرونده(فایل) را ایجاد می‌کند:
این دو پرونده را ایجاد می‌کند:


1. اختیاری: سلامت خوشه را بررسی کنید.

اگر `etcdctl` در دسترس نباشد، می‌توانید این ابزار را درون یک پرونده(فایل) image کانتینر اجرا کنید. شما می‌توانید این کار را مستقیماً با مجری کانتینر خود با استفاده از ابزاری مانند `crictl run` انجام دهید و نه از طریق کوبرنتیز.
Copy link
Member

@xirehat xirehat Sep 13, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
اگر `etcdctl` در دسترس نباشد، می‌توانید این ابزار را درون یک پرونده(فایل) image کانتینر اجرا کنید. شما می‌توانید این کار را مستقیماً با مجری کانتینر خود با استفاده از ابزاری مانند `crictl run` انجام دهید و نه از طریق کوبرنتیز.
اگر `etcdctl` در دسترس نباشد، می‌توانید این ابزار را درون یک container image اجرا کنید. شما می‌توانید این کار را مستقیماً با مجری کانتینر خود با استفاده از ابزاری مانند `crictl run` انجام دهید و نه از طریق کوبرنتیز.

└── server.key
```

1. تنظیمات ثابت پاد را ایجاد کنید.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. تنظیمات ثابت پاد را ایجاد کنید.
1. پاد استاتیک را ایجاد کنید.


همچنین می‌توان با خوشه(cluster) etcd به عنوان خارجی رفتار کرد و نمونه‌های etcd را روی میزبان‌های جداگانه آماده‌سازی کرد. تفاوت‌های بین این دو رویکرد در صفحه [گزینه‌هایی برای توپولوژی با دسترسی بالا](/docs/setup/production-environment/tools/kubeadm/ha-topology) پوشش داده شده است.

این وظیفه، فرآیند ایجاد یک خوشه(cluster) خارجی etcd با دسترسی بالا از سه عضو را بررسی می‌کند که می‌توانند توسط kubeadm در طول ایجاد خوشه(cluster) مورد استفاده قرار گیرند.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
این وظیفه، فرآیند ایجاد یک خوشه(cluster) خارجی etcd با دسترسی بالا از سه عضو را بررسی می‌کند که می‌توانند توسط kubeadm در طول ایجاد خوشه(cluster) مورد استفاده قرار گیرند.
این وظیفه، فرآیند ایجاد یک خوشه خارجی etcd با دسترسی بالا از سه عضو را بررسی می‌کند که می‌توانند توسط kubeadm در طول ایجاد خوشه مورد استفاده قرار گیرند.


## {{% heading "whatsnext" %}}

زمانی که یک خوشه(cluster) etcd با ۳ عضو فعال داشتید، می‌توانید با استفاده از [روش etcd خارجی با kubeadm](/docs/setup/production-environment/tools/kubeadm/high-availability/) به راه‌اندازی یک control plane با دسترسی‌پذیری بالا ادامه دهید. No newline at end of file
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
زمانی که یک خوشه(cluster) etcd با ۳ عضو فعال داشتید، می‌توانید با استفاده از [روش etcd خارجی با kubeadm](/docs/setup/production-environment/tools/kubeadm/high-availability/) به راه‌اندازی یک control plane با دسترسی‌پذیری بالا ادامه دهید.
زمانی که یک خوشه etcd با ۳ عضو فعال داشتید، می‌توانید با استفاده از [روش etcd خارجی با kubeadm](/docs/setup/production-environment/tools/kubeadm/high-availability/) به راه‌اندازی یک control plane با دسترسی‌پذیری بالا ادامه دهید.

- برای کاربران اوبونتو/دبیان، دستور `apt install ebtables ethtool` را اجرا کنید.
- برای کاربران CentOS/Fedora، دستور `yum install ebtables ethtool` را اجرا کنید.

## گروه های kubeadm در هنگام نصب در انتظار control plane هستند
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
## گروه های kubeadm در هنگام نصب در انتظار control plane هستند
## kubeadm در هنگام نصب در انتظار control plane می‌ماند


ارائه دهندگان CNI مربوط به Calico، Canal و Flannel تأیید شده‌اند که از HostPort پشتیبانی می‌کنند.

برای اطلاعات بیشتر، به [مستندات نقشه پورت CNI] (https://github.com/containernetworking/plugins/blob/master/plugins/meta/portmap/README.md) مراجعه کنید.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
برای اطلاعات بیشتر، به [مستندات نقشه پورت CNI] (https://github.com/containernetworking/plugins/blob/master/plugins/meta/portmap/README.md) مراجعه کنید.
برای اطلاعات بیشتر، به [مستندات نقشه پورت CNI](https://github.com/containernetworking/plugins/blob/master/plugins/meta/portmap/README.md) مراجعه کنید.


برای درک نحوه پیکربندی kubeletها در یک خوشه(cluster) kubeadm برای داشتن گواهی‌های سرویس‌دهی امضا شده، به [فعال‌سازی گواهی‌های سرویس‌دهی امضا شده kubelet](/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/#kubelet-serving-certs) مراجعه کنید.

همچنین به [نحوه اجرای امن سرور metrics] (https://github.com/kubernetes-sigs/metrics-server/blob/master/FAQ.md#how-to-run-metrics-server-securely) مراجعه کنید.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
همچنین به [نحوه اجرای امن سرور metrics] (https://github.com/kubernetes-sigs/metrics-server/blob/master/FAQ.md#how-to-run-metrics-server-securely) مراجعه کنید.
همچنین به [نحوه اجرای امن سرور metrics](https://github.com/kubernetes-sigs/metrics-server/blob/master/FAQ.md#how-to-run-metrics-server-securely) مراجعه کنید.


## «coredns» در حالت «در انتظار» گیر کرده است

این **انتظار** می‌رود و بخشی از طراحی است. kubeadm مستقل از ارائه‌دهنده شبکه است، بنابراین مدیر باید افزونه شبکه pod را نصب کند (/docs/concepts/cluster-administration/addons/). شما باید قبل از اینکه CoreDNS به طور کامل مستقر شود، یک افزونه Pod Networ نصب کنید. از این رو، قبل از راه‌اندازی شبکه، در حالت «در انتظار» قرار دارد.
Copy link
Member

@xirehat xirehat Sep 13, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
این **انتظار** می‌رود و بخشی از طراحی است. kubeadm مستقل از ارائه‌دهنده شبکه است، بنابراین مدیر باید افزونه شبکه pod را نصب کند (/docs/concepts/cluster-administration/addons/). شما باید قبل از اینکه CoreDNS به طور کامل مستقر شود، یک افزونه Pod Networ نصب کنید. از این رو، قبل از راه‌اندازی شبکه، در حالت «در انتظار» قرار دارد.
این **انتظار** می‌رود و بخشی از طراحی است. kubeadm مستقل از ارائه‌دهنده شبکه است، بنابراین مدیر باید [افزونه شبکه](/docs/concepts/cluster-administration/addons/) pod را نصب کند. شما باید قبل از اینکه CoreDNS به طور کامل مستقر شود، یک افزونه Pod Network نصب کنید. از این رو، قبل از راه‌اندازی شبکه، در حالت «در انتظار» قرار دارد.

این ممکن است منجر به مشکلاتی در flannel شود، که به طور پیش‌فرض روی اولین رابط روی یک میزبان قرار می‌گیرد.

این امر باعث می‌شود همه میزبان‌ها فکر کنند که نشانی IP عمومی یکسانی دارند. برای جلوگیری از این،
پرچم "--face eth1" را به flannel ارسال کنید تا رابط دوم انتخاب شود.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
پرچم "--face eth1" را به flannel ارسال کنید تا رابط دوم انتخاب شود.
پرچم `--face eth1` را به flannel ارسال کنید تا رابط دوم انتخاب شود.

- اگر پادها درست بعد از `kubeadm init` در یکی از این حالت‌ها هستند، لطفاً یک مشکل را در مخزن kubeadm باز کنید. `coredns` (یا `kube-dns`) باید تا زمانی که افزونه شبکه را مستقر نکرده‌اید، در حالت `Pending` باشد.
- اگر پس از نصب افزونه شبکه، Pods را در حالت‌های `RunContainerError`، `CrashLoopBackOff` یا `Error` مشاهده کردید و هیچ اتفاقی برای `coredns` (یا `kube-dns`) نیفتاد، به احتمال زیاد افزونه Pod Network که نصب کرده‌اید به نحوی خراب است. ممکن است مجبور شوید امتیازات RBAC بیشتری به آن اعطا کنید یا از نسخه جدیدتری استفاده کنید. لطفاً مشکل را در ردیاب مشکلات ارائه دهندگان Pod Network ثبت کنید و مشکل را در آنجا بررسی کنید.

## «coredns» در حالت «در انتظار» گیر کرده است
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
## «coredns» در حالت «در انتظار» گیر کرده است
## «coredns» در حالت `Pending` گیر کرده است

sudo chown $(id -u):$(id -g) $HOME/.kube/config
```

## عدم موفقیت در چرخش گواهی کلاینت Kubelet {#-گواهی-مشتری kubelet}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
## عدم موفقیت در چرخش گواهی کلاینت Kubelet {#-گواهی-مشتری kubelet}
## عدم موفقیت در چرخش گواهی کلاینت Kubelet {#kubelet-client-cert}

@xirehat
Copy link
Member

xirehat commented Sep 20, 2025

/lgtm

To finalize this PR, please squash commits of this PR into one commit.

https://kubernetes.io/docs/contribute/new-content/open-a-pr/#squashing-commits

Thanks!

@k8s-ci-robot
Copy link
Contributor

@xirehat: changing LGTM is restricted to collaborators

In response to this:

/lgtm

To finalize this PR, please squash commits of this PR into one commit.

https://kubernetes.io/docs/contribute/new-content/open-a-pr/#squashing-commits

Thanks!

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

Update content/fa/docs/setup/production-environment/tools/kubeadm/install-kubeadm.md

Co-authored-by: Mohammad Amin Taheri <[email protected]>

Apply suggestions from xirehat

Co-authored-by: Mohammad Amin Taheri <[email protected]>
@Moh0ps
Copy link
Author

Moh0ps commented Sep 28, 2025

Hi @seokho-son ❤️, this PR is now ready to merge. Could you please review it and add /lgtm if everything looks good? 😉🙂

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. language/fa Issues or PRs related to Persian language sig/docs Categorizes an issue or PR as relevant to SIG Docs. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants