diff --git a/OWNERS_ALIASES b/OWNERS_ALIASES
index 5a5145f9dc..e02287ac56 100644
--- a/OWNERS_ALIASES
+++ b/OWNERS_ALIASES
@@ -223,3 +223,13 @@ aliases:
- mfilocha
- nvtkaszpir
- kpucynski
+ sig-docs-uk-owners: # Admins for Ukrainian content
+ - anastyakulyk
+ - butuzov
+ - MaxymVlasov
+ sig-docs-uk-reviews: # PR reviews for Ukrainian content
+ - anastyakulyk
+ - butuzov
+ - idvoretskyi
+ - MaxymVlasov
+ - Potapy4
diff --git a/README-uk.md b/README-uk.md
new file mode 100644
index 0000000000..c524d4b293
--- /dev/null
+++ b/README-uk.md
@@ -0,0 +1,71 @@
+# Документація Kubernetes
+
+[](https://travis-ci.org/kubernetes/website)
+[](https://github.com/kubernetes/website/releases/latest)
+
+Вітаємо! В цьому репозиторії міститься все необхідне для роботи над [сайтом і документацією Kubernetes](https://kubernetes.io/). Ми щасливі, що ви хочете зробити свій внесок!
+
+## Внесок у документацію
+
+Ви можете створити копію цього репозиторія у своєму акаунті на GitHub, натиснувши на кнопку **Fork**, що розташована справа зверху. Ця копія називатиметься *fork* (відгалуження). Зробіть будь-які необхідні зміни у своєму відгалуженні. Коли ви будете готові надіслати їх нам, перейдіть до свого відгалуження і створіть новий pull request, щоб сповістити нас.
+
+Після того, як ви створили pull request, рецензент Kubernetes зобов’язується надати вам по ньому чіткий і конструктивний коментар. **Ваш обов’язок як творця pull request - відкоригувати його відповідно до зауважень рецензента Kubernetes.** Також, зауважте: може статися так, що ви отримаєте коментарі від декількох рецензентів Kubernetes або від іншого рецензента, ніж той, якого вам було призначено від початку. Крім того, за потреби один із ваших рецензентів може запросити технічну перевірку від одного з [технічних рецензентів Kubernetes](https://github.com/kubernetes/website/wiki/Tech-reviewers). Рецензенти намагатимуться відреагувати вчасно, проте час відповіді може відрізнятися в залежності від обставин.
+
+Більше інформації про внесок у документацію Kubernetes ви знайдете у наступних джерелах:
+
+* [Внесок: з чого почати](https://kubernetes.io/docs/contribute/start/)
+* [Візуалізація запропонованих змін до документації](http://kubernetes.io/docs/contribute/intermediate#view-your-changes-locally)
+* [Використання шаблонів сторінок](http://kubernetes.io/docs/contribute/style/page-templates/)
+* [Керівництво зі стилю оформлення документації](http://kubernetes.io/docs/contribute/style/style-guide/)
+* [Переклад документації Kubernetes іншими мовами](https://kubernetes.io/docs/contribute/localization/)
+
+## Запуск сайту локально за допомогою Docker
+
+Для локального запуску сайту Kubernetes рекомендовано запустити спеціальний [Docker](https://docker.com)-образ, що містить генератор статичних сайтів [Hugo](https://gohugo.io).
+
+> Якщо ви працюєте під Windows, вам знадобиться ще декілька інструментів, які можна встановити за допомогою [Chocolatey](https://chocolatey.org). `choco install make`
+
+> Якщо ви вважаєте кращим запустити сайт локально без використання Docker, дивіться пункт нижче [Запуск сайту локально за допомогою Hugo](#запуск-сайту-локально-зa-допомогою-hugo).
+
+Якщо у вас вже [запущений](https://www.docker.com/get-started) Docker, зберіть локальний Docker-образ `kubernetes-hugo`:
+
+```bash
+make docker-image
+```
+
+Після того, як образ зібрано, ви можете запустити сайт локально:
+
+```bash
+make docker-serve
+```
+
+Відкрийте у своєму браузері http://localhost:1313, щоб побачити сайт. По мірі того, як ви змінюєте вихідний код, Hugo актуалізує сайт відповідно до внесених змін і оновлює сторінку у браузері.
+
+## Запуск сайту локально зa допомогою Hugo
+
+Для інструкцій по установці Hugo дивіться [офіційну документацію](https://gohugo.io/getting-started/installing/). Обов’язково встановіть розширену версію Hugo, яка позначена змінною оточення `HUGO_VERSION` у файлі [`netlify.toml`](netlify.toml#L9).
+
+Після установки Hugo, запустіть сайт локально командою:
+
+```bash
+make serve
+```
+
+Команда запустить локальний Hugo-сервер на порту 1313. Відкрийте у своєму браузері http://localhost:1313, щоб побачити сайт. По мірі того, як ви змінюєте вихідний код, Hugo актуалізує сайт відповідно до внесених змін і оновлює сторінку у браузері.
+
+## Спільнота, обговорення, внесок і підтримка
+
+Дізнайтеся, як долучитися до спільноти Kubernetes на [сторінці спільноти](http://kubernetes.io/community/).
+
+Для зв’язку із супроводжуючими проекту скористайтеся:
+
+- [Slack](https://kubernetes.slack.com/messages/sig-docs)
+- [Поштова розсилка](https://groups.google.com/forum/#!forum/kubernetes-sig-docs)
+
+### Кодекс поведінки
+
+Участь у спільноті Kubernetes визначається правилами [Кодексу поведінки спільноти Kubernetes](code-of-conduct.md).
+
+## Дякуємо!
+
+Долучення до спільноти - запорука успішного розвитку Kubernetes. Ми цінуємо ваш внесок у наш сайт і документацію!
diff --git a/README.md b/README.md
index 8be2ae4249..ebd864bdc8 100644
--- a/README.md
+++ b/README.md
@@ -28,7 +28,7 @@ For more information about contributing to the Kubernetes documentation, see:
|[Indonesian README](README-id.md)|[Chinese README](README-zh.md)|
|[Japanese README](README-ja.md)|[Vietnamese README](README-vi.md)|
|[Russian README](README-ru.md)|[Italian README](README-it.md)|
-|[Polish README](README-pl.md)||
+|[Polish README](README-pl.md)|[Ukrainian README](README-uk.md)|
|||
## Running the website locally using Docker
diff --git a/config.toml b/config.toml
index f8da1f8938..2150f633b6 100644
--- a/config.toml
+++ b/config.toml
@@ -298,3 +298,15 @@ contentDir = "content/pl"
time_format_blog = "01.02.2006"
# A list of language codes to look for untranslated content, ordered from left to right.
language_alternatives = ["en"]
+
+[languages.uk]
+title = "Kubernetes"
+description = "Довершена система оркестрації контейнерів"
+languageName = "Українська"
+weight = 14
+contentDir = "content/uk"
+
+[languages.uk.params]
+time_format_blog = "02.01.2006"
+# A list of language codes to look for untranslated content, ordered from left to right.
+language_alternatives = ["en"]
diff --git a/content/uk/OWNERS b/content/uk/OWNERS
new file mode 100644
index 0000000000..09fbf1170c
--- /dev/null
+++ b/content/uk/OWNERS
@@ -0,0 +1,13 @@
+# See the OWNERS docs at https://go.k8s.io/owners
+
+# This is the directory for Ukrainian source content.
+# Teams and members are visible at https://github.com/orgs/kubernetes/teams.
+
+reviewers:
+- sig-docs-uk-reviews
+
+approvers:
+- sig-docs-uk-owners
+
+labels:
+- language/uk
diff --git a/content/uk/_common-resources/index.md b/content/uk/_common-resources/index.md
new file mode 100644
index 0000000000..ca03031f1e
--- /dev/null
+++ b/content/uk/_common-resources/index.md
@@ -0,0 +1,3 @@
+---
+headless: true
+---
diff --git a/content/uk/_index.html b/content/uk/_index.html
new file mode 100644
index 0000000000..02df4d395d
--- /dev/null
+++ b/content/uk/_index.html
@@ -0,0 +1,85 @@
+---
+title: "Довершена система оркестрації контейнерів"
+abstract: "Автоматичне розгортання, масштабування і управління контейнерами"
+cid: home
+---
+
+{{< announcement >}}
+
+{{< deprecationwarning >}}
+
+{{< blocks/section id="oceanNodes" >}}
+{{% blocks/feature image="flower" %}}
+
+### [Kubernetes (K8s)]({{< relref "/docs/concepts/overview/what-is-kubernetes" >}}) - це система з відкритим вихідним кодом для автоматичного розгортання, масштабування і управління контейнеризованими застосунками.
+
+
+Вона об'єднує контейнери, що утворюють застосунок, у логічні елементи для легкого управління і виявлення. В основі Kubernetes - [15 років досвіду запуску і виконання застосунків у продуктивних середовищах Google](http://queue.acm.org/detail.cfm?id=2898444), поєднані з найкращими ідеями і практиками від спільноти.
+{{% /blocks/feature %}}
+
+{{% blocks/feature image="scalable" %}}
+
+#### Глобальне масштабування
+
+
+Заснований на тих самих принципах, завдяки яким Google запускає мільярди контейнерів щотижня, Kubernetes масштабується без потреби збільшення вашого штату з експлуатації.
+
+{{% /blocks/feature %}}
+
+{{% blocks/feature image="blocks" %}}
+
+#### Невичерпна функціональність
+
+
+Запущений для локального тестування чи у глобальній корпорації, Kubernetes динамічно зростатиме з вами, забезпечуючи регулярну і легку доставку ваших застосунків незалежно від рівня складності ваших потреб.
+
+{{% /blocks/feature %}}
+
+{{% blocks/feature image="suitcase" %}}
+
+#### Працює всюди
+
+
+Kubernetes - проект з відкритим вихідним кодом. Він дозволяє скористатися перевагами локальної, гібридної чи хмарної інфраструктури, щоб легко переміщати застосунки туди, куди вам потрібно.
+
+{{% /blocks/feature %}}
+
+{{< /blocks/section >}}
+
+{{< blocks/section id="video" background-image="kub_video_banner_homepage" >}}
+
+
+
Проблеми міграції 150+ мікросервісів у Kubernetes
+
+
Сара Уеллз, технічний директор з експлуатації і безпеки роботи, Financial Times
+{{< /blocks/section >}}
+
+{{< blocks/kubernetes-features >}}
+
+{{< blocks/case-studies >}}
diff --git a/content/uk/case-studies/_index.html b/content/uk/case-studies/_index.html
new file mode 100644
index 0000000000..f8003e82e0
--- /dev/null
+++ b/content/uk/case-studies/_index.html
@@ -0,0 +1,13 @@
+---
+#title: Case Studies
+title: Приклади використання
+#linkTitle: Case Studies
+linkTitle: Приклади використання
+#bigheader: Kubernetes User Case Studies
+bigheader: Приклади використання Kubernetes від користувачів.
+#abstract: A collection of users running Kubernetes in production.
+abstract: Підбірка користувачів, що використовують Kubernetes для робочих навантажень.
+layout: basic
+class: gridPage
+cid: caseStudies
+---
diff --git a/content/uk/docs/_index.md b/content/uk/docs/_index.md
new file mode 100644
index 0000000000..a601666b67
--- /dev/null
+++ b/content/uk/docs/_index.md
@@ -0,0 +1,3 @@
+---
+title: Документація
+---
diff --git a/content/uk/docs/concepts/_index.md b/content/uk/docs/concepts/_index.md
new file mode 100644
index 0000000000..64f6e82323
--- /dev/null
+++ b/content/uk/docs/concepts/_index.md
@@ -0,0 +1,123 @@
+---
+title: Концепції
+main_menu: true
+content_template: templates/concept
+weight: 40
+---
+
+{{% capture overview %}}
+
+
+В розділі "Концепції" описані складові системи Kubernetes і абстракції, за допомогою яких Kubernetes реалізовує ваш {{< glossary_tooltip text="кластер" term_id="cluster" length="all" >}}. Цей розділ допоможе вам краще зрозуміти, як працює Kubernetes.
+
+{{% /capture %}}
+
+{{% capture body %}}
+
+
+
+## Загальна інформація
+
+
+Для роботи з Kubernetes ви використовуєте *об'єкти API Kubernetes* для того, щоб описати *бажаний стан* вашого кластера: які застосунки або інші робочі навантаження ви плануєте запускати, які образи контейнерів вони використовують, кількість реплік, скільки ресурсів мережі та диску ви хочете виділити тощо. Ви задаєте бажаний стан, створюючи об'єкти в Kubernetes API, зазвичай через інтерфейс командного рядка `kubectl`. Ви також можете взаємодіяти із кластером, задавати або змінювати його бажаний стан безпосередньо через Kubernetes API.
+
+
+Після того, як ви задали бажаний стан, *площина управління Kubernetes* приводить поточний стан кластера до бажаного за допомогою Pod Lifecycle Event Generator ([PLEG](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/node/pod-lifecycle-event-generator.md)). Для цього Kubernetes автоматично виконує ряд задач: запускає або перезапускає контейнери, масштабує кількість реплік у певному застосунку тощо. Площина управління Kubernetes складається із набору процесів, що виконуються у вашому кластері:
+
+
+
+* **Kubernetes master** становить собою набір із трьох процесів, запущених на одному вузлі вашого кластера, що визначений як керівний (master). До цих процесів належать: [kube-apiserver](/docs/admin/kube-apiserver/), [kube-controller-manager](/docs/admin/kube-controller-manager/) і [kube-scheduler](/docs/admin/kube-scheduler/).
+* На кожному не-мастер вузлі вашого кластера виконуються два процеси:
+ * **[kubelet](/docs/admin/kubelet/)**, що обмінюється даними з Kubernetes master.
+ * **[kube-proxy](/docs/admin/kube-proxy/)**, мережевий проксі, що відображає мережеві сервіси Kubernetes на кожному вузлі.
+
+
+
+## Об'єкти Kubernetes
+
+
+Kubernetes оперує певною кількістю абстракцій, що відображають стан вашої системи: розгорнуті у контейнерах застосунки та робочі навантаження, пов'язані з ними ресурси мережі та диску, інша інформація щодо функціонування вашого кластера. Ці абстракції представлені як об'єкти Kubernetes API. Для більш детальної інформації ознайомтесь з [Об'єктами Kubernetes](/docs/concepts/overview/working-with-objects/kubernetes-objects/).
+
+
+До базових об'єктів Kubernetes належать:
+
+* [Pod](/docs/concepts/workloads/pods/pod-overview/)
+* [Service](/docs/concepts/services-networking/service/)
+* [Volume](/docs/concepts/storage/volumes/)
+* [Namespace](/docs/concepts/overview/working-with-objects/namespaces/)
+
+
+В Kubernetes є також абстракції вищого рівня, які надбудовуються над базовими об'єктами за допомогою [контролерів](/docs/concepts/architecture/controller/) і забезпечують додаткову функціональність і зручність. До них належать:
+
+* [Deployment](/docs/concepts/workloads/controllers/deployment/)
+* [DaemonSet](/docs/concepts/workloads/controllers/daemonset/)
+* [StatefulSet](/docs/concepts/workloads/controllers/statefulset/)
+* [ReplicaSet](/docs/concepts/workloads/controllers/replicaset/)
+* [Job](/docs/concepts/workloads/controllers/jobs-run-to-completion/)
+
+
+
+## Площина управління Kubernetes (*Kubernetes Control Plane*) {#площина-управління-kubernetes}
+
+
+Різні частини площини управління Kubernetes, такі як Kubernetes Master і kubelet, регулюють, як Kubernetes спілкується з вашим кластером. Площина управління веде облік усіх об'єктів Kubernetes в системі та безперервно, в циклі перевіряє стан цих об'єктів. У будь-який момент часу контрольні цикли, запущені площиною управління, реагуватимуть на зміни у кластері і намагатимуться привести поточний стан об'єктів до бажаного, що заданий у конфігурації.
+
+
+Наприклад, коли за допомогою API Kubernetes ви створюєте Deployment, ви задаєте новий бажаний стан для системи. Площина управління Kubernetes фіксує створення цього об'єкта і виконує ваші інструкції шляхом запуску потрібних застосунків та їх розподілу між вузлами кластера. В такий спосіб досягається відповідність поточного стану бажаному.
+
+
+
+### Kubernetes Master
+
+
+Kubernetes Master відповідає за підтримку бажаного стану вашого кластера. Щоразу, як ви взаємодієте з Kubernetes, наприклад при використанні інтерфейсу командного рядка `kubectl`, ви обмінюєтесь даними із Kubernetes master вашого кластера.
+
+
+Слово "master" стосується набору процесів, які управляють станом кластера. Переважно всі ці процеси виконуються на одному вузлі кластера, який також називається master. Master-вузол можна реплікувати для забезпечення високої доступності кластера.
+
+
+
+### Вузли Kubernetes
+
+
+Вузлами кластера називають машини (ВМ, фізичні сервери тощо), на яких запущені ваші застосунки та хмарні робочі навантаження. Кожен вузол керується Kubernetes master; ви лише зрідка взаємодіятимете безпосередньо із вузлами.
+
+
+{{% /capture %}}
+
+{{% capture whatsnext %}}
+
+
+Якщо ви хочете створити нову сторінку у розділі Концепції, у статті
+[Використання шаблонів сторінок](/docs/home/contribute/page-templates/)
+ви знайдете інформацію щодо типу і шаблона сторінки.
+
+{{% /capture %}}
diff --git a/content/uk/docs/concepts/configuration/_index.md b/content/uk/docs/concepts/configuration/_index.md
new file mode 100644
index 0000000000..588d144f6e
--- /dev/null
+++ b/content/uk/docs/concepts/configuration/_index.md
@@ -0,0 +1,5 @@
+---
+title: "Конфігурація"
+weight: 80
+---
+
diff --git a/content/uk/docs/concepts/overview/_index.md b/content/uk/docs/concepts/overview/_index.md
new file mode 100644
index 0000000000..efffaf0892
--- /dev/null
+++ b/content/uk/docs/concepts/overview/_index.md
@@ -0,0 +1,4 @@
+---
+title: "Огляд"
+weight: 20
+---
diff --git a/content/uk/docs/concepts/overview/what-is-kubernetes.md b/content/uk/docs/concepts/overview/what-is-kubernetes.md
new file mode 100644
index 0000000000..269239c30a
--- /dev/null
+++ b/content/uk/docs/concepts/overview/what-is-kubernetes.md
@@ -0,0 +1,182 @@
+---
+title: Що таке Kubernetes?
+content_template: templates/concept
+weight: 10
+card:
+ name: concepts
+ weight: 10
+---
+
+{{% capture overview %}}
+
+Ця сторінка являє собою узагальнений огляд Kubernetes.
+{{% /capture %}}
+
+{{% capture body %}}
+
+Kubernetes - це платформа з відкритим вихідним кодом для управління контейнеризованими робочими навантаженнями та супутніми службами. Її основні характеристики - кросплатформенність, розширюваність, успішне використання декларативної конфігурації та автоматизації. Вона має гігантську, швидкопрогресуючу екосистему.
+
+
+Назва Kubernetes походить з грецької та означає керманич або пілот. Google відкрив доступ до вихідного коду проекту Kubernetes у 2014 році. Kubernetes побудовано [на базі п'ятнадцятирічного досвіду, що Google отримав, оперуючи масштабними робочими навантаженнями](https://ai.google/research/pubs/pub43438) у купі з найкращими у своєму класі ідеями та практиками, які може запропонувати спільнота.
+
+
+## Озираючись на першопричини
+
+
+Давайте повернемось назад у часі та дізнаємось, завдяки чому Kubernetes став таким корисним.
+
+
+
+
+**Ера традиційного розгортання:** На початку організації запускали застосунки на фізичних серверах. Оскільки в такий спосіб не було можливості задати обмеження використання ресурсів, це спричиняло проблеми виділення та розподілення ресурсів на фізичних серверах. Наприклад: якщо багато застосунків було запущено на фізичному сервері, могли траплятись випадки, коли один застосунок забирав собі найбільше ресурсів, внаслідок чого інші програми просто не справлялись з обов'язками. Рішенням може бути запуск кожного застосунку на окремому фізичному сервері. Але такий підхід погано масштабується, оскільки ресурси не повністю використовуються; на додачу, це дорого, оскільки організаціям потрібно опікуватись багатьма фізичними серверами.
+
+
+**Ера віртуалізованого розгортання:** Як рішення - була представлена віртуалізація. Вона дозволяє запускати численні віртуальні машини (Virtual Machines або VMs) на одному фізичному ЦПУ сервера. Віртуалізація дозволила застосункам бути ізольованими у межах віртуальних машин та забезпечувала безпеку, оскільки інформація застосунку на одній VM не була доступна застосунку на іншій VM.
+
+
+Віртуалізація забезпечує краще використання ресурсів на фізичному сервері та кращу масштабованість, оскільки дозволяє легко додавати та оновлювати застосунки, зменшує витрати на фізичне обладнання тощо. З віртуалізацією ви можете представити ресурси у вигляді одноразових віртуальних машин.
+
+
+Кожна VM є повноцінною машиною з усіма компонентами, включно з власною операційною системою, що запущені поверх віртуалізованого апаратного забезпечення.
+
+
+**Ера розгортання контейнерів:** Контейнери схожі на VM, але мають спрощений варіант ізоляції і використовують спільну операційну систему для усіх застосунків. Саму тому контейнери вважаються легковісними. Подібно до VM, контейнер має власну файлову систему, ЦПУ, пам'ять, простір процесів тощо. Оскільки контейнери вивільнені від підпорядкованої інфраструктури, їх можна легко переміщати між хмарними провайдерами чи дистрибутивами операційних систем.
+
+Контейнери стали популярними, бо надавали додаткові переваги, такі як:
+
+
+
+* Створення та розгортання застосунків за методологією Agile: спрощене та більш ефективне створення образів контейнерів у порівнянні до використання образів віртуальних машин.
+* Безперервна розробка, інтеграція та розгортання: забезпечення надійних та безперервних збирань образів контейнерів, їх швидке розгортання та легкі відкатування (за рахунок незмінності образів).
+* Розподіл відповідальності команд розробки та експлуатації: створення образів контейнерів застосунків під час збирання/релізу на противагу часу розгортання, і як наслідок, вивільнення застосунків із інфраструктури.
+* Спостереження не лише за інформацією та метриками на рівні операційної системи, але й за станом застосунку та іншими сигналами.
+* Однорідність середовища для розробки, тестування та робочого навантаження: запускається так само як на робочому комп'ютері, так і у хмарного провайдера.
+* ОС та хмарна кросплатформність: запускається на Ubuntu, RHEL, CoreOS, у власному дата-центрі, у Google Kubernetes Engine і взагалі будь-де.
+* Керування орієнтоване на застосунки: підвищення рівня абстракції від запуску операційної системи у віртуальному апаратному забезпеченні до запуску застосунку в операційній системі, використовуючи логічні ресурси.
+* Нещільно зв'язані, розподілені, еластичні, вивільнені мікросервіси: застосунки розбиваються на менші, незалежні частини для динамічного розгортання та управління, на відміну від монолітної архітектури, що працює на одній великій виділеній машині.
+* Ізоляція ресурсів: передбачувана продуктивність застосунку.
+* Використання ресурсів: висока ефективність та щільність.
+
+
+## Чому вам потрібен Kebernetes і що він може робити
+
+
+Контейнери - це прекрасний спосіб упакувати та запустити ваші застосунки. У прод оточенні вам потрібно керувати контейнерами, в яких працюють застосунки, і стежити, щоб не було простою. Наприклад, якщо один контейнер припиняє роботу, інший має бути запущений йому на заміну. Чи не легше було б, якби цим керувала сама система?
+
+
+Ось де Kubernetes приходить на допомогу! Kubernetes надає вам каркас для еластичного запуску розподілених систем. Він опікується масштабуванням та аварійним відновленням вашого застосунку, пропонує шаблони розгортань тощо. Наприклад, Kubernetes дозволяє легко створювати розгортання за стратегією canary у вашій системі.
+
+
+Kubernetes надає вам:
+
+
+
+* **Виявлення сервісів та балансування навантаження**
+Kubernetes може надавати доступ до контейнера, використовуючи DNS-ім'я або його власну IP-адресу. Якщо контейнер зазнає завеликого мережевого навантаження, Kubernetes здатний збалансувати та розподілити його таким чином, щоб якість обслуговування залишалась стабільною.
+* **Оркестрація сховища інформації**
+Kubernetes дозволяє вам автоматично монтувати системи збереження інформації на ваш вибір: локальні сховища, рішення від хмарних провайдерів тощо.
+* **Автоматичне розгортання та відкатування**
+За допомогою Kubernetes ви можете описати бажаний стан контейнерів, що розгортаються, і він регульовано простежить за виконанням цього стану. Наприклад, ви можете автоматизувати в Kubernetes процеси створення нових контейнерів для розгортання, видалення існуючих контейнерів і передачу їхніх ресурсів на новостворені контейнери.
+* **Автоматичне розміщення задач**
+Ви надаєте Kubernetes кластер для запуску контейнерізованих задач і вказуєте, скільки ресурсів ЦПУ та пам'яті (RAM) необхідно для роботи кожного контейнера. Kubernetes розподіляє контейнери по вузлах кластера для максимально ефективного використання ресурсів.
+* **Самозцілення**
+Kubernetes перезапускає контейнери, що відмовили; заміняє контейнери; зупиняє роботу контейнерів, що не відповідають на задану користувачем перевірку стану, і не повідомляє про них клієнтам, допоки ці контейнери не будуть у стані робочої готовності.
+* **Управління секретами та конфігурацією**
+Kubernetes дозволяє вам зберігати та керувати чутливою інформацією, такою як паролі, OAuth токени та SSH ключі. Ви можете розгортати та оновлювати секрети та конфігурацію без перезбирання образів ваших контейнерів, не розкриваючи секрети в конфігурацію стека.
+
+
+
+## Чим не є Kubernetes
+
+
+Kubernetes не є комплексною системою PaaS (Платформа як послуга) у традиційному розумінні. Оскільки Kubernetes оперує швидше на рівні контейнерів, аніж на рівні апаратного забезпечення, деяка загальнозастосована функціональність і справді є спільною з PaaS, як-от розгортання, масштабування, розподіл навантаження, логування і моніторинг. Водночас Kubernetes не є монолітним, а вищезазначені особливості підключаються і є опціональними. Kubernetes надає будівельні блоки для створення платформ для розробників, але залишає за користувачем право вибору у важливих питаннях.
+
+
+Kubernetes:
+
+
+
+* Не обмежує типи застосунків, що підтримуються. Kubernetes намагається підтримувати найрізноманітніші типи навантажень, включно із застосунками зі станом (stateful) та без стану (stateless), навантаження по обробці даних тощо. Якщо ваш застосунок можна контейнеризувати, він чудово запуститься під Kubernetes.
+* Не розгортає застосунки з вихідного коду та не збирає ваші застосунки. Процеси безперервної інтеграції, доставки та розгортання (CI/CD) визначаються на рівні організації, та в залежності від технічних вимог.
+* Не надає сервіси на рівні застосунків як вбудовані: програмне забезпечення проміжного рівня (наприклад, шина передачі повідомлень), фреймворки обробки даних (наприклад, Spark), бази даних (наприклад, MySQL), кеш, некластерні системи збереження інформації (наприклад, Ceph). Ці компоненти можуть бути запущені у Kubernetes та/або бути доступними для застосунків за допомогою спеціальних механізмів, наприклад [Open Service Broker](https://openservicebrokerapi.org/).
+* Не нав'язує використання інструментів для логування, моніторингу та сповіщень, натомість надає певні інтеграційні рішення як прототипи, та механізми зі збирання та експорту метрик.
+* Не надає та не змушує використовувати якусь конфігураційну мову/систему (як наприклад `Jsonnet`), натомість надає можливість використовувати API, що може бути використаний довільними формами декларативних специфікацій.
+* Не надає і не запроваджує жодних систем машинної конфігурації, підтримки, управління або самозцілення.
+* На додачу, Kubernetes - не просто система оркестрації. Власне кажучи, вона усуває потребу оркестрації як такої. Технічне визначення оркестрації - це запуск визначених процесів: спочатку A, за ним B, потім C. На противагу, Kubernetes складається з певної множини незалежних, складних процесів контролерів, що безперервно опрацьовують стан у напрямку, що заданий бажаною конфігурацією. Неважливо, як ви дістанетесь з пункту A до пункту C. Централізоване управління також не є вимогою. Все це виливається в систему, яку легко використовувати, яка є потужною, надійною, стійкою та здатною до легкого розширення.
+
+{{% /capture %}}
+
+{{% capture whatsnext %}}
+
+* Перегляньте [компоненти Kubernetes](/docs/concepts/overview/components/)
+* Готові [розпочати роботу](/docs/setup/)?
+{{% /capture %}}
diff --git a/content/uk/docs/concepts/services-networking/_index.md b/content/uk/docs/concepts/services-networking/_index.md
new file mode 100644
index 0000000000..634694311a
--- /dev/null
+++ b/content/uk/docs/concepts/services-networking/_index.md
@@ -0,0 +1,4 @@
+---
+title: "Сервіси, балансування навантаження та мережа"
+weight: 60
+---
diff --git a/content/uk/docs/concepts/storage/_index.md b/content/uk/docs/concepts/storage/_index.md
new file mode 100644
index 0000000000..23108a421c
--- /dev/null
+++ b/content/uk/docs/concepts/storage/_index.md
@@ -0,0 +1,4 @@
+---
+title: "Сховища інформації"
+weight: 70
+---
diff --git a/content/uk/docs/concepts/workloads/_index.md b/content/uk/docs/concepts/workloads/_index.md
new file mode 100644
index 0000000000..c826cbbcbc
--- /dev/null
+++ b/content/uk/docs/concepts/workloads/_index.md
@@ -0,0 +1,4 @@
+---
+title: "Робочі навантаження"
+weight: 50
+---
diff --git a/content/uk/docs/concepts/workloads/controllers/_index.md b/content/uk/docs/concepts/workloads/controllers/_index.md
new file mode 100644
index 0000000000..3e5306f908
--- /dev/null
+++ b/content/uk/docs/concepts/workloads/controllers/_index.md
@@ -0,0 +1,4 @@
+---
+title: "Контролери"
+weight: 20
+---
diff --git a/content/uk/docs/contribute/localization_uk.md b/content/uk/docs/contribute/localization_uk.md
new file mode 100644
index 0000000000..0235b56a32
--- /dev/null
+++ b/content/uk/docs/contribute/localization_uk.md
@@ -0,0 +1,122 @@
+---
+title: Рекомендації з перекладу на українську мову
+content_template: templates/concept
+anchors:
+ - anchor: "#правила-перекладу"
+ title: Правила перекладу
+ - anchor: "#словник"
+ title: Словник
+---
+
+{{% capture overview %}}
+
+Дорогі друзі! Раді вітати вас у спільноті українських контриб'юторів проекту Kubernetes. Ця сторінка створена з метою полегшити вашу роботу при перекладі документації. Вона містить правила, якими ми керувалися під час перекладу, і базовий словник, який ми почали укладати. Перелічені у ньому терміни ви знайдете в українській версії документації Kubernetes. Будемо дуже вдячні, якщо ви допоможете нам доповнити цей словник і розширити правила перекладу.
+
+Сподіваємось, наші рекомендації стануть вам у пригоді.
+
+{{% /capture %}}
+
+{{% capture body %}}
+
+## Правила перекладу {#правила-перекладу}
+
+* У випадку, якщо у перекладі термін набуває неоднозначності і розуміння тексту ускладнюється, надайте у дужках англійський варіант, наприклад: кінцеві точки (endpoints). Якщо при перекладі термін втрачає своє значення, краще не перекладати його, наприклад: характеристики affinity.
+
+* Назви об'єктів Kubernetes залишаємо без перекладу і пишемо з великої літери: Service, Pod, Deployment, Volume, Namespace, за винятком терміна node (вузол). Назви об'єктів Kubernetes вважаємо за іменники ч.р. і відмінюємо за допомогою апострофа: Pod'ів, Deployment'ами.
+ Для слів, що закінчуються на приголосний, у родовому відмінку однини використовуємо закінчення -а: Pod'а, Deployment'а.
+ Слова, що закінчуються на голосний, не відмінюємо: доступ до Service, за допомогою Namespace. У множині використовуємо англійську форму: користуватися Services, спільні Volumes.
+
+* Частовживані і усталені за межами Kubernetes слова перекладаємо українською і пишемо з малої літери (label -> мітка). У випадку, якщо термін для означення об'єкта Kubernetes вживається у своєму загальному значенні поза контекстом Kubernetes (service як службова програма, deployment як розгортання), перекладаємо його і пишемо з малої літери, наприклад: service discovery -> виявлення сервісу, continuous deployment -> безперервне розгортання.
+
+* Складені слова вважаємо за власні назви і не перекладаємо (LabelSelector, kube-apiserver).
+
+* Для перевірки закінчень слів у родовому відмінку однини (-а/-я, -у/-ю) використовуйте [онлайн словник](https://slovnyk.ua/). Якщо слова немає у словнику, визначте його відміну і далі відмінюйте за правилами. Докладніше [дивіться тут](https://pidruchniki.com/1948041951499/dokumentoznavstvo/vidminyuvannya_imennikiv).
+
+## Словник {#словник}
+
+English | Українська |
+--- | --- |
+addon | розширення |
+application | застосунок |
+backend | бекенд |
+build | збирання (результат) |
+build | збирати (процес) |
+cache | кеш |
+CLI | інтерфейс командного рядка |
+cloud | хмара; хмарний провайдер |
+containerized | контейнеризований |
+continuous deployment | безперервне розгортання |
+continuous development | безперервна розробка |
+continuous integration | безперервна інтеграція |
+contribute | робити внесок (до проекту), допомагати (проекту) |
+contributor | контриб'ютор, учасник проекту |
+control plane | площина управління |
+controller | контролер |
+CPU | ЦП |
+dashboard | дашборд |
+data plane | площина даних |
+default (by) | за умовчанням |
+default settings | типові налаштування |
+Deployment | Deployment |
+deprecated | застарілий |
+desired state | бажаний стан |
+downtime | недоступність, простій |
+ecosystem | сімейство проектів (екосистема) |
+endpoint | кінцева точка |
+expose (a service) | відкрити доступ (до сервісу) |
+fail | відмовити |
+feature | компонент |
+framework | фреймворк |
+frontend | фронтенд |
+image | образ |
+Ingress | Ingress |
+instance | інстанс |
+issue | запит |
+kube-proxy | kube-proxy |
+kubelet | kubelet |
+Kubernetes features | функціональні можливості Kubernetes |
+label | мітка |
+lifecycle | життєвий цикл |
+logging | логування |
+maintenance | обслуговування |
+map | спроектувати, зіставити, встановити відповідність |
+master | master |
+monitor | моніторити |
+monitoring | моніторинг |
+Namespace | Namespace |
+network policy | мережева політика |
+node | вузол |
+orchestrate | оркеструвати |
+output | вивід |
+patch | патч |
+Pod | Pod |
+production | прод |
+pull request | pull request |
+release | реліз |
+replica | репліка |
+rollback | відкатування |
+rolling update | послідовне оновлення |
+rollout (new updates) | викатка (оновлень) |
+run | запускати |
+scale | масштабувати |
+schedule | розподіляти (Pod'и по вузлах) |
+Scheduler | Scheduler |
+Secret | Secret |
+Selector | Селектор |
+self-healing | самозцілення |
+self-restoring | самовідновлення |
+Service | Service (як об'єкт Kubernetes) |
+service | сервіс (як службова програма) |
+service discovery | виявлення сервісу |
+source code | вихідний код |
+stateful app | застосунок зі станом |
+stateless app | застосунок без стану |
+task | завдання |
+terminated | зупинений |
+traffic | трафік |
+VM (virtual machine) | ВМ (віртуальна машина) |
+Volume | Volume |
+workload | робоче навантаження |
+YAML | YAML |
+
+{{% /capture %}}
diff --git a/content/uk/docs/home/_index.md b/content/uk/docs/home/_index.md
new file mode 100644
index 0000000000..5a8cfc3c51
--- /dev/null
+++ b/content/uk/docs/home/_index.md
@@ -0,0 +1,56 @@
+---
+title: Документація Kubernetes
+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: >
+
Дізнайтеся про основи роботи з Kubernetes, використовуючи схеми, навчальну та довідкову документацію. Ви можете навіть зробити свій внесок у документацію!
+overview: >
+ Kubernetes - рушій оркестрації контейнерів з відкритим вихідним кодом для автоматичного розгортання, масштабування і управління контейнеризованими застосунками. Цей проект розробляється під егідою Cloud Native Computing Foundation (CNCF).
+cards:
+- name: concepts
+ title: "Розуміння основ"
+ description: "Дізнайтеся про Kubernetes і його фундаментальні концепції."
+ button: "Дізнатися про концепції"
+ button_path: "/docs/concepts"
+- name: tutorials
+ title: "Спробуйте Kubernetes"
+ description: "Дізнайтеся із навчальних матеріалів, як розгортати застосунки в Kubernetes."
+ button: "Переглянути навчальні матеріали"
+ button_path: "/docs/tutorials"
+- name: setup
+ title: "Налаштування кластера"
+ description: "Розгорніть Kubernetes з урахуванням власних ресурсів і потреб."
+ button: "Налаштувати Kubernetes"
+ button_path: "/docs/setup"
+- name: tasks
+ title: "Дізнайтеся, як користуватись Kubernetes"
+ description: "Ознайомтеся з типовими задачами і способами їх виконання за допомогою короткого алгоритму дій."
+ button: "Переглянути задачі"
+ button_path: "/docs/tasks"
+- name: reference
+ title: Переглянути довідкову інформацію
+ description: Ознайомтеся з термінологією, синтаксисом командного рядка, типами ресурсів API і документацією з налаштування інструментів.
+ button: Переглянути довідкову інформацію
+ button_path: /docs/reference
+- name: contribute
+ title: Зробити внесок у документацію
+ description: Будь-хто може зробити свій внесок, незалежно від того, чи ви нещодавно долучилися до проекту, чи працюєте над ним вже довгий час.
+ button: Зробити внесок у документацію
+ button_path: /docs/contribute
+- name: download
+ title: Завантажити Kubernetes
+ description: Якщо ви встановлюєте Kubernetes чи оновлюєтесь до останньої версії, звіряйтеся з актуальною інформацією по релізу.
+- name: about
+ title: Про документацію
+ description: Цей вебсайт містить документацію по актуальній і чотирьох попередніх версіях Kubernetes.
+---
diff --git a/content/uk/docs/reference/glossary/applications.md b/content/uk/docs/reference/glossary/applications.md
new file mode 100644
index 0000000000..c42c6ec343
--- /dev/null
+++ b/content/uk/docs/reference/glossary/applications.md
@@ -0,0 +1,16 @@
+---
+# title: Applications
+title: Застосунки
+id: applications
+date: 2019-05-12
+full_link:
+# short_description: >
+# The layer where various containerized applications run.
+short_description: >
+ Шар, в якому запущено контейнерізовані застосунки.
+aka:
+tags:
+- fundamental
+---
+
+Шар, в якому запущено контейнерізовані застосунки.
diff --git a/content/uk/docs/reference/glossary/cluster-infrastructure.md b/content/uk/docs/reference/glossary/cluster-infrastructure.md
new file mode 100644
index 0000000000..557180912a
--- /dev/null
+++ b/content/uk/docs/reference/glossary/cluster-infrastructure.md
@@ -0,0 +1,17 @@
+---
+# title: Cluster Infrastructure
+title: Інфраструктура кластера
+id: cluster-infrastructure
+date: 2019-05-12
+full_link:
+# short_description: >
+# The infrastructure layer provides and maintains VMs, networking, security groups and others.
+short_description: >
+ Шар інфраструктури забезпечує і підтримує роботу ВМ, мережі, груп безпеки тощо.
+
+aka:
+tags:
+- operations
+---
+
+Шар інфраструктури забезпечує і підтримує роботу ВМ, мережі, груп безпеки тощо.
diff --git a/content/uk/docs/reference/glossary/cluster-operations.md b/content/uk/docs/reference/glossary/cluster-operations.md
new file mode 100644
index 0000000000..0b8ec9f510
--- /dev/null
+++ b/content/uk/docs/reference/glossary/cluster-operations.md
@@ -0,0 +1,16 @@
+---
+# title: Cluster Operations
+title: Операції з кластером
+id: cluster-operations
+date: 2019-05-12
+full_link:
+# short_description: >
+# Activities such as upgrading the clusters, implementing security, storage, ingress, networking, logging and monitoring, and other operations involved in managing a Kubernetes cluster.
+short_description: >
+ Дії і операції, такі як оновлення кластерів, впровадження і використання засобів безпеки, сховища даних, Ingress'а, мережі, логування, моніторингу та інших операцій, пов'язаних з управлінням Kubernetes кластером.
+aka:
+tags:
+- operations
+---
+
+Дії і операції, такі як оновлення кластерів, впровадження і використання засобів безпеки, сховища даних, Ingress'а, мережі, логування, моніторингу та інших операцій, пов'язаних з управлінням Kubernetes кластером.
diff --git a/content/uk/docs/reference/glossary/cluster.md b/content/uk/docs/reference/glossary/cluster.md
new file mode 100644
index 0000000000..4748e61236
--- /dev/null
+++ b/content/uk/docs/reference/glossary/cluster.md
@@ -0,0 +1,22 @@
+---
+# title: Cluster
+title: Кластер
+id: cluster
+date: 2019-06-15
+full_link:
+# short_description: >
+# A set of worker machines, called nodes, that run containerized applications. Every cluster has at least one worker node.
+short_description: >
+ Група робочих машин (їх називають вузлами), на яких запущені контейнерізовані застосунки. Кожен кластер має щонайменше один вузол.
+
+aka:
+tags:
+- fundamental
+- operation
+---
+
+Група робочих машин (їх називають вузлами), на яких запущені контейнерізовані застосунки. Кожен кластер має щонайменше один вузол.
+
+
+
+На робочих вузлах розміщуються Pod'и, які є складовими застосунку. Площина управління керує робочими вузлами і Pod'ами кластера. У прод оточеннях площина управління зазвичай розповсюджується на багато комп'ютерів, а кластер складається з багатьох вузлів для забезпечення відмовостійкості і високої доступності.
diff --git a/content/uk/docs/reference/glossary/control-plane.md b/content/uk/docs/reference/glossary/control-plane.md
new file mode 100644
index 0000000000..1fb28e40a4
--- /dev/null
+++ b/content/uk/docs/reference/glossary/control-plane.md
@@ -0,0 +1,17 @@
+---
+# title: Control Plane
+title: Площина управління
+id: control-plane
+date: 2019-05-12
+full_link:
+# short_description: >
+# The container orchestration layer that exposes the API and interfaces to define, deploy, and manage the lifecycle of containers.
+short_description: >
+ Шар оркестрації контейнерів, який надає API та інтерфейси для визначення, розгортання і управління життєвим циклом контейнерів.
+
+aka:
+tags:
+- fundamental
+---
+
+Шар оркестрації контейнерів, який надає API та інтерфейси для визначення, розгортання і управління життєвим циклом контейнерів.
diff --git a/content/uk/docs/reference/glossary/data-plane.md b/content/uk/docs/reference/glossary/data-plane.md
new file mode 100644
index 0000000000..263a544010
--- /dev/null
+++ b/content/uk/docs/reference/glossary/data-plane.md
@@ -0,0 +1,17 @@
+---
+# title: Data Plane
+title: Площина даних
+id: data-plane
+date: 2019-05-12
+full_link:
+# short_description: >
+# The layer that provides capacity such as CPU, memory, network, and storage so that the containers can run and connect to a network.
+short_description: >
+ Шар, який надає контейнерам ресурси, такі як ЦПУ, пам'ять, мережа і сховище даних для того, щоб контейнери могли працювати і підключатися до мережі.
+
+aka:
+tags:
+- fundamental
+---
+
+Шар, який надає контейнерам ресурси, такі як ЦПУ, пам'ять, мережа і сховище даних для того, щоб контейнери могли працювати і підключатися до мережі.
diff --git a/content/uk/docs/reference/glossary/deployment.md b/content/uk/docs/reference/glossary/deployment.md
new file mode 100644
index 0000000000..4c9c5ba3b9
--- /dev/null
+++ b/content/uk/docs/reference/glossary/deployment.md
@@ -0,0 +1,23 @@
+---
+title: Deployment
+id: deployment
+date: 2018-04-12
+full_link: /docs/concepts/workloads/controllers/deployment/
+# short_description: >
+# An API object that manages a replicated application.
+short_description: >
+ Об'єкт API, що керує реплікованим застосунком.
+
+aka:
+tags:
+- fundamental
+- core-object
+- workload
+---
+
+Об'єкт API, що керує реплікованим застосунком.
+
+
+
+
+Кожна репліка являє собою {{< glossary_tooltip term_id="pod" text="Pod" >}}; Pod'и розподіляються між вузлами кластера.
diff --git a/content/uk/docs/reference/glossary/index.md b/content/uk/docs/reference/glossary/index.md
new file mode 100644
index 0000000000..fd57553ef8
--- /dev/null
+++ b/content/uk/docs/reference/glossary/index.md
@@ -0,0 +1,17 @@
+---
+approvers:
+- maxymvlasov
+- anastyakulyk
+# title: Standardized Glossary
+title: Глосарій
+layout: glossary
+noedit: true
+default_active_tag: fundamental
+weight: 5
+card:
+ name: reference
+ weight: 10
+# title: Glossary
+ title: Глосарій
+---
+
diff --git a/content/uk/docs/reference/glossary/kube-apiserver.md b/content/uk/docs/reference/glossary/kube-apiserver.md
new file mode 100644
index 0000000000..82e3caa0ba
--- /dev/null
+++ b/content/uk/docs/reference/glossary/kube-apiserver.md
@@ -0,0 +1,29 @@
+---
+# title: API server
+title: API-сервер
+id: kube-apiserver
+date: 2018-04-12
+full_link: /docs/reference/generated/kube-apiserver/
+# short_description: >
+# Control plane component that serves the Kubernetes API.
+short_description: >
+ Компонент площини управління, що надає доступ до API Kubernetes.
+
+aka:
+- kube-apiserver
+tags:
+- architecture
+- fundamental
+---
+
+API-сервер є компонентом {{< glossary_tooltip text="площини управління" term_id="control-plane" >}} Kubernetes, через який можна отримати доступ до API Kubernetes. API-сервер є фронтендом площини управління Kubernetes.
+
+
+
+
+
+
+Основною реалізацією Kubernetes API-сервера є [kube-apiserver](/docs/reference/generated/kube-apiserver/). kube-apiserver підтримує горизонтальне масштабування, тобто масштабується за рахунок збільшення кількості інстансів. kube-apiserver можна запустити на декількох інстансах, збалансувавши між ними трафік.
diff --git a/content/uk/docs/reference/glossary/kube-controller-manager.md b/content/uk/docs/reference/glossary/kube-controller-manager.md
new file mode 100644
index 0000000000..edd56dcc90
--- /dev/null
+++ b/content/uk/docs/reference/glossary/kube-controller-manager.md
@@ -0,0 +1,22 @@
+---
+title: kube-controller-manager
+id: kube-controller-manager
+date: 2018-04-12
+full_link: /docs/reference/command-line-tools-reference/kube-controller-manager/
+# short_description: >
+# Control Plane component that runs controller processes.
+short_description: >
+ Компонент площини управління, який запускає процеси контролера.
+
+aka:
+tags:
+- architecture
+- fundamental
+---
+
+Компонент площини управління, який запускає процеси {{< glossary_tooltip text="контролера" term_id="controller" >}}.
+
+
+
+
+За логікою, кожен {{< glossary_tooltip text="контролер" term_id="controller" >}} є окремим процесом. Однак для спрощення їх збирають в один бінарний файл і запускають як єдиний процес.
diff --git a/content/uk/docs/reference/glossary/kube-proxy.md b/content/uk/docs/reference/glossary/kube-proxy.md
new file mode 100644
index 0000000000..a6db7e07de
--- /dev/null
+++ b/content/uk/docs/reference/glossary/kube-proxy.md
@@ -0,0 +1,33 @@
+---
+title: kube-proxy
+id: kube-proxy
+date: 2018-04-12
+full_link: /docs/reference/command-line-tools-reference/kube-proxy/
+# short_description: >
+# `kube-proxy` is a network proxy that runs on each node in the cluster.
+short_description: >
+ `kube-proxy` - це мережеве проксі, що запущене на кожному вузлі кластера.
+
+aka:
+tags:
+- fundamental
+- networking
+---
+
+[kube-proxy](/docs/reference/command-line-tools-reference/kube-proxy/) є мережевим проксі, що запущене на кожному вузлі кластера і реалізує частину концепції Kubernetes {{< glossary_tooltip term_id="service" text="Service">}}.
+
+
+
+
+kube-proxy відповідає за мережеві правила на вузлах. Ці правила обумовлюють підключення по мережі до ваших Pod'ів всередині чи поза межами кластера.
+
+
+kube-proxy використовує шар фільтрації пакетів операційної системи, за наявності такого. В іншому випадку kube-proxy скеровує трафік самостійно.
diff --git a/content/uk/docs/reference/glossary/kube-scheduler.md b/content/uk/docs/reference/glossary/kube-scheduler.md
new file mode 100644
index 0000000000..0864f8570e
--- /dev/null
+++ b/content/uk/docs/reference/glossary/kube-scheduler.md
@@ -0,0 +1,22 @@
+---
+title: kube-scheduler
+id: kube-scheduler
+date: 2018-04-12
+full_link: /docs/reference/generated/kube-scheduler/
+# short_description: >
+# Control Plane component that watches for newly created pods with no assigned node, and selects a node for them to run on.
+short_description: >
+ Компонент площини управління, що відстежує створені Pod'и, які ще не розподілені по вузлах, і обирає вузол, на якому вони працюватимуть.
+
+aka:
+tags:
+- architecture
+---
+
+Компонент площини управління, що відстежує створені Pod'и, які ще не розподілені по вузлах, і обирає вузол, на якому вони працюватимуть.
+
+
+
+
+При виборі вузла враховуються наступні фактори: індивідуальна і колективна потреба у ресурсах, обмеження за апаратним/програмним забезпеченням і політиками, характеристики affinity і anti-affinity, локальність даних, сумісність робочих навантажень і граничні терміни виконання.
diff --git a/content/uk/docs/reference/glossary/kubelet.md b/content/uk/docs/reference/glossary/kubelet.md
new file mode 100644
index 0000000000..d46d18610c
--- /dev/null
+++ b/content/uk/docs/reference/glossary/kubelet.md
@@ -0,0 +1,23 @@
+---
+title: Kubelet
+id: kubelet
+date: 2018-04-12
+full_link: /docs/reference/generated/kubelet
+# short_description: >
+# An agent that runs on each node in the cluster. It makes sure that containers are running in a pod.
+short_description: >
+ Агент, що запущений на кожному вузлі кластера. Забезпечує запуск і роботу контейнерів у Pod'ах.
+
+aka:
+tags:
+- fundamental
+- core-object
+---
+
+Агент, що запущений на кожному вузлі кластера. Забезпечує запуск і роботу контейнерів у Pod'ах.
+
+
+
+
+kubelet використовує специфікації PodSpecs, які надаються за допомогою різних механізмів, і забезпечує працездатність і справність усіх контейнерів, що описані у PodSpecs. kubelet керує лише тими контейнерами, що були створені Kubernetes.
diff --git a/content/uk/docs/reference/glossary/pod.md b/content/uk/docs/reference/glossary/pod.md
new file mode 100644
index 0000000000..7ee87bb1af
--- /dev/null
+++ b/content/uk/docs/reference/glossary/pod.md
@@ -0,0 +1,23 @@
+---
+# title: Pod
+title: Pod
+id: pod
+date: 2018-04-12
+full_link: /docs/concepts/workloads/pods/pod-overview/
+# short_description: >
+# The smallest and simplest Kubernetes object. A Pod represents a set of running containers on your cluster.
+short_description: >
+ Найменший і найпростіший об'єкт Kubernetes. Pod являє собою групу контейнерів, що запущені у вашому кластері.
+
+aka:
+tags:
+- core-object
+- fundamental
+---
+
+ Найменший і найпростіший об'єкт Kubernetes. Pod являє собою групу {{< glossary_tooltip text="контейнерів" term_id="container" >}}, що запущені у вашому кластері.
+
+
+
+
+Як правило, в одному Pod'і запускається один контейнер. У Pod'і також можуть бути запущені допоміжні контейнери, що забезпечують додаткову функціональність, наприклад, логування. Управління Pod'ами зазвичай здійснює {{< glossary_tooltip term_id="deployment" >}}.
diff --git a/content/uk/docs/reference/glossary/selector.md b/content/uk/docs/reference/glossary/selector.md
new file mode 100644
index 0000000000..77eb861f4e
--- /dev/null
+++ b/content/uk/docs/reference/glossary/selector.md
@@ -0,0 +1,22 @@
+---
+# title: Selector
+title: Селектор
+id: selector
+date: 2018-04-12
+full_link: /docs/concepts/overview/working-with-objects/labels/
+# short_description: >
+# Allows users to filter a list of resources based on labels.
+short_description: >
+ Дозволяє користувачам фільтрувати ресурси за мітками.
+
+aka:
+tags:
+- fundamental
+---
+
+Дозволяє користувачам фільтрувати ресурси за мітками.
+
+
+
+
+Селектори застосовуються при створенні запитів для фільтрації ресурсів за {{< glossary_tooltip text="мітками" term_id="label" >}}.
diff --git a/content/uk/docs/reference/glossary/service.md b/content/uk/docs/reference/glossary/service.md
new file mode 100755
index 0000000000..d813d7056c
--- /dev/null
+++ b/content/uk/docs/reference/glossary/service.md
@@ -0,0 +1,24 @@
+---
+title: Service
+id: service
+date: 2018-04-12
+full_link: /docs/concepts/services-networking/service/
+# A way to expose an application running on a set of Pods as a network service.
+short_description: >
+ Спосіб відкрити доступ до застосунку, що запущений на декількох Pod'ах у вигляді мережевої служби.
+
+aka:
+tags:
+- fundamental
+- core-object
+---
+
+Це абстрактний спосіб відкрити доступ до застосунку, що працює як один (або декілька) {{< glossary_tooltip text="Pod'ів" term_id="pod" >}} у вигляді мережевої служби.
+
+
+
+
+Переважно група Pod'ів визначається як Service за допомогою {{< glossary_tooltip text="селектора" term_id="selector" >}}. Додання або вилучення Pod'ів змінить групу Pod'ів, визначених селектором. Service забезпечує надходження мережевого трафіка до актуальної групи Pod'ів для підтримки робочого навантаження.
diff --git a/content/uk/docs/setup/_index.md b/content/uk/docs/setup/_index.md
new file mode 100644
index 0000000000..f7874f9fc4
--- /dev/null
+++ b/content/uk/docs/setup/_index.md
@@ -0,0 +1,136 @@
+---
+reviewers:
+- brendandburns
+- erictune
+- mikedanese
+no_issue: true
+title: Початок роботи
+main_menu: true
+weight: 20
+content_template: templates/concept
+card:
+ name: setup
+ weight: 20
+ anchors:
+ - anchor: "#навчальне-середовище"
+ title: Навчальне середовище
+ - anchor: "#прод-оточення"
+ title: Прод оточення
+---
+
+{{% capture overview %}}
+
+
+У цьому розділі розглянуто різні варіанти налаштування і запуску Kubernetes.
+
+
+Різні рішення Kubernetes відповідають різним вимогам: легкість в експлуатації, безпека, система контролю, наявні ресурси та досвід, необхідний для управління кластером.
+
+
+Ви можете розгорнути Kubernetes кластер на робочому комп'ютері, у хмарі чи в локальному дата-центрі, або обрати керований Kubernetes кластер. Також можна створити індивідуальні рішення на базі різних провайдерів хмарних сервісів або на звичайних серверах.
+
+
+Простіше кажучи, ви можете створити Kubernetes кластер у навчальному і в прод оточеннях.
+
+{{% /capture %}}
+
+{{% capture body %}}
+
+
+
+## Навчальне оточення {#навчальне-оточення}
+
+
+Для вивчення Kubernetes використовуйте рішення на базі Docker: інструменти, підтримувані спільнотою Kubernetes, або інші інструменти з сімейства проектів для налаштування Kubernetes кластера на локальному комп'ютері.
+
+{{< table caption="Таблиця інструментів для локального розгортання Kubernetes, які підтримуються спільнотою або входять до сімейства проектів Kubernetes." >}}
+
+|Спільнота |Сімейство проектів |
+| ------------ | -------- |
+| [Minikube](/docs/setup/learning-environment/minikube/) | [CDK on LXD](https://www.ubuntu.com/kubernetes/docs/install-local) |
+| [kind (Kubernetes IN Docker)](https://github.com/kubernetes-sigs/kind) | [Docker Desktop](https://www.docker.com/products/docker-desktop)|
+| | [Minishift](https://docs.okd.io/latest/minishift/)|
+| | [MicroK8s](https://microk8s.io/)|
+| | [IBM Cloud Private-CE (Community Edition)](https://github.com/IBM/deploy-ibm-cloud-private) |
+| | [IBM Cloud Private-CE (Community Edition) on Linux Containers](https://github.com/HSBawa/icp-ce-on-linux-containers)|
+| | [k3s](https://k3s.io)|
+
+
+## Прод оточення {#прод-оточення}
+
+
+Обираючи рішення для проду, визначіться, якими з функціональних складових (або абстракцій) Kubernetes кластера ви хочете керувати самі, а управління якими - доручити провайдеру.
+
+
+У Kubernetes кластері можливі наступні абстракції: {{< glossary_tooltip text="застосунки" term_id="applications" >}}, {{< glossary_tooltip text="площина даних" term_id="data-plane" >}}, {{< glossary_tooltip text="площина управління" term_id="control-plane" >}}, {{< glossary_tooltip text="інфраструктура кластера" term_id="cluster-infrastructure" >}} та {{< glossary_tooltip text="операції з кластером" term_id="cluster-operations" >}}.
+
+
+На діаграмі нижче показані можливі абстракції Kubernetes кластера із зазначенням, які з них потребують самостійного управління, а які можуть бути керовані провайдером.
+
+Рішення для прод оточення
+
+{{< table caption="Таблиця рішень для прод оточення містить перелік провайдерів і їх технологій." >}}
+
+Таблиця рішень для прод оточення містить перелік провайдерів і технологій, які вони пропонують.
+
+|Провайдери | Керований сервіс | Хмара "під ключ" | Локальний дата-центр | Під замовлення (хмара) | Під замовлення (локальні ВМ)| Під замовлення (сервери без ОС) |
+| --------- | ------ | ------ | ------ | ------ | ------ | ----- |
+| [Agile Stacks](https://www.agilestacks.com/products/kubernetes)| | ✔ | ✔ | | |
+| [Alibaba Cloud](https://www.alibabacloud.com/product/kubernetes)| | ✔ | | | |
+| [Amazon](https://aws.amazon.com) | [Amazon EKS](https://aws.amazon.com/eks/) |[Amazon EC2](https://aws.amazon.com/ec2/) | | | |
+| [AppsCode](https://appscode.com/products/pharmer/) | ✔ | | | | |
+| [APPUiO](https://appuio.ch/) | ✔ | ✔ | ✔ | | | |
+| [Banzai Cloud Pipeline Kubernetes Engine (PKE)](https://banzaicloud.com/products/pke/) | | ✔ | | ✔ | ✔ | ✔ |
+| [CenturyLink Cloud](https://www.ctl.io/) | | ✔ | | | |
+| [Cisco Container Platform](https://cisco.com/go/containers) | | | ✔ | | |
+| [Cloud Foundry Container Runtime (CFCR)](https://docs-cfcr.cfapps.io/) | | | | ✔ |✔ |
+| [CloudStack](https://cloudstack.apache.org/) | | | | | ✔|
+| [Canonical](https://ubuntu.com/kubernetes) | ✔ | ✔ | ✔ | ✔ |✔ | ✔
+| [Containership](https://containership.io) | ✔ |✔ | | | |
+| [D2iQ](https://d2iq.com/) | | [Kommander](https://d2iq.com/solutions/ksphere) | [Konvoy](https://d2iq.com/solutions/ksphere/konvoy) | [Konvoy](https://d2iq.com/solutions/ksphere/konvoy) | [Konvoy](https://d2iq.com/solutions/ksphere/konvoy) | [Konvoy](https://d2iq.com/solutions/ksphere/konvoy) |
+| [Digital Rebar](https://provision.readthedocs.io/en/tip/README.html) | | | | | | ✔
+| [DigitalOcean](https://www.digitalocean.com/products/kubernetes/) | ✔ | | | | |
+| [Docker Enterprise](https://www.docker.com/products/docker-enterprise) | |✔ | ✔ | | | ✔
+| [Gardener](https://gardener.cloud/) | ✔ | ✔ | ✔ | ✔ | ✔ | [Custom Extensions](https://github.com/gardener/gardener/blob/master/docs/extensions/overview.md) |
+| [Giant Swarm](https://www.giantswarm.io/) | ✔ | ✔ | ✔ | |
+| [Google](https://cloud.google.com/) | [Google Kubernetes Engine (GKE)](https://cloud.google.com/kubernetes-engine/) | [Google Compute Engine (GCE)](https://cloud.google.com/compute/)|[GKE On-Prem](https://cloud.google.com/gke-on-prem/) | | | | | | | |
+| [Hidora](https://hidora.com/) | ✔ | ✔| ✔ | | | | | | | |
+| [IBM](https://www.ibm.com/in-en/cloud) | [IBM Cloud Kubernetes Service](https://cloud.ibm.com/kubernetes/catalog/cluster)| |[IBM Cloud Private](https://www.ibm.com/in-en/cloud/private) | |
+| [Ionos](https://www.ionos.com/enterprise-cloud) | [Ionos Managed Kubernetes](https://www.ionos.com/enterprise-cloud/managed-kubernetes) | [Ionos Enterprise Cloud](https://www.ionos.com/enterprise-cloud) | |
+| [Kontena Pharos](https://www.kontena.io/pharos/) | |✔| ✔ | | |
+| [KubeOne](https://kubeone.io/) | | ✔ | ✔ | ✔ | ✔ | ✔ |
+| [Kubermatic](https://kubermatic.io/) | ✔ | ✔ | ✔ | ✔ | ✔ | |
+| [KubeSail](https://kubesail.com/) | ✔ | | | | |
+| [Kubespray](https://kubespray.io/#/) | | | |✔ | ✔ | ✔ |
+| [Kublr](https://kublr.com/) |✔ | ✔ |✔ |✔ |✔ |✔ |
+| [Microsoft Azure](https://azure.microsoft.com) | [Azure Kubernetes Service (AKS)](https://azure.microsoft.com/en-us/services/kubernetes-service/) | | | | |
+| [Mirantis Cloud Platform](https://www.mirantis.com/software/kubernetes/) | | | ✔ | | |
+| [NetApp Kubernetes Service (NKS)](https://cloud.netapp.com/kubernetes-service) | ✔ | ✔ | ✔ | | |
+| [Nirmata](https://www.nirmata.com/) | | ✔ | ✔ | | |
+| [Nutanix](https://www.nutanix.com/en) | [Nutanix Karbon](https://www.nutanix.com/products/karbon) | [Nutanix Karbon](https://www.nutanix.com/products/karbon) | | | [Nutanix AHV](https://www.nutanix.com/products/acropolis/virtualization) |
+| [OpenNebula](https://www.opennebula.org) |[OpenNebula Kubernetes](https://marketplace.opennebula.systems/docs/service/kubernetes.html) | | | | |
+| [OpenShift](https://www.openshift.com) |[OpenShift Dedicated](https://www.openshift.com/products/dedicated/) and [OpenShift Online](https://www.openshift.com/products/online/) | | [OpenShift Container Platform](https://www.openshift.com/products/container-platform/) | | [OpenShift Container Platform](https://www.openshift.com/products/container-platform/) |[OpenShift Container Platform](https://www.openshift.com/products/container-platform/)
+| [Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE)](https://docs.cloud.oracle.com/iaas/Content/ContEng/Concepts/contengoverview.htm) | ✔ | ✔ | | | |
+| [oVirt](https://www.ovirt.org/) | | | | | ✔ |
+| [Pivotal](https://pivotal.io/) | | [Enterprise Pivotal Container Service (PKS)](https://pivotal.io/platform/pivotal-container-service) | [Enterprise Pivotal Container Service (PKS)](https://pivotal.io/platform/pivotal-container-service) | | |
+| [Platform9](https://platform9.com/) | [Platform9 Managed Kubernetes](https://platform9.com/managed-kubernetes/) | | [Platform9 Managed Kubernetes](https://platform9.com/managed-kubernetes/) | ✔ | ✔ | ✔
+| [Rancher](https://rancher.com/) | | [Rancher 2.x](https://rancher.com/docs/rancher/v2.x/en/) | | [Rancher Kubernetes Engine (RKE)](https://rancher.com/docs/rke/latest/en/) | | [k3s](https://k3s.io/)
+| [Supergiant](https://supergiant.io/) | |✔ | | | |
+| [SUSE](https://www.suse.com/) | | ✔ | | | |
+| [SysEleven](https://www.syseleven.io/) | ✔ | | | | |
+| [Tencent Cloud](https://intl.cloud.tencent.com/) | [Tencent Kubernetes Engine](https://intl.cloud.tencent.com/product/tke) | ✔ | ✔ | | | ✔ |
+| [VEXXHOST](https://vexxhost.com/) | ✔ | ✔ | | | |
+| [VMware](https://cloud.vmware.com/) | [VMware Cloud PKS](https://cloud.vmware.com/vmware-cloud-pks) |[VMware Enterprise PKS](https://cloud.vmware.com/vmware-enterprise-pks) | [VMware Enterprise PKS](https://cloud.vmware.com/vmware-enterprise-pks) | [VMware Essential PKS](https://cloud.vmware.com/vmware-essential-pks) | |[VMware Essential PKS](https://cloud.vmware.com/vmware-essential-pks)
+| [Z.A.R.V.I.S.](https://zarvis.ai/) | ✔ | | | | | |
+
+{{% /capture %}}
diff --git a/content/uk/docs/setup/best-practices/_index.md b/content/uk/docs/setup/best-practices/_index.md
new file mode 100644
index 0000000000..696ad54d32
--- /dev/null
+++ b/content/uk/docs/setup/best-practices/_index.md
@@ -0,0 +1,5 @@
+---
+#title: Best practices
+title: Найкращі практики
+weight: 40
+---
diff --git a/content/uk/docs/setup/learning-environment/_index.md b/content/uk/docs/setup/learning-environment/_index.md
new file mode 100644
index 0000000000..879c4eb9f6
--- /dev/null
+++ b/content/uk/docs/setup/learning-environment/_index.md
@@ -0,0 +1,5 @@
+---
+# title: Learning environment
+title: Навчальне оточення
+weight: 20
+---
diff --git a/content/uk/docs/setup/production-environment/_index.md b/content/uk/docs/setup/production-environment/_index.md
new file mode 100644
index 0000000000..81463114fd
--- /dev/null
+++ b/content/uk/docs/setup/production-environment/_index.md
@@ -0,0 +1,5 @@
+---
+#title: Production environment
+title: Прод оточення
+weight: 30
+---
diff --git a/content/uk/docs/setup/production-environment/on-premises-vm/_index.md b/content/uk/docs/setup/production-environment/on-premises-vm/_index.md
new file mode 100644
index 0000000000..d672032037
--- /dev/null
+++ b/content/uk/docs/setup/production-environment/on-premises-vm/_index.md
@@ -0,0 +1,5 @@
+---
+# title: On-Premises VMs
+title: Менеджери віртуалізації
+weight: 40
+---
diff --git a/content/uk/docs/setup/production-environment/tools/_index.md b/content/uk/docs/setup/production-environment/tools/_index.md
new file mode 100644
index 0000000000..8891b3ef4f
--- /dev/null
+++ b/content/uk/docs/setup/production-environment/tools/_index.md
@@ -0,0 +1,5 @@
+---
+# title: Installing Kubernetes with deployment tools
+title: Встановлення Kubernetes за допомогою інструментів розгортання
+weight: 30
+---
diff --git a/content/uk/docs/setup/production-environment/tools/kubeadm/_index.md b/content/uk/docs/setup/production-environment/tools/kubeadm/_index.md
new file mode 100644
index 0000000000..b5cd8e5426
--- /dev/null
+++ b/content/uk/docs/setup/production-environment/tools/kubeadm/_index.md
@@ -0,0 +1,5 @@
+---
+# title: "Bootstrapping clusters with kubeadm"
+title: "Запуск кластерів з kubeadm"
+weight: 10
+---
diff --git a/content/uk/docs/setup/production-environment/turnkey/_index.md b/content/uk/docs/setup/production-environment/turnkey/_index.md
new file mode 100644
index 0000000000..4251bca2c4
--- /dev/null
+++ b/content/uk/docs/setup/production-environment/turnkey/_index.md
@@ -0,0 +1,5 @@
+---
+# title: Turnkey Cloud Solutions
+title: Хмарні рішення під ключ
+weight: 30
+---
diff --git a/content/uk/docs/setup/production-environment/windows/_index.md b/content/uk/docs/setup/production-environment/windows/_index.md
new file mode 100644
index 0000000000..a0d1574f6c
--- /dev/null
+++ b/content/uk/docs/setup/production-environment/windows/_index.md
@@ -0,0 +1,5 @@
+---
+# title: "Windows in Kubernetes"
+title: "Windows в Kubernetes"
+weight: 50
+---
diff --git a/content/uk/docs/setup/release/_index.md b/content/uk/docs/setup/release/_index.md
new file mode 100755
index 0000000000..5fed3d9c90
--- /dev/null
+++ b/content/uk/docs/setup/release/_index.md
@@ -0,0 +1,5 @@
+---
+#title: "Release notes and version skew"
+title: "Зміни в релізах нових версій"
+weight: 10
+---
diff --git a/content/uk/docs/templates/feature-state-alpha.txt b/content/uk/docs/templates/feature-state-alpha.txt
new file mode 100644
index 0000000000..e061aa52be
--- /dev/null
+++ b/content/uk/docs/templates/feature-state-alpha.txt
@@ -0,0 +1,7 @@
+Наразі цей компонент у статусі *alpha*, що означає:
+
+* Назва версії містить слово alpha (напр. v1alpha1).
+* Увімкнення цього компонента може призвести до помилок у системі. За умовчанням цей компонент вимкнутий.
+* Підтримка цього компонентa може бути припинена у будь-який час без попередження.
+* API може стати несумісним у наступних релізах без попередження.
+* Рекомендований до використання лише у тестових кластерах через підвищений ризик виникнення помилок і відсутність довгострокової підтримки.
diff --git a/content/uk/docs/templates/feature-state-beta.txt b/content/uk/docs/templates/feature-state-beta.txt
new file mode 100644
index 0000000000..3790be73f4
--- /dev/null
+++ b/content/uk/docs/templates/feature-state-beta.txt
@@ -0,0 +1,22 @@
+
+Наразі цей компонент у статусі *beta*, що означає:
+
+
+* Назва версії містить слово beta (наприклад, v2beta3).
+
+* Код добре відтестований. Увімкнення цього компонента не загрожує роботі системи. Компонент увімкнутий за умовчанням.
+
+* Загальна підтримка цього компонента триватиме, однак деталі можуть змінитися.
+
+* У наступній beta- чи стабільній версії схема та/або семантика об'єктів може змінитися і стати несумісною. У такому випадку ми надамо інструкції для міграції на наступну версію. Це може призвести до видалення, редагування і перестворення об'єктів API. У процесі редагування вам, можливо, знадобиться продумати зміни в об'єкті. Це може призвести до недоступності застосунків, для роботи яких цей компонент є істотно важливим.
+
+* Використання компонента рекомендоване лише у некритичних для безперебійної діяльності випадках через ризик несумісних змін у подальших релізах. Це обмеження може бути пом'якшене у випадку декількох кластерів, які можна оновлювати окремо.
+
+* **Будь ласка, спробуйте beta-версії наших компонентів і поділіться з нами своєю думкою! Після того, як компонент вийде зі статусу beta, нам буде важче змінити його.**
diff --git a/content/uk/docs/templates/feature-state-deprecated.txt b/content/uk/docs/templates/feature-state-deprecated.txt
new file mode 100644
index 0000000000..7c35b3fc2f
--- /dev/null
+++ b/content/uk/docs/templates/feature-state-deprecated.txt
@@ -0,0 +1,4 @@
+
+
+Цей компонент є *застарілим*. Дізнатися більше про цей статус ви можете зі статті [Політика Kubernetes щодо застарілих компонентів](/docs/reference/deprecation-policy/).
diff --git a/content/uk/docs/templates/feature-state-stable.txt b/content/uk/docs/templates/feature-state-stable.txt
new file mode 100644
index 0000000000..a794f5ceb6
--- /dev/null
+++ b/content/uk/docs/templates/feature-state-stable.txt
@@ -0,0 +1,11 @@
+
+
+Цей компонент є *стабільним*, що означає:
+
+
+* Назва версії становить vX, де X є цілим числом.
+
+* Стабільні версії компонентів з'являтимуться у багатьох наступних версіях програмного забезпечення.
\ No newline at end of file
diff --git a/content/uk/docs/templates/index.md b/content/uk/docs/templates/index.md
new file mode 100644
index 0000000000..0e0b890542
--- /dev/null
+++ b/content/uk/docs/templates/index.md
@@ -0,0 +1,15 @@
+---
+headless: true
+
+resources:
+- src: "*alpha*"
+ title: "alpha"
+- src: "*beta*"
+ title: "beta"
+- src: "*deprecated*"
+# title: "deprecated"
+ title: "застарілий"
+- src: "*stable*"
+# title: "stable"
+ title: "стабільний"
+---
\ No newline at end of file
diff --git a/content/uk/docs/tutorials/_index.md b/content/uk/docs/tutorials/_index.md
new file mode 100644
index 0000000000..5c30bc87ff
--- /dev/null
+++ b/content/uk/docs/tutorials/_index.md
@@ -0,0 +1,90 @@
+---
+#title: Tutorials
+title: Навчальні матеріали
+main_menu: true
+weight: 60
+content_template: templates/concept
+---
+
+{{% capture overview %}}
+
+
+У цьому розділі документації Kubernetes зібрані навчальні матеріали. Кожний матеріал показує, як досягти окремої мети, що більша за одне [завдання](/docs/tasks/). Зазвичай навчальний матеріал має декілька розділів, кожен з яких містить певну послідовність дій. До ознайомлення з навчальними матеріалами вам, можливо, знадобиться додати у закладки сторінку з [Глосарієм](/docs/reference/glossary/) для подальшого консультування.
+
+{{% /capture %}}
+
+{{% capture body %}}
+
+
+## Основи
+
+
+* [Основи Kubernetes](/docs/tutorials/kubernetes-basics/) - детальний навчальний матеріал з інтерактивними уроками, що допоможе вам зрозуміти Kubernetes і спробувати його базову функціональність.
+
+* [Scalable Microservices with Kubernetes (Udacity)](https://www.udacity.com/course/scalable-microservices-with-kubernetes--ud615)
+
+* [Introduction to Kubernetes (edX)](https://www.edx.org/course/introduction-kubernetes-linuxfoundationx-lfs158x#)
+
+* [Привіт Minikube](/docs/tutorials/hello-minikube/)
+
+
+## Конфігурація
+
+* [Configuring Redis Using a ConfigMap](/docs/tutorials/configuration/configure-redis-using-configmap/)
+
+## Застосунки без стану (Stateless Applications) {#застосунки-без-стану}
+
+* [Exposing an External IP Address to Access an Application in a Cluster](/docs/tutorials/stateless-application/expose-external-ip-address/)
+
+* [Example: Deploying PHP Guestbook application with Redis](/docs/tutorials/stateless-application/guestbook/)
+
+## Застосунки зі станом (Stateful Applications) {#застосунки-зі-станом}
+
+* [StatefulSet Basics](/docs/tutorials/stateful-application/basic-stateful-set/)
+
+* [Example: WordPress and MySQL with Persistent Volumes](/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/)
+
+* [Example: Deploying Cassandra with Stateful Sets](/docs/tutorials/stateful-application/cassandra/)
+
+* [Running ZooKeeper, A CP Distributed System](/docs/tutorials/stateful-application/zookeeper/)
+
+## CI/CD Pipeline
+
+* [Set Up a CI/CD Pipeline with Kubernetes Part 1: Overview](https://www.linux.com/blog/learn/chapter/Intro-to-Kubernetes/2017/5/set-cicd-pipeline-kubernetes-part-1-overview)
+
+* [Set Up a CI/CD Pipeline with a Jenkins Pod in Kubernetes (Part 2)](https://www.linux.com/blog/learn/chapter/Intro-to-Kubernetes/2017/6/set-cicd-pipeline-jenkins-pod-kubernetes-part-2)
+
+* [Run and Scale a Distributed Crossword Puzzle App with CI/CD on Kubernetes (Part 3)](https://www.linux.com/blog/learn/chapter/intro-to-kubernetes/2017/6/run-and-scale-distributed-crossword-puzzle-app-cicd-kubernetes-part-3)
+
+* [Set Up CI/CD for a Distributed Crossword Puzzle App on Kubernetes (Part 4)](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/)
+
+## Сервіси
+
+* [Using Source IP](/docs/tutorials/services/source-ip/)
+
+{{% /capture %}}
+
+{{% capture whatsnext %}}
+
+
+Якщо ви хочете написати навчальний матеріал, у статті
+[Використання шаблонів сторінок](/docs/home/contribute/page-templates/)
+ви знайдете інформацію про тип навчальної сторінки і шаблон.
+
+{{% /capture %}}
diff --git a/content/uk/docs/tutorials/hello-minikube.md b/content/uk/docs/tutorials/hello-minikube.md
new file mode 100644
index 0000000000..b887c8f4cd
--- /dev/null
+++ b/content/uk/docs/tutorials/hello-minikube.md
@@ -0,0 +1,394 @@
+---
+#title: Hello Minikube
+title: Привіт Minikube
+content_template: templates/tutorial
+weight: 5
+menu:
+ main:
+ #title: "Get Started"
+ title: "Початок роботи"
+ weight: 10
+ #post: >
+ #
Ready to get your hands dirty? Build a simple Kubernetes cluster that runs "Hello World" for Node.js.
+card:
+ #name: tutorials
+ name: навчальні матеріали
+ weight: 10
+---
+
+{{% capture overview %}}
+
+
+З цього навчального матеріалу ви дізнаєтесь, як запустити у Kubernetes простий Hello World застосунок на Node.js за допомогою [Minikube](/docs/setup/learning-environment/minikube) і Katacoda. Katacoda надає безплатне Kubernetes середовище, що доступне у вашому браузері.
+
+
+{{< note >}}
+Також ви можете навчатись за цим матеріалом, якщо встановили [Minikube локально](/docs/tasks/tools/install-minikube/).
+{{< /note >}}
+
+{{% /capture %}}
+
+{{% capture objectives %}}
+
+
+* Розгорнути Hello World застосунок у Minikube.
+
+* Запустити застосунок.
+
+* Переглянути логи застосунку.
+
+{{% /capture %}}
+
+{{% capture prerequisites %}}
+
+
+У цьому навчальному матеріалі ми використовуємо образ контейнера, зібраний із наступних файлів:
+
+{{< codenew language="js" file="minikube/server.js" >}}
+
+{{< codenew language="conf" file="minikube/Dockerfile" >}}
+
+
+Більше інформації про команду `docker build` ви знайдете у [документації Docker](https://docs.docker.com/engine/reference/commandline/build/).
+
+{{% /capture %}}
+
+{{% capture lessoncontent %}}
+
+
+## Створення Minikube кластера
+
+
+1. Натисніть кнопку **Запуск термінала**
+
+ {{< kat-button >}}
+
+
+ {{< note >}}Якщо Minikube встановлений локально, виконайте команду `minikube start`.{{< /note >}}
+
+
+2. Відкрийте Kubernetes дашборд у браузері:
+
+ ```shell
+ minikube dashboard
+ ```
+
+
+3. Тільки для Katacoda: у верхній частині вікна термінала натисніть знак плюс, а потім -- **Select port to view on Host 1**.
+
+
+4. Тільки для Katacoda: введіть `30000`, а потім натисніть **Display Port**.
+
+
+## Створення Deployment
+
+
+[*Pod*](/docs/concepts/workloads/pods/pod/) у Kubernetes -- це група з одного або декількох контейнерів, що об'єднані разом з метою адміністрування і роботи у мережі. У цьому навчальному матеріалі Pod має лише один контейнер. Kubernetes [*Deployment*](/docs/concepts/workloads/controllers/deployment/) перевіряє стан Pod'а і перезапускає контейнер Pod'а, якщо контейнер перестає працювати. Створювати і масштабувати Pod'и рекомендується за допомогою Deployment'ів.
+
+
+1. За допомогою команди `kubectl create` створіть Deployment, який керуватиме Pod'ом. Pod запускає контейнер на основі наданого Docker образу.
+
+ ```shell
+ kubectl create deployment hello-node --image=gcr.io/hello-minikube-zero-install/hello-node
+ ```
+
+
+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` став доступний за межами віртуальної мережі Kubernetes, Pod необхідно відкрити як Kubernetes [*Service*](/docs/concepts/services-networking/service/).
+
+
+1. Відкрийте Pod для публічного доступу з інтернету за допомогою команди `kubectl expose`:
+
+ ```shell
+ kubectl expose deployment hello-node --type=LoadBalancer --port=8080
+ ```
+
+
+ Прапорець `--type=LoadBalancer` вказує, що ви хочете відкрити доступ до Service за межами кластера.
+
+
+2. Перегляньте інформацію про Service, який ви щойно створили:
+
+ ```shell
+ kubectl get services
+ ```
+
+
+ У виводі ви побачите подібну інформацію:
+
+ ```
+ NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
+ hello-node LoadBalancer 10.108.144.78 8080:30369/TCP 21s
+ kubernetes ClusterIP 10.96.0.1 443/TCP 23m
+ ```
+
+
+ Для хмарних провайдерів, що підтримують балансування навантаження, доступ до Service надається через зовнішню IP-адресу. Для Minikube, тип `LoadBalancer` робить Service доступним ззовні за допомогою команди `minikube service`.
+
+
+3. Виконайте наступну команду:
+
+ ```shell
+ minikube service hello-node
+ ```
+
+
+4. Тільки для Katacoda: натисніть знак плюс, а потім -- **Select port to view on Host 1**.
+
+
+5. Тільки для Katacoda: запишіть п'ятизначний номер порту, що відображається напроти `8080` у виводі сервісу. Номер цього порту генерується довільно і тому може бути іншим у вашому випадку. Введіть номер порту у призначене для цього текстове поле і натисніть Display Port. У нашому прикладі номер порту `30369`.
+
+
+ Це відкриє вікно браузера, в якому запущений ваш застосунок, і покаже повідомлення "Hello World".
+
+
+## Увімкнення розширень
+
+
+Minikube має ряд вбудованих {{< glossary_tooltip text="розширень" term_id="addons" >}}, які можна увімкнути, вимкнути і відкрити у локальному Kubernetes оточенні.
+
+
+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 і Service, які ви щойно створили:
+
+ ```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 80/TCP 26s
+ service/kube-dns ClusterIP 10.96.0.10 53/UDP,53/TCP 34m
+ service/monitoring-grafana NodePort 10.99.24.54 80:30002/TCP 26s
+ service/monitoring-influxdb ClusterIP 10.111.169.94 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:
+
+```shell
+minikube stop
+```
+
+
+За бажанням, видаліть ВМ з Minikube:
+
+```shell
+minikube delete
+```
+
+{{% /capture %}}
+
+{{% capture whatsnext %}}
+
+
+* Дізнайтеся більше про [об'єкти Deployment](/docs/concepts/workloads/controllers/deployment/).
+
+* Дізнайтеся більше про [розгортання застосунків](/docs/user-guide/deploying-applications/).
+
+* Дізнайтеся більше про [об'єкти Service](/docs/concepts/services-networking/service/).
+
+{{% /capture %}}
diff --git a/content/uk/docs/tutorials/kubernetes-basics/_index.html b/content/uk/docs/tutorials/kubernetes-basics/_index.html
new file mode 100644
index 0000000000..466b8b3437
--- /dev/null
+++ b/content/uk/docs/tutorials/kubernetes-basics/_index.html
@@ -0,0 +1,138 @@
+---
+title: Дізнатися про основи Kubernetes
+linkTitle: Основи Kubernetes
+weight: 10
+card:
+ name: навчальні матеріали
+ weight: 20
+ title: Знайомство з основами
+---
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Основи Kubernetes
+
+
Цей навчальний матеріал ознайомить вас з основами системи оркестрації Kubernetes кластера. Кожен модуль містить загальну інформацію щодо основної функціональності і концепцій Kubernetes, а також інтерактивний онлайн-урок. Завдяки цим інтерактивним урокам ви зможете самостійно керувати простим кластером і розгорнутими в ньому контейнеризованими застосунками.
+
+
З інтерактивних уроків ви дізнаєтесь:
+
+
+
як розгорнути контейнеризований застосунок у кластері.
+
+
як масштабувати Deployment.
+
+
як розгорнути нову версію контейнеризованого застосунку.
+
+
як відлагодити контейнеризований застосунок.
+
+
+
Навчальні матеріали використовують Katacoda для запуску у вашому браузері віртуального термінала, в якому запущено Minikube - невеликий локально розгорнутий Kubernetes, що може працювати будь-де. Вам не потрібно встановлювати або налаштовувати жодне програмне забезпечення: кожен інтерактивний урок запускається просто у вашому браузері.
+
+
+
+
+
+
+
+
+
Чим Kubernetes може бути корисний для вас?
+
+
Від сучасних вебсервісів користувачі очікують доступності 24/7, а розробники - можливості розгортати нові версії цих застосунків по кілька разів на день. Контейнеризація, що допомагає упакувати програмне забезпечення, якнайкраще сприяє цим цілям. Вона дозволяє випускати і оновлювати застосунки легко, швидко та без простою. Із Kubernetes ви можете бути певні, що ваші контейнеризовані застосунки запущені там і тоді, де ви цього хочете, а також забезпечені усіма необхідними для роботи ресурсами та інструментами. Kubernetes - це висококласна платформа з відкритим вихідним кодом, в основі якої - накопичений досвід оркестрації контейнерів від Google, поєднаний із найкращими ідеями і практиками від спільноти.
+
+
+
diff --git a/content/uk/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro.html b/content/uk/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro.html
new file mode 100644
index 0000000000..1a4e179a69
--- /dev/null
+++ b/content/uk/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro.html
@@ -0,0 +1,152 @@
+---
+title: Використання Minikube для створення кластера
+weight: 10
+---
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Цілі
+
+
+
Зрозуміти, що таке Kubernetes кластер.
+
+
Зрозуміти, що таке Minikube.
+
+
Запустити Kubernetes кластер за допомогою онлайн-термінала.
+
+
+
+
+
+
Kubernetes кластери
+
+
+ Kubernetes координує високодоступний кластер комп'ютерів, з'єднаних таким чином, щоб працювати як одне ціле. Абстракції Kubernetes дозволяють вам розгортати контейнеризовані застосунки в кластері без конкретної прив'язки до окремих машин. Для того, щоб скористатися цією новою моделлю розгортання, застосунки потрібно упакувати таким чином, щоб звільнити їх від прив'язки до окремих хостів, тобто контейнеризувати. Контейнеризовані застосунки більш гнучкі і доступні, ніж попередні моделі розгортання, що передбачали встановлення застосунків безпосередньо на призначені для цього машини у вигляді програмного забезпечення, яке глибоко інтегрувалося із хостом. Kubernetes дозволяє автоматизувати розподіл і запуск контейнерів застосунку у кластері, а це набагато ефективніше. Kubernetes - це платформа з відкритим вихідним кодом, готова для використання у проді.
+
+
+
Kubernetes кластер складається з двох типів ресурсів:
+
+
master, що координує роботу кластера
+
вузли (nodes) - робочі машини, на яких запущені застосунки
+
+
+
+
+
+
+
+
Зміст:
+
+
+
Kubernetes кластер
+
+
Minikube
+
+
+
+
+
+ Kubernetes - це довершена платформа з відкритим вихідним кодом, що оркеструє розміщення і запуск контейнерів застосунку всередині та між комп'ютерними кластерами.
+
+
+
+
+
+
+
+
+
Схема кластера
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Master відповідає за керування кластером. Master координує всі процеси у вашому кластері, такі як запуск застосунків, підтримка їх бажаного стану, масштабування застосунків і викатка оновлень.
+
+
+
Вузол (node) - це ВМ або фізичний комп'ютер, що виступає у ролі робочої машини в Kubernetes кластері. Кожен вузол має kubelet - агент для управління вузлом і обміну даними з Kubernetes master. Також на вузлі мають бути встановлені інструменти для виконання операцій з контейнерами, такі як Docker або rkt. Kubernetes кластер у проді повинен складатися як мінімум із трьох вузлів.
+
+
+
+
+
+
Master'и керують кластером, а вузли використовуються для запуску застосунків.
+
+
+
+
+
+
+
+
Коли ви розгортаєте застосунки у Kubernetes, ви кажете master-вузлу запустити контейнери застосунку. Master розподіляє контейнери для запуску на вузлах кластера. Для обміну даними з master вузли використовують Kubernetes API, який надається master-вузлом. Кінцеві користувачі також можуть взаємодіяти із кластером безпосередньо через Kubernetes API.
+
+
+
Kubernetes кластер можна розгорнути як на фізичних, так і на віртуальних серверах. Щоб розпочати розробку під Kubernetes, ви можете скористатися Minikube - спрощеною реалізацією Kubernetes. Minikube створює на вашому локальному комп'ютері ВМ, на якій розгортає простий кластер з одного вузла. Існують версії Minikube для операційних систем Linux, macOS та Windows. Minikube CLI надає основні операції для роботи з вашим кластером, такі як start, stop, status і delete. Однак у цьому уроці ви використовуватимете онлайн термінал із вже встановленим Minikube.
+
+
+
Тепер ви знаєте, що таке Kubernetes. Тож давайте перейдемо до інтерактивного уроку і створимо ваш перший кластер!
+
+
+
diff --git a/content/uk/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro.html b/content/uk/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro.html
new file mode 100644
index 0000000000..3cdf8dfd93
--- /dev/null
+++ b/content/uk/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro.html
@@ -0,0 +1,151 @@
+---
+title: Використання kubectl для створення Deployment'а
+weight: 10
+---
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Цілі
+
+
+
Дізнатися, що таке Deployment застосунків.
+
+
Розгорнути свій перший застосунок у Kubernetes за допомогою kubectl.
+
+
+
+
+
+
Процеси Kubernetes Deployment
+
+
+ Після того, як ви запустили Kubernetes кластер, ви можете розгортати в ньому контейнеризовані застосунки. Для цього вам необхідно створити Deployment конфігурацію. Вона інформує Kubernetes, як створювати і оновлювати Pod'и для вашого застосунку. Після того, як ви створили Deployment, Kubernetes master розподіляє ці Pod'и по окремих вузлах кластера.
+
+
+
+
Після створення Pod'и застосунку безперервно моніторяться контролером Kubernetes Deployment. Якщо вузол, на якому розміщено Pod, зупинив роботу або був видалений, Deployment контролер переміщає цей Pod на інший вузол кластера. Так працює механізм самозцілення, що підтримує робочий стан кластера у разі апаратного збою чи технічних робіт.
+
+
+
До появи оркестрації застосунки часто запускали за допомогою скриптів установлення. Однак скрипти не давали можливості відновити працездатний стан застосунку після апаратного збою. Завдяки створенню Pod'ів та їхньому запуску на вузлах кластера, Kubernetes Deployment надає цілковито інший підхід до управління застосунками.
+
+
+
+
+
+
+
Зміст:
+
+
+
Deployment'и
+
Kubectl
+
+
+
+
+
+ Deployment відповідає за створення і оновлення Pod'ів для вашого застосунку
+
+
+
+
+
+
+
+
+
Як розгорнути ваш перший застосунок у Kubernetes
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Ви можете створити Deployment і керувати ним за допомогою командного рядка Kubernetes - kubectl. kubectl взаємодіє з кластером через API Kubernetes. У цьому модулі ви вивчите найпоширеніші команди kubectl для створення Deployment'ів, які запускатимуть ваші застосунки у Kubernetes кластері.
+
+
+
Коли ви створюєте Deployment, вам необхідно задати образ контейнера для вашого застосунку і скільки реплік ви хочете запустити. Згодом цю інформацію можна змінити, оновивши Deployment. У навчальних модулях 5 і 6 йдеться про те, як масштабувати і оновлювати Deployment'и.
+
+
+
+
+
+
+
+
+
Для того, щоб розгортати застосунки в Kubernetes, їх потрібно упакувати в один із підтримуваних форматів контейнерів
+
+
+
+
+
+
+
+
+ Для створення Deployment'а ви використовуватимете застосунок, написаний на Node.js і упакований в Docker контейнер. (Якщо ви ще не пробували створити Node.js застосунок і розгорнути його у контейнері, радимо почати саме з цього; інструкції ви знайдете у навчальному матеріалі Привіт Minikube).
+
+
+
+
Тепер ви знаєте, що таке Deployment. Тож давайте перейдемо до інтерактивного уроку і розгорнемо ваш перший застосунок!
Коли ви створили Deployment у модулі 2, Kubernetes створив Pod, щоб розмістити ваш застосунок. Pod - це абстракція в Kubernetes, що являє собою групу з одного або декількох контейнерів застосунку (як Docker або rkt) і ресурси, спільні для цих контейнерів. До цих ресурсів належать:
+
+
+
Спільні сховища даних, або Volumes
+
+
Мережа, адже кожен Pod у кластері має унікальну IP-адресу
+
+
Інформація з запуску кожного контейнера, така як версія образу контейнера або використання певних портів
+
+
+
Pod моделює специфічний для даного застосунку "логічний хост" і може містити різні, але доволі щільно зв'язані контейнери. Наприклад, в одному Pod'і може бути контейнер з вашим Node.js застосунком та інший контейнер, що передає дані для публікації Node.js вебсерверу. Контейнери в межах Pod'а мають спільну IP-адресу і порти, завжди є сполученими, плануються для запуску разом і запускаються у спільному контексті на одному вузлі.
+
+
+
Pod є неподільною одиницею платформи Kubernetes. Коли ви створюєте Deployment у Kubernetes, цей Deployment створює Pod'и вже з контейнерами всередині, на відміну від створення контейнерів окремо. Кожен Pod прив'язаний до вузла, до якого його було розподілено, і лишається на ньому до припинення роботи (згідно з політикою перезапуску) або видалення. У разі відмови вузла ідентичні Pod'и розподіляються по інших доступних вузлах кластера.
+
+
+
+
+
Зміст:
+
+
Pod'и
+
Вузли
+
Основні команди kubectl
+
+
+
+
+
+ Pod - це група з одного або декількох контейнерів (таких як Docker або rkt), що має спільне сховище даних (volumes), унікальну IP-адресу і містить інформацію як їх запустити.
+
+
+
+
+
+
+
+
+
Узагальнена схема Pod'ів
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Вузли
+
+
Pod завжди запускається на вузлі. Вузол - це робоча машина в Kubernetes, віртуальна або фізична, в залежності від кластера. Функціонування кожного вузла контролюється master'ом. Вузол може мати декілька Pod'ів. Kubernetes master автоматично розподіляє Pod'и по вузлах кластера з урахуванням ресурсів, наявних на кожному вузлі.
+
+
+
На кожному вузлі Kubernetes запущені як мінімум:
+
+
+
kubelet - процес, що забезпечує обмін даними між Kubernetes master і робочим вузлом; kubelet контролює Pod'и і контейнери, запущені на машині.
+
+
оточення для контейнерів (таке як Docker, rkt), що забезпечує завантаження образу контейнера з реєстру, розпакування контейнера і запуск застосунку.
+
+
+
+
+
+
+
+
Контейнери повинні бути разом в одному Pod'і, лише якщо вони щільно зв'язані і мають спільні ресурси, такі як диск.
+
+
+
+
+
+
+
+
+
Узагальнена схема вузлів
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Діагностика за допомогою kubectl
+
+
У модулі 2 ви вже використовували інтерфейс командного рядка kubectl. У модулі 3 ви продовжуватимете користуватися ним для отримання інформації про застосунки та оточення, в яких вони розгорнуті. Нижченаведені команди kubectl допоможуть вам виконати наступні поширені дії:
+
+
+
kubectl get - відобразити список ресурсів
+
+
kubectl describe - показати детальну інформацію про ресурс
+
+
kubectl logs - вивести логи контейнера, розміщеного в Pod'і
+
+
kubectl exec - виконати команду в контейнері, розміщеному в Pod'і
+
+
+
+
За допомогою цих команд ви можете подивитись, коли і в якому оточенні був розгорнутий застосунок, перевірити його поточний статус і конфігурацію.
+
+
+
А зараз, коли ми дізналися більше про складові нашого кластера і командний рядок, давайте детальніше розглянемо наш застосунок.
+
+
+
+
+
+
Вузол - це робоча машина в Kubernetes, віртуальна або фізична, в залежності від кластера. На одному вузлі можуть бути запущені декілька Pod'ів.
+
+
+
diff --git a/content/uk/docs/tutorials/kubernetes-basics/expose/expose-intro.html b/content/uk/docs/tutorials/kubernetes-basics/expose/expose-intro.html
new file mode 100644
index 0000000000..61521e394b
--- /dev/null
+++ b/content/uk/docs/tutorials/kubernetes-basics/expose/expose-intro.html
@@ -0,0 +1,169 @@
+---
+#title: Using a Service to Expose Your App
+title: Використання Cервісу для відкриття доступу до застосунку за межами кластера
+weight: 10
+---
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Цілі
+
+
+
Дізнатись, що таке Cервіс у Kubernetes
+
+
Зрозуміти, яке відношення до Cервісу мають мітки та LabelSelector
+
+
Відкрити доступ до застосунку за межами Kubernetes кластера, використовуючи Cервіс
+
+
+
+
+
+
Загальна інформація про Kubernetes Cервіси
+
+
+
Pod'и Kubernetes "смертні" і мають власний життєвий цикл. Коли робочий вузол припиняє роботу, ми також втрачаємо всі Pod'и, запущені на ньому. ReplicaSet здатна динамічно повернути кластер до бажаного стану шляхом створення нових Pod'ів, забезпечуючи безперебійність роботи вашого застосунку. Як інший приклад, візьмемо бекенд застосунку для обробки зображень із трьома репліками. Ці репліки взаємозамінні; система фронтенду не повинна зважати на репліки бекенду чи на втрату та перестворення Pod'а. Водночас, кожний Pod у Kubernetes кластері має унікальну IP-адресу, навіть Pod'и на одному вузлі. Відповідно, має бути спосіб автоматично синхронізувати зміни між Pod'ами для того, щоб ваші застосунки продовжували працювати.
+
+
+
Service у Kubernetes - це абстракція, що визначає логічний набір Pod'ів і політику доступу до них. Services уможливлюють слабку зв'язаність між залежними Pod'ами. Для визначення Service використовують YAML-файл (рекомендовано) або JSON, як для решти об'єктів Kubernetes. Набір Pod'ів, призначених для Service, зазвичай визначається через LabelSelector (нижче пояснюється, чому параметр selector іноді не включають у специфікацію Service).
+
+
+
Попри те, що кожен Pod має унікальний IP, ці IP-адреси не видні за межами кластера без Service. Services уможливлюють надходження трафіка до ваших застосунків. Відкрити Service можна по-різному, вказавши потрібний type у ServiceSpec:
+
+
+
ClusterIP (типове налаштування) - відкриває доступ до Service у кластері за внутрішнім IP. Цей тип робить Service доступним лише у межах кластера.
+
+
NodePort - відкриває доступ до Service на однаковому порту кожного обраного вузла в кластері, використовуючи NAT. Робить Service доступним поза межами кластера, використовуючи <NodeIP>:<NodePort>. Є надмножиною відносно ClusterIP.
+
+
LoadBalancer - створює зовнішній балансувальник навантаження у хмарі (за умови хмарної інфраструктури) і призначає Service статичну зовнішню IP-адресу. Є надмножиною відносно NodePort.
+
+
ExternalName - відкриває доступ до Service, використовуючи довільне ім'я (визначається параметром externalName у специфікації), повертає запис CNAME. Проксі не використовується. Цей тип потребує версії kube-dns 1.7 і вище.
Також зауважте, що для деяких сценаріїв використання Services параметр selector не задається у специфікації Service. Service, створений без визначення параметра selector, також не створюватиме відповідного Endpoint об'єкта. Це дозволяє користувачам вручну спроектувати Service на конкретні кінцеві точки (endpoints). Інший випадок, коли Селектор може бути не потрібний - використання строго заданого параметра type: ExternalName.
+
+
+
+
+
Зміст
+
+
+
Відкриття Pod'ів для зовнішнього трафіка
+
+
Балансування навантаження трафіка між Pod'ами
+
+
Використання міток
+
+
+
+
+
Service Kubernetes - це шар абстракції, який визначає логічний набір Pod'ів і відкриває їх для зовнішнього трафіка, балансує навантаження і здійснює виявлення цих Pod'ів.
+
+
+
+
+
+
+
+
+
Services і мітки
+
+
+
+
+
+
+
+
+
+
+
+
+
Service маршрутизує трафік між Pod'ами, що входять до його складу. Service - це абстракція, завдяки якій Pod'и в Kubernetes "вмирають" і відтворюються, не впливаючи на роботу вашого застосунку. Services в Kubernetes здійснюють виявлення і маршрутизацію між залежними Pod'ами (як наприклад, фронтенд- і бекенд-компоненти застосунку).
+
+
Services співвідносяться з набором Pod'ів за допомогою міток і Селекторів -- примітивів групування, що роблять можливими логічні операції з об'єктами у Kubernetes. Мітки являють собою пари ключ/значення, що прикріплені до об'єктів і можуть використовуватися для різних цілей:
+
+
+
Позначення об'єктів для дев, тест і прод оточень
+
+
Прикріплення тегу версії
+
+
Класифікування об'єктів за допомогою тегів
+
+
+
+
+
+
+
Ви можете створити Service одночасно із Deployment, виконавши команду --expose в kubectl.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Мітки можна прикріпити до об'єктів під час створення або пізніше. Їх можна змінити у будь-який час. А зараз давайте відкриємо наш застосунок за допомогою Service і прикріпимо мітки.
У попередніх модулях ми створили Deployment і відкрили його для зовнішнього трафіка за допомогою Service. Deployment створив лише один Pod для запуску нашого застосунку. Коли трафік збільшиться, нам доведеться масштабувати застосунок, аби задовольнити вимоги користувачів.
+
+
+
Масштабування досягається шляхом зміни кількості реплік у Deployment'і.
+
+
+
+
+
+
Зміст:
+
+
+
Масштабування Deployment'а
+
+
+
+
+
Кількість Pod'ів можна вказати одразу при створенні Deployment'а за допомогою параметра --replicas, під час запуску команди kubectl run
Масштабування Deployment'а забезпечує створення нових Pod'ів і їх розподілення по вузлах з доступними ресурсами. Масштабування збільшить кількість Pod'ів відповідно до нового бажаного стану. Kubernetes також підтримує автоматичне масштабування, однак це виходить за межі даного матеріалу. Масштабування до нуля також можливе - це призведе до видалення всіх Pod'ів у визначеному Deployment'і.
+
+
+
Запустивши застосунок на декількох Pod'ах, необхідно розподілити між ними трафік. Services мають інтегрований балансувальник навантаження, що розподіляє мережевий трафік між усіма Pod'ами відкритого Deployment'а. Services безперервно моніторять запущені Pod'и за допомогою кінцевих точок, для того щоб забезпечити надходження трафіка лише на доступні Pod'и.
+
+
+
+
+
+
Масштабування досягається шляхом зміни кількості реплік у Deployment'і.
+
+
+
+
+
+
+
+
+
+
Після запуску декількох примірників застосунку ви зможете виконувати послідовне оновлення без шкоди для доступності системи. Ми розповімо вам про це у наступному модулі. А зараз давайте повернемось до онлайн термінала і масштабуємо наш застосунок.
Виконати послідовне оновлення, використовуючи kubectl.
+
+
+
+
+
+
Оновлення застосунку
+
+
+
Користувачі очікують від застосунків високої доступності у будь-який час, а розробники - оновлення цих застосунків декілька разів на день. У Kubernetes це стає можливим завдяки послідовному оновленню. Послідовні оновлення дозволяють оновити Deployment без простою, шляхом послідовної заміни одних Pod'ів іншими. Нові Pod'и розподіляються по вузлах з доступними ресурсами.
+
+
+
У попередньому модулі ми масштабували наш застосунок, запустивши його на декількох Pod'ах. Масштабування - необхідна умова для проведення оновлень без шкоди для доступності застосунку. За типовими налаштуваннями, максимальна кількість Pod'ів, недоступних під час оновлення, і максимальна кількість нових Pod'ів, які можуть бути створені, дорівнює одиниці. Обидві опції можна налаштувати в числовому або відсотковому (від кількості Pod'ів) еквіваленті.
+ У Kubernetes оновлення версіонуються, тому кожне оновлення Deployment'а можна відкотити до попередньої (стабільної) версії.
+
+
+
+
+
+
Зміст:
+
+
+
Оновлення застосунку
+
+
+
+
+
Послідовне оновлення дозволяє оновити Deployment без простою шляхом послідовної заміни одних Pod'ів іншими.
Як і у випадку з масштабуванням, якщо Deployment "відкритий у світ", то під час оновлення Service розподілятиме трафік лише на доступні Pod'и. Під доступним мається на увазі Pod, готовий до експлуатації користувачами застосунку.
+
+
+
Послідовне оновлення дозволяє вам:
+
+
+
Просувати застосунок з одного оточення в інше (шляхом оновлення образу контейнера)
+
+
Відкочуватися до попередніх версій
+
+
Здійснювати безперервну інтеграцію та розгортання застосунків без простою
+
+
+
+
+
+
+
+
Якщо Deployment "відкритий у світ", то під час оновлення Service розподілятиме трафік лише на доступні Pod'и.
+
+
+
+
+
+
+
+
+
+
В інтерактивному уроці ми оновимо наш застосунок до нової версії, а потім відкотимося до попередньої.