Compare commits

...

3 Commits

Author SHA1 Message Date
Kubernetes Prow Robot 69289dc3f4 Merge pull request #24761 from kasramp/dev-1.18-fa.1
Add hello minikube Persian translation
2020-10-28 09:43:57 -07:00
kasramp 67eedc0372 Add hello minikube Persian translation 2020-10-27 08:42:27 +01:00
sattarfeizollahibarough bd0fb967d5 Add Persian language
Co-authored-by: Tim Bannister <tim@scalefactory.com>
2020-09-16 22:36:34 +01:00
22 changed files with 1231 additions and 12 deletions
+8
View File
@@ -58,6 +58,14 @@ aliases:
- alexbrand
# glo-pena
- electrocucaracha
sig-docs-fa-owners: # Admins for Persian content
- FaezeAzimi
- kasramp
- sattarfeizollahibarough
sig-docs-fa-reviews: # PR reviews for Persian content
- FaezeAzimi
- kasramp
- sattarfeizollahibarough
sig-docs-fr-owners: # Admins for French content
- remyleone
- perriea
+92
View File
@@ -0,0 +1,92 @@
<div dir="rtl">
# مستندات کوبرنتیز
[![Netlify Status](https://api.netlify.com/api/v1/badges/be93b718-a6df-402a-b4a4-855ba186c97d/deploy-status)](https://app.netlify.com/sites/kubernetes-io-master-staging/deploys) [![GitHub release](https://img.shields.io/github/release/kubernetes/website.svg)](https://github.com/kubernetes/website/releases/latest)
این مخزن شامل مواردی است که برای ساخت [مستندات و وب سایت کوبرنتیز](https://kubernetes.io/) به آنها نیاز است. ما از این که شما قصد مشارکت دارید خوشحال هستیم.
## اجرای وب سایت در سیستم خود با استفاده از هوگو
برای دریافت مستندات نصب هوگو لطفاً به [سایت مستندات رسمی هوگو](https://gohugo.io/getting-started/installing/) وارد شوید. قبل از هر چیز مطمئن شوید که نسخه توسعه یافته هوگو را
دریافت نموده‌اید. برای این کار باید متغییر محیطی `HUGO_VERSION` را در فایل [`netlify.toml`](netlify.toml#L10) بررسی نمایید.
قبل از ساختن سایت، مخزن وب سایت کوبرنتیز را کلون نمایید:
<div dir="ltr">
```bash
git clone https://github.com/kubernetes/website.git
cd website
git submodule update --init --recursive --depth 1
```
</div>
**توجه:** وب سایت کوبرنتیز [تم هوگو داکی](https://github.com/google/docsy#readme) را برای استقرار استفاده می‌کند.
اگر مخزن وب سایت خود را بروزرسانی نکرده‌اید، مسیر `website/themes/docsy` خالی خواهد بود و وب سایت بدون یک کپی از آن تم ساخته نخواهد شد.
برای بروزرسانی تم وب سایت از دستور زیر استفاده شود:
<div dir="ltr">
```bash
git submodule update --init --recursive --depth 1
```
</div>
برای ساخت و تست سایت در داخل سیستم خود می‌توانید از دستور زیر استفاده کنید:
<div dir="ltr">
```bash
hugo server --buildFuture
```
</div>
با اجرای دستور فوق سرور هوگو به صورت داخلی بر روی سیستم شما بر روی پورت 1313 شروع به کار خواهد کرد. برای دیدن وب سایت http://localhost:1313 در مرورگر خود باز کنید. با انجام هر تغییری در فایلهای سورس، هوگو مرورگر را وادار به بازخوانی صفحه می‌کند.
## مشارکت در SIG مستندسازی
شما می‌توانید با استفاده از لینک روبرو در مورد SIG مستندسازی کوبرنتیز و جلسات آنها اطلاعات بیشتری را بدست آورید. [صفحه جامعه کوبرنتیز](https://github.com/kubernetes/community/tree/master/sig-docs#meetings)
همچنین شما می‌توانید با نگهدارنگان پروژه کوبرنتیز با استفاده از لینکهای زیر در تماس باشید:
- [Slack](https://kubernetes.slack.com/messages/sig-docs)
- [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-docs)
## کمک به مستند سازی این پروژه
با استفاده از دکمه **Fork** که در ناحیه بالا سمت راست قرار گرفته است می‌توانید یک کپی از این مخزن را در حساب Github خود کپی کنید. به این کپی اصطلاحاً *fork* گفته می شود. تغییراتی را که مد نظر دارید را
در نسخه fork شده اعمال کنید و هنگامی که آماده بودید این تغییرات را برای ما ارسال کنید که این کار از طریق درخواست pull انجام می‌شود.
زمانی که درخواست pull شما برای یکی از بازبینان کوبرنتیز ارسال شد، وی موظف به ایجاد یک بازخورد واضح و قابل اعمال است. به عنوان مالک درخواست کننده pull **وظیفه شماست که به اصلاح مواردی بپردازید که بازبین برای شما به عنوان بازخورد مشخص کرده است.**
همچنین باید این نکته را توجه داشته باشید که ممکن است بیشتر از یک بازبین کوبرنتیز برای کار شما بازخورد ایجاد کند و یا اینکه حتی بازخوردی را دریافت کنید که با بازخورد ابتدایی متفاوت باشد.
علاوه بر این، در برخی موارد ممکن است یکی از بازبینان در صورت لزوم از یک بازبین فنی بخواهد تا بازخوردی را برای شما انجام دهد. بازبینان تمام تلاش خود را می‌کند که بازخوردهای خود را در سریعترین زمان به شما پاسخ بدهند ولی زمانبندی این موضوع می‌تواند بنا به شرایط متفاوت باشد.
برای اطلاعات بیشتر در خصوص مشارکت در مستندسازی کوبرنتیز به لینک‌های زیر مراجعه کنید:
* [مشارکت در مستندسازی کوبرنتیز](https://kubernetes.io/docs/contribute/)
* [انواع محتوای صفحات](https://kubernetes.io/docs/contribute/style/page-content-types/)
* [راهنمای سبک مستندسازی](https://kubernetes.io/docs/contribute/style/style-guide/)
* [مستند بومی سازی کوبنتیز](https://kubernetes.io/docs/contribute/localization/)
## بومی‌سازی `README.md`'s
| زبان | زبان |
|---|---|
|[چینی](README-zh.md)|[کره‌ای](README-ko.md)|
|[فرانسوی](README-fr.md)|[لهستانی](README-pl.md)|
|[آلمانی](README-de.md)|[پرتغالی](README-pt.md)|
|[هندی](README-hi.md)|[روسی](README-ru.md)|
|[اندونزیایی](README-id.md)|[اسپانیایی](README-es.md)|
|[ایتالیایی](README-it.md)|[اوکراینی](README-uk.md)|
|[ژاپنی](README-ja.md)|[ویتنامی](README-vi.md)|
|[فارسی](README-fa.md)|
## مرام نامه
مشارکت در جامعه کوبرنتیز توسط [CNCF مرام نامه](https://github.com/cncf/foundation/blob/master/code-of-conduct.md) انجام می شود.
## سپاس
کوبرنتیز با مشارکت جامعه شکوفا می شود و ما از کمک شما برای ارائه کمکهایتان به وب سایت و مستندسازی مستنداتمان سپاسگزار هستیم.
</div>
+24 -12
View File
@@ -319,11 +319,23 @@ languagedirection = "ltr"
time_format_blog = "2006.01.02"
language_alternatives = ["en"]
[languages.fa]
title = "Kubernetes"
description = "ارکستراسیون کانتینرها برای محیطهای عملیاتی"
languageName = "فارسی"
contentDir = "content/fa"
weight = 5
languagedirection = "rtl"
[languages.fa.params]
time_format_blog = "2006.01.02"
language_alternatives = ["en"]
[languages.fr]
title = "Kubernetes"
description = "Solution professionnelle dorchestration de conteneurs"
languageName ="Français"
weight = 5
weight = 6
contentDir = "content/fr"
languagedirection = "ltr"
@@ -336,7 +348,7 @@ language_alternatives = ["en"]
title = "Kubernetes"
description = "Orchestrazione di Container in produzione"
languageName = "Italiano"
weight = 6
weight = 7
contentDir = "content/it"
languagedirection = "ltr"
@@ -349,7 +361,7 @@ language_alternatives = ["en"]
title = "Kubernetes"
description = "Production-Grade Container Orchestration"
languageName ="Norsk"
weight = 7
weight = 8
contentDir = "content/no"
languagedirection = "ltr"
@@ -362,7 +374,7 @@ language_alternatives = ["en"]
title = "Kubernetes"
description = "Produktionsreife Container-Orchestrierung"
languageName ="Deutsch"
weight = 8
weight = 9
contentDir = "content/de"
languagedirection = "ltr"
@@ -375,7 +387,7 @@ language_alternatives = ["en"]
title = "Kubernetes"
description = "Orquestación de contenedores para producción"
languageName ="Español"
weight = 9
weight = 10
contentDir = "content/es"
languagedirection = "ltr"
@@ -388,7 +400,7 @@ language_alternatives = ["en"]
title = "Kubernetes"
description = "Orquestração de contêineres em nível de produção"
languageName ="Português"
weight = 9
weight = 10
contentDir = "content/pt"
languagedirection = "ltr"
@@ -401,7 +413,7 @@ language_alternatives = ["en"]
title = "Kubernetes"
description = "Orkestrasi Kontainer dengan Skala Produksi"
languageName ="Bahasa Indonesia"
weight = 10
weight = 11
contentDir = "content/id"
languagedirection = "ltr"
@@ -414,7 +426,7 @@ language_alternatives = ["en"]
title = "Kubernetes"
description = "Production-Grade Container Orchestration"
languageName = "Hindi"
weight = 11
weight = 12
contentDir = "content/hi"
languagedirection = "ltr"
@@ -427,14 +439,14 @@ title = "Kubernetes"
description = "Giải pháp điều phối container trong môi trường production"
languageName = "Tiếng Việt"
contentDir = "content/vi"
weight = 12
weight = 13
languagedirection = "ltr"
[languages.ru]
title = "Kubernetes"
description = "Первоклассная оркестрация контейнеров"
languageName = "Русский"
weight = 12
weight = 13
contentDir = "content/ru"
languagedirection = "ltr"
@@ -447,7 +459,7 @@ language_alternatives = ["en"]
title = "Kubernetes"
description = "Produkcyjny system zarządzania kontenerami"
languageName = "Polski"
weight = 13
weight = 14
contentDir = "content/pl"
languagedirection = "ltr"
@@ -460,7 +472,7 @@ language_alternatives = ["en"]
title = "Kubernetes"
description = "Довершена система оркестрації контейнерів"
languageName = "Українська"
weight = 14
weight = 15
contentDir = "content/uk"
languagedirection = "ltr"
+13
View File
@@ -0,0 +1,13 @@
# See the OWNERS docs at https://go.k8s.io/owners
# پروژه بومی‌سازی کوبرنتیز به زبان فارسی
# تیم‌ها و افراد مشارکت‌کننده در این پروژه در لینک روبرو وجود دارند https://github.com/orgs/kubernetes/teams.
reviewers:
- sig-docs-fa-reviews
approvers:
- sig-docs-fa-owners
labels:
- language/fa
@@ -0,0 +1 @@
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 214 210"><defs><style>.cls-1{fill:#316ce6;}.cls-2{fill:#09c1d1;}.cls-3{fill:#c9e9ec;}</style></defs><title>kubernetes_icons</title><rect class="cls-1" x="10.24" y="8.775" width="33.6" height="33.6" rx="4.158"/><rect class="cls-1" x="10.24" y="46.975" width="33.6" height="33.6" rx="4.158"/><rect class="cls-1" x="170.2" y="8.775" width="33.6" height="33.6" rx="4.158"/><rect class="cls-1" x="90.18" y="86.925" width="33.6" height="33.6" rx="4.158"/><rect class="cls-1" x="50.23" y="126.825" width="33.6" height="33.6" rx="4.158"/><rect class="cls-1" x="10.24" y="166.085" width="33.6" height="33.6" rx="4.158"/><rect class="cls-1" x="90.22" y="166.085" width="33.6" height="33.6" rx="4.158"/><rect class="cls-2" x="89.99" y="8.775" width="33.6" height="33.6" rx="4.158"/><rect class="cls-3" x="89.99" y="48.1" width="33.6" height="33.6" rx="4.158"/><rect class="cls-3" x="49.914" y="8.775" width="33.6" height="33.6" rx="4.158"/><rect class="cls-3" x="10.24" y="86.925" width="33.6" height="33.6" rx="4.158"/><rect class="cls-3" x="50.23" y="166.085" width="33.6" height="33.6" rx="4.158"/><rect class="cls-3" x="130.21" y="126.825" width="33.6" height="33.6" rx="4.158"/><rect class="cls-3" x="170.2" y="166.085" width="33.6" height="33.6" rx="4.158"/><rect class="cls-2" x="49.914" y="48.1" width="33.6" height="33.6" rx="4.158"/><rect class="cls-2" x="50.21" y="86.925" width="33.6" height="33.6" rx="4.158"/><rect class="cls-2" x="130.15" y="86.925" width="33.6" height="33.6" rx="4.158"/><rect class="cls-2" x="170.2" y="126.825" width="33.6" height="33.6" rx="4.158"/><rect class="cls-2" x="10.24" y="126.825" width="33.6" height="33.6" rx="4.158"/><rect class="cls-2" x="130.21" y="166.085" width="33.6" height="33.6" rx="4.158"/><rect class="cls-2" x="90.22" y="126.825" width="33.6" height="33.6" rx="4.158"/></svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

@@ -0,0 +1 @@
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 214 210"><defs><style>.cls-1{fill:#316ce6;}.cls-2{fill:#08c1d1;}.cls-3{fill:#fff;}</style></defs><title>kubernetes_icons</title><rect class="cls-1" x="24.43837" y="69.59095" width="68.66984" height="68.66984" rx="2.37703" transform="translate(-56.27239 71.99817) rotate(-45)"/><rect class="cls-1" x="122.20077" y="69.59095" width="68.66984" height="68.66984" rx="2.37703" transform="translate(-27.63844 141.12663) rotate(-45)"/><rect class="cls-1" x="78.16563" y="128.81421" width="59.80067" height="59.80067" rx="2.07002" transform="translate(-80.57634 122.90059) rotate(-45)"/><rect class="cls-1" x="78.16563" y="19.38512" width="59.80067" height="59.80067" rx="2.07002" transform="translate(-3.19829 90.84955) rotate(-45)"/><rect class="cls-2" x="84.26447" y="80.01949" width="47.6109" height="47.6109" rx="5.89185" transform="translate(-41.76237 106.82659) rotate(-45)"/><rect class="cls-3" x="105.64189" y="55.09395" width="4.80943" height="43.28484"/><polygon class="cls-3" points="100.231 56.897 115.862 56.897 108.047 41.868 100.231 56.897"/><rect class="cls-3" x="114.14747" y="100.79333" width="43.28484" height="4.80943"/><polygon class="cls-3" points="155.629 95.382 155.629 111.013 170.658 103.198 155.629 95.382"/><rect class="cls-3" x="105.64143" y="109.47241" width="4.80943" height="43.28484"/><polygon class="cls-3" points="115.862 150.954 100.231 150.954 108.047 165.984 115.862 150.954"/><rect class="cls-3" x="58.69934" y="100.79348" width="43.28484" height="4.80943"/><polygon class="cls-3" points="60.503 111.013 60.503 95.382 45.474 103.198 60.503 111.013"/><circle class="cls-3" cx="107.94678" cy="103.92587" r="9.01768"/></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.2 KiB

+3
View File
@@ -0,0 +1,3 @@
---
headless: true
---
+60
View File
@@ -0,0 +1,60 @@
---
title: "ارکستراسیون کانتینرها برای محیطهای عملیاتی"
abstract: "استقرار، مقیاس‌پذیری و مدیریت خودکار کانتینرها"
cid: خانه
---
{{< blocks/section id="oceanNodes" >}}
{{% blocks/feature image="flower" %}}
### [کوبرنتیز (K8s)]({{< relref "/docs/concepts/overview/what-is-kubernetes" >}}) یک سیستم منبع باز است که امکان استقرار، مقیاس‌پذیری و مدیریت اپلیکیشن‌های مبتنی بر کانتینرها را ایجاد می‌کند.
این سیستم کانتینرهای یک اپلیکیشن را در واحدهای منطقی گروه‌بندی می‌کند تا در ادامه بتوان آنها را به راحتی جستجو و مدیریت نمود. کوبرنتیز بر اساس [15 سال تجربه با بارکار عمیلاتی شرکت گوگل](http://queue.acm.org/detail.cfm?id=2898444), ساخته شده است و در این راه از بهترین ایده‌ها و به‌روش‌های جامعه نیز بهره گرفته شده است.
{{% /blocks/feature %}}
{{% blocks/feature image="scalable" %}}
#### هر چقدر بزرگ باشد
این سیستم با همان اصولی طراحی شده است که گوگل را قادر می‌کند تا میلیاردها کانتینر را در هفته اجرا کند، کوبرنتیز بدون اینکه تیم عملیاتی خود را بزرگتر کنید مقیاس بزرگتری می‌توان بپذیرد.
{{% /blocks/feature %}}
{{% blocks/feature image="blocks" %}}
#### هر چقدر پیچیده باشد
فرقی ندارد از کوبرنتیز برای تست در سیستم خود استفاده می‌کنید یا از آن برای یک شرکت بزرگ در حال استفاده هستید، انعطاف‌پذیری بالای آن با شما رشد می‌کند تا بتوانید اپلیکیشن خود را به صورت پیوسته و راحت صرفنظر از پیچیدگی‌ها ارانه کنید.
{{% /blocks/feature %}}
{{% blocks/feature image="suitcase" %}}
#### هر مکانی باشد
کوبرنتیز منبع باز است و این اجازه را به شما می‌دهد که از زیرساخت‌های ابری داخلی سازمان، ترکیبی و یا عمومی استفاده کنید، همچنین این امکان برای شما فراهم شده است که بدون هیچ زحمتی بارکاری را به جایی که برای شما مهم است انتقال دهد.
{{% /blocks/feature %}}
{{< /blocks/section >}}
{{< blocks/section id="video" background-image="kub_video_banner_homepage" >}}
<div class="light-text">
<h2>چالش انتقال بیشتر از 150 میکروسرویس به کوبرنتیز</h2>
<p>ارائه شده توسط سارا ولز، مدیر فنی تیم عملیات فایننشیال تایمز</p>
<button id="desktopShowVideoButton" onclick="kub.showVideo()">مشاهده ویدیو</button>
<br>
<br>
<br>
<a href="https://events.linuxfoundation.org/kubecon-cloudnativecon-europe/?utm_source=kubernetes.io&utm_medium=nav&utm_campaign=kccnceu20" button id="desktopKCButton">به صورت مجازی در کنفرانس کیوب کان که در 27 تا 30 مرداد 1399 برگزار می‌شود شرکت کنید</a>
<br>
<br>
<br>
<br>
<a href="https://events.linuxfoundation.org/kubecon-cloudnativecon-north-america/?utm_source=kubernetes.io&utm_medium=nav&utm_campaign=kccncna20" button id="desktopKCButton">در کنفرانس کیوب کان که در 27 تا 30 آبان 1399 در بوستون برگزار می‌شود شرکت کنید</a>
</div>
<div id="videoPlayer">
<iframe data-url="https://www.youtube.com/embed/H06qrNmGqyE?autoplay=1" frameborder="0" allowfullscreen></iframe>
<button id="closeButton"></button>
</div>
{{< /blocks/section >}}
{{< blocks/kubernetes-features >}}
{{< blocks/case-studies >}}
@@ -0,0 +1,90 @@
---
title: کوبرنتیز چیست?
description: >
کوبرنتیز یک پلتفرم قابل انتقال، قابل گسترش و کد باز است که برای مدیریت اپلیکیشن‌های مبتنی بر کانتینر استفاده می‌شود و با استفاده از این پلتفرم می‌توان خودکارسازی و پیکره‌بندری توصیقی را به سادگی انجام داد.
content_type: concept
weight: 10
card:
name: مفاهیم
weight: 10
---
<!-- overview -->
هدف این صفحه بررسی اجمالی کوبرنتیز است.
<!-- body -->
کوبرنتیز یک پلتفرم قابل انتقال، قابل گسترش و کد باز است که برای مدیریت اپلیکیشن‌های مبتنی بر کانتینر استفاده می‌شود و با استفاده از این پلتفرم می‌توان خودکارسازی و پیکره‌بندی توصیقی را به سادگی انجام داد. کوبنتیز یک اکوسیستم بزرگ و به سرعت در حال رشد دارد. پشتیبانی از آن و ابزارهایش به صورت فراگیر در دسترس هستند.
نام کوبنتیز از واژه‌ای یونانی به معنی سکان‌دار یا ناخدا نشات گرفته است. شرکت گوگل این پروژه را در سال 2014 به صورت کد باز تعریف کرد. در واقع کوبرنتیز حاصل [بیش از پانزده سال تجربه شرکت گوگل](/blog/2015/04/borg-predecessor-to-kubernetes/) در فراهم آوردن محیط عملیاتی شلوغ و پر ترافیک است که با بهترین ایده‌ها و به‌روش‌های جامعه ادغام شده است.
## تاریخچه
نگاهی به گذشته در پاسخ به این سوال که چرا کوبرنتیز بوجود آمد موثر خواهد بود.
![Deployment evolution](/images/docs/Container_Evolution.svg)
**نحوه استقرار در زمان‌های بسیار قدیم:**
در گذشته‌ای نچندان دور، بسیاری از سازمان‌ها و شرکت‌ها برای اجرای برنامه‌های خود متکی به سرورهای فیزیکی بودند. در آن زمان هیچ راهی برای تعیین آستانه، برای استفاده از منابع برای سرورهای فیزیکی وجود نداشت، که این موضوع باعث ایجاد مشکل عدم تخصیص بهینه منابع می‌شد. برای مثال فرض کنید که چندین اپلیکیشن بر روی یک سرور فیزیکی در حال سرویس‌دهی هستند و یکی از این اپلیکیشن‌ها بیشتر منابع را به خودش اختصاص می‌دهد که این موضوع منجر به افت بهره‌وری در سایر اپلیکیشن‌ها شده است. راه‌کار ساده اولی که به ذهن می‌رسد آن است که هر اپلیکیشن را در سرور فیزیکی جداگانه نصب و راه‌اندازی کنیم. اما این راه‌کار به دلیل اینکه باید سازمان تعداد زیادی سرور خریداری کند باعث ایجاد مشکل می‌شود به خصوص از بعد مالی که سرورهای فیزکی جز دارایی‌های گران محسوب می‌شوند.
**نحوه استقرار در زمان پیدایش مجازی‌سازی:**
به عنوان یک راه‌کار برای مشکلی که پیش‌تر ذکر شد، مجازی‌سازی معرفی شد. این راه‌کار به شما اجازه می‌دهد که چندین ماشین مجازی را روی یک سرور فیزیکی مستقر کنید.
مجازی‌سازی به شما این اجازه را می‌دهد که از منابع یک سرور فیزیکی استفاده بهینه‌تری داشته باشید و همچنین این امکان را به شما می‌دهد که سیستم شما مقیاس‌پذیر باشد و به این صورت هزینه‌های سخت‌افزاری سازمان کاهش پیدا کند. با مجازی‌سازی شما این امکان را دارید که منابع سخت‌افزاری خود را به عنوان خوشه‌ای از ماشین‌های مجازی قابل استفاده مجدد تعریف کنید.
هر ماشین مجازی یک ماشین کامل با تمام اجزای لازم است. این اجزا شامل سیستم‌عامل مستقل و سخت‌افزار مجازی شده از قبیل پردازش‌گر مرکزی و حافظه اصلی است.
**نحوه استقرار در زمان پیدایش کانتینرها:**
کانتینرها نیز همانند ماشین‌های مجازی هستند با این تفاوت که کانتینرها از یک سیستم‌عامل مشترک بهره می‌گیرند. بنابراین، در مقایسه با ماشین‌های مجازی، کانتینر سبک‌تر هستند. مشابه ماشین‌های مجازی، کانتینرها نیز دارای فایل‌سیستم، پردازشگر مرکزی، حافظه و فضای پروسس مخصوص به خود هستند. ذکر این نکته ضروری است که کانتینرها از سیستم‌عامل لایه زیرین خود نیز مستقل هستند، بنابراین به راحتی این امکان وجود دارد که آنها را بین ابرهای مختلف و توزیع‌های مختلف سیستم‌عامل انتقال داد.
کانتینرها به علت ایجاد سایر مزایایی که در ذیل لیست شده‌اند نیز مورد توجه هستند:
* ساخت و استقرار اپیلیکشن با سرعت بالا: سادگی و بهره‌وری ساخت image در کانتینرها از ماشین‌های مجازی بهتر است.
* توسعه، ادغام و استقرار مداوم: به واسطه اینکه ساخت image و استقرار آن بسیار ساده و قابل اطمینان است این امکان وجود دارد که به راحتی در محیط عملیاتی استقرار پیدا کند و در صورتی که به هر نحوی استقرار دچار مشکل شد، عمل عقب‌گرد صورت گیرد.
* لحاظ کردن دغدغه‌های تیم‌های توسعه و عملیات: این انعطاف را برای تیم‌های توسعه فراهم می‌کند که بجای آنکه دغدغه زیرساختی داشته باشند فقط به توسعه اپلیکیشن فکر کنند و همچنین تیم عملیات فقط به نگهداری مناسب زیرساخت فکر کند.
* کانتینرها این امکان را فراهم می‌کنند که نه تنها بتوانیم زیرساخت و سیستم‌عامل را از جوانب مختلف تحت رصد داشته باشیم بلکه اپلیکیشن را نیز با متریک‌های مختلف مورد رصد و مشاهده قرار دهیم.
* سازگاری محیطی با محیط‌های مختلف مثل تست، پیش‌عملیاتی و عملیاتی: عملکرد کانتینری که در یک لپتاپ ایجاد شده است مشابه همان است که در سرور درحال اجرا است.
* قابلیت انتقال بر روی ابرها و سیستم‌عامل‌های مختلف: امکان اجرا بر روی سیستم‌عامل‌های اوبوبنتو، ردهت و همچنین بسیاری از ابرهای عمومی و خصوصی را دارد.
* مدیریت اپلیکیشن محور: کانتینرها سطح انتزاع را یک مرحله افزایش داده‌اند به گونه‌ای که در گذشته درگیر سیستم‌عاملی بودیم که بر روی سخت‌افزار اجرا می‌شد ولی امروز درگیر نگهداری از اپلیکیشنی هستیم که بر روی یک سیستم‌عامل با منابع منطقی است هستیم.
* میکروسرویس‌های مستقل، کشسان، توزیع‌شده: اپلیکیشن‌هایی که به اجزای کوچک‌تر و مستقل‌تری تبدیل شده‌اند می‌توانند به صورت خودکار مدیریت و استقرار یابند، در صورتی که اپلیکیشن‌هایی که به صورت یکپارچه توسعه یافته‌انداز این مزیت محروم هستند.
* ایزوله بودن منابع: پیش‌بینی بهره‌وری منابع.
* استفاده از منابع: بهترین بهره‌برداری از منابع.
## چرا به کوبرنتیز احتیاج داریم و برایمان چکار انجام می‌دهد {#why-you-need-kubernetes-and-what-can-it-do}
استفاده از کانتینرها یک روش موثر برای گروه‌بندی و اجرای اپلیکشن‌های شما است. در یک محیط عملیاتی، مدیریت کانتینرهایی که اپلیکشن‌ها در آنها اجرا می‌شوند به عهده شما است و باید مطمئن باشید که هیچ خرابی رخ ندهد؛ برای مثال اگر کانتینری از دسترس خارج شد، کانتینر دیگر باید شروع بکار کند و در دسترس باشند. با توجه به این نکته در صورتی که یک سیستم به صورت خودکار این فرآیند را کنترل و مدیریت کند اوضاع بهتر نخواهد بود؟
اینجاست که کوبرنتیز به کمک ما می‌آید. این سیستم چارچوبی را برای اجرای سیستم‌های توزیع شده به صورت انعطاف‌پذیر در اختیار قرار می‌دهد. کوبرنتیز مسئولیت مقیاس‌پذیری و خرابی‌های برنامه‌ی شما را به عهده می‌گیرد و آن را مدیریت می‌کند و به شما الگوهای استقرار ارائه می‌دهد. برای مثال شما می‌توانید به سادگی استقرار قناری را در سیستم خود مدیریت کنید. استقرار قناری، نوعی از استقرار در محیط عملیاتی است که در آن یک ویژگی نرم‌افزاری تنها برای گروهی از کاربران منتشر می‌شود و در صورتی که آن ویژگی موثر بود در اختیار سایر کاربران نیز قرار می‌گیرد.
کوبرنتیز موارد ذیل را فراهم می‌کند:
* **کشف سرویس و تنظیم بار**
کوبرنتیز می‌تواند با استفاده از DNS و یا آدرس IP یک کانتینر، آن را در اختیار فراخواننده قرار دهد. اگر ترافیک به سوی یک کانتینر زیاد شده باشد، کوبرنتیز قادر خواهد بود که تنظیم بار را انجام دهد تا استقرار پایدار باشد.
* **اراکستراسیون دستگاه‌های ذخیره‌سازی**
کوبرنتیز این اجازه را به شما می‌دهد که به صورت خودکار سیستم ذخیره‌سازی مورد نظر خود را مانند، هارد دیسک‌های سیستم جاری، ابرهای عمومی و غیره را به سیستم مانت کنید.
* **خودکارسازی عقب‌گرد**
این امکان برای شما فراهم شده است که وضعیت مورد نظر خود را برای استقرار کانتیرنرها با استفاده از کوبرنتیز مشخص کنید تا در ادامه کوبرنتیز وضعیت جاری را به وضعیت مورد نظر شما تغییر دهد. برای مثال؛ شما می‌توانید کوبرنتیز را به گونه‌ای خودکارسازی کنید که در یک عمل استقرار کانتیرنرهای جاری را حذف کرده و از منابع آنها برای ساخت کانتیرنرهای جدید در استقرار استفاده کند.
* **بین پکینگ خودکار**
کوبرنتیز از کلاستری از نودها تشکیل شده است که برای اجرای برنامه‌های کانتینری مورد استفاده قرار می‌گیرد. شما برای کوبرنتیز مشخص می‌کنید که هر کانتینر چه مقدار منابع پردازشی و حافظه اصلی را اشغال کند. با توجه به این نکته کوبرنتیز بهترین نود را برای استقرار کانتینر شما انتخاب می‌کند که از لحاظ مصرف منابع بهینه باشد.
* **احیای خودکار**
کوبرنتیز کانتیرنرهایی را که دچار مشکل شده‌اند را با کانتیرنرهای سالم جایگزین می‌کند، همچنین اگر کانتینری به پارامترهای بررسی کننده سلامت کانتینر واکنش نشان ندهد(این امکان وجود دارد تا پارامترهایی را برای بررسی سلامت کانتینر تعریف کنید) آن ار از بین می‌برد و تا زمانی که آماده سرویس‌دهی به مشتری نباشند آن را در دسترس قرار نخواهد داد.
* **مدیریت پیکره‌بندی**
کوبرنتیز این امکان را فراهم می‌کند که اطلاعات حساس مانند رمز عبور، توکن‌های OAuth و کلیدهای SSH را ذخیره و مدیریت نمایید. می‌توانید اطلاعات حساس و تنظیمات اپلیکیشن را بدون بازسازی image کانتینر خود انجام دهید.
## تصورات اشتباه راجع به کوبرنتیز
کوبنتیز یک سیستم پلتفرم به عنوان سرویس (PaaS) سنتی و همه‌چیز تمام نیست، از آنجایی که کوبرنتیز در سطح کانتینر فعالیت دارد و نه در سطح سخت‌افزار لذا امکانتی را فراهم می‌کند که بسیاری از پلفترم به عنوان سرویس‌ها آنها را ارائه می‌کنند مانند: استقرار، مقیاس‌پذیری، تنظیم سطح بار و سایر موارد. اما کوبرنتیز یک سیستم یکپارچه نیست و تمام این امکانات به صورت افزونه و گزینه در اختیار کاربر قرار می‌گیرند. کوبرنتیز در واقع بلوک‌های یک ساختمان را در اختیار توسعه‌دهنده قرار می‌دهد که توسعه‌دهنده با آنها می‌تواند پلتفرم توسعه مختص به خودش را با انتخاب هر افزونه یا گزینه و با انعطاف بسازد.
کوبرنتیز:
* محدودیتی برای انواع اپلیکشن مورد پشتیبانی ندارد. هدف کوبرنتیز آن است که از انواع بار کاری پشتیبانی کند به خصوص اپلیکشن‌های stateless، stateful و پردازش حجیم داده. اگر پلیکیشنی قادر به اجرا بر روی کوبرنتیز است، قاعدتاً بر روی کوبرنتیز عالی اجرا خواهد شد.
* کوبرنتیز وظیفه استقرار کد و همچنین ساخت (Build) اپلیکیشن شما را ندارد و فرایندهای (CI/CD) به وسیله فرهنگ سازمان و نیازمندهای فنی آن انتخاب می‌شود.
* کوبنتیز خدمات سطح اپلیکشن؛ مانند میان‌افزارهایی از قبیل (Message Buses)، چارچوب پردازش داده از قبیل Apache Spark، بانک‌های اطلاعاتی از قبیل MySQL یا سیستم‌های خوشه‌شده ذخیره‌ساز از قبیل Ceph را به صورت سرویس توکار ارائه نمی‌دهد. این اجزا می‌توانند بر روی کوبرنتیز به عنوان برنامه اجرا شوند.
* کوبرنتیز هیچ راه‌کار مانیتورینگ، مکانیزم لاگ، یا هشداری را دیکته نمی‌کند. کوبرنتیز فقط برای اثبات طرح خود از چند ابزار ادغام و مکانیزم‌های جمع‌آوری متریک استفاده می‌کند که تمام آنها با توجه به نیاز می‌توانند تغییر کنند.
* استفاده از هیچ زبان یا سیستم پیکره‌بندی را اجباری نکرده است و یک رابط برنامه‌نویسی کاربردی قابل توصیف را ارائه داده است که با هر صورت توصیفی قابل بیان است.
* هیچگونه سیستم پیکره‌بندی، نگهداری و مدیریت را ارئه نمی‌کند.
* به علاوه، کوبرنتیز یک سیستم اراکستراسیون صرف نیست. در واقع، این سیستم نیاز به اراکستراسیون را حذف می‌کند.
## {{% heading "آنچه در ادامه خواهید دید" %}}
* نگاهی بندازید به [اجزای کوبرنتیز](/docs/concepts/overview/components/)
* آماده باشید برای [شروع کار با کوبرنتیز](/docs/setup/)?
+65
View File
@@ -0,0 +1,65 @@
---
title: مستندات کوبرنتیز
noedit: true
cid: docsHome
layout: docsportal_home
class: gridPage gridPageHome
linkTitle: "صفحه اصلی"
main_menu: true
weight: 10
hide_feedback: true
menu:
main:
title: "مستندات"
weight: 20
post: >
<p>کوبرنتیز را با استفاده ار مقاهیم، مستندات و آموزش‌های ارائه شده یاد بگیرید. شما همچنین می‌توانید <a href="/editdocs/" data-auto-burger-exclude data-proofer-ignore>به بهبود مستندات کمک نمایید.</a>!</p>
description: >
کوبرنتیز یک سیستم ارکستراسیون کانتینر متن باز است که برای خودکارسازی استقرار، مقیاس‌پذیری، و مدیریت اپلیکیشن‌های مبتنی بر کانتینر استفاده می‌شود. این سیستم متن باز توسط بنیاد Cloud Native Computing میزبانی می‌شود.
overview: >
کوبرنتیز یک سیستم ارکستراسیون کانتینر متن باز است که برای خودکارسازی استقرار، مقیاس‌پذیری، و مدیریت اپلیکیشن‌های مبتنی بر کانتینر استفاده می‌شود. این سیستم متن باز توسط بنیاد Cloud Native Computing میزبانی می‌شود. (<a href="https://www.cncf.io/about">CNCF</a>).
cards:
- name: concepts
title: "مفاهیم پایه"
description: "یادگیری کوبرنتیز و مفاهیم پایه‌ای آن"
button: "یادگیری مفاهیم"
button_path: "/docs/concepts"
- name: tutorials
title: "امتحان کردن کوبرنتیز"
description: "مباحث آموزشی را برای اینکه دریابید چگونه می‌توانید اپلیکیشن را بر روی کوبرنتیز استقرار دهید دنبال کنید."
button: "مشاهده مباحث آموزشی"
button_path: "/docs/tutorials"
- name: setup
title: "راه‌اندازی یک خوشه"
description: "کوبرنتیز را بر اساس نیازها و منابع راه‌اندازی کنید."
button: "راه‌اندازی کوبرنتیز"
button_path: "/docs/setup"
- name: tasks
title: "یادگیری نحوه استفاده از کوبرنتیز"
description: "کارهای رایج و نحوه انجام آنها را بیابید"
button: "مشاهده کارها"
button_path: "/docs/tasks"
- name: training
title: "آموزش"
description: "با دریافت گواهی‌نامه کوبرنتیز از انجام موفقیت‌آمیز پروژه‌های خود اطمینان حاصل کنید!"
button: "مشاهده آموزش"
button_path: "/training"
- name: reference
title: پیدا کردن مراجع اطلاعاتی
description: واژگان، syntax دستورات، انواع رابط‌های برنامه های کابردی و غیره را بیابید.
button: مشاهده مراجع
button_path: /docs/reference
- name: contribute
title: یاری رساندن و مشارکت در مستندات
description: هر کسی با هر سطح دانش و تجربه‌ای این امکان را دارد که به این پروژه یاری برساند و مشارکت کند.
button: مشارکت در مستندات
button_path: /docs/contribute
- name: release-notes
title: نکات مربوط به انتشار
description: اگر در حال نصب و یا بروزرسانی کوبرنتیز هستید به نکات مربوط به انتشار نسخه جاری توجه کنید.
button: "بارگذاری کوبرنتیز"
button_path: "/docs/setup/release/notes"
- name: about
title: درباره مستندات
description: این وبسایت حاوی مستندات نسخه جاری و چهار نسخه قبلی می‌باشد.
---
@@ -0,0 +1,25 @@
---
title: مستندات نسخه‌هایی از کوبرنتیز که پشتیبانی می‌شوند.
content_type: concept
card:
name: about
weight: 10
title: مستندات نسخه‌هایی که پشتیبانی می‌شوند
---
<!-- overview -->
این وبسایت شامل مستندات نسخه جاری و چهار نسخه‌ی قبلی کوبرنتیز است.
<!-- body -->
## Current version
نسخه جاری
[{{< param "version" >}}](/) است.
## Previous versions
{{< versions-other >}}
+26
View File
@@ -0,0 +1,26 @@
---
no_issue: true
title: setup
main_menu: true
weight: 30
content_type: concept
---
<!-- overview -->
در این قسمت روش‌های مختلفی را که می‌توان کوبرنتیز را نصب و اجرا کرد را لیست کرده است.
وقتی قصد نصب کوبرنتیز را دارید، بر اساس نوع نگهداری، امنیت، منابع و توانایی‌های نیروی انسانی خود می‌توانید نوع نصب را انتخاب نمایید.
شما می‌توانید یک کلاستر کوبرنتیز را بر روی ماشین خود، ابر و یا یک مرکز داده استقرار دهید. همچنین این امکان وجود دارد که نصب شما بر روی محیط‌های گوناگونی همچون فراهم‌کنندگان ابر و یا سرور فیزیکی به صورت قابل تنظیم انجام شود.
<!-- body -->
## محیط آموزشی
اگر در حال فراگیری کوبرنتیز هستید از ابزارهایی که توسط اعضای جامعه کوبرنتیز پشتیبانی می‌شود استفاده کنید تا بتوانید یک کلاستر کوبرنتیز را بر روی ماشین خود راه‌اندازی کنید.
## محیط عملیاتی
زمانی که در حال ارزیابی برای یک محیط عملیاتی هستید باید جوانبی برای راهبری یک کلاستر را که می‌خواهید آن را مدیریت کنید یا به یک فراهم‌کننده تحویل دهید را در نظر بگیرید.
[شرکای کوبرنتیز](https://kubernetes.io/partners/#conformance) شامل لیستی از فراهم‌کنندگان [دارای گواهی‌نامه کوبرنتیز](https://github.com/cncf/k8s-conformance/#certified-kubernetes) است.
+71
View File
@@ -0,0 +1,71 @@
---
title: آموزش‌ها
main_menu: true
no_list: true
weight: 60
content_type: concept
---
<!-- overview -->
این بخش از مستندات شامل آموزش کوبرنتیز است.
یک مستند آموزشی نحوۀ رسیدن به یک هدف را در مقایسه با یک [کار](/docs/tasks/) تکی را نمایش می‌دهد
به طور معمول یک مستند آموزشی شامل چندین بخش است،
که هر بخش شامل دانباله‌ای از مراحل است.
بهتر است قبل از اینکه وارد هر بخش شوید, این صفحه را
[واژه نامه استاندارد](/docs/reference/glossary/) برای مراجعه داشته باشید.
<!-- body -->
## اصول اولیه
* [اصول اولیه کوبرنتیز](/docs/tutorials/kubernetes-basics/) یک مستند آموزشی تعاملی عمیق است که به شما کمک می‌کند تا سیستم کوبرنتیز را بهتر متوجه شوید و برخی از
ویژگی های اساسی آن را امتحان کنید.
* [معرفی کوبرنتیز (edX)](https://www.edx.org/course/introduction-kubernetes-linuxfoundationx-lfs158x#)
* [آشنایی با minikube](/docs/tutorials/hello-minikube/)
## تنظیمات
* [تنظیم redis با استفاده از configmap](/docs/tutorials/configuration/configure-redis-using-configmap/)
## برنامه های کاربردی بدون حالت
* [تنظیم یک آدرس برای برقراری دسترسی به یک برنامه کاربردی موجود در خوشه ](/docs/tutorials/stateless-application/expose-external-ip-address/)
* [مثالی از استقرار یک برنامه PHP با استفاده از Redis](/docs/tutorials/stateless-application/guestbook/)
## برنامه‌های کاربردی دارای حالت
* [اصول اولیه تنطیمات حالت](/docs/tutorials/stateful-application/basic-stateful-set/)
* [مثالی از wordpress و mysql با فضای ذخیره‌سازی پایدار](/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/)
* [مثالی از استقرار دیتابیس کاساندرا با تنظیمات حالت](/docs/tutorials/stateful-application/cassandra/)
* [اجرای یک سیستم توزیعی cp به نام zookepper](/docs/tutorials/stateful-application/zookeeper/)
## CI/CD Pipeline
* [تنظیم یک CI/CD Pipeline با استفاده از کوبرنتیز بخش اول: بررسی کلی](https://www.linux.com/blog/learn/chapter/Intro-to-Kubernetes/2017/5/set-cicd-pipeline-kubernetes-part-1-overview)
* [تنظیم یک CI/CD Pipeline با استفاده از Jenkins در کوبرنتیز (بخش دوم)](https://www.linux.com/blog/learn/chapter/Intro-to-Kubernetes/2017/6/set-cicd-pipeline-jenkins-pod-kubernetes-part-2)
* [اجرا و توسعه یک پازل جدول کلمات توزیعی CI/CD روی بستر کوبرنتیز (بخش سوم)](https://www.linux.com/blog/learn/chapter/intro-to-kubernetes/2017/6/run-and-scale-distributed-crossword-puzzle-app-cicd-kubernetes-part-3)
* [تنظیم CI/CD برای برنامه پازل جدول کلمات توزیع شده بر روی بستر کوبرنتیز (بخش چهارم)](https://www.linux.com/blog/learn/chapter/intro-to-kubernetes/2017/6/set-cicd-distributed-crossword-puzzle-app-kubernetes-part-4)
## خوشه‌ها
* [AppArmor](/docs/tutorials/clusters/apparmor/)
## سرویس‌ها
* [استفاده از آدرس منبع](/docs/tutorials/services/source-ip/)
## {{% heading "whatsnext" %}}
اگر می‌خواهید یک مستند آموزشی بنویسید, این صفحه را ببینید
[انواع محتوای صفحه](/docs/contribute/style/page-content-types/)
تا اطلاعاتی درباره انواع محتوای صفحه پیدا کنید.
+273
View File
@@ -0,0 +1,273 @@
---
title: سلام مینی کیوب
content_type: tutorial
weight: 5
menu:
main:
title: "شروع کنید"
weight: 10
post: >
<p>آماده هستید که دست به کار بشید؟ بیاید یک کلاستر ساده کوبرنتیز که یک برنامه ساده را اجرا می کند بسازیم</p>
card:
name: tutorials
weight: 10
---
<!-- overview -->
این آموزش به شما نشان می دهد که چگونه یک برنامه ساده رو در کوبرنتیز با استفاده از [مینی کیوب](/docs/setup/learning-environment/minikube) و کاتاکدا (Katacoda) اجرا کنید.
کاتاکدا یک محیط رایگان کوبرنتیز را در مرورگر فراهم می کند.
{{< note >}}
می توانید این آموزش را دنبال کنید اگر [مینی کیوب را محلی (در ماشین خود)](/docs/tasks/tools/install-minikube/) نصب کرده اید.
{{< /note >}}
## {{% heading "اهداف" %}}
* یک برنامه کاربردی نمونه را در مینی کیوب مستقر کنید.
* برنامه را اجرا کنید.
* لاگ های برنامه را مشاهده کنید.
## {{% heading "پیش نیازها" %}}
این آموزش یک کانتینر را ارائه می دهد که با استفاده از NGINX تمام درخواست ها را بازتاب می دهد.
<!-- lessoncontent -->
## ساخت خوشه مینی کیوب
1. کلیک کنید ** راه اندازی ترمینال **
{{< kat-button >}}
{{< note >}}
اگر مینی کیوب را به صورت محلی نصب کرده اید ، `minikube start` اجرا کنید.
{{< /note >}}
2. داشبورد کوبرنتیز را در یک مرورگر باز کنید:
```shell
minikube dashboard
```
3. فقط برای محیط کاتاکودا: در بالای صفحه ترمینال ، روی علامت مثبت کلیک کنید و سپس **Select port to view on Host 1** را انتخاب کنید.
4. فقط برای محیط کاتاکودا: ‍‍‍`30000` را وارد کنید و سپس بر روی **Display Port** کلیک کنید.
## ساختن دپلویمنت (Deployment)
یک [*Pod*](/docs/concepts/workloads/pods/pod/) کوبرنتیز گروهی از یک یا چند کانتینر است ، که برای اهداف مدیریتی (Administration) و شبکه به هم وصل هستند. Pod در این آموزش فقط یک کانتینر دارد. یک [*Deployment*](/docs/concepts/workloads/controllers/deployment/) کوبرنتیز سلامت Pod شما رو بررسی می کند و در صورت خاتمه آنرا دوباره راه اندازی می کند. Deployment ها روش پیشنهادی برای مدیریت و اسکیل (scale) کردن Pod هاست.
1. برای ایجاد یک Deployment که یک Pod را مدیریت می کند ، از دستور `kubectl create` استفاده کنید. Pod یک کانتینر را بر اساس ایمیج ارائه شده Docker اجرا می کند.
```shell
kubectl create deployment hello-node --image=k8s.gcr.io/echoserver:1.4
```
2. دیدن Deployment:
```shell
kubectl get deployments
```
خروجی (مثال):
```
NAME READY UP-TO-DATE AVAILABLE AGE
hello-node 1/1 1 1 1m
```
3. دیدن Pod:
```shell
kubectl get pods
```
خروجی (مثال):
```
NAME READY STATUS RESTARTS AGE
hello-node-5f76cf6ccf-br9b5 1/1 Running 0 1m
```
4. دیدن رویدادهای یک خوشه:
```shell
kubectl get events
```
5. دیدن تنظیمات `kubectl` :
```shell
kubectl config view
```
{{< note >}}
برای کسب اطلاعات بیشتر در مورد دستورات `kubectl` ، به [نمای کلی kubectl](/docs/user-guide/kubectl-overview/) مراجعه کنید.
{{< /note >}}
## ساختن یک سرویس (Service)
به طور پیش فرض ، Pod فقط با آدرس IP داخلی خود در خوشه Kubernetes قابل دسترسی است. برای دسترسی `hello-node` کانتینر خارج از شبکه مجازی کوبرنتیز شما باید Pod را به عنوان یک [*Service*](/docs/concepts/services-networking/service/) در معرض دید قرار بدهید.
1. با استفاده از دستور `kubectl expose` پاد را در معرض دید اینترنت قرار دهید:
```shell
kubectl expose deployment hello-node --type=LoadBalancer --port=8080
```
سوییچ `--type=LoadBalancer` نشان می دهد که شما می خواهید سرویس خود را در معرض دید خارج از خوشه قرار دهید.
2. دیدن سرویس ساخته شده:
```shell
kubectl get services
```
خروجی (مثال):
```
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
hello-node LoadBalancer 10.108.144.78 <pending> 8080:30369/TCP 21s
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 23m
```
در ارائه دهندگان ابری که از Load balancer پشتیبانی می کنند ،
یک آدرس IP خارجی برای دسترسی به سرویس ارائه می شود. مینی کیوب ،
نوع `LoadBalancer` سرویس را از طریق دستور` minikube service` قابل دسترسی می کند.
3. دستور زیر را اجرا کنید:
```shell
minikube service hello-node
```
4. فقط برای محیط کاتاکودا: روی علامت بعلاوه کلیک کنید ، و سپس روی **Select port to view on Host 1** کلیک کنید.
5. فقط برای محیط کاتاکودا: به شماره پورت 5 رقمی که در مقابل `8080` در خروجی خدمات نمایش داده شده است توجه داشته باشید. این شماره پورت به طور تصادفی تولید می شود و می تواند برای شما متفاوت باشد. شماره خود را در کادر متن شماره پورت تایپ کنید ، سپس روی Display Port کلیک کنید. براساس خروجی مثال قبلی ، پورت `30369` می باشد.
با این کار یک پنجره مرورگر باز می شود که به برنامه شما سرویس می دهد و پاسخ برنامه را نشان می دهد.
## فعال کردن افزونه ها
مینی کیوب دارای مجموعه ای از افزونه های {{< glossary_tooltip text="addons" term_id="addons" >}} داخلی است که می توانند در محیط محلی کوبرنتیز فعال ، غیرفعال و باز شوند.
1. افزونه های پشتیبانی شده فعلی را لیست کنید:
```shell
minikube addons list
```
خروجی (مثال):
```
addon-manager: enabled
dashboard: enabled
default-storageclass: enabled
efk: disabled
freshpod: disabled
gvisor: disabled
helm-tiller: disabled
ingress: disabled
ingress-dns: disabled
logviewer: disabled
metrics-server: disabled
nvidia-driver-installer: disabled
nvidia-gpu-device-plugin: disabled
registry: disabled
registry-creds: disabled
storage-provisioner: enabled
storage-provisioner-gluster: disabled
```
2. فعال کردن یک افزونه ، به عنوان مثال ، `metrics-server`:
```shell
minikube addons enable metrics-server
```
خروجی (مثال):
```
metrics-server was successfully enabled
```
3. مشاهده Pod و سرویسی که به تازگی ایجاد کرده اید:
```shell
kubectl get pod,svc -n kube-system
```
خروجی (مثال):
```
NAME READY STATUS RESTARTS AGE
pod/coredns-5644d7b6d9-mh9ll 1/1 Running 0 34m
pod/coredns-5644d7b6d9-pqd2t 1/1 Running 0 34m
pod/metrics-server-67fb648c5 1/1 Running 0 26s
pod/etcd-minikube 1/1 Running 0 34m
pod/influxdb-grafana-b29w8 2/2 Running 0 26s
pod/kube-addon-manager-minikube 1/1 Running 0 34m
pod/kube-apiserver-minikube 1/1 Running 0 34m
pod/kube-controller-manager-minikube 1/1 Running 0 34m
pod/kube-proxy-rnlps 1/1 Running 0 34m
pod/kube-scheduler-minikube 1/1 Running 0 34m
pod/storage-provisioner 1/1 Running 0 34m
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/metrics-server ClusterIP 10.96.241.45 <none> 80/TCP 26s
service/kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP 34m
service/monitoring-grafana NodePort 10.99.24.54 <none> 80:30002/TCP 26s
service/monitoring-influxdb ClusterIP 10.111.169.94 <none> 8083/TCP,8086/TCP 26s
```
4. غیر فعال کردن `metrics-server`:
```shell
minikube addons disable metrics-server
```
خروجی (مثال):
```
metrics-server was successfully disabled
```
## پاک کردن
اکنون می توانید منابعی را که در خوشه خود ایجاد کرده اید پاک کنید:
```shell
kubectl delete service hello-node
kubectl delete deployment hello-node
```
به صورت اختیاری ، ماشین مجازی Minikube (VM) را متوقف کنید:
```shell
minikube stop
```
در صورت تمایل ، حذف Minikube VM:
```shell
minikube delete
```
## {{% heading "قدم بعدی" %}}
* درباره [Deployment objects](/docs/concepts/workloads/controllers/deployment/) بیشتر بدانید.
* درباره [Deploying applications](/docs/tasks/run-application/run-stateless-application-deployment/) بیشتر بدانید.
* درباره [Service objects](/docs/concepts/services-networking/service/) بیشتر بدانید.
@@ -0,0 +1,116 @@
---
title: آشنایی با مقدمات کوبرنتیز
linkTitle: آشنایی با مقدمات کوبرنتیز
weight: 10
card:
name: tutorials
weight: 20
title: گام به گام با مقدمات کوبرنتیز
---
<!DOCTYPE html>
<html lang="en">
<body>
<link href="/docs/tutorials/kubernetes-basics/public/css/styles.css" rel="stylesheet">
<div class="layout" id="top">
<main class="content">
<div class="row">
<div class="col-md-9">
<h2>مقدمات کوبرنتیز</h2>
<p>این دوره آموزشی مقدمات سیستم ارکستراسیون خوشه‌ای کوبرنتیز را به صورت گام به گام به شما آموزش خواهد داد. در هر ماژول آموزشی اطلاعات پیش‌زمینه در خصوص مفاهیم و ویژگی‌های کوبرنتیز ارائه می‌کند و شامل محتوای برخط آموزشی تعاملی نیز هست. این محتوای تعاملی آموزشی به شما اجاز می‌دهد که یک خوشه ساده و اپلیکیشن‌های کانتیزنری آن برای خدتان مدیریت کنید.</p>
<p>با استفاده از این محتوای آموزشی تعاملی شما قادر خواهید بود:</p>
<ul>
<li>یک اپلیکیشن مبتنی بر کانتینر را استقرار دهید.</li>
<li>محیط استقرار داده شده را مقیاس‌دهی کنید.</li>
<li>بروزرسانی اپلیکیشن مبتنی بر کانتینر با نسخۀ جدیدتر از آن</li>
<li>دیباگ کردن یک اپلیکیشن مبتنی بر کانتینر</li>
</ul>
<p>این آموزش‌ها از Katacoda برای فراهم آوردن یک ترمینال مجازی در مرورگر وب شما استفاده می‌کند تا بتواند Minikube را اجرا کند. Minikube در واقغ مقایس کوچکتر شدۀ کوبرنتیز است که قادر خواهید بود آن را در هرجایی اجرا کنید. با توجه به اینکه این آموزش دارای مختوای تعاملی است نیازی نیست تا شما هیچگونه نرم افزاری را بر روی ستسم خود نصب کنید.</p>
</div>
</div>
<br>
<div class="row">
<div class="col-md-9">
<h2>کوبرنتیز چه کاری را برای شما می‌تواند انجام دهد؟</h2>
<p>با فراگیری بیشتر وب، کاربران انتظار دارند که برنامه‌های کاربردی تحت وب به صورت هفت روز هفته و بیست و چهارساعته در دسترس باشند و همچنین توسعه‌دهندگان انتظار دارند که نسخه‌های جدید برنامه‌هایشان را چندین بار در روز بتواننند بر رودر محیط عملیاتی استقرار دهند. با استفاده از نرم‌افزارهای مبتنی بر کانتینر می‌توان به این هدف رسید و برنامه‌ها قادر خواهند بود که بصورت آسان و سرویع بدون ایجاد قطعی در سرویس استقرار و نسخه‌گذاری شوند. </p>
</div>
</div>
<br>
<div id="basics-modules" class="content__modules">
<h2>ماژول‌های مقدماتی کوبرنتیز</h2>
<div class="row">
<div class="col-md-12">
<div class="row">
<div class="col-md-4">
<div class="thumbnail">
<a href="/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/"><img src="/docs/tutorials/kubernetes-basics/public/images/module_01.svg?v=1469803628347" alt=""></a>
<div class="caption">
<a href="/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/"><h5>1. ساخت یک خوشه کوبرنتیز</h5></a>
</div>
</div>
</div>
<div class="col-md-4">
<div class="thumbnail">
<a href="/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/"><img src="/docs/tutorials/kubernetes-basics/public/images/module_02.svg?v=1469803628347" alt=""></a>
<div class="caption">
<a href="/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/"><h5>2. استقرار یک اپلیکیشن</h5></a>
</div>
</div>
</div>
<div class="col-md-4">
<div class="thumbnail">
<a href="/docs/tutorials/kubernetes-basics/explore/explore-intro/"><img src="/docs/tutorials/kubernetes-basics/public/images/module_03.svg?v=1469803628347" alt=""></a>
<div class="caption">
<a href="/docs/tutorials/kubernetes-basics/explore/explore-intro/"><h5>3. بررسی اپلیکشن خودتان</h5></a>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-12">
<div class="row">
<div class="col-md-4">
<div class="thumbnail">
<a href="/docs/tutorials/kubernetes-basics/expose/expose-intro/"><img src="/docs/tutorials/kubernetes-basics/public/images/module_04.svg?v=1469803628347" alt=""></a>
<div class="caption">
<a href="/docs/tutorials/kubernetes-basics/expose/expose-intro/"><h5>4. در دسترس قراردادن اپلیکشن خودتان به صورت عمومی</h5></a>
</div>
</div>
</div>
<div class="col-md-4">
<div class="thumbnail">
<a href="/docs/tutorials/kubernetes-basics/scale/scale-intro/"><img src="/docs/tutorials/kubernetes-basics/public/images/module_05.svg?v=1469803628347" alt=""></a>
<div class="caption">
<a href="/docs/tutorials/kubernetes-basics/scale/scale-intro/"><h5>5. مقایس‌دهی به اپلیکیشنتان</h5></a>
</div>
</div>
</div>
<div class="col-md-4">
<div class="thumbnail">
<a href="/docs/tutorials/kubernetes-basics/update/update-intro/"><img src="/docs/tutorials/kubernetes-basics/public/images/module_06.svg?v=1469803628347" alt=""></a>
<div class="caption">
<a href="/docs/tutorials/kubernetes-basics/update/update-intro/"><h5>6. بروزرسانی اپلیکیشنتان</h5></a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
</div>
</body>
</html>
@@ -0,0 +1,4 @@
---
title: ساخت یک خوشه
weight: 10
---
@@ -0,0 +1,37 @@
---
title: ساخت یک خوشه - آموزش تعاملی
weight: 20
---
<!DOCTYPE html>
<html lang="en">
<body>
<link href="/docs/tutorials/kubernetes-basics/public/css/styles.css" rel="stylesheet">
<link href="/docs/tutorials/kubernetes-basics/public/css/overrides.css" rel="stylesheet">
<script src="https://katacoda.com/embed.js"></script>
<div class="layout" id="top">
<main class="content katacoda-content">
<div class="katacoda">
<div class="katacoda__alert">
صفحۀ نمایشگر شما برای تعامل با ترمینال بسیار کوچک است، لطفاً از یک تبلت و یا کامپیوتر استفاده کنید.
</div>
<div class="katacoda__box" id="inline-terminal-1" data-katacoda-id="kubernetes-bootcamp/1" data-katacoda-color="326de6" data-katacoda-secondary="273d6d" data-katacoda-hideintro="false" data-katacoda-font="Roboto" data-katacoda-fontheader="Roboto Slab" data-katacoda-prompt="Kubernetes Bootcamp Terminal" style="height: 600px;"></div>
</div>
<div class="row">
<div class="col-md-12">
<a class="btn btn-lg btn-success" href="/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/" role="button">Continue to Module 2<span class="btn__next"></span></a>
</div>
</div>
</main>
</div>
</body>
</html>
@@ -0,0 +1,108 @@
---
title: استفاده از Minikube برای ساخت یک کلاستر
weight: 10
---
<!DOCTYPE html>
<html lang="en">
<body>
<link href="/docs/tutorials/kubernetes-basics/public/css/styles.css" rel="stylesheet">
<div class="layout" id="top">
<main class="content">
<div class="row">
<div class="col-md-8">
<h3>اهداف</h3>
<ul>
<li>یادگیری مفهوم کلاستر در کوبرنتیز</li>
<li>یادگیری Minikube</li>
<li>شروع کردن یک کلاستر کوبرنتیز با استفاده از یک ترمینال برخط</li>
</ul>
</div>
<div class="col-md-8">
<h3>کلاسترهای کوبرنتیز</h3>
<p>
<b>کوبرنتیز کلاستری از کامپیوترهای با قابلت دسترس‌پذیری بالا را که به یکدیگر متصل هستند را برای ارائه بعنوان یک واحد تکی هماهنگ می‌کند</b> انتزاع در کوبرنتیز این اجازه را به کاربران می‌دهد که اپلیکیشن‌های کانتینری شده را در کلاسترهای بدون اینکه آنها را به یک ماشین خاص نسبت دهند مستقر کنند. در این مدل جدید استقرار اپلیکیشن‌ها باید به گونه‌ای پکیج شوند که از یک هاست خاص جدا شوند: به صورت کانتینری تعریف شوند.اپلیکیشن‌های کانیترنی از مدلهای قدیمی استقرار منعطف تر و در دسترس پذیر تر هستند چرا که در آن مدها اپلیکیشن به صورت ویژه با هاست مستقر شده در آن یکپارچه می‌شد. . <b>کوبرنتیز کار توزیع و زمان‌بندی اپلیکیشن کانتینری را در بین یک کلاستر به صورت خودکار و با بهره‌وری بهتری انجام می‌دهد.
</p>
<p>یک کلاستر کوبرنتیزی از دو نوع منابع تشکیل شده است:
<ul>
<li><b>Master</b> که وظیفه هماهنگی کلاستر را دارد</li>
<li><b>Nodes</b> کارگرانی هستند که وظیفه اجرای اپلیکیشن را دارند</li>
</ul>
</p>
</div>
<div class="col-md-4">
<div class="content__box content__box_lined">
<h3>خلاصه:</h3>
<ul>
<li>کلاستر کوبرنتیز</li>
<li>Minikube</li>
</ul>
</div>
<div class="content__box content__box_fill">
<p><i>
کوبرنتیز یک پلتفرم قابل انتقال، قابل گسترش و کد باز است که برای مدیریت اپلیکیشن‌های مبتنی بر کانتینر استفاده می‌شود
</i></p>
</div>
</div>
</div>
<br>
<div class="row">
<div class="col-md-8">
<h2 style="color: #3771e3;">دیاگرام کلاستر</h2>
</div>
</div>
<div class="row">
<div class="col-md-8">
<p><img src="/docs/tutorials/kubernetes-basics/public/images/module_01_cluster.svg"></p>
</div>
</div>
<br>
<div class="row">
<div class="col-md-8">
<p><b>Master وظیفه مدیریت کلاستر را بر عهده دارد</b> Master تمام فعالیت‌های کلاستر شما را از قبیل زمان‌بندی اپلیکیشن‌ها نگهداری اپلیکیشن‌ها در وضعیت دلخواه، مقیاس‌دهی به اپلیکیشن و اعمال بروزرسانی های جدید را هماهنگ می‌کند.</p>
<p><b>یک node ماشین مجازی یا یک ماشین فیزیکی است که به عنوان ماشین سرویس‌دهنده در یک کلاستر کوبرنتیز فعالیت می‌کند.</b> هر node دارای یک Kubelet است که در واقع عاملی است که برای مدیریت یک node و ارتباط با master در کوبرنتیز استفاده می‌شود. هر node همچنین برای انجام کارهای کانتینر نیازمند Docker یا rkt است. یک کلاستر کوبرنتیز که قرار است ترافیک محیط عملیاتی را پاسخگو باشد باید حداقل دارای سه node باشد.</p>
</div>
<div class="col-md-4">
<div class="content__box content__box_fill">
<p><i>Masterها کل کلاستر و nodeهایی را که به عنوان عاست یک اپلیکیشن استفاده می‌شوند را مدیریت می‌کنند.</i></p>
</div>
</div>
</div>
<div class="row">
<div class="col-md-8">
<p>وقتی اپلیکیشن‌ها را بر روی کوبرنتیز استقرار می‌دهید در واقع به master اعلام می‌کنید که اپلیکیشن را بر روی کانتینرها شروع کند. master نیز کانتینرها را برای اجرا برا روی کلاستری از nodeها زمانتبندی میکند <b>nodeها با master از طریق<a href="/docs/concepts/overview/kubernetes-api/">APIهای کوبرنتیز ارتباط برقرار می‌کنند.</a></b>, که توسط Master فراهم شده است. کاربر نهایی همچنین میتواند از طریق API برای ارتباط مستقیم با Master استفاده کند</p>
<p>یک کلاستر کوبرنتیز را می‌تواند بر روی ماشین‌های فیزیکی و مجازی مستقر کرد. برای استقرار و شروع به کار با کلاستر کوبرنتیز میتوان از Minikube استفاده کرد. Minikube یک نسخه سبک پیاده‌سازی شده مبتنی بر کوبرنتیز است که بر روی سیستم شما یک ماشین مجازی می‌سازد و یک کلاستر ساده شامل یک node را ایجاد می‌کند. Minikube برای سیستم‌عاملهای ویندوز، لینوکس و مک در دسترس می‌باشد. Minikube دارای یک CLI ساده جهت برای اجرای عملیات با کلاستر شما می‌باشد, این عملیات‌ها شامل شروع به کار، توقف، وضعیت سنجی و حذف می‌باشد. در این آموزش شما از یک Minikubeی استفاده می‌کنید که از قبل برای شما نصب شده است.</p>
<p>حالا که شما می‌دانید که کوبرنتیز چیست، شروع کنیم برای یک آموزش برخط برای ساخت کلاستر</p>
</div>
</div>
<br>
<div class="row">
<div class="col-md-12">
<a class="btn btn-lg btn-success" href="/docs/tutorials/kubernetes-basics/create-cluster/cluster-interactive/" role="button">شروع آموزش تعاملی <span class="btn__next"></span></a>
</div>
</div>
</main>
</div>
</body>
</html>
+212
View File
@@ -0,0 +1,212 @@
# i18n strings for the ّFarsi (main) site.
# NOTE: Please keep the entries in alphabetical order when editing
[caution]
other = "توجه:"
[cleanup_heading]
other = "پاکسازی"
[community_events_calendar]
other = "تقویم رویداد‌ها"
[community_forum_name]
other = "فروم"
[community_github_name]
other = "GitHub"
[community_slack_name]
other = "Slack"
[community_stack_overflow_name]
other = "Stack Overflow"
[community_twitter_name]
other = "Twitter"
[community_youtube_name]
other = "YouTube"
[deprecation_title]
other = "نسخۀ مستنداتی که درحال مشاهده آن هستید: "
[deprecation_warning]
other = "مستنداتی که درحال مشاهده آن هستید در حال حاضر دیگر به صورت فعالانه مورد نگهداری نیست و شما فقط تصویری از آن را مشاهده می‌کنید برای دیریافت مستندات بروز مراجعه کنید به"
[deprecation_file_warning]
other = "منسوخ شده"
[docs_label_browse]
other = "مشاهده مستندات"
[docs_label_contributors]
other = "مشارکت"
[docs_label_i_am]
other = "من هستم ..."
[docs_label_users]
other = "کاربران"
[examples_heading]
other = "مثال‌ها"
[feedback_heading]
other = "بازخورد"
[feedback_no]
other = "نه"
[feedback_question]
other = "آیا این صفحه مفید بود؟"
[feedback_yes]
other = "بله"
[input_placeholder_email_address]
other = "پست الکترونیکی"
[latest_version]
other = "آخرین نسخه."
[layouts_blog_pager_prev]
other = "<< قبلی"
[layouts_blog_pager_next]
other = "بعدی >>"
[layouts_case_studies_list_tell]
other = "داستان خود را تعریف کنید"
[layouts_docs_glossary_aka]
other = "همچنین شناخته می‌شود به عنوان"
[layouts_docs_glossary_description]
other = "این واژه‌نامه قرار است یک لیست جامع و استاندارد از اصطلاحات کوبرنتیز باشد که شامل واژه‌های فنی برای کوبرنتیز و واژه‌هایی عمومی‌تر که در این بافتار مفید است ‌می‌باشد."
[layouts_docs_glossary_deselect_all]
other = "همه را از حالت انتخاب دربیار"
[layouts_docs_glossary_click_details_after]
other = "شاخص‌خای زیر برای دریافت توضیحات طولانی‌تر در خصوص واژه‌های خاص هستند."
[layouts_docs_glossary_click_details_before]
other = "کلیک بر روی"
[layouts_docs_glossary_filter]
other = "عبارت‌ها را بر اساس بر‌چسب‌های آنها فیلتر کنید"
[layouts_docs_glossary_select_all]
other = "انتخاب همه"
[layouts_docs_partials_feedback_improvement]
other = "پیشنهاد بهبود"
[layouts_docs_partials_feedback_issue]
other = "باز کردن یک issue جدید در GitHub اگر میخواهید."
[layouts_docs_partials_feedback_or]
other = "یا"
[layouts_docs_partials_feedback_problem]
other = "گزارش یک خطا"
[layouts_docs_partials_feedback_thanks]
other = "از بازخورد شما سپاسگزاریم. اگر سوال خاص و قابل پاسخگویی در مود نحوه استفاده از کوبرنتیز دارید، آن را بپرسید."
[layouts_docs_search_fetching]
other = "بازیابی نتایج..."
[main_by]
other = "به وسیله"
[main_cncf_project]
other = """ما یک پروژه زیر مجموعه <a href="https://cncf.io/">CNCF</a> هستیم.</p>"""
[main_community_explore]
other = "کاوش در اجتماع"
[main_contribute]
other = "مشارکت"
[main_copyright_notice]
other = """The Linux Foundation &reg;. All rights reserved. The Linux Foundation has registered trademarks and uses trademarks. For a list of trademarks of The Linux Foundation, please see our <a href="https://www.linuxfoundation.org/trademark-usage" class="light-text">Trademark Usage page</a>"""
[main_documentation_license]
other = """The Kubernetes Authors | Documentation Distributed under <a href="https://git.k8s.io/website/LICENSE" class="light-text">CC BY 4.0</a>"""
[main_edit_this_page]
other = "ویرایش این صفحه"
[main_github_create_an_issue]
other = "ساخت یک Issue"
[main_github_invite]
other = "آیا مشتاق هستید که کدهای هستۀ کوبرنتیز را هک کنید؟"
[main_github_view_on]
other = "مشاهده در GitHub"
[main_kubernetes_features]
other = "ویژگی‌های کوبرنتیز"
[main_kubeweekly_baseline]
other = "مشتاق به دریافت آخرین اخبار از کوبرنتیز هستید؟ پس در KubeWeekly ثبت نام کنید."
[main_kubernetes_past_link]
other = "مشاهده آخرین خبرنامه‌ها"
[main_kubeweekly_signup]
other = "عضویت"
[main_page_history]
other ="تاریخچه صفحه"
[main_page_last_modified_on]
other = "آخرین تغییر صفحه"
[main_read_about]
other = "مطالعه در خصوص"
[main_read_more]
other = "مطالعه بیشتر"
[note]
other = "توجه:"
[objectives_heading]
other = "اهداف"
[options_heading]
other = "گزینه‌ها"
[prerequisites_heading]
other = "قبل از شروع به کار"
[seealso_heading]
other = "همچنین ببینید"
[subscribe_button]
other = "عضویت"
[ui_search_placeholder]
other = "جستجو"
[version_check_mustbe]
other = "نسخه سرور کوبرنتیز شما است "
[version_check_mustbeorlater]
other = "نسخه سرور کوبرنتیز شما باید حداقل باشد "
[version_check_tocheck]
other = "برای مشاهده نسخه وارد شوید "
[version_menu]
other = "نسخه‌ها"
[warning]
other = "توجه:"
[whatsnext_heading]
other = "قدم بعدی چیست؟"