From cdf62784aa5804ab63f29564826b81daba245b27 Mon Sep 17 00:00:00 2001 From: Xiaokang An Date: Fri, 21 Feb 2020 15:20:32 +0800 Subject: [PATCH 01/24] Fix ambiguous translation in kubeadm.md (#19201) --- content/zh/docs/reference/setup-tools/kubeadm/kubeadm.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/zh/docs/reference/setup-tools/kubeadm/kubeadm.md b/content/zh/docs/reference/setup-tools/kubeadm/kubeadm.md index 5e338b7039..1d6b42f446 100644 --- a/content/zh/docs/reference/setup-tools/kubeadm/kubeadm.md +++ b/content/zh/docs/reference/setup-tools/kubeadm/kubeadm.md @@ -25,8 +25,8 @@ kubeadm 通过执行必要的操作来启动和运行一个最小可用的集群 * [kubeadm config](/docs/reference/setup-tools/kubeadm/kubeadm-config) 如果你使用 kubeadm v1.7.x 或者更低版本,你需要对你的集群做一些配置以便使用 `kubeadm upgrade` 命令 * [kubeadm token](/docs/reference/setup-tools/kubeadm/kubeadm-token) 使用 `kubeadm join` 来管理令牌 - -* [kubeadm reset](/docs/reference/setup-tools/kubeadm/kubeadm-reset) 使用 `kubeadm init` 或者 `kubeadm join` 来恢复对节点的改变 + +* [kubeadm reset](/docs/reference/setup-tools/kubeadm/kubeadm-reset) 还原之前使用 `kubeadm init` 或者 `kubeadm join` 对节点产生的改变 * [kubeadm version](/docs/reference/setup-tools/kubeadm/kubeadm-version) 打印出 kubeadm 版本 From 499afe4e80211c2997716bd6f739cb3aca467cf2 Mon Sep 17 00:00:00 2001 From: Jamario Rankins Date: Fri, 21 Feb 2020 23:38:47 -0600 Subject: [PATCH 02/24] Fix typo about watch bookmarks (#18902) --- content/en/docs/reference/using-api/api-concepts.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/docs/reference/using-api/api-concepts.md b/content/en/docs/reference/using-api/api-concepts.md index e30de75330..776715c8a2 100644 --- a/content/en/docs/reference/using-api/api-concepts.md +++ b/content/en/docs/reference/using-api/api-concepts.md @@ -89,7 +89,7 @@ A given Kubernetes server will only preserve a historical list of changes for a ### Watch bookmarks -To mitigate the impact of short history window, we introduced a concept of `bookmark` watch event. It is a special kind of event to pass an information that all changes up to a given `resourceVersion` client is requesting has already been send. Object returned in that event is of the type requested by the request, but only `resourceVersion` field is set, e.g.: +To mitigate the impact of short history window, we introduced a concept of `bookmark` watch event. It is a special kind of event to pass an information that all changes up to a given `resourceVersion` client is requesting has already been sent. Object returned in that event is of the type requested by the request, but only `resourceVersion` field is set, e.g.: GET /api/v1/namespaces/test/pods?watch=1&resourceVersion=10245&allowWatchBookmarks=true --- From 538dc610d1f9b5885c2938069722ffb65c19714a Mon Sep 17 00:00:00 2001 From: Kirk Larkin <6025110+serpent5@users.noreply.github.com> Date: Sat, 22 Feb 2020 05:40:47 +0000 Subject: [PATCH 03/24] Fix link to nginx + TLS (#19234) --- content/en/docs/concepts/services-networking/ingress.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/docs/concepts/services-networking/ingress.md b/content/en/docs/concepts/services-networking/ingress.md index e916e774c4..6739cf1bd0 100644 --- a/content/en/docs/concepts/services-networking/ingress.md +++ b/content/en/docs/concepts/services-networking/ingress.md @@ -336,7 +336,7 @@ spec: {{< note >}} There is a gap between TLS features supported by various Ingress controllers. Please refer to documentation on -[nginx](https://git.k8s.io/ingress-nginx/README.md#https), +[nginx](https://kubernetes.github.io/ingress-nginx/user-guide/tls/), [GCE](https://git.k8s.io/ingress-gce/README.md#frontend-https), or any other platform specific Ingress controller to understand how TLS works in your environment. {{< /note >}} From 8a03cd1a0a88928234b8708a8c63276a56191576 Mon Sep 17 00:00:00 2001 From: Ihor Sychevskyi <26163841+Arhell@users.noreply.github.com> Date: Sat, 22 Feb 2020 07:46:47 +0200 Subject: [PATCH 04/24] Fix anchor in readme (es) (#19219) --- README-es.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README-es.md b/README-es.md index 15bf9ed2fb..fe71a0fc40 100644 --- a/README-es.md +++ b/README-es.md @@ -28,7 +28,7 @@ El método recomendado para levantar una copia local del sitio web kubernetes.io > Para Windows, algunas otras herramientas como Make son necesarias. Puede instalarlas utilizando el gestor [Chocolatey](https://chocolatey.org). `choco install make` o siguiendo las instrucciones de [Make for Windows](http://gnuwin32.sourceforge.net/packages/make.htm). -> Si prefiere levantar el sitio web sin utilizar **Docker**, puede seguir las instrucciones disponibles en la sección [Levantando kubernetes.io en local con Hugo](#levantando-kubernetes.io-en-local-con-hugo). +> Si prefiere levantar el sitio web sin utilizar **Docker**, puede seguir las instrucciones disponibles en la sección [Levantando kubernetes.io en local con Hugo](#levantando-kubernetesio-en-local-con-hugo). Una vez tenga Docker [configurado en su máquina](https://www.docker.com/get-started), puede construir la imagen de Docker `kubernetes-hugo` localmente ejecutando el siguiente comando en la raíz del repositorio: From 60e4ae412b9b5772ffa1af9dc06540fd65dd8d0a Mon Sep 17 00:00:00 2001 From: GoodGameZoo Date: Sun, 23 Feb 2020 08:58:47 +0800 Subject: [PATCH 05/24] node specific volume limits modification (#19254) --- content/zh/docs/concepts/storage/storage-limits.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/zh/docs/concepts/storage/storage-limits.md b/content/zh/docs/concepts/storage/storage-limits.md index f4db62a082..7b5f8e63be 100644 --- a/content/zh/docs/concepts/storage/storage-limits.md +++ b/content/zh/docs/concepts/storage/storage-limits.md @@ -25,7 +25,7 @@ how many volumes can be attached to a Node. It is important for Kubernetes to respect those limits. Otherwise, Pods scheduled on a Node could get stuck waiting for volumes to attach. --> -谷歌、亚马逊和微软等云供应商通常对可以关联到节点的卷数量进行限制。 +谷歌、亚马逊和微软等云供应商通常对可以关联到节点的卷数量进行限制。 Kubernetes 需要尊重这些限制。 否则,在节点上调度的 Pod 可能会卡住去等待卷的关联。 @@ -135,7 +135,7 @@ Refer to the [CSI specifications](https://github.com/container-storage-interface * 在 Google Compute Engine环境中, -[根据节点类型](https://cloud.google.com/compute/docs/disks/#pdnumberlimits)最多可以将128个卷关联到节点。 +[根据节点类型](https://cloud.google.com/compute/docs/disks/#pdnumberlimits)最多可以将127个卷关联到节点。 * 对于 M5、C5、R5、T3 和 Z1D 类型实例的 Amazon EBS 磁盘,Kubernetes 仅允许 25 个卷关联到节点。 对于 ec2 上的其他实例类型 From 2d774cbb42c4814f9cdc64e61647c047eae19a7c Mon Sep 17 00:00:00 2001 From: GoodGameZoo Date: Sun, 23 Feb 2020 14:28:47 +0800 Subject: [PATCH 06/24] Phrase modification (#19251) --- content/zh/docs/concepts/storage/volume-snapshots.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/zh/docs/concepts/storage/volume-snapshots.md b/content/zh/docs/concepts/storage/volume-snapshots.md index b3ed35292a..3f3a6ad65b 100644 --- a/content/zh/docs/concepts/storage/volume-snapshots.md +++ b/content/zh/docs/concepts/storage/volume-snapshots.md @@ -141,7 +141,7 @@ While a snapshot is being taken of a PersistentVolumeClaim, that PersistentVolum --> 如果一个 PVC 正在被快照用来作为源进行快照创建,则该 PVC 是使用中的。如果用户删除正作为快照源的 PVC API 对象,则 PVC 对象不会立即被删除掉。相反,PVC 对象的删除将推迟到任何快照不在主动使用它为止。当快照的 `Status` 中的 `ReadyToUse`值为 `true` 时,PVC 将不再用作快照源。 -当从 `PersistentVolumeClaim` 中生成快照时,`PersistentVolumeClaim` 就在被使用了。如果删除一个作为快照源的 `PersistentVolumeClaim` 对象,这个 `PersistentVolumeClaim` 对象不会立即被删除的。相反,在快照可以被使用或者被放弃之后,才会执行删除 `PersistentVolumeClaim` 对象的动作。 +当从 `PersistentVolumeClaim` 中生成快照时,`PersistentVolumeClaim` 就在被使用了。如果删除一个作为快照源的 `PersistentVolumeClaim` 对象,这个 `PersistentVolumeClaim` 对象不会立即被删除的。相反,删除 `PersistentVolumeClaim` 对象的动作会被放弃,或者推迟到快照的 Status 为 ReadyToUse时再执行。 要启用动态供应功能,集群管理员需要为用户预先创建一个或多个 `StorageClass` 对象。 -`StorageClass` 对象定义在进行动态卷供应时应使用哪个卷供应商,以及应该将哪些参数传递给该供应商。 -以下清单创建了一个存储类 "slow",它提供类似标准磁盘的永久磁盘。 +`StorageClass` 对象定义当动态供应被调用时,哪一个驱动将被使用和哪些参数将被传递给驱动。 +以下清单创建了一个 `StorageClass` 存储类 "slow",它提供类似标准磁盘的永久磁盘。 ```yaml apiVersion: storage.k8s.io/v1 From f853ee7c73857821a399630641260db70e5dfab1 Mon Sep 17 00:00:00 2001 From: Tim Bannister Date: Sun, 23 Feb 2020 15:00:47 +0000 Subject: [PATCH 10/24] fr translation for project slogan (#18267) * fr translation for project slogan * Update fr homepage abstract --- config.toml | 2 +- content/fr/_index.html | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/config.toml b/config.toml index 894eac25ea..c9952bac23 100644 --- a/config.toml +++ b/config.toml @@ -174,7 +174,7 @@ language_alternatives = ["en"] [languages.fr] title = "Kubernetes" -description = "Production-Grade Container Orchestration" +description = "Solution professionnelle d’orchestration de conteneurs" languageName ="Français" weight = 5 contentDir = "content/fr" diff --git a/content/fr/_index.html b/content/fr/_index.html index 7f15e44629..026a0f910f 100644 --- a/content/fr/_index.html +++ b/content/fr/_index.html @@ -1,6 +1,6 @@ --- -title: "La meilleure solution d'orchestration de conteneurs en production" -abstract: "Déploiement, mise à l'échelle et gestion automatisés des conteneurs" +title: "Solution professionnelle d’orchestration de conteneurs" +abstract: "Déploiement, mise à l'échelle et gestion automatisée des conteneurs" cid: home --- From 66a5a05efec36607191a2ee45ff6c3ec770145d0 Mon Sep 17 00:00:00 2001 From: Tim Bannister Date: Sun, 23 Feb 2020 22:24:47 +0000 Subject: [PATCH 11/24] es translation for project slogan (#18260) --- config.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config.toml b/config.toml index c9952bac23..50852699a3 100644 --- a/config.toml +++ b/config.toml @@ -222,7 +222,7 @@ language_alternatives = ["en"] [languages.es] title = "Kubernetes" -description = "Production-Grade Container Orchestration" +description = "Orquestación de contenedores para producción" languageName ="Español" weight = 9 contentDir = "content/es" From efa57986d63545919b83cc6cd1a49455748e4978 Mon Sep 17 00:00:00 2001 From: Eli Arbel Date: Mon, 24 Feb 2020 03:10:47 +0200 Subject: [PATCH 12/24] Specify SHA syntax for images (#18774) * Specify SHA syntax * PR suggestion * PR suggestion * Update overview.md * Update content/en/docs/concepts/configuration/overview.md Co-Authored-By: Tim Bannister Co-authored-by: Tim Bannister --- content/en/docs/concepts/configuration/overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/docs/concepts/configuration/overview.md b/content/en/docs/concepts/configuration/overview.md index ca56089b01..100d04ae78 100644 --- a/content/en/docs/concepts/configuration/overview.md +++ b/content/en/docs/concepts/configuration/overview.md @@ -87,7 +87,7 @@ The [imagePullPolicy](/docs/concepts/containers/images/#updating-images) and the - `imagePullPolicy: Never`: the image is assumed to exist locally. No attempt is made to pull the image. {{< note >}} -To make sure the container always uses the same version of the image, you can specify its [digest](https://docs.docker.com/engine/reference/commandline/pull/#pull-an-image-by-digest-immutable-identifier), for example `sha256:45b23dee08af5e43a7fea6c4cf9c25ccf269ee113168c19722f87876677c5cb2`. The digest uniquely identifies a specific version of the image, so it is never updated by Kubernetes unless you change the digest value. +To make sure the container always uses the same version of the image, you can specify its [digest](https://docs.docker.com/engine/reference/commandline/pull/#pull-an-image-by-digest-immutable-identifier); replace `:` with `@` (for example, `image@sha256:45b23dee08af5e43a7fea6c4cf9c25ccf269ee113168c19722f87876677c5cb2`). The digest uniquely identifies a specific version of the image, so it is never updated by Kubernetes unless you change the digest value. {{< /note >}} {{< note >}} From 393dfe78c970660838120df86436920dd0ebad38 Mon Sep 17 00:00:00 2001 From: Yudi A Phanama <11147376+phanama@users.noreply.github.com> Date: Mon, 24 Feb 2020 09:58:47 +0700 Subject: [PATCH 13/24] Pod Overhead page Indonesian translation (#19249) * Pod Overhead Translation indonesia language * Review+fix id/pod_overhead page translation Co-authored-by: Yudi A Phanama Co-authored-by: sulaimantok Signed-off-by: Yudi A Phanama Co-authored-by: Sulaiman --- .../concepts/configuration/pod-overhead.md | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 content/id/docs/concepts/configuration/pod-overhead.md diff --git a/content/id/docs/concepts/configuration/pod-overhead.md b/content/id/docs/concepts/configuration/pod-overhead.md new file mode 100644 index 0000000000..3c661e4bd5 --- /dev/null +++ b/content/id/docs/concepts/configuration/pod-overhead.md @@ -0,0 +1,54 @@ +--- +title: Overhead Pod +content_template: templates/concept +weight: 20 +--- + +{{% capture overview %}} + +{{< feature-state for_k8s_version="v1.16" state="alpha" >}} + + +Ketika kamu menjalankan Pod pada Node, Pod itu akan mengambil sejumlah sumber daya sistem. Sumber daya ini adalah tambahan terhadap sumber daya yang diperlukan untuk menjalankan Container di dalam Pod (_overhead_). +_Pod Overhead_ adalah fitur yang berfungsi untuk menghitung sumber daya digunakan oleh infrastruktur Pod selain permintaan dan limit Container. + + +{{% /capture %}} + + +{{% capture body %}} + +## Overhead Pod + +Pada Kubernetes, Overhead Pod ditentukan pada +[saat admisi](/docs/reference/access-authn-authz/extensible-admission-controllers/#what-are-admission-webhooks) sesuai dengan Overhead yang ditentukan di dalam +[RuntimeClass](/docs/concepts/containers/runtime-class/) milik Pod. + +Ketika Overhead Pod diaktifkan, Overhead akan dipertimbangkan sebagai tambahan terhadap jumlah permintaan sumber daya Container +saat menjadwalkan Pod. Begitu pula Kubelet, yang akan memasukkan Overhead Pod saat menentukan ukuran +cgroup milik Pod, dan saat melakukan pemeringkatan pengusiran (_eviction_) Pod. + +### Yang perlu disiapkan + +Kamu harus memastikan bahwa +[_feature gate_](/docs/reference/command-line-tools-reference/feature-gates/) `PodOverhead` telah diaktifkan (secara bawaan dinonaktifkan) +di seluruh klaster kamu, yang berarti: + +- Pada {{< glossary_tooltip text="kube-scheduler" term_id="kube-scheduler" >}} +- Pada {{< glossary_tooltip text="kube-apiserver" term_id="kube-apiserver" >}} +- Pada {{< glossary_tooltip text="kubelet" term_id="kubelet" >}} di setiap Node +- Pada peladen API khusus (_custom_) apa pun yang menggunakan _feature gate_ + +{{< note >}} +Pengguna yang dapat mengubah sumber daya RuntimeClass dapat memengaruhi kinerja beban kerja klaster secara keseluruhan. Kamu dapat membatasi akses terhadap kemampuan ini dengan kontrol akses Kubernetes. +Lihat [Ringkasan Otorisasi](/docs/reference/access-authn-authz/authorization/) untuk lebih lanjut. +{{< /note >}} + +{{% /capture %}} + +{{% capture whatsnext %}} + +* [RuntimeClass](/docs/concepts/containers/runtime-class/) +* [Desain PodOverhead](https://github.com/kubernetes/enhancements/blob/master/keps/sig-node/20190226-pod-overhead.md) + +{{% /capture %}} From 7a97b21f2682bf13d37ae0816ac667f11aa6ab36 Mon Sep 17 00:00:00 2001 From: Ihor Sychevskyi <26163841+Arhell@users.noreply.github.com> Date: Mon, 24 Feb 2020 08:50:47 +0200 Subject: [PATCH 14/24] Fix anchor in readme (#19271) --- README-fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README-fr.md b/README-fr.md index cca46595ad..37350a5b81 100644 --- a/README-fr.md +++ b/README-fr.md @@ -33,7 +33,7 @@ La façon recommandée d'exécuter le site web Kubernetes localement est d'utili > Si vous êtes sous Windows, vous aurez besoin de quelques outils supplémentaires que vous pouvez installer avec [Chocolatey](https://chocolatey.org). `choco install install make` -> Si vous préférez exécuter le site Web localement sans Docker, voir [Exécuter le site localement avec Hugo](#running-the-site-locally-using-hugo) ci-dessous. +> Si vous préférez exécuter le site Web localement sans Docker, voir [Exécuter le site localement avec Hugo](#exécuter-le-site-localement-en-utilisant-hugo) ci-dessous. Si vous avez Docker [up and running](https://www.docker.com/get-started), construisez l'image Docker `kubernetes-hugo' localement: From 646b7a5f633791de222e0c511383106e8fcf77b2 Mon Sep 17 00:00:00 2001 From: Rajesh Deshpande Date: Mon, 24 Feb 2020 22:44:48 +0530 Subject: [PATCH 15/24] Adding reference to node concept page. (#19263) * Adding reference to node concept page. This page discuss about assigning pods to the node but missing reference to the node concept page. So for better navigation added this reference in what's next section * Correcting syntax Correcting syntax * Adding glossary tooltip for 'node' Adding glossary tooltip for 'node' --- .../docs/tasks/configure-pod-container/assign-pods-nodes.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/en/docs/tasks/configure-pod-container/assign-pods-nodes.md b/content/en/docs/tasks/configure-pod-container/assign-pods-nodes.md index 5b6b78a536..b5f6876e6b 100644 --- a/content/en/docs/tasks/configure-pod-container/assign-pods-nodes.md +++ b/content/en/docs/tasks/configure-pod-container/assign-pods-nodes.md @@ -19,7 +19,7 @@ Kubernetes cluster. ## Add a label to a node -1. List the nodes in your cluster, along with their labels: +1. List the {{< glossary_tooltip term_id="node" text="nodes" >}} in your cluster, along with their labels: ```shell kubectl get nodes --show-labels @@ -97,7 +97,7 @@ Use the configuration file to create a pod that will get scheduled on `foo-node` {{% /capture %}} {{% capture whatsnext %}} -Learn more about -[labels and selectors](/docs/concepts/overview/working-with-objects/labels/). +* Learn more about [labels and selectors](/docs/concepts/overview/working-with-objects/labels/). +* Learn more about [nodes](/docs/concepts/architecture/nodes/). {{% /capture %}} From 0181d882199b8ed95d9507ea0069b001e3cbd06e Mon Sep 17 00:00:00 2001 From: Alexey Pyltsyn Date: Mon, 24 Feb 2020 21:14:49 +0300 Subject: [PATCH 16/24] Translate Reference Docs Overview section into Russian (#19284) --- .../contribute/generate-ref-docs/_index.md | 11 + .../generate-ref-docs/contribute-upstream.md | 185 +++++++++++++++ .../contribute/generate-ref-docs/kubectl.md | 224 ++++++++++++++++++ .../generate-ref-docs/kubernetes-api.md | 188 +++++++++++++++ .../kubernetes-components.md | 32 +++ .../generate-ref-docs/quickstart.md | 220 +++++++++++++++++ .../ru/docs/templates/feature-state-alpha.txt | 7 + .../ru/docs/templates/feature-state-beta.txt | 8 + .../templates/feature-state-deprecated.txt | 2 + .../docs/templates/feature-state-stable.txt | 5 + content/ru/docs/templates/index.md | 13 + content/ru/includes/prerequisites-ref-docs.md | 20 ++ i18n/ru.toml | 2 +- 13 files changed, 916 insertions(+), 1 deletion(-) create mode 100644 content/ru/docs/contribute/generate-ref-docs/_index.md create mode 100644 content/ru/docs/contribute/generate-ref-docs/contribute-upstream.md create mode 100644 content/ru/docs/contribute/generate-ref-docs/kubectl.md create mode 100644 content/ru/docs/contribute/generate-ref-docs/kubernetes-api.md create mode 100644 content/ru/docs/contribute/generate-ref-docs/kubernetes-components.md create mode 100644 content/ru/docs/contribute/generate-ref-docs/quickstart.md create mode 100644 content/ru/docs/templates/feature-state-alpha.txt create mode 100644 content/ru/docs/templates/feature-state-beta.txt create mode 100644 content/ru/docs/templates/feature-state-deprecated.txt create mode 100644 content/ru/docs/templates/feature-state-stable.txt create mode 100644 content/ru/docs/templates/index.md create mode 100644 content/ru/includes/prerequisites-ref-docs.md diff --git a/content/ru/docs/contribute/generate-ref-docs/_index.md b/content/ru/docs/contribute/generate-ref-docs/_index.md new file mode 100644 index 0000000000..ac25aa014c --- /dev/null +++ b/content/ru/docs/contribute/generate-ref-docs/_index.md @@ -0,0 +1,11 @@ +--- +title: Обзор справочной документации +main_menu: true +weight: 80 +--- + +Темы в этом разделе описывают, как генерировать справочные руководства Kubernetes. + +Для сборки справочной документации посмотрите следующий ресурс: + +* [Краткое руководство по генерации справочной документации](/docs/contribute/generate-ref-docs/quickstart/) diff --git a/content/ru/docs/contribute/generate-ref-docs/contribute-upstream.md b/content/ru/docs/contribute/generate-ref-docs/contribute-upstream.md new file mode 100644 index 0000000000..07fe564753 --- /dev/null +++ b/content/ru/docs/contribute/generate-ref-docs/contribute-upstream.md @@ -0,0 +1,185 @@ +--- +title: Участие в основном коде Kubernetes +content_template: templates/task +weight: 20 +--- + +{{% capture overview %}} + +На этой странице показано, как поучаствовать в основном содержимом проекта `kubernetes/kubernetes`. +Вы можете исправить баги, найденные в документации по API Kubernetes или содержимом таких компонентов Kubernetes, как `kubeadm`, `kube-apiserver` и `kube-controller-manager`. + +Если вместо этого вы хотите перегенерировать справочную документацию для API Kubernetes или компонентов с именем `kube-*` в основном коде, изучите следующие инструкции: + +- [Генерация справочной документации для API Kubernetes](/ru/docs/contribute/generate-ref-docs/kubernetes-api/) +- [Генерация справочной документации для компонентов и инструментов Kubernetes](/ru/docs/contribute/generate-ref-docs/kubernetes-components/) + +{{% /capture %}} + +{{% capture prerequisites %}} + +- Установленные инструменты: + + - [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) + - [Golang](https://golang.org/doc/install) версии 1.13+ + - [Docker](https://docs.docker.com/engine/installation/) + - [etcd](https://github.com/coreos/etcd/) + +- Созданная переменная окружения `GOPATH`, а путь к `etcd` должен быть прописан в переменной окружения `PATH`. + +- Вам необходимо знать, как создать пулреквест в репозитории на GitHub. + Это обычно предполагает создание копии репозитория. + Для получения дополнительной информации смотрите страницы [Создание пулреквеста](https://help.github.com/articles/creating-a-pull-request/) и [Стандартный рабочий процесс в GitHub по работе с копией и пулреквестом](https://gist.github.com/Chaser324/ce0505fbed06b947d962). + +{{% /capture %}} + +{{% capture steps %}} + +## Рассмотрение процесса в целом + +Справочная документация для API Kubernetes и таких компонентов с `kube-*`, как `kube-apiserver`, `kube-controller-manager`, автоматически генерируются из исходного кода в [основном репозитории Kubernetes](https://github.com/kubernetes/kubernetes/). + +Если вы заметили баги в сгенерированной документации, попробуйте его исправить через пулреквест в основной проект. + +## Клонирование репозитория Kubernetes + +Если вы ещё не склонировали репозиторий kubernetes/kubernetes, сделайте это: + +```shell +mkdir $GOPATH/src +cd $GOPATH/src +go get github.com/kubernetes/kubernetes +``` + +Определите базовую директорию вашей копии репозитория [kubernetes/kubernetes](https://github.com/kubernetes/kubernetes). +Например, если вы выполнили предыдущий шаг, чтобы получить репозиторий, вашей базовой директорией будет `$GOPATH/src/github.com/kubernetes/kubernetes`. +В остальных команд базовая директория будет именоваться как ``. + +Определите базовую директорию вашей копии репозитория [kubernetes-sigs/reference-docs](https://github.com/kubernetes-sigs/reference-docs). Например, если вы выполнили предыдущий шаг, чтобы получить репозиторий, вашей базовой директорией будет `$GOPATH/src/github.com/kubernetes-sigs/reference-docs`. +В остальных команд базовая директория будет именоваться как ``. + +## Редактирование исходного кода Kubernetes + +Справочная документация API Kubernetes генерируется автоматически из спецификации OpenAPI в исходном коде Kubernetes. Если вы хотите изменить справочную документацию API, сначала нужно изменить один или несколько комментариев в исходном коде Kubernetes. + +Документация для компонентов `kube-*` также генерируется из основного исходного кода. Для изменения генерируемой документации вам нужно изменить соответствующий код компонента. + +### Внесение изменений в основной исходный код + +{{< note >}} +Следующие шаги служат примером, а не общим порядком действий. Детали могут отличаться в вашей ситуации. +{{< /note >}} + +Рассмотрим пример редактирования комментария в исходном коде Kubernetes. + +В вашем локальном репозитории kubernetes/kubernetes переключитесь на ветку master и проверьте, что она актуальна: + +```shell +cd +git checkout master +git pull https://github.com/kubernetes/kubernetes master +``` + +Предположим, что в исходном файле в ветке master есть опечатка "atmost": + +[kubernetes/kubernetes/staging/src/k8s.io/api/apps/v1/types.go](https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/api/apps/v1/types.go) + +В вашем локальном окружении откройте `types.go` и измените "atmost" на "at most". + +Убедитесь, что вы изменили файл: + +```shell +git status +``` + +Вывод этой команды покажет, что вы находитесь в ветке master и был изменён исходный файл `types.go`: + +```shell +On branch master +... + modified: staging/src/k8s.io/api/apps/v1/types.go +``` + +### Фиксация отредактированного файла + +Выполните команду `git add` и `git commit`, чтобы зафиксировать внесенные вами изменения. На следующем шаге вы сделаете второй коммит. Следует отметить, что ваши изменения должны быть разделены на коммита. + +### Генерация спецификации OpenAPI и сопутствующих файлов + +Перейдите в директорию `` и выполните следующие скрипты: + +```shell +hack/update-generated-swagger-docs.sh +hack/update-openapi-spec.sh +hack/update-generated-protobuf.sh +hack/update-api-reference-docs.sh +``` + +Выполните команду `git status`, чтобы посмотреть, какие файлы изменились. + +```shell +On branch master +... + modified: api/openapi-spec/swagger.json + modified: api/swagger-spec/apps_v1.json + modified: docs/api-reference/apps/v1/definitions.html + modified: staging/src/k8s.io/api/apps/v1/generated.proto + modified: staging/src/k8s.io/api/apps/v1/types.go + modified: staging/src/k8s.io/api/apps/v1/types_swagger_doc_generated.go +``` + +Изучите содержимое файла `api/openapi-spec/swagger.json`, чтобы убедиться в том, что опечатка была исправлена. +Например, для этого вы можете выполнить команду `git diff -a api/openapi-spec/swagger.json`. +Это важно, потому что изменённый файл `swagger.json` является результатом второй стадии процесса генерации документации. + +Выполните команду `git add` и `git commit` для фиксации ваших изменения. Теперь вы можете увидеть два новых коммита: +первый содержит отредактированный файл `types.go`, а второй — сгенерированную спецификацию OpenAPI и сопутствующие файлы. Оформляйте эти изменения в виде двух отдельных коммитов. Это означает, что не нужно объединять коммиты. + +Отправьте свои изменения как [пулреквест](https://help.github.com/articles/creating-a-pull-request/) в ветку master репозитория [kubernetes/kubernetes](https://github.com/kubernetes/kubernetes). +Отслеживайте пулреквест и по мере необходимости отвечайте на комментарии рецензента. Не забывайте отслеживать активность в пулреквест до тех пор, пока он не будет принят. + +[PR 57758](https://github.com/kubernetes/kubernetes/pull/57758) — пример пулреквеста, который исправляет опечатку в исходном коде Kubernetes. + +{{< note >}} +Не всегда легко правильно определить, какой исходный файл нужно изменить. В предыдущем примере нужный исходный файл находится в директории `staging` в репозитории `kubernetes/kubernetes`. Однако в вашей ситуации файл для изменения может находится в другом месте, нежели чем в директории `staging`. Для получения помощи изучите файлы `README` в репозитории [kubernetes/kubernetes](https://github.com/kubernetes/kubernetes/tree/master/staging) и в смежных репозиториях, например, [kubernetes/apiserver](https://github.com/kubernetes/apiserver/blob/master/README.md). +{{< /note >}} + +### Применение вашего коммита в ветку выпуска + +В предыдущем разделе вы отредактировали файл в ветке master, а затем запустили скрипты для генерации спецификации OpenAPI и смежных файлов. Затем вы отправили свои изменения в виде пулреквеста в ветку master репозитория kubernetes/kubernetes. Теперь представим, что вам нужно бэкпортировать изменения в ветку выпуска. К примеру, ветка master используется для разработки Kubernetes версии 1.10, а вы хотите применить ваши изменения в ветке release-1.9. + +Напомним, что в вашем пулреквесте есть два коммита: первый для редактирования `types.go`, а второй — для файлов, сгенерированных скриптами. Следующий шаг — применить сделанный вами первый коммит в ветку release-1.9. Суть в том, чтобы выбрать коммит, который изменяет файл `types.go`, а не коммит с результатами выполнения скриптов. За инструкциями обратитесь к странице [Propose a Cherry Pick](https://git.k8s.io/community/contributors/devel/sig-release/cherry-picks.md). + +{{< note >}} +Применение коммита требует наличия возможности добавить метку и этап в вашем пулреквесте. Если у вас нет таких разрешений, вам нужно переговорить с кем-то, кто может сделать это для вас. +{{< /note >}} + +Когда в вашем пулреквесте есть определённый коммит, который нужно применить в ветке release-1.9, вам нужно запустить перечисленные ниже скрипты в этой вете из вашего локального окружения. + +```shell +hack/update-generated-swagger-docs.sh +hack/update-openapi-spec.sh +hack/update-generated-protobuf.sh +hack/update-api-reference-docs.sh +``` + +Теперь зафиксируйте изменения в вашем пулреквесте с применённым коммитом, теперь там будет сгенерированная спецификация OpenAPI и связанные с ней файлы. Отслеживайте этот пулреквест до тех пор, пока он не будет объединен в ветке release-1.9. + +Сейчас у вас и в ветке master, и в ветке release-1.9 есть обновленный файл `types.go` вместе с множеством сгенерированных файлов, в которых отражаются изменения, внесенные вами в `types.go`. Обратите внимание, что сгенерированная спецификация OpenAPI и другие сгенерированные файлы в ветке release-1.9 не обязательно совпадают с сгенерированными файлами в ветке master. Сгенерированные файлы в ветке release-1.9 содержат элементы API только из Kubernetes 1.9. Сгенерированные файлы в ветке master могут содержать элементы API не только для версии 1.9, но и для 1.10, которая ещё находится в разработке. + +## Генерация справочной документации + +В предыдущем разделе было показано, как отредактировать исходный файл, а затем сгенерировать несколько файлов, включая `api/openapi-spec/swagger.json` в репозитории `kubernetes/kubernetes`. +Файл `swagger.json` — это файл определения OpenAPI, который используется для генерации справочной документации API. + +Теперь вы можете приступить к изучению руководству [Генерация справочной документации для API Kubernetes](/ru/docs/contribute/generate-ref-docs/kubernetes-api/), чтобы создать [справочную документацию API Kubernetes](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/). + +{{% /capture %}} + +{{% capture whatsnext %}} + +* [Генерация справочной документации для API Kubernetes](/ru/docs/contribute/generate-ref-docs/kubernetes-api/) +* [Генерация справочной документации для компонентов и инструментов Kubernetes](/ru/docs/contribute/generate-ref-docs/kubernetes-components/) +* [Генерация справочной документации для команд kubectl](/ru/docs/contribute/generate-ref-docs/kubectl/) + +{{% /capture %}} diff --git a/content/ru/docs/contribute/generate-ref-docs/kubectl.md b/content/ru/docs/contribute/generate-ref-docs/kubectl.md new file mode 100644 index 0000000000..df75084ab8 --- /dev/null +++ b/content/ru/docs/contribute/generate-ref-docs/kubectl.md @@ -0,0 +1,224 @@ +--- +title: Генерация справочной документации для команд kubectl +content_template: templates/task +weight: 90 +--- + +{{% capture overview %}} + +На этой странице показано, как сгенерировать справочник для команды `kubectl`. + +{{< note >}} +На этой странице показывается, как сгенерировать справочную документацию для таких [команд kubectl](/ru/docs/reference/generated/kubectl/kubectl-commands), как [kubectl apply](/ru/docs/reference/generated/kubectl/kubectl-commands#apply) и [kubectl taint](/ru/docs/reference/generated/kubectl/kubectl-commands#taint). +Этот раздел не рассматривает генерацию справочной страницы для опций [kubectl](/ru/docs/reference/generated/kubectl/kubectl/). Инструкции по генерации справочной страницы опций kubectl смотрите в разделе [Генерация справочной документации для компонентов и инструментов Kubernetes](/ru/docs/contribute/generate-ref-docs/kubernetes-components/). +{{< /note >}} + +{{% /capture %}} + +{{% capture prerequisites %}} + +{{< include "prerequisites-ref-docs.md" >}} + +{{% /capture %}} + +{{% capture steps %}} + +## Настройка локальных репозиториев + +Создайте рабочую область и определите переменную окружения `GOPATH`. + +```shell +mkdir -p $HOME/ + +export GOPATH=$HOME/ +``` + +Загрузите локальные копии следующих репозиториев: + +```shell +go get -u github.com/spf13/pflag +go get -u github.com/spf13/cobra +go get -u gopkg.in/yaml.v2 +go get -u kubernetes-sigs/reference-docs +``` + +Если у вас ещё нет копии репозитория kubernetes/website, клонируйте её на свой компьютер: + +```shell +git clone https://github.com//website $GOPATH/src/github.com//website +``` + +Склонируйте репозиторий kubernetes/kubernetes по пути k8s.io/kubernetes: + +```shell +git clone https://github.com/kubernetes/kubernetes $GOPATH/src/k8s.io/kubernetes +``` + +Удалите пакет spf13 в `$GOPATH/src/k8s.io/kubernetes/vendor/github.com`. + +```shell +rm -rf $GOPATH/src/k8s.io/kubernetes/vendor/github.com/spf13 +``` + +В репозитории kubernetes/kubernetes использует исходный код `kubectl` и `kustomize`. + +* Определите базовую директорию вашей копии репозитория [kubernetes/kubernetes](https://github.com/kubernetes/kubernetes). +Например, если вы выполнили предыдущий шаг, чтобы получить репозиторий, вашей базовой директорией будет `$GOPATH/src/k8s.io/kubernetes`. +В остальных командах базовая директория будет именоваться как ``. + +* Определите базовую директорию вашей копии репозитория [kubernetes/website](https://github.com/kubernetes/website). +Например, если вы выполнили предыдущий шаг, чтобы получить репозиторий, вашей базовой директорией будет `$GOPATH/src/github.com//website`. +В остальных команд базовая директория будет именоваться как ``. + +* Определите базовую директорию вашей копии репозитория [kubernetes-sigs/reference-docs](https://github.com/kubernetes-sigs/reference-docs). +Например, если вы выполнили предыдущий шаг, чтобы получить репозиторий, вашей базовой директорией будет `$GOPATH/src/github.com/kubernetes-sigs/reference-docs`. +В остальных команд базовая директория будет именоваться как ``. + +В вашем локальном репозитории k8s.io/kubernetes переключитесь в нужную вам ветку и убедитесь, что она в актуальном состоянии. Например, если вам нужно сгенерировать документацию для Kubernetes 1.17, вы можете использовать эти команды: + +```shell +cd +git checkout v1.17.0 +git pull https://github.com/kubernetes/kubernetes v1.17.0 +``` + +Если вам не нужно изменять исходный код `kubectl`, следуйте инструкциям по [определению переменных сборки](#настройка-переменных-для-сборки). + +## Редактирование исходного кода kubectl + +Справочная документация по команде kubectl генерируется автоматически из исходного кода kubectl. Если вы хотите изменить справочную документацию, сначала измените один или несколько комментариев в исходном коде kubectl. Сделайте изменения в локальный репозиторий kubernetes/kubernetes, а затем отправьте пулреквест в ветку master репозитория [github.com/kubernetes/kubernetes](https://github.com/kubernetes/kubernetes). + +[PR 56673](https://github.com/kubernetes/kubernetes/pull/56673/files) — пример пулреквеста, который исправляет опечатку в исходном коде kubectl. + +Отслеживайте пулреквест и по мере необходимости отвечайте на комментарии рецензента. Не забывайте отслеживать активность в пулреквест до тех пор, пока он не будет принят в ветку master репозитория kubernetes/kubernetes. + +## Применение вашего изменения в ветку выпуска + +Теперь ваше изменение в ветке master, которая используется для разработки следующего выпуска Kubernetes. Если вы хотите добавить ваше изменение в документацию для уже выпущенной версии Kubernetes, вам нужно применить коммит с соответствующим изменением в нужную ветку выпуска. + +Например, предположим, что ветка master используется для разработки Kubernetes 1.10, а вам нужно бэкпортировать ваше изменение в ветку release-1.15. За инструкциями обратитесь к странице [Propose a Cherry Pick](https://git.k8s.io/community/contributors/devel/sig-release/cherry-picks.md). + +Отслеживайте ваш пулреквест с применённым изменением до тех пор, пока он не будет объединён в ветку выпуска. + +{{< note >}} +Применение коммита требует наличия возможности добавить метку и этап в вашем пулреквесте. Если у вас нет таких разрешений, вам нужно переговорить с кем-то, кто может сделать это для вас. +{{< /note >}} + +## Настройка переменных для сборки + +Перейдите на ``. В командной строке установите следующие переменные окружения. + +* `K8S_ROOT` со значением ``. +* `WEB_ROOT` со значением ``. +* `K8S_RELEASE` со значением нужной версии документации. + Например, если вы хотите собрать документацию для Kubernetes версии 1.17, определите переменную окружения `K8S_RELEASE` со значением 1.17. + +Примеры: + +```shell +export WEB_ROOT=$(GOPATH)/src/github.com//website +export K8S_ROOT=$(GOPATH)/src/k8s.io/kubernetes +export K8S_RELEASE=1.17 +``` + +## Создание версионированной директории + +Скрипт сборки `createversiondirs` создаёт версионированную директорию и копирует туда конфигурационные файлы справочника kubectl. +Имя версионированной директории имеет следующий вид: `v_`. + +В директории `` выполнение следующий скрипт сборки: + +```shell +cd +make createversiondirs +``` + +## Переход в тег выпуска в k8s.io/kubernetes + +В вашем локальном репозитории `` перейдите в ветку с версией Kubernetes, для которой вы хотите получить документацию. Например, если вы хотите сгенерировать документацию для Kubernetes 1.17, перейдите в тег `v1.17.0`. Убедитесь, что ваша локальная ветка содержит актуальные изменения. + +```shell +cd +git checkout v1.17.0 +git pull https://github.com/kubernetes/kubernetes v1.17.0 +``` + +## Выполнение кода для генерации документации + +В вашей локальной директории `` запустите скрипт сборки `copycli`. Команда выполняется от пользователя `root`: + +```shell +cd +make copycli +``` + +Команда `copycli` удаляет временную директорию сборки, генерирует файлы команды kubectl и копирует полученную HTML-страницу справочника команде kubectl и ресурсы в ``. + +## Проверка сгенерированных файлов + +Убедитесь в том, что перечисленные ниже два файлы были сгенерированы: + +```shell +[ -e "/gen-kubectldocs/generators/build/index.html" ] && echo "index.html built" || echo "no index.html" +[ -e "/gen-kubectldocs/generators/build/navData.js" ] && echo "navData.js built" || echo "no navData.js" +``` + +## Проверка скопированных файлов + +Убедитесь в том, все сгенерированные файлы были скопированы в вашу директорию ``: + +```shell +cd +git status +``` + +В выводе должны перечислены изменённые файлы: + +``` +static/docs/reference/generated/kubectl/kubectl-commands.html +static/docs/reference/generated/kubectl/navData.js +``` + +Также в выводе должно быть: + +``` +static/docs/reference/generated/kubectl/scroll.js +static/docs/reference/generated/kubectl/stylesheet.css +static/docs/reference/generated/kubectl/tabvisibility.js +static/docs/reference/generated/kubectl/node_modules/bootstrap/dist/css/bootstrap.min.css +static/docs/reference/generated/kubectl/node_modules/highlight.js/styles/default.css +static/docs/reference/generated/kubectl/node_modules/jquery.scrollto/jquery.scrollTo.min.js +static/docs/reference/generated/kubectl/node_modules/jquery/dist/jquery.min.js +static/docs/reference/generated/kubectl/node_modules/font-awesome/css/font-awesome.min.css +``` + +## Проверка документации локально + +Соберите документацию Kubernetes в вашей директории ``. + +```shell +cd +make docker-serve +``` + +Посмотрите [локальную предварительную версию сайта](https://localhost:1313/docs/reference/generated/kubectl/kubectl-commands/). + +## Добавление и фиксация изменений в kubernetes/website + +Выполните команду `git add` и `git commit` для фиксации файлов. + +## Создание пулреквеста + +Создайте пулреквест в репозиторий `kubernetes/website`. Отслеживайте изменения в пулреквесте и по мере необходимости отвечайте на комментарии рецензента. Не забывайте проверять пулреквест до тех пор, пока он не будет принят. + +Спустя несколько минут после принятия вашего пулреквеста, обновленные темы справочника будут отображены в [документации](/ru/docs/home/). + +{{% /capture %}} + +{{% capture whatsnext %}} + +* [Руководство по быстрому старту генерации справочной документации](/ru/docs/contribute/generate-ref-docs/quickstart/) +* [Генерация справочной документации для компонентов и инструментов Kubernetes](/ru/docs/contribute/generate-ref-docs/kubernetes-components/) +* [Генерация справочной документации для API Kubernetes](/ru/docs/contribute/generate-ref-docs/kubernetes-api/) + +{{% /capture %}} diff --git a/content/ru/docs/contribute/generate-ref-docs/kubernetes-api.md b/content/ru/docs/contribute/generate-ref-docs/kubernetes-api.md new file mode 100644 index 0000000000..68f5ad1199 --- /dev/null +++ b/content/ru/docs/contribute/generate-ref-docs/kubernetes-api.md @@ -0,0 +1,188 @@ +--- +title: Генерация справочной документации для API Kubernetes +content_template: templates/task +weight: 50 +--- + +{{% capture overview %}} + +На этой странице рассказывается про обновление справочной документации по API Kubernetes. + +Справочная документация по API Kubernetes собирается из [спецификации OpenAPI Kubernetes](https://github.com/kubernetes/kubernetes/blob/master/api/openapi-spec/swagger.json) с использованием инструмента генерации [kubernetes-sigs/reference-docs](https://github.com/kubernetes-sigs/reference-docs). + +Если вы нашли баги в сгенерированной документации, то можете [исправить их в основном коде](/docs/contribute/generate-ref-docs/contribute-upstream/). + +Продолжайте чтение данной странице, если вы хотите перегенерировать справочную документацию из спецификации [OpenAPI](https://github.com/OAI/OpenAPI-Specification). + +{{% /capture %}} + +{{% capture prerequisites %}} + +{{< include "prerequisites-ref-docs.md" >}} + +{{% /capture %}} + +{{% capture steps %}} + +## Настройка локальных репозиториев + +Создайте рабочую область и определите переменную окружения `GOPATH`. + +```shell +mkdir -p $HOME/ + +export GOPATH=$HOME/ +``` + +Загрузите локальные копии следующих репозиториев: + +```shell +go get -u github.com/kubernetes-sigs/reference-docs + +go get -u github.com/go-openapi/loads +go get -u github.com/go-openapi/spec +``` + +Если у вас ещё нет копии репозитория kubernetes/website, клонируйте её на свой компьютер: + +```shell +git clone https://github.com//website $GOPATH/src/github.com//website +``` + +Склонируйте репозиторий kubernetes/kubernetes по пути k8s.io/kubernetes: + +```shell +git clone https://github.com/kubernetes/kubernetes $GOPATH/src/k8s.io/kubernetes +``` + +* Определите базовую директорию вашей копии репозитория [kubernetes/kubernetes](https://github.com/kubernetes/kubernetes). +Например, если вы выполнили предыдущий шаг, чтобы получить репозиторий, вашей базовой директорией будет `$GOPATH/src/k8s.io/kubernetes`. +В остальных командах базовая директория будет именоваться как ``. + +* Определите базовую директорию вашей копии репозитория [kubernetes/website](https://github.com/kubernetes/website). +Например, если вы выполнили предыдущий шаг, чтобы получить репозиторий, вашей базовой директорией будет `$GOPATH/src/github.com//website`. +В остальных командах базовая директория будет именоваться как ``. + +* Определите базовую директорию вашей копии репозитория [kubernetes-sigs/reference-docs](https://github.com/kubernetes-sigs/reference-docs). +Например, если вы выполнили предыдущий шаг, чтобы получить репозиторий, вашей базовой директорией будет `$GOPATH/src/github.com/kubernetes-sigs/reference-docs`. +В остальных командах базовая директория будет именоваться как ``. + +## Генерация справочной документации API + +Далее в этом разделе рассматривается генерация [справочной документации по API Kubernetes](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/). + +### Настройка переменных для сборки + +* `K8S_ROOT` со значением ``. +* `WEB_ROOT` со значением ``. +* `K8S_RELEASE` со значением нужной версии документации. + Например, если вы хотите собрать документацию для Kubernetes версии 1.17, определите переменную окружения `K8S_RELEASE` со значением 1.17. + +Примеры: + +```shell +export WEB_ROOT=$(GOPATH)/src/github.com//website +export K8S_ROOT=$(GOPATH)/src/k8s.io/kubernetes +export K8S_RELEASE=1.17 +``` + +### Создание версионированной директории и получение Open API spec + +Скрипт сборки `updateapispec` создает версионированную директорию для сборки. +После создания директории спецификация Open API генерируется из репозитория ``. Таким образом версия конфигурационных файлов и спецификация Kubernetes Open API будут совпадать с версией выпуска. +Имя версионированной директории имеет следующий вид: `v_`. + +В директории `` выполните следующий скрипт сборки: + +```shell +cd +make updateapispec +``` + +### Сборка справочной документации API + +Скрипт сборки `copyapi` создает справочник API и копирует генерированные файлы в каталоги в ``. +Выполните следующую команду в ``: + +```shell +cd +make copyapi +``` + +Убедитесь в том, что перечисленные ниже два файлы были сгенерированы: + +```shell +[ -e "/gen-apidocs/generators/build/index.html" ] && echo "index.html built" || echo "no index.html" +[ -e "/gen-apidocs/generators/build/navData.js" ] && echo "navData.js built" || echo "no navData.js" +``` + +Перейдите в корень директории `` и посмотрите, какие файлы были изменены: + +```shell +cd +git status +``` + +Вывод команды будет примерно следующим: + +``` +static/docs/reference/generated/kubernetes-api/v1.17/css/bootstrap.min.css +static/docs/reference/generated/kubernetes-api/v1.17/css/font-awesome.min.css +static/docs/reference/generated/kubernetes-api/v1.17/css/stylesheet.css +static/docs/reference/generated/kubernetes-api/v1.17/fonts/FontAwesome.otf +static/docs/reference/generated/kubernetes-api/v1.17/fonts/fontawesome-webfont.eot +static/docs/reference/generated/kubernetes-api/v1.17/fonts/fontawesome-webfont.svg +static/docs/reference/generated/kubernetes-api/v1.17/fonts/fontawesome-webfont.ttf +static/docs/reference/generated/kubernetes-api/v1.17/fonts/fontawesome-webfont.woff +static/docs/reference/generated/kubernetes-api/v1.17/fonts/fontawesome-webfont.woff2 +static/docs/reference/generated/kubernetes-api/v1.17/index.html +static/docs/reference/generated/kubernetes-api/v1.17/js/jquery.scrollTo.min.js +static/docs/reference/generated/kubernetes-api/v1.17/js/navData.js +static/docs/reference/generated/kubernetes-api/v1.17/js/scroll.js +``` + +## Обновление указателя API-справочника + +При генерации справочной документации для нового выпуска в файле `/content/en/docs/reference/kubernetes-api/api-index.md` нужно прописать номер предстоящей версии. + +* Откройте файл `/content/en/docs/reference/kubernetes-api/api-index.md` и обновите номер версии справочника API. Например: + + ``` + --- + title: v1.17 + --- + + [Kubernetes API v1.17](/docs/reference/generated/kubernetes-api/v1.17/) + ``` + +* Откройте файл `/content/en/docs/reference/_index.md` и добавьте ссылку на последний справочник API. Удалите самую старую версию справочника API. + В этом файле должно быть 5 ссылок на новейшие API-справочники. + +## Тестирование справочника API локально + +Соберите обновлённую версию API-справочника на своём компьютере. +Проверьте ваши изменения на [локальной предварительной версии сайта](http://localhost:1313/docs/reference/generated/kubernetes-api/v1.17/). + +```shell +cd +make docker-serve +``` + +## Фиксация изменений + +В директории `` выполните команду `git add` и `git commit` для фиксации изменений в репозитории. + +Создайте пулреквест в репозиторий `kubernetes/website`. Отслеживайте свой пулреквест и при необходимости отвечайте на комментарии. Не забывайте отслеживать активность в собственном пулреквесте до тех пор, пока он не будет принят. + +Отправьте свои изменения в виде [пулреквеста](/ru/docs/contribute/start/) в репозиторий [kubernetes/kubernetes](https://github.com/kubernetes/kubernetes). +Отслеживайте изменения в пулреквесте и по мере необходимости отвечайте на комментарии рецензента. Не забывайте проверять пулреквест до тех пор, пока он не будет принят. + +{{% /capture %}} + +{{% capture whatsnext %}} + +* [Руководство по быстрому старту генерации справочной документации](/ru/docs/contribute/generate-ref-docs/quickstart/) +* [Генерация справочной документации для компонентов и инструментов Kubernetes](/ru/docs/contribute/generate-ref-docs/kubernetes-components/) +* [Генерация справочной документации для команд kubectl](/ru/docs/contribute/generate-ref-docs/kubectl/) + +{{% /capture %}} diff --git a/content/ru/docs/contribute/generate-ref-docs/kubernetes-components.md b/content/ru/docs/contribute/generate-ref-docs/kubernetes-components.md new file mode 100644 index 0000000000..194a496574 --- /dev/null +++ b/content/ru/docs/contribute/generate-ref-docs/kubernetes-components.md @@ -0,0 +1,32 @@ +--- +title: Генерация справочных страниц для компонентов и инструментов Kubernetes +content_template: templates/task +weight: 120 +--- + +{{% capture overview %}} + +На этой странице показывается, как собирать справочные страницы компонентов и инструментов Kubernetes. + +{{% /capture %}} + +{{% capture prerequisites %}} + +Начните с [раздела с требованиями](/ru/docs/contribute/generate-ref-docs/quickstart/#подготовка-к-работе) в руководстве по быстрому старту. + +{{% /capture %}} + +{{% capture steps %}} + +Для генерации справочных страниц компонентов и инструментов Kubernetes изучите страницу [руководство по быстрому старту в справочной документации](/docs/contribute/generate-ref-docs/quickstart/). + +{{% /capture %}} + +{{% capture whatsnext %}} + +* [Краткое руководство по генерации справочной документации](/ru/docs/contribute/generate-ref-docs/quickstart/) +* [Генерация справочной документации для команд kubectl](/ru/docs/contribute/generate-ref-docs/kubectl/) +* [Генерация справочной документации для API Kubernetes](/ru/docs/contribute/generate-ref-docs/kubernetes-api/) +* [Участие в документации основного кода проекта Kubernetes](/ru/docs/contribute/generate-ref-docs/contribute-upstream/) + +{{% /capture %}} diff --git a/content/ru/docs/contribute/generate-ref-docs/quickstart.md b/content/ru/docs/contribute/generate-ref-docs/quickstart.md new file mode 100644 index 0000000000..8fce407be0 --- /dev/null +++ b/content/ru/docs/contribute/generate-ref-docs/quickstart.md @@ -0,0 +1,220 @@ +--- +title: Руководство по быстрому старту +content_template: templates/task +weight: 40 +--- + +{{% capture overview %}} + +На этой странице показано, как использовать скрипт `update-imported-docs` для генерации справочной документации Kubernetes. Скрипт автоматизирует настройку сборки и генерирует справочную документацию для выпуска. + +{{% /capture %}} + +{{% capture prerequisites %}} + +{{< include "prerequisites-ref-docs.md" >}} + +{{% /capture %}} + +{{% capture steps %}} + +## Получение репозитория документации + +Убедитесь, что ваша копия репозитория `website` обновлена в соответствии с оригинальным репозиторием `kubernetes/website`, а затем склонируйте вашу копию `website`. + +```shell +mkdir github.com +cd github.com +git clone git@github.com:/website.git +``` + +Определите базовую директорию вашей копии. Например, при выполнении предыдущего блока команд, то базовой директорией будет `website`. Далее в этом руководстве базовая директория в командах будет обозначаться ``. + +{{< note>}} +Если вы хотите изменить контент инструментов компонента и справочник API, посмотрите [руководство по участию в оригинальной документации](/docs/contribute/generate-ref-docs/contribute-upstream). +{{< /note >}} + +## Краткий обзор update-imported-docs + +Скрипт `update-imported-docs` находится в директории `/update-imported-docs/`. + +Этот скрипт генерирует следующие справочники: + +* Справочные страницы для компонентов и инструментов +* Справочник команды `kubectl` +* API-справочник Kubernetes + +Скрипт `update-imported-docs` генерирует справочную документацию Kubernetes из исходного кода Kubernetes. Скрипт создает временную директорию `/tmp` на вашем компьютере и клонирует необходимые репозитории в эту директорию: `kubernetes/kubernetes` и `kubernetes-sigs/reference-docs`. +Скрипт добавляет путь временной директории в переменную окружения `GOPATH`. +Кроме этого определяются три дополнительные переменные среды: + +* `K8S_RELEASE` +* `K8S_ROOT` +* `K8S_WEBROOT` + +Для успешного выполнения скрипта нужно передать два аргумента: + +* Конфигурационный файл в формате YAML (`reference.yml`) +* Версия выпуска, например, `1.17` + +Конфигурационный файл содержит поле `generate-command`. +Поле `generate-command` определяет ряд инструкций для сборки из `kubernetes-sigs/reference-docs/Makefile`. Переменная `K8S_RELEASE` определяет версию выпуска. + +Скрипт `update-imported-docs` выполняет следующие шаги: + +1. Клонирует репозитории, указанные в конфигурационном файле. Для генерации справочной документации клонируемым репозиторием по умолчанию является `kubernetes-sigs/reference-docs`. +1. Запускает команды в клонированных репозиториях для подготовки генератора документации, а затем генерирует файлы HTML и Markdown. +1. Копирует сгенерированные файлы HTML и Markdown в локальную копию репозитория `` в директории, указанные в конфигурационном файле. +1. Обновляет ссылки на команды `kubectl` из `kubectl`.md, ссылаясь на разделы в справочнике по команде `kubectl`. +. +Когда сгенерированные файлы находятся в вашем локальной копии репозитория ``, вы можете отправить их в виде [пулреквеста](/ru/docs/contribute/start/) в оригинальный репозиторий ``. + +## Формат конфигурационного файла + +Каждый конфигурационный файл может содержать несколько репозиториев, которые будут импортированы вместе. При необходимости вы можете вручную изменить конфигурационный файл. Вы можете создавать новые конфигурационные файлы для импорта других групп документации. +Ниже приведен пример файла конфигурации в формате YAML: + +```yaml +repos: +- name: community + remote: https://github.com/kubernetes/community.git + branch: master + files: + - src: contributors/devel/README.md + dst: docs/imported/community/devel.md + - src: contributors/guide/README.md + dst: docs/imported/community/guide.md +``` + +Каждый Markdown-файл документации, импортированный инструментом, должен соответствовать [руководству по оформлению документации](/docs/contribute/style/style-guide/). + +## Настройка reference.yml + +Откройте файл `/update-imported-docs/reference.yml` для редактирования. +Не изменяйте значение в поле `generate-command`, если не понимаете, как эта команда используется для сборки справочников. +Вам нет необходимости править файл `reference.yml`. В некоторых случаях изменения в исходном коде основного репозитория могут потребовать внесения изменений в конфигурационный файл (например, зависимости версий golang и изменения сторонних библиотек). +Если у вас возникли проблемы со сборкой, обратитесь за помощью к команде SIG-Docs на канале [#sig-docs в Slack Kubernetes](https://kubernetes.slack.com). + +{{< note >}} +Команда `generate-command` является необязательной, её можно использовать для выполнения указанной команды или небольшого скрипта, чтобы сгенерировать документацию из репозитория. +{{< /note >}} + +В файле `reference.yml` секция `files` содержат список полей `src` и `dst`. +В поле `src` хранится путь к сгенерированному Markdown-файлу в клонированной директории сборки `kubernetes-sigs/reference-docs`, а поле `dst` определяет, куда скопировать этот файл в клонированном репозитории `kubernetes/website`. +Например: + +```yaml +repos: +- name: reference-docs + remote: https://github.com/kubernetes-sigs/reference-docs.git + files: + - src: gen-compdocs/build/kube-apiserver.md + dst: content/en/docs/reference/command-line-tools-reference/kube-apiserver.md + ... +``` + +Обратите внимание, что в случае наличия множества файлов, которые нужно скопировать из одной директории в другую, то для это можете воспользоваться подстановочными знаки в поле `src`. Вам нужно указать имя директории в поле `dst`. +Например: + +```yaml + files: + - src: gen-compdocs/build/kubeadm*.md + dst: content/en/docs/reference/setup-tools/kubeadm/generated/ +``` + +## Запуск инструмента update-imported-docs + +Вы можете запустить инструмент `update-imported-docs` следующим образом: + +```shell +cd /update-imported-docs +./update-imported-docs +``` + +Например: + +```shell +./update-imported-docs reference.yml 1.17 +``` + + +## Исправление ссылок + +Конфигурационный файл `release.yml` содержит инструкции по исправлению относительных ссылок +Для исправления относительных ссылок в импортированных файлах, установите для свойство `gen-absolute-links` в значение `true`. В качестве примера можете посмотреть файл [`release.yml`](https://github.com/kubernetes/website/blob/master/update-imported-docs/release.yml). + +## Внесение изменений в kubernetes/website + +Список сгенерированных и скопированных файлов в `` можно узнать, как показано ниже: + +```shell +cd +git status +``` + +В выводе команды будут показаны новые и измененные файлы. Полученный вывод может отличаться в зависимости от изменений основного исходного кода. + +### Сгенерированные файлы инструментом + +``` +content/en/docs/reference/command-line-tools-reference/cloud-controller-manager.md +content/en/docs/reference/command-line-tools-reference/kube-apiserver.md +content/en/docs/reference/command-line-tools-reference/kube-controller-manager.md +content/en/docs/reference/command-line-tools-reference/kube-proxy.md +content/en/docs/reference/command-line-tools-reference/kube-scheduler.md +content/en/docs/reference/setup-tools/kubeadm/generated/kubeadm.md +content/en/docs/reference/kubectl/kubectl.md +``` + +### Сгенерированные справочные файлы для команды kubectl + +``` +static/docs/reference/generated/kubectl/kubectl-commands.html +static/docs/reference/generated/kubectl/navData.js +static/docs/reference/generated/kubectl/scroll.js +static/docs/reference/generated/kubectl/stylesheet.css +static/docs/reference/generated/kubectl/tabvisibility.js +static/docs/reference/generated/kubectl/node_modules/bootstrap/dist/css/bootstrap.min.css +static/docs/reference/generated/kubectl/node_modules/highlight.js/styles/default.css +static/docs/reference/generated/kubectl/node_modules/jquery.scrollto/jquery.scrollTo.min.js +static/docs/reference/generated/kubectl/node_modules/jquery/dist/jquery.min.js +static/docs/reference/generated/kubectl/css/font-awesome.min.css +``` + +### Сгенерированные файлы и директории для справочника API Kubernetes + +``` +static/docs/reference/generated/kubernetes-api/v1.17/index.html +static/docs/reference/generated/kubernetes-api/v1.17/js/navData.js +static/docs/reference/generated/kubernetes-api/v1.17/js/scroll.js +static/docs/reference/generated/kubernetes-api/v1.17/js/query.scrollTo.min.js +static/docs/reference/generated/kubernetes-api/v1.17/css/font-awesome.min.css +static/docs/reference/generated/kubernetes-api/v1.17/css/bootstrap.min.css +static/docs/reference/generated/kubernetes-api/v1.17/css/stylesheet.css +static/docs/reference/generated/kubernetes-api/v1.17/fonts/FontAwesome.otf +static/docs/reference/generated/kubernetes-api/v1.17/fonts/fontawesome-webfont.eot +static/docs/reference/generated/kubernetes-api/v1.17/fonts/fontawesome-webfont.svg +static/docs/reference/generated/kubernetes-api/v1.17/fonts/fontawesome-webfont.ttf +static/docs/reference/generated/kubernetes-api/v1.17/fonts/fontawesome-webfont.woff +static/docs/reference/generated/kubernetes-api/v1.17/fonts/fontawesome-webfont.woff2 +``` + +Выполните `git add` и `git commit`, чтобы зафиксировать файлы в репозитории. + +## Создание пулреквеста + +Создайте пулреквест в репозиторий `kubernetes/website`. Отслеживайте свой пулреквест и при необходимости отвечайте на комментарии. Не забывайте отслеживать активность в собственном пулреквесте до тех пор, пока он не будет принят. + +Спустя несколько минут после принятия вашего пулреквеста, обновленные темы справочника будут отображены в [документации](/ru/docs/home/). + +{{% /capture %}} + +{{% capture whatsnext %}} + +Для генерации отдельной взятой справочной документации путём ручной настройки необходимых репозиториев сборки и выполнении скриптов сборки обратитесь к следующим руководствам: + +* [Генерация справочной документации для компонентов и инструментов Kubernetes](/ru/docs/contribute/generate-ref-docs/kubernetes-components/) +* [Генерация справочной документации для команд kubectl](/ru/docs/contribute/generate-ref-docs/kubectl/) +* [Генерация справочной документации для API Kubernetes](/ru/docs/contribute/generate-ref-docs/kubernetes-api/) + +{{% /capture %}} diff --git a/content/ru/docs/templates/feature-state-alpha.txt b/content/ru/docs/templates/feature-state-alpha.txt new file mode 100644 index 0000000000..ae3c2e8532 --- /dev/null +++ b/content/ru/docs/templates/feature-state-alpha.txt @@ -0,0 +1,7 @@ +В настоящее время данная функциональность находится в состоянии *alpha*, это означает, что: + +* Названия версий включают надпись "alpha" (например, v1alpha1). +* Могут быть баги. Работа с этой функциональностью может привести к ошибкам. Поэтому по умолчанию она отключена. +* Поддержка функциональности может быть прекращена в любое время без предупреждения. +* API может быть несовместим с более поздними версиями без предупреждения. +* Рекомендуется для использования только в тестировочных кластерах с коротким жизненным циклом из-за высокого риска наличия багов и отсутствия долгосрочной поддержки. \ No newline at end of file diff --git a/content/ru/docs/templates/feature-state-beta.txt b/content/ru/docs/templates/feature-state-beta.txt new file mode 100644 index 0000000000..7e4f0d91b6 --- /dev/null +++ b/content/ru/docs/templates/feature-state-beta.txt @@ -0,0 +1,8 @@ +В настоящее время данная функциональность находится в состоянии *beta*, это означает, что: + +* Названия версий включают надпись "beta" (например, v2beta3). +* Код хорошо протестирован. Активация этой функциональности — безопасно. Поэтому она включена по умолчанию. +* Поддержка функциональности в целом не будет прекращена, хотя детали могут измениться. +* Схема и/или семантика объектов может стать несовместимой с более поздними бета-версиями или стабильными выпусками. Когда это случится, мы даим инструкции по миграции на следующую версию. Это обновление может включать удаление, редактирование и повторного создание API-объектов. Этот процесс может потребовать тщательного анализа. Кроме этого, он может привести к простою приложений, которые используют данную функциональность. +* Рекомендуется только для неосновного производственного использования из-за риска возникновения возможных несовместимых изменений с будущими версиями. Если у вас есть несколько кластеров, которые возможно обновить независимо, вы можете снять это ограничение. +* **Пожалуйста, попробуйте в действии бета-версии функциональности и поделитесь своими впечатлениями! После того, как функциональность выйдет из бета-версии, нам может быть нецелесообразно что-то дальше изменять.** diff --git a/content/ru/docs/templates/feature-state-deprecated.txt b/content/ru/docs/templates/feature-state-deprecated.txt new file mode 100644 index 0000000000..c3ef2b815c --- /dev/null +++ b/content/ru/docs/templates/feature-state-deprecated.txt @@ -0,0 +1,2 @@ + +Данная функциональность объявлена *устаревшей*. Для получения дополнительной информации об этом состоянии перейдите на страницу [Политика управления устаревшими версиями Kubernetes](/docs/reference/deprecation-policy/). \ No newline at end of file diff --git a/content/ru/docs/templates/feature-state-stable.txt b/content/ru/docs/templates/feature-state-stable.txt new file mode 100644 index 0000000000..4e13386e62 --- /dev/null +++ b/content/ru/docs/templates/feature-state-stable.txt @@ -0,0 +1,5 @@ + +Данная функциональность является *стабильной*, это означает, что: + +* Версии именуются по шаблону vX, где X — это целое число. +* Стабильные версии функциональности будут доступны во многих последующих выпусках. \ No newline at end of file diff --git a/content/ru/docs/templates/index.md b/content/ru/docs/templates/index.md new file mode 100644 index 0000000000..9d7bccd143 --- /dev/null +++ b/content/ru/docs/templates/index.md @@ -0,0 +1,13 @@ +--- +headless: true + +resources: +- src: "*alpha*" + title: "alpha" +- src: "*beta*" + title: "beta" +- src: "*deprecated*" + title: "deprecated" +- src: "*stable*" + title: "stable" +--- diff --git a/content/ru/includes/prerequisites-ref-docs.md b/content/ru/includes/prerequisites-ref-docs.md new file mode 100644 index 0000000000..bc43abc19c --- /dev/null +++ b/content/ru/includes/prerequisites-ref-docs.md @@ -0,0 +1,20 @@ + +### Требования: + +- Наличие компьютера под управлением ОС Linux или macOS. + +- Установленные следующие инструменты: + + - [Python](https://www.python.org/downloads/) версии 3.7.x + - [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) + - [Golang](https://golang.org/doc/install) версии 1.13+ + - [Pip](https://pypi.org/project/pip/), который потребуется для установки PyYAML + - [PyYAML](https://pyyaml.org/) версии 5.1.2 + - [make](https://www.gnu.org/software/make/) + - [gcc compiler/linker](https://gcc.gnu.org/) + - [Docker](https://docs.docker.com/engine/installation/) (требуется только для справочника команды `kubectl`) + +- В переменной окружении `PATH` должны прописаны пути до необходимых инструментов сборки, таких как `Go` и `python`. + +- Вам нужно знать, как создать пулреквест в репозитории на GitHub. + Для этого нужно создание собственной копии репозитория. Для получения дополнительной информации смотрите раздел [Работа из локальной копии](/ru/docs/contribute/intermediate/#работа-из-локальной-копии). diff --git a/i18n/ru.toml b/i18n/ru.toml index 8e8b1c6275..19b8e21a1a 100644 --- a/i18n/ru.toml +++ b/i18n/ru.toml @@ -13,7 +13,7 @@ other = "Цели" other = "Очистка" [prerequisites_heading] -other = "Прежде чем вы начнете" +other = "Подготовка к работе" [whatsnext_heading] other = "Что дальше" From a5f2cece61fcd3de3a70d87aec05cf9f9f6964a7 Mon Sep 17 00:00:00 2001 From: Utwo Date: Mon, 24 Feb 2020 21:55:36 +0200 Subject: [PATCH 17/24] Fix form allignment in mobile view. (#17007) * Fix form alignement in mobile view * Remove margin left * Add mare space between input and button --- layouts/index.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/layouts/index.html b/layouts/index.html index f90e1d2439..d3fd401d78 100644 --- a/layouts/index.html +++ b/layouts/index.html @@ -14,6 +14,7 @@ @@ -27,7 +28,7 @@ -
+
{{ T "main_kubeweekly_past_link" }}
From b30415f6f986e5c30c7aa74849582d96bade0773 Mon Sep 17 00:00:00 2001 From: Tim Bannister Date: Tue, 25 Feb 2020 01:13:36 +0000 Subject: [PATCH 18/24] Note CronJob timezone comes from system timezone (#19269) * Note CronJob timezone comes from system timezone The timezone for the kube-controller-manager (or if that's broken apart, the cronjob controller) determines when CronJobs are scheduled. This reverts commit bad124b857a2927b75be739646244aacc5190580. * Expand details about CronJob timezone --- .../docs/concepts/workloads/controllers/cron-jobs.md | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/content/en/docs/concepts/workloads/controllers/cron-jobs.md b/content/en/docs/concepts/workloads/controllers/cron-jobs.md index 24492cd18c..c56467322b 100644 --- a/content/en/docs/concepts/workloads/controllers/cron-jobs.md +++ b/content/en/docs/concepts/workloads/controllers/cron-jobs.md @@ -17,9 +17,14 @@ A _Cron Job_ creates [Jobs](/docs/concepts/workloads/controllers/jobs-run-to-com One CronJob object is like one line of a _crontab_ (cron table) file. It runs a job periodically on a given schedule, written in [Cron](https://en.wikipedia.org/wiki/Cron) format. -{{< note >}} -All **CronJob** `schedule:` times are denoted in UTC. -{{< /note >}} +{{< caution >}} +All **CronJob** `schedule:` times are based on the timezone of the +{{< glossary_tooltip term_id="kube-controller-manager" text="kube-controller-manager" >}}. + +If your control plane runs the kube-controller-manager in Pods or bare +containers, the timezone set for the kube-controller-manager container determines the timezone +that the cron job controller uses. +{{< /caution >}} When creating the manifest for a CronJob resource, make sure the name you provide is no longer than 52 characters. This is because the CronJob controller will automatically From 63280bb7a5abe01e147cda7a0f3ac8df2c178d8f Mon Sep 17 00:00:00 2001 From: Bouimadaghene Date: Tue, 25 Feb 2020 09:48:48 +0100 Subject: [PATCH 19/24] fix typos (#19291) --- content/fr/docs/setup/custom-cloud/kubespray.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/fr/docs/setup/custom-cloud/kubespray.md b/content/fr/docs/setup/custom-cloud/kubespray.md index 0568cb2a1a..926295b7ac 100644 --- a/content/fr/docs/setup/custom-cloud/kubespray.md +++ b/content/fr/docs/setup/custom-cloud/kubespray.md @@ -96,7 +96,7 @@ Kubespray fournit des playbooks supplémentaires qui permettent de gérer votre ### Mise à l'échelle du cluster -Vous pouvez ajouter des noeuds à votre cluter en exécutant le playbook `scale`. Pour plus d'informations se référer à [Adding nodes](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/getting-started.md#adding-nodes). +Vous pouvez ajouter des noeuds à votre cluster en exécutant le playbook `scale`. Pour plus d'informations se référer à [Adding nodes](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/getting-started.md#adding-nodes). vous pouvez retirer des noeuds de votre cluster en exécutant le playbook `remove-node`. Se référer à [Remove nodes](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/getting-started.md#remove-nodes). ### Mise à jour du cluster From fa112da3781165fd64b36e735db313acaea923d2 Mon Sep 17 00:00:00 2001 From: LFA Date: Tue, 25 Feb 2020 09:50:48 +0100 Subject: [PATCH 20/24] fix typo (#19298) --- content/fr/docs/reference/glossary/kube-controller-manager.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/fr/docs/reference/glossary/kube-controller-manager.md b/content/fr/docs/reference/glossary/kube-controller-manager.md index 6481dd7d4e..2d45431e45 100755 --- a/content/fr/docs/reference/glossary/kube-controller-manager.md +++ b/content/fr/docs/reference/glossary/kube-controller-manager.md @@ -16,4 +16,4 @@ tags: Logiquement, chaque {{< glossary_tooltip text="contrôleur" term_id="controller" >}} est un processus à part mais, -pour réduire la compléxité, les contrôleurs sont tous compilés dans un seul binaire et s'exécutent dans un seul processus. +pour réduire la complexité, les contrôleurs sont tous compilés dans un seul binaire et s'exécutent dans un seul processus. From d93595e7fc9a2fbf8975cd9ade76cac89dbb8bee Mon Sep 17 00:00:00 2001 From: Yan Wei Date: Tue, 25 Feb 2020 03:12:48 -0600 Subject: [PATCH 21/24] Add a missing '-' to names.md (#18115) Add a missing '-' to names.md --- content/zh/docs/concepts/overview/working-with-objects/names.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/zh/docs/concepts/overview/working-with-objects/names.md b/content/zh/docs/concepts/overview/working-with-objects/names.md index cff7f34e4a..1b139eae76 100644 --- a/content/zh/docs/concepts/overview/working-with-objects/names.md +++ b/content/zh/docs/concepts/overview/working-with-objects/names.md @@ -45,7 +45,7 @@ By convention, the names of Kubernetes resources should be up to maximum length For example, here’s the configuration file with a Pod name as `nginx-demo` and a Container name as `nginx`: --> -例如,下面是一个配置文件,Pod 名为 `nginx demo`,容器名为 `nginx`: +例如,下面是一个配置文件,Pod 名为 `nginx-demo`,容器名为 `nginx`: ```yaml apiVersion: v1 From 3ecfc9f47fc99ec983bbaed54a36dcc32f1a9237 Mon Sep 17 00:00:00 2001 From: Sascha Grunert Date: Tue, 25 Feb 2020 14:42:49 +0100 Subject: [PATCH 22/24] Fix wrong CHANGELOG locations (#19089) We prefixed the CHANGELOG path in k/k with `CHANGELOG/`, which should reflect every part of the website as well. Signed-off-by: Sascha Grunert --- content/de/docs/reference/kubectl/cheatsheet.md | 2 +- .../tasks/administer-cluster/kubeadm/kubeadm-upgrade.md | 2 +- content/fr/docs/reference/kubectl/cheatsheet.md | 2 +- content/ja/docs/reference/kubectl/cheatsheet.md | 2 +- content/ko/docs/reference/kubectl/cheatsheet.md | 2 +- content/vi/docs/reference/kubectl/cheatsheet.md | 2 +- content/zh/docs/reference/kubectl/cheatsheet.md | 4 ++-- .../tasks/administer-cluster/kubeadm/kubeadm-upgrade.md | 6 +++--- layouts/shortcodes/latest-release-notes.html | 3 +++ 9 files changed, 14 insertions(+), 11 deletions(-) create mode 100644 layouts/shortcodes/latest-release-notes.html diff --git a/content/de/docs/reference/kubectl/cheatsheet.md b/content/de/docs/reference/kubectl/cheatsheet.md index 507fbbd50d..c68fc183b5 100644 --- a/content/de/docs/reference/kubectl/cheatsheet.md +++ b/content/de/docs/reference/kubectl/cheatsheet.md @@ -180,7 +180,7 @@ kubectl get events --sort-by=.metadata.creationTimestamp ## Ressourcen aktualisieren -Ab Version 1.11 ist das `rolling-update` veraltet (Lesen Sie [CHANGELOG-1.11.md](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.11.md) für weitere Informationen), verwenden Sie stattdessen `rollout`. +Ab Version 1.11 ist das `rolling-update` veraltet (Lesen Sie [CHANGELOG-1.11.md](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.11.md) für weitere Informationen), verwenden Sie stattdessen `rollout`. ```bash kubectl set image deployment/frontend www=image:v2 # Fortlaufende Aktualisierung der "www" Container der "Frontend"-Bereitstellung, Aktualisierung des Images diff --git a/content/en/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade.md b/content/en/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade.md index 73878bbd9d..ce898371fb 100644 --- a/content/en/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade.md +++ b/content/en/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade.md @@ -30,7 +30,7 @@ The upgrade workflow at high level is the following: - You need to have a kubeadm Kubernetes cluster running version 1.16.0 or later. - [Swap must be disabled](https://serverfault.com/questions/684771/best-way-to-disable-swap-in-linux). - The cluster should use a static control plane and etcd pods or external etcd. -- Make sure you read the [release notes](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.17.md) carefully. +- Make sure you read the [release notes]({{< latest-release-notes >}}) carefully. - Make sure to back up any important components, such as app-level state stored in a database. `kubeadm upgrade` does not touch your workloads, only components internal to Kubernetes, but backups are always a best practice. diff --git a/content/fr/docs/reference/kubectl/cheatsheet.md b/content/fr/docs/reference/kubectl/cheatsheet.md index f9ced10b4b..0c320717a2 100644 --- a/content/fr/docs/reference/kubectl/cheatsheet.md +++ b/content/fr/docs/reference/kubectl/cheatsheet.md @@ -197,7 +197,7 @@ kubectl get events --sort-by=.metadata.creationTimestamp ## Mise à jour de ressources -Depuis la version 1.11, `rolling-update` a été déprécié (voir [CHANGELOG-1.11.md](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.11.md)), utilisez plutôt `rollout`. +Depuis la version 1.11, `rolling-update` a été déprécié (voir [CHANGELOG-1.11.md](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.11.md)), utilisez plutôt `rollout`. ```bash kubectl set image deployment/frontend www=image:v2 # Rolling update du conteneur "www" du déploiement "frontend", par mise à jour de son image diff --git a/content/ja/docs/reference/kubectl/cheatsheet.md b/content/ja/docs/reference/kubectl/cheatsheet.md index 044e16bffa..9380b50c07 100644 --- a/content/ja/docs/reference/kubectl/cheatsheet.md +++ b/content/ja/docs/reference/kubectl/cheatsheet.md @@ -202,7 +202,7 @@ kubectl get events --sort-by=.metadata.creationTimestamp ## リソースのアップデート -version 1.11で`rolling-update`は廃止されました、代わりに`rollout`コマンドをお使いください(詳しくはこちらをご覧ください [CHANGELOG-1.11.md](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.11.md))。 +version 1.11で`rolling-update`は廃止されました、代わりに`rollout`コマンドをお使いください(詳しくはこちらをご覧ください [CHANGELOG-1.11.md](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.11.md))。 ```bash kubectl set image deployment/frontend www=image:v2 # frontend Deploymentのwwwコンテナイメージをv2にローリングアップデートします diff --git a/content/ko/docs/reference/kubectl/cheatsheet.md b/content/ko/docs/reference/kubectl/cheatsheet.md index 3ea2a1e60b..071669a6c8 100644 --- a/content/ko/docs/reference/kubectl/cheatsheet.md +++ b/content/ko/docs/reference/kubectl/cheatsheet.md @@ -198,7 +198,7 @@ kubectl diff -f ./my-manifest.yaml ## 리소스 업데이트 -1.11 버전에서 `rolling-update`는 사용 중단(deprecated)되었다. ([CHANGELOG-1.11.md](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.11.md) 참고) 대신 `rollout`를 사용한다. +1.11 버전에서 `rolling-update`는 사용 중단(deprecated)되었다. ([CHANGELOG-1.11.md](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.11.md) 참고) 대신 `rollout`를 사용한다. ```bash kubectl set image deployment/frontend www=image:v2 # "frontend" 디플로이먼트의 "www" 컨테이너 이미지를 업데이트하는 롤링 업데이트 diff --git a/content/vi/docs/reference/kubectl/cheatsheet.md b/content/vi/docs/reference/kubectl/cheatsheet.md index 1455b0e892..261b45f824 100644 --- a/content/vi/docs/reference/kubectl/cheatsheet.md +++ b/content/vi/docs/reference/kubectl/cheatsheet.md @@ -197,7 +197,7 @@ kubectl get events --sort-by=.metadata.creationTimestamp ## Cập nhật các tài nguyên -Theo như phiên bản 1.11, `rolling-update` đã không còn được dùng nữa (xem [CHANGELOG-1.11.md](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.11.md)), sử dụng `rollout` thay thế. +Theo như phiên bản 1.11, `rolling-update` đã không còn được dùng nữa (xem [CHANGELOG-1.11.md](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.11.md)), sử dụng `rollout` thay thế. ```bash kubectl set image deployment/frontend www=image:v2 # Cập nhận container "www" của deployment "frontend", cập nhật image diff --git a/content/zh/docs/reference/kubectl/cheatsheet.md b/content/zh/docs/reference/kubectl/cheatsheet.md index 75b7c2f7be..43ded7f976 100644 --- a/content/zh/docs/reference/kubectl/cheatsheet.md +++ b/content/zh/docs/reference/kubectl/cheatsheet.md @@ -358,8 +358,8 @@ kubectl get events --sort-by=.metadata.creationTimestamp ## 更新资源 - -从版本 1.11 开始,`rolling-update` 已被弃用(参见 [CHANGELOG-1.11.md](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.11.md)),请使用 `rollout` 代替。 + +从版本 1.11 开始,`rolling-update` 已被弃用(参见 [CHANGELOG-1.11.md](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.11.md)),请使用 `rollout` 代替。 - 您需要有一个由 `kubeadm` 创建并运行着 1.16.0 或更高版本的 Kubernetes 集群。 - [禁用 Swap](https://serverfault.com/questions/684771/best-way-to-disable-swap-in-linux)。 - 集群应使用静态的控制平面和 etcd pod 或者 外部 etcd。 -- 务必仔细认真阅读[发行说明](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.16.md)。 +- 务必仔细认真阅读[发行说明]({{< latest-release-notes >}})。 - 务必备份所有重要组件,例如存储在数据库中应用层面的状态。 `kubeadm upgrade` 不会影响您的工作负载,只会涉及 Kubernetes 内部的组件,但备份终究是好的。 @@ -666,4 +666,4 @@ To recover from a bad state, you can also run `kubeadm upgrade --force` without `kubeadm upgrade node experimental-control-plane` 在其他控制平面节点上执行以下操作: - 从集群中获取 kubeadm `ClusterConfiguration`。 - 可选地备份 kube-apiserver 证书。 -- 升级控制平面组件的静态 Pod 清单。 \ No newline at end of file +- 升级控制平面组件的静态 Pod 清单。 diff --git a/layouts/shortcodes/latest-release-notes.html b/layouts/shortcodes/latest-release-notes.html new file mode 100644 index 0000000000..3f380408ee --- /dev/null +++ b/layouts/shortcodes/latest-release-notes.html @@ -0,0 +1,3 @@ +{{- $latestVersion := site.Params.latest }} +{{- $latestReleaseNotes := print "https://git.k8s.io/kubernetes/CHANGELOG/CHANGELOG-" (replace $latestVersion "v" "") ".md" }} +{{- $latestReleaseNotes }} From 119ba0d87ab852ec92484462ad2103650177321b Mon Sep 17 00:00:00 2001 From: Victor Shinya Date: Tue, 25 Feb 2020 11:42:48 -0300 Subject: [PATCH 23/24] Remove IBM course (#18836) Since January 2020, IBM removed all microservice courses and specialization on Coursera. --- content/en/docs/tutorials/online-training/overview.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/content/en/docs/tutorials/online-training/overview.md b/content/en/docs/tutorials/online-training/overview.md index 7112a8b3bf..e76b22481a 100644 --- a/content/en/docs/tutorials/online-training/overview.md +++ b/content/en/docs/tutorials/online-training/overview.md @@ -39,8 +39,6 @@ Here are some of the sites that offer online training for Kubernetes: * [Hands-on Introduction to Kubernetes (Instruqt)](https://play.instruqt.com/public/topics/getting-started-with-kubernetes) -* [IBM Cloud: Deploying Microservices with Kubernetes (Coursera)](https://www.coursera.org/learn/deploy-micro-kube-ibm-cloud) - * [Introduction to Kubernetes (edX)](https://www.edx.org/course/introduction-kubernetes-linuxfoundationx-lfs158x) * [Kubernetes Essentials with Hands-On Labs (Linux Academy)] (https://linuxacademy.com/linux/training/course/name/kubernetes-essentials) From 3f020e5f5c47176511fbaa90950a9870174a510f Mon Sep 17 00:00:00 2001 From: Art Date: Tue, 25 Feb 2020 11:48:49 -0500 Subject: [PATCH 24/24] Update IBM Cloud registry for IAM (#19303) Updates the topic to describe how to use IAM to authorize clusters to pull images from registry. --- content/en/docs/concepts/containers/images.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/content/en/docs/concepts/containers/images.md b/content/en/docs/concepts/containers/images.md index e22a742d36..94f69ba6af 100644 --- a/content/en/docs/concepts/containers/images.md +++ b/content/en/docs/concepts/containers/images.md @@ -67,6 +67,7 @@ Credentials can be provided in several ways: - use IAM roles and policies to control access to OCIR repositories - Using Azure Container Registry (ACR) - Using IBM Cloud Container Registry + - use IAM roles and policies to grant access to IBM Cloud Container Registry - Configuring Nodes to Authenticate to a Private Registry - all pods can read any configured private registries - requires node configuration by cluster administrator @@ -148,11 +149,11 @@ Once you have those variables filled in you can [configure a Kubernetes Secret and use it to deploy a Pod](/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod). ### Using IBM Cloud Container Registry -IBM Cloud Container Registry provides a multi-tenant private image registry that you can use to safely store and share your Docker images. By default, images in your private registry are scanned by the integrated Vulnerability Advisor to detect security issues and potential vulnerabilities. Users in your IBM Cloud account can access your images, or you can create a token to grant access to registry namespaces. +IBM Cloud Container Registry provides a multi-tenant private image registry that you can use to safely store and share your images. By default, images in your private registry are scanned by the integrated Vulnerability Advisor to detect security issues and potential vulnerabilities. Users in your IBM Cloud account can access your images, or you can use IAM roles and policies to grant access to IBM Cloud Container Registry namespaces. -To install the IBM Cloud Container Registry CLI plug-in and create a namespace for your images, see [Getting started with IBM Cloud Container Registry](https://cloud.ibm.com/docs/services/Registry?topic=registry-getting-started). +To install the IBM Cloud Container Registry CLI plug-in and create a namespace for your images, see [Getting started with IBM Cloud Container Registry](https://cloud.ibm.com/docs/Registry?topic=registry-getting-started). -You can use the IBM Cloud Container Registry to deploy containers from [IBM Cloud public images](https://cloud.ibm.com/docs/services/Registry?topic=registry-public_images) and your private images into the `default` namespace of your IBM Cloud Kubernetes Service cluster. To deploy a container into other namespaces, or to use an image from a different IBM Cloud Container Registry region or IBM Cloud account, create a Kubernetes `imagePullSecret`. For more information, see [Building containers from images](https://cloud.ibm.com/docs/containers?topic=containers-images). +If you are using the same account and region, you can deploy images that are stored in IBM Cloud Container Registry into the default namespace of your IBM Cloud Kubernetes Service cluster without any additional configuration, see [Building containers from images](https://cloud.ibm.com/docs/containers?topic=containers-images). For other configuration options, see [Understanding how to authorize your cluster to pull images from a registry](https://cloud.ibm.com/docs/containers?topic=containers-registry#cluster_registry_auth). ### Configuring Nodes to Authenticate to a Private Registry