Files
website/content/id/docs/concepts/configuration/manage-compute-resources-container.md
Vineeth Pothulapati 63f30b086a Sync up between dev-1.18 and master branches (#19055)
* Fixed outdated ECR credential debug message (#18631)

* Fixed outdated ECR credential debug message

The log message for troubleshooting kubelet auto fetching ECR credentils issue has been changed (noticed since 1.14), and the new message reads like this when verbose log level is set to 3:

      - `aws_credentials.go:109] unable to get ECR credentials from cache, checking ECR API`
      - `aws_credentials.go:116] Got ECR credentials from ECR API for <Your ECR AWS Account ID>.dkr.ecr.us-east-1.amazonaws.com`

This is based on the kubelet source code: 
    https://github.com/kubernetes/kubernetes/blob/release-1.14/pkg/credentialprovider/aws/aws_credentials.go#L91

This PR is to fix this and to avoid confusion for more people who are troubleshooting the kubelet ECR issue.

* Update content/en/docs/concepts/containers/images.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

Co-authored-by: Tim Bannister <tim@scalefactory.com>

* Fix deployment name in docs/tasks/administer-cluster/dns-horizontal-autoscaling.md (#18772)

* ru/docs/tutorials/hello-minikube.md: sync with English translation. (#18687)

* content/ru/docs/concepts/_index.md: use English names for kinds. (#18613)

* Fix French typo in "when" section (#18786)

* First Japanese l10n work for release-1.16 (#18790)

* Translate concepts/services-networking/connect-applications-service/ into Japanese (#17710)

* Translate concepts/services-networking/connect-applications-service/ into Japanese

* Apply review

* Translate content/ja/docs/tasks/_index.md into Japanese (#17789)

* add task index

* huge page

* ja-docs: Update kops Installation Steps (#17804)

* Update /ja/docs/tasks/tools/install-minikube/ (#17711)

* Update /ja/docs/tasks/tools/install-minikube/

* Apply review

* Apply review

* Update content/ja/docs/tasks/tools/install-minikube.md

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/docs/tasks/tools/install-minikube.md

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Translate tasks/configure-pod-container/assign-cpu-resource/ in Japanese (#16160)

* copy from content/en/docs/tasks/configure-pod-container/ to ja

* translate assign-cpu-resource.md in Japanese

* Update content/ja/docs/tasks/configure-pod-container/assign-cpu-resource.md

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/docs/tasks/configure-pod-container/assign-cpu-resource.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update assign-cpu-resource.md

ここの *request* と *limit* はほかの文中の単語とは異なり、YAMLのfieldを表すため、訳さないでおく

* fix translation

"Pod scheduling is based on requests." の箇所。
requestsに基づいているのは事実だが、直訳されたときになにを指すのかあいまいなので、対象を具体的に記述

* Translate concepts/workloads/controllers/deployment/ in Japanese #14848 (#17794)

* ja-trans: Translate concepts/workloads/controllers/deployment/ into Japanese (#14848)

* ja-trans: Improve Japanese translation in concepts/workloads/controllers/deployment/ (#14848)

* ja-trans: Improve Japanese translation in concepts/workloads/controllers/deployment/ (#14848)

* ja-trans: Improve Japanese translation in concepts/workloads/controllers/deployment/ (#14848)

* little fix (#18135)

* update index (#18136)

* Update /ja/docs/setup/_index.md (#18139)

* Update /ja/docs/tasks/tools/install-kubectl/ (#18137)

* update /docs/ja/tasks/tools/install-kubectl/

* fix mongon

* apply reveiw

* Update /ja/docs/reference/command-line-tools-reference/feature-gates/ (#18141)

* Update feature agete

* tidy up feature gates list

* translate new lines

* table caption

* blank

* する -> します

* apply review

* fix broken link

* Update content/ja/docs/reference/command-line-tools-reference/feature-gates.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* update translation

* remove line

* Update content/ja/docs/reference/command-line-tools-reference/feature-gates.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* rollpack

* Update /ja/docs/concepts/services-networking/service/ (#18138)

* update /ja/docs/concepts/services-networking/service/

* Update content/ja/docs/concepts/services-networking/service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/concepts/services-networking/service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/concepts/services-networking/service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/concepts/services-networking/service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* consider Endpoints as a Kubernetes resource

* full

* Update content/ja/docs/concepts/_index.md (#18145)

* Update concepts

* control plane

* apply review

* fix bold (#18165)

* Update /ja/docs/concepts/overview/components.md (#18153)

* update /ja/docs/concepts/overview/components.md

* some japanese docs are already there

* translate prepend

* apply upstream changes (#18278)

* Translate concepts/services-networking/ingress into Japanese #17741 (#18234)

* ja-trans: Translate concepts/services-networking/ingress into Japanese (#17741)

* ja-trans: Improve Japanese translation in concepts/services-networking/ingress (#17741)

* ja-trans: Improve Japanese translation in concepts/services-networking/ingress (#17741)

* Update pod overview in Japanese (#18277)

* Update pod-overview

* Update content/ja/docs/concepts/workloads/pods/pod-overview.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/concepts/workloads/pods/pod-overview.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/concepts/workloads/pods/pod-overview.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/concepts/workloads/pods/pod-overview.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/concepts/workloads/pods/pod-overview.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/concepts/workloads/pods/pod-overview.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* ノード

* Update content/ja/docs/concepts/workloads/pods/pod-overview.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/concepts/workloads/pods/pod-overview.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

Co-authored-by: Naoki Oketani <okepy.naoki@gmail.com>

* Translate concepts/scheduling/scheduler-perf-tuning/ in Japanese #17119 (#17796)

* ja-trans: Translate concepts/scheduling/scheduler-perf-tuning/ into Japanese (#17119)

* ja-trans: Improve Japanese translation in concepts/scheduling/scheduler-perf-tuning/ (#17119)

* ja-trans: Improve Japanese translation in concepts/scheduling/scheduler-perf-tuning/ (#17119)

* ja-trans:conetent/ja/casestudies/nav (#18450)

* Translate tasks/debug-application-cluster/debug-service/ in Japanese (#18395)

* Translate tasks/debug-application-cluster/debug-service/ in Japanese

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Change all `Pods` to `Pod` and `Endpoints` to `Endpoint`

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Updated content pointed out in review

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Apply suggestions from code review

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Apply suggestions from review

* Apply suggestions form review

* Apply suggestions from review

* Apply suggestions from review

* Apply suggestions from code review

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/tasks/debug-application-cluster/debug-service.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

Co-authored-by: inductor <kohei.ota@zozo.com>
Co-authored-by: Naoki Oketani <okepy.naoki@gmail.com>

* Translate concepts/extend-kubernetes/api-extension/custom-resources/ into Japanese (#18200)

* Translate concepts/extend-kubernetes/api-extension/custom-resources/ into Japanese

* Apply suggestions from code review between L1 an L120 by oke-py

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Apply suggestions from code review by oke-py

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update CustomResourceDefinition not to localize into Japanese

* Revert the link to customresourcedefinitions to English

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Apply suggestions from code review by oke-py and inductor

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>
Co-Authored-By: inductor <kohei.ota@zozo.com>

* Apply a suggestion from review by inductor

* Apply a suggestion from code review by oke-py

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

Co-authored-by: Naoki Oketani <okepy.naoki@gmail.com>
Co-authored-by: inductor <kohei.ota@zozo.com>

* Translate tasks/configure-pod-container/quality-service-pod/ into Japanese (#16173)

* copy from content/en/docs/tasks/configure-pod-container/quality-service-pod.md to Ja

* Translate tasks/configure-pod-container/quality-service-pod/ into Japanese

Guaranteed, Burstable, BestEffortは用語として存在するので訳さない

Signed-off-by: Takuma Hashimoto <takumaxd+github@gmail.com>

* Update content/ja/docs/tasks/configure-pod-container/quality-service-pod.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/tasks/configure-pod-container/quality-service-pod.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/tasks/configure-pod-container/quality-service-pod.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* Update content/ja/docs/tasks/configure-pod-container/quality-service-pod.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

Co-authored-by: Naoki Oketani <okepy.naoki@gmail.com>

* Translate content/ja/docs/reference/kubectl/cheatsheet.md (#17739) (#18285)

* Translate content/ja/docs/reference/kubectl/cheatsheet.md (#17739)

* Translated kubectl cheet sheet.

* Fix typos in content/ja/docs/reference/kubectl/cheatsheet.md (#17739)

* Fix japanese style in content/ja/docs/reference/kubectl/cheatsheet.md

* Fix typo in content/ja/docs/reference/kubectl/cheatsheet.md

* Fix translation in content/ja/docs/reference/kubectl/cheatsheet.md

* Fix typo in content/ja/docs/reference/kubectl/cheatsheet.md

* Fix typo in content/ja/docs/reference/kubectl/cheatsheet.md

* Modify translation for casestudies (#18767)

* modify terminology

* add ten

* update translation

* update

* update

* update

* fix typo (#18769)

* remove english comment (#18770)

* ja-trans:conetent/ja/casestudies/spotify  (#18451)

* ja-trans: content/ja/case-studies/spotify

* Update content/ja/case-studies/spotify/index.html

Updated with the proposal  from inductor

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/case-studies/spotify/index.html

Updated with inductor 's proposal

Co-Authored-By: inductor <kohei.ota@zozo.com>

* ja-trans: content/ja/case-studies/spotify

* Update content/ja/case-studies/spotify/index.html

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/case-studies/spotify/index.html

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/case-studies/spotify/index.html

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/case-studies/spotify/index.html

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/case-studies/spotify/index.html

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/case-studies/spotify/index.html

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/case-studies/spotify/index.html

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/case-studies/spotify/index.html

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/case-studies/spotify/index.html

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/case-studies/spotify/index.html

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/case-studies/spotify/index.html

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/case-studies/spotify/index.html

Co-Authored-By: inductor <kohei.ota@zozo.com>

* Update content/ja/case-studies/spotify/index.html

Co-Authored-By: inductor <kohei.ota@zozo.com>

Co-authored-by: inductor <kohei.ota@zozo.com>

* Translate Japanese headers (#18776)

* translate headers

* add index for references

* Update content/ja/docs/setup/production-environment/tools/_index.md

Co-Authored-By: Naoki Oketani <okepy.naoki@gmail.com>

* translate controller

Co-authored-by: Naoki Oketani <okepy.naoki@gmail.com>

* ja-docs: translate install-kubeadm into Japanese (#18198)

* ja-docs: translate install-kubeadm into Japanese

* translate table title in install-kubeadm to Japanese

* update kubeadm install doc

* remove extra spaces

* fix translation miss

* translate url title into japanese

* fix translation miss

* remove line break in sentence and translate title

* remove extra line break

* remove extra line break

* fix translation miss

Co-authored-by: Naoki Oketani <okepy.naoki@gmail.com>
Co-authored-by: Samuel Kihahu <kihahu@users.noreply.github.com>
Co-authored-by: Takuma Hashimoto <takuma-hashimoto@freee.co.jp>
Co-authored-by: Keita Akutsu <kakts.git@gmail.com>
Co-authored-by: Masa Taniguchi <maabou512@gmail.com>
Co-authored-by: Soto Sugita <sotoiwa@gmail.com>
Co-authored-by: Kozzy Hasebe <48105562+hasebe@users.noreply.github.com>
Co-authored-by: kazuaki harada <canhel.4suti50y.salamander@gmail.com>
Co-authored-by: Shunsuke Miyoshi <s.miyoshi@jp.fujitsu.com>

* delete zh SEE ALSO(51-54) (#18788)

* Added missing brackets in markdown (#18783)

* Fix broken links in api_changes doc (#18743)

* fix jump (#18781)

* fix redundant note (#18780)

* Fix typo: default-manager -> default-scheduler (#18709)

like #18649 #18708

* fix issue #18738 (#18773)

Signed-off-by: Dominic Yin <yindongchao@inspur.com>

* Correct description of kubectl (#18172)

* Correct description of kubectl

Given that `kubectl` is not a [command line interface (CLI)](https://en.wikipedia.org/wiki/Command-line_interface), I suggest calling it what it is -- a control utility (ctl = control). The term "tool" is commonly used in place of "utility," including the `kubectl` docs.

A CLI presents the user with a command prompt at which the user can enter multiple command lines that a command-line interpreter interprets and processes. Think of `bash`, `emacs`, or a SQL shell.  Since `kubectl` is not run in a shell, it is not a CLI.

Here are related docs that correctly refer to `kubectl` as a "command-line tool":

- https://kubernetes.io/docs/reference/tools/#kubectl
- https://kubernetes.io/docs/reference/glossary/?fundamental=true#term-kubectl
- https://kubernetes.io/docs/tasks/tools/install-kubectl/
- https://kubernetes.io/docs/reference/kubectl/kubectl/

* Update content/en/docs/reference/kubectl/overview.md

Co-Authored-By: Zach Corleissen <zacharysarah@users.noreply.github.com>

Co-authored-by: Zach Corleissen <zacharysarah@users.noreply.github.com>

* Add blog post: Reviewing 2019 in Docs (#18662)

Tiny fix

Feedback from onlydole

Add missing link

Incremental fixes

Revise Jim's job title

Update content/en/blog/_posts/2020-01-17-Docs-Review-2019.md

Co-Authored-By: Celeste Horgan <celeste@cncf.io>

Feedback from celeste, change date

* Update OWNERS_ALIASES (#18803)

* Create Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md (#16869)

* Create Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-authored-by: Bob Killen <killen.bob@gmail.com>
Co-authored-by: Taylor Dolezal <onlydole@users.noreply.github.com>

* blog: introduce CSI support for ephemeral inline volumes (#16832)

* csi-ephemeral-inline-volumes: introduce CSI support for ephemeral inline volumes

This was alpha in Kubernetes 1.15 and became beta in 1.16. Several CSI
drivers already support it (soon...).

* csi-ephemeral-inline-volumes: bump date and address feedback (NodeUnpublishVolume)

* csi-ephemeral-inline-volumes: add examples and next steps

* csi-ephemeral-inline-volumes: rename file, minor edits

* csi-ephemeral-inline-volumes: include Docker example

* Create 2019-12-10-Gamified-Chaos-Engineering-Tool-for-Kubernetes.md (#18062)

* Create 2019-12-10-Gamified-Chaos-Engineering-Tool-for-Kubernetes.md

* Update and rename 2019-12-10-Gamified-Chaos-Engineering-Tool-for-Kubernetes.md to 2019-01-16-Gamified-Chaos-Engineering-Tool-for-Kubernetes.md

* Update 2019-01-16-Gamified-Chaos-Engineering-Tool-for-Kubernetes.md

* Update and rename 2019-01-16-Gamified-Chaos-Engineering-Tool-for-Kubernetes.md to 2019-01-22-Gamified-Chaos-Engineering-Tool-for-Kubernetes.md

Co-authored-by: Kaitlyn Barnard <kaitlynbarnard10@gmail.com>

* Revert "Create Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md (#16869)" (#18805)

This reverts commit 2c4545e105.

* add blog k8s on mips (#18795)

* add blog k8s on mips

* modify english title to chinese

* modify some error

* Remove user-journeys legacy content #18615 (#18779)

* Use monospace for HostFolder and VM in the French Minikube setup guide. (#18749)

* Add French version of persistent volume page concept page (#18706)

* Add French version of persistent volume page concept page

* Fix

* Fix

* Fix

* Fix

* sync content/zh/docs/reference/issues-security/ en zh (#18727)

* update zh-translation: /docs/concepts/storage/volume-snapshots.md (#18650)

* Clean up user journeys content for zh (#18815)

* Followup fixes for: Add resource version section to api-concepts (#18069)

* Followup fixes for: Add resource version section to api-concepts documentation

* Apply feedback

* Apply feedback

* Switch paragraph to active voice

* Add Community and Code of Conduct for ID (#18828)

* Add additional ways to contribute part to update zh doc (#18762)

* Add additional ways to contribute part to update zh doc

* Add original English text

* Update content/zh/docs/contribute/_index.md

Co-Authored-By: chentanjun <tanjunchen20@gmail.com>

Co-authored-by: chentanjun <tanjunchen20@gmail.com>

* Clean up extensions/v1beta1 in docs (#18839)

* fix an example path (#18848)

* Translating network plugins (#17184)

* Fix for a typo (#18822)

* tą instalację -> tę instalację / (https://sjp.pwn.pl/poradnia/haslo/te-czy-ta;1598.html) (#18801)

* Fix typo in Scalability section (#18866)

The phrase `very larger` is not valid, it is supposed to be either `very
large` or `larger`. Propose to have it `very large`.

Signed-off-by: Mariyan Dimitrov <mariyan.dimitrov@gmail.com>

* Add Polish translation of Contribute index page (#18775)

Co-Authored-By: Michał Sochoń <kaszpir@gmail.com>

Co-authored-by: Michał Sochoń <kaszpir@gmail.com>

* Clean up extensions/v1beta1 in docs (#18838)

* Add Indonesian Manage Compute Resources page (#18468)

* Add Indonesian Manage Compute Resources page

* Updates to id Manage Compute Resources page

* Add DaemonSet docs ID localization (#18632)

Signed-off-by: giovanism <giovanism@outlook.co.id>

* Fix typo in en/docs/contribute/style/content-guilde.md (#18862)

* partial fix for SEE ALSO section under content/zh/docs/reference/setup-tools/kubeadm/generated/ need to be deleted #18411 (#18875)

* See Also removed file 31

* see also removed file 32

* see also removed file 33

* see also removed file 34

* see also removed file 35

* Modify pod.md (#18818)

website/content/ko/docs/concepts/workloads/pods/pod.md
23 line
쿠버네티스는는 -> 쿠버네티스는
modify

* remove $ following the style guide (#18855)

* Add Hyperlink to Kubernetes API (#18852)

* Drive by copy edit of blog post (#18881)

* Medium copy edit.

* more fixes

* Translate Events Calendar (#18860)

* Adding Bahasa Indonesia translation for Device Plugin page #18676 (#18676)

Co-Authored-By: Gede Wahyu Adi Pramana <tokekbesi@gmail.com>

Co-authored-by: Gede Wahyu Adi Pramana <tokekbesi@gmail.com>

* change escaped chars to markdown (#18858)

Helps to keep doc clean for long term

* Fix header layout on Safari (#18888)

* Fix references to sig-docs-l10n-admins (#18661)

* Add French deployment concept page (#18516)

* Add French deployment concept page

* Fix

* Fix

* Fix

* Update content/fr/docs/concepts/workloads/controllers/deployment.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Fix

* Fix

* Fix

* Update content/fr/docs/concepts/workloads/controllers/deployment.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update content/fr/docs/concepts/workloads/controllers/deployment.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update content/fr/docs/concepts/workloads/controllers/deployment.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update content/fr/docs/concepts/workloads/controllers/deployment.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

Co-authored-by: Tim Bannister <tim@scalefactory.com>

* Fix ZH security aliases (#18895)

* disable simplytunde as an approver due to inactivity. (#18899)

Always welcome to come back if able to become active
again

Signed-off-by: Brad Topol <btopol@us.ibm.com>

* install container runtimes without prompts (#18893)

In Kubernetes docs, all of the packages that are required to set up the
Kubernetes are installed without requiring any prompts through
the package manager (like apt or yum) except for the container runtimes.

https://kubernetes.io/docs/setup/production-environment/container-runtimes/

So, it would be better to have these installations with prompts (yes) disabled.

* Fix small typos (#18886)

* Fix small typos

Small typos noticed and fixed in:

- configure-upgrade-etcd.md

- reconfigure-kubelet.md

Signed-off-by: Mariyan Dimitrov <mariyan.dimitrov@gmail.com>

* Rephrase a paragraph on etcd upgrade

en\docs\tasks\administer-cluster\configure-upgrade-etcd.md

Following a suggestion in #18886, I've rephrased a sentence on etcd
upgrade prerequisites.

Signed-off-by: Mariyan Dimitrov <mariyan.dimitrov@gmail.com>

* Clean up extensions/v1beta1 in docs (#18841)

* Update _index.md (#18825)

* Run minikube docker-env in a shell-independent way (#18823)

* doc: correct pv status for pv protection example. (#18816)

* Small editorial fixes in glossary entries (#18807)

* Small editorial fixes in glossary entries

* Revert the wording in the glossary term for proxy

* fix doc conflict regarding postStart (#18806)

* kubeadm: improvements to the cert management documentation (#18397)

- move the sections about custom certificates and external CA
to the kubeadm-certs page
- minor cleanups to the kubeadm-certs page, including updated output
for the check-expiration command
- link the implementation details page to the new locations
for custom certs and external CA

* fix doc conflict regarding postStart

* Grammar (#18785)

* grammar: 'to' distributes over 'or'

* grammar: reword

per app.grammarly.com

* grammar: simplify

from app.grammarly.com

* spelling: etc.

* feat: add ephermeral container approach inside pod debug page. (#18754)

* doc: add pod security policy reference link to document. (#18729)

* doc: add pod security policy reference link to document.

* doc: add what's next for pod-security-policy ref.

* Revise version requirements (#18688)

Assume that the reader is running a version of Kubernetes that supports
the Secret resource.

* en: Remove kubectl duplicate example (#18656)

With #16974 and the removal of --include-uninitialized flag, the
second
    and third examples of kubectl delete become equal, thus leading to
    duplication and being confusing. Suggest to remove the duplicate and
    replace it with another example in the future if needed.

    Observed in v1.16 and v1.17 documentation.

    Signed-off-by: Mariyan Dimitrov <mariyan.dimitrov@gmail.com>

* Fix typo for tasks/access-kubernetes-api/configure-aggregation-layer.md (#18652)

* Unify runtime references (#18493)

- Use the glossary to correctly reference runtimes
- Updated runtime class documentation for CRI-O
- Removed rktlet from runtimes since its EOL

Signed-off-by: Sascha Grunert <sgrunert@suse.com>

* Clean up admission controller deprecation example (#18399)

* sync zh-trans content/zh/docs/concepts/workloads/pods/ephemeral-containers.md (#18883)

* Remove redundant information when deploy flannel on kubernetes include windows node (#18272)

* sync zh-trans content/zh/docs/concepts/workloads/pods/pod-overview.md (#18882)

* partial fix for for SEE ALSO section under content/zh/docs/reference/setup-tools/kubeadm/generated/ need to be deleted (#18879)

* see also removed from file 36

* see also removed from file 37

* see also removed from file 38

* see also removed from file 39

* see also removed from file 40

* update zh content/zh/docs/contribute/style/write-new-topic.md (#18859)

* sync zh-trans /docs/concepts/_index.md and /docs/concepts/example-concept-template.md (#18863)

* See also removed file 56 & 57 (#18912)

* see also removed file 56

* see also removed file 57

* Third Korean L10n Work For Release 1.17 (#18915)

* Changed some words in the IPv4/IPv6 dual-stack korean doc. (#18668)

* Update to Outdated files in dev-1.17-ko.3 branch. (#18580)

* Translate content/ko/docs/concepts/services-networking/service in Korean (#18195)

* Translate docs/tasks/access-application-cluster/port-forward-access-application-cluster.md in Korean (#18721)

* Translate controllers/garbage-collection.md in Korean. (#18595)

Co-Authored-by: Seokho Son <shsongist@gmail.com>
Co-Authored-by: Lawrence Kay <lkay9495@hotmail.com>
Co-Authored-by: Jesang Myung <jesang.myung@gmail.com>
Co-Authored-by: Claudia J.Kang <claudiajkang@gmail.com>
Co-Authored-by: Yuk, Yongsu <ysyukr@gmail.com>
Co-Authored-By: June Yi <june.yi@samsung.com>

Co-authored-by: Yuk, Yongsu <ysyukr@gmail.com>
Co-authored-by: Seokho Son <shsongist@gmail.com>
Co-authored-by: Lawrence Kay <me@lkaybob.pe.kr>
Co-authored-by: Jesang Myung <jesang.myung@gmail.com>
Co-authored-by: June Yi <june.yi@samsung.com>

* clean up makefile, config (#18517)

Added target for createversiondirs (shell script) in Makefile.

updates for tagged release

regenerate api ref, rm Makefile_temp

add parens to pip check

* Improve Russian translation of Home page (#17841)

* Improve Russian translation of Home page

* Update i18n/ru.toml

Co-Authored-By: Slava Semushin <slava.semushin@gmail.com>

* Update content/ru/_index.html

Co-Authored-By: Slava Semushin <slava.semushin@gmail.com>

* Update content/ru/_index.html

Co-Authored-By: Slava Semushin <slava.semushin@gmail.com>

Co-authored-by: Slava Semushin <slava.semushin@gmail.com>

* update ref link for v1.16 (#18837)

Related to issue #18820.

remove links to prev API refs

* Cleanup user journeys related configs and scripts (#18814)

* See also removed file 81 to 85 (#18909)

* see also removed file 81

* see also removed file 82

* see also removed file 83

* see also removed file 84

* see also removed file 85

* See also removed file 65 to 70 (#18908)

* see also removed file 65

* see also removed file 66

* see also removed file 67

* see also removed file 68

* see also removed file 69

* see also removed file 70

* Translate Task index page into Polish (#18876)

Co-Authored-By: Karol Pucyński <kpucynski@gmail.com>
Co-Authored-By: Michał Sochoń <kaszpir@gmail.com>

Co-authored-by: Karol Pucyński <9209870+kpucynski@users.noreply.github.com>
Co-authored-by: Michał Sochoń <kaszpir@gmail.com>

* Document dry-run authorization requirements (#18235)

* Document dry-run write access requirement.

- Add section on dry-run authorization
- Refer to dry-run authorization for diff
- Consistently hyphenate dry-run

* Update content/en/docs/reference/using-api/api-concepts.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

Co-authored-by: Tim Bannister <tim@scalefactory.com>

* reword storage release note to match the change in k/k PR #87090 (#18921)

* sync zh-trans content/zh/docs/concepts/workloads/controllers/ttlafterfinished.md (#18868)

* See also removed file 60 to 63 (#18907)

* see also removed file 60

* see also removed file 61

* see also removed file 62

* see also removed file 63

* See also removed file 91 to 95 (#18910)

* see also removed file 91

* see also removed file 93

* see also removed file 94

* see also removed file 95

* content/zh/docs/concepts/workloads/pods/podpreset.md (#18870)

* fix: fixed eating initial 2 spaces inside code. (#18914)

* Update Calico section of kubeadm install guide (#18821)

* Update Calico section of kubeadm install guide

* Address review feedback

* See also removed file 96 to 100 (#18911)

* see also removed file 96

* see also removed file 97

* see also removed file 98

* see also removed file 99

* see also removed file 100

* repair zh docs in kubeadm (#18949)

* repair zh docs about kubeadm (#18950)

* Update apparmor.md (#18951)

* Update basic-stateful-set.md (#18952)

* Add missing hyperlink for pod-overhead (#18936)

* Update service.md (#18480)

make article reads more smoothly

* zh-trans update content/zh/docs/concepts/workloads/controllers/deploy… (#18657)

* zh-trans update content/zh/docs/concepts/workloads/controllers/deployment.md

* zh-trans update content\zh\docs\concepts\workloads\controllers\deployment.md

* Update source-ip documentation (#18760)

* sync zh-trans /docs/concepts/workloads/pods/pod.md (#18880)

* sync zh-trans /docs/concepts/workloads/controllers/cron-jobs.md and /docs/concepts/workloads/controllers/daemonset.md (#18864)

* sync zh-trans content/zh/docs/concepts/workloads/controllers/ttlafterfinished.md (#18867)

* Add a French version of Secret concept page (#18604)

* Add a French version of Secret concept page

* Fix

* Fix

* Update content/fr/docs/concepts/configuration/secret.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Fix

* Update content/fr/docs/concepts/configuration/secret.md

Co-Authored-By: Aurélien Perrier <aperrier@universe.sh>

* Fix

Co-authored-by: Tim Bannister <tim@scalefactory.com>
Co-authored-by: Aurélien Perrier <aperrier@universe.sh>

* (refactor): Corrections (grammatical) in service.md file (#18944)

* Update service.md

* Fixed the invaild changes

Signed-off-by: Udit Gaurav <uditgaurav@gmail.com>

* Update container-runtimes.md (#18608)

for debian install of docker, also install gnupg2 for apt-key add to work

* Fix that dual-stack does not require Kubenet specifically (#18924)

* Fix that dual-stack does not require Kubenet specifically

Rather it requires a network plugin that supports dual-stack, and
others are available, including Calico.

* Update content/en/docs/tasks/network/validate-dual-stack.md

Added link to doc about network plugins

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

Co-authored-by: Tim Bannister <tim@scalefactory.com>

* Revert "Configurable Scaling for the HPA (#18157)" (#18963)

This reverts commit 5dbfaafe1a.

* Update horizontal-pod-autoscale-walkthrough.md (#18960)

Update command for creating php-apache deployment due to the following warning: `kubectl run --generator=deployment/apps.v1 is DEPRECATED and will be removed in a future version. Use kubectl run --generator=run-pod/v1 or kubectl create instead.`

* doc: add link for type=LoadBalancer service in tutorial. (#18916)

* Typo fix (#18830)

* sync zh-trans content/zh/docs/concepts/workloads/controllers/statefulset.md (#18869)

* Revise pull request template (#18744)

* Revise pull request template

* Reference compiled docs in PR template

Refer readers to https://k8s.io/contribute/start/

This keeps the template short, and it lets Hugo use templating for
the current version.

* Update certificates.md (#18970)

* Add web-ui-dashboard to French (#17974)

* Add web-ui-dashboard to French

* Update content/fr/docs/tasks/access-application-cluster/web-ui-dashboard.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update content/fr/docs/tasks/access-application-cluster/web-ui-dashboard.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Fix

* Fix

* Fix

* Update content/fr/docs/tasks/access-application-cluster/web-ui-dashboard.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

Co-authored-by: Tim Bannister <tim@scalefactory.com>

* Added a translated code of conduct (#18981)

* Added a translated code of conduct

* fixed some minor mistakes and capitalization

* Moved to informal speech

* Translate the contribute advanced page to French (#13425)

* Translate the contribute advanced page to French

* Corrections

* Correction

* Correction

* Correction

* Correction

* Correction

* Fix typo in hello-minikube.md (#18991)

* Add note for LB behaviour for cordoned nodes. (#18784)

* Add note for LB behaviour for cordoned nodes.

See also https://github.com/kubernetes/kubernetes/issues/65013
This is a reasonably common pitfall: `kubectl cordon <all nodes>` will also drop all LB traffic to the cluster, but this is not documented anywhere but in issues, when found it is usually already too late.

* Update with feedback

* Add KIND as the options for spinning up a test kubernetes environment (#17860)

* fix typo in /ja/docs/concepts/workloads/pods/init-containers (#18997)

* hide some original comments in translate docs (#18986)

* hide original comment

* hide some original comments

* Fix code of conduct title (#19006)

* Added a note about built-in priority-classes (#18979)

* Added a note about build-in priority-classes

* Update content/en/docs/concepts/configuration/pod-priority-preemption.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

Co-authored-by: Tim Bannister <tim@scalefactory.com>

* Add description for TTL (#19001)

* Fix whitespace on deployment page (#18990)

* Add details to the API deprecations blog post (#19014)

* Document list/map/structType and listMapKeys (#18977)

These markers where introduced to describe topology of lists, maps,
structs - primarily in support of server-side apply.

Secondarily, a small typo fix:)

* Remove "Unschedulable" pod condition type from the pod lifecycle docs (#18956)

The pod lifecycle documentation erroneously indicated `Unschedulable` as a possible `type` of pod condition. That's not true. Only four condition types exist. The `Unschedulable` value is not a type, but one of the possible reasons of the `PodScheduled` condition type.

* Revise “Encrypting Secret Data at Rest” (#18810)

* Drop reference to old Kubernetes versions

At the time of writing, Kubernetes v1.13 is the oldest supported
version, and encryption-at-rest is no longer alpha.

* Tidy whitespace

* Add table caption

* Set metadata for required Kubernetes version

* maintain the current relative path when switching to other site versions (#18871)

* Update kubectl create configmap section (#18885)

* Add common examples to Service Topology documentation (#18712)

* service topology: add missing 'enabling service topology' page

Signed-off-by: Andrew Sy Kim <kiman@vmware.com>

* service topology: add common examples

Signed-off-by: Andrew Sy Kim <kiman@vmware.com>

* updating contrib for ref docs (#18787)

more cleanup

* fix translate docs format (#19018)

* Update nodes.md (#19019)

* Translate Contribute index page into Russian (#19022)

* Added german translation for Addons page (#19010)

* Added german translation for Addons page

* Smaller adjustments

* removed a english leftover-sentence
* consistent spelling of "Add-Ons"

* Removed english entry for CoreDNS

* Update content/de/docs/concepts/cluster-administration/addons.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Translated a heading

Co-authored-by: Tim Bannister <tim@scalefactory.com>

* (fix) Removed `-n test` from `kubectl get pv` command (#18877)

- PV are cluster scoped rather than namespaced scope
    - So, there is no need to list it by namespace

Signed-off-by: Aman Gupta <aman.gupta@mayadata.io>

* Link to setup page about Kind (#18996)

Link from /docs/setup/ to /docs/setup/learning-environment/kind/ now
that the target page exists.

* Create Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md (#18808)

* Create Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Taylor Dolezal <onlydole@users.noreply.github.com>

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update content/en/blog/_posts/Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-Authored-By: Bob Killen <killen.bob@gmail.com>

* Update Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

* Update and rename Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md to 2020-02-07-Deploying-External-OpenStack-Cloud-Provider-With-Kubeadm.md

Co-authored-by: Bob Killen <killen.bob@gmail.com>
Co-authored-by: Taylor Dolezal <onlydole@users.noreply.github.com>
Co-authored-by: Tim Bannister <tim@scalefactory.com>
Co-authored-by: Kaitlyn Barnard <kaitlynbarnard10@gmail.com>

* Revise glossary entry for Device Plugin (#16291)

* Document control plane monitoring (#17578)

* Document control plane monitoring

* Update content/en/docs/concepts/cluster-administration/monitoring.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Update content/en/docs/concepts/cluster-administration/monitoring.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

* Merge controller-metrics.md into monitoring.md

Co-authored-by: Tim Bannister <tim@scalefactory.com>

* Document none driver compatibility with non docker runtime. (#17952)

* Refined unclear sentence on 3rd party dependencies (#18015)

* Refined unclear sentence on 3rd party dependencies

I reworded the sentence on third party dependencies a bit in order to make it more sound

* Update content/en/docs/concepts/security/overview.md

Sounds much better

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

Co-authored-by: Tim Bannister <tim@scalefactory.com>

* Improve network policies concept (#18091)

* Adopt website style guidelines

* Tweak wording

Co-Authored-By: cmluciano <cmluciano@cruznet.org>

* Make sample NetworkPolicies downloadable

Co-authored-by: cmluciano <cmluciano@cruznet.org>

* clean up secret generators (#18320)

* Use built-in version check & metadata (#18542)

* Reword kubelet live reconfiguration task (#18629)

- Revise version requirements
- Use glossary tooltips in summary
- Use sentence case for headings
- Write kubelet in lowercase where appropriate
- Add “What's next” section

* fix: add dns search record limit note. (#18913)

* Remove duplicate content: Roles & Responsibilities (#18920)

* Remove duplicate content: Roles & Responsibilities

Signed-off-by: Celeste <celeste@cncf.io>
Address feedback

Signed-off-by: Celeste <celeste@cncf.io>

* Apply suggestions from review

Co-Authored-By: Zach Corleissen <zacharysarah@users.noreply.github.com>

* Link to contribution guidelines

Signed-off-by: Celeste Horgan <celeste@cncf.io>

* Address PR feedback

Signed-off-by: Celeste Horgan <celeste@cncf.io>

Co-authored-by: Zach Corleissen <zacharysarah@users.noreply.github.com>

* Fix of pull request #18960 (#18974)

* Fix of pull request #18960

* Add yaml configuration file snippets

* Remove redundant code snippet for  command

* Update cheatsheet.md (#18975)

* Update cheatsheet.md

"List all pods in the namespace, with more details" command corrected by adding --all-namespaces

* Update content/en/docs/reference/kubectl/cheatsheet.md

Co-Authored-By: Tim Bannister <tim@scalefactory.com>

Co-authored-by: Tim Bannister <tim@scalefactory.com>

* Correct description of Knitter CNI plugin (#18983)

* Add Elastic metricbeat to examples of DaemonSets and rename logstash (#19024)

* Add Elastic metricbeat to examples of DaemonSets

The URL points to the docs related to how to configure metricbeat on k8s

* Filebeat is the next thing

* Separated commands from output (#19023)

* Update KubeCon URLs (#19027)

The URLs had changed (and were being redirected). Also, added parameters to better identify the traffic source.

* remove see also and close issue (#19032)

* sync zh-trans content/zh/docs/concepts/workloads/controllers/garbage-collection.md (#18865)

* zh trans /docs/reference/access-authn-authz/extensible-admission-controllers.md (#18856)

* Update zh/docs/concepts/services-networking/dns-pod-service.md#pods (#18992)

* Adding contribution best practice in contribute docs (#18059)

* Add kubectl patch example with quotes on Windows (#18853)

* Add kubectl patch example with quotes on Windows

When running the `kubectl patch` example, on Windows systems you get an
error when passing the patch request in single quotes. Passing it in
double quotes with the inner ones escaped produced the desired behavior
as is in the example given for Linux systems. I've added a small note
for Windows users to have that in mind.

Signed-off-by: Mariyan Dimitrov <mariyan.dimitrov@gmail.com>

* Use Hugo note shortcode

Windows note is placed inside a
[shortcode](https://kubernetes.io/docs/contribute/style/style-guide/#shortcodes)
to be consistent with the style guide.

Signed-off-by: Mariyan Dimitrov <mariyan.dimitrov@gmail.com>

* Remove shell Markdown syntax

I've removed the shell syntax from the Windows example and have changed
the description to be the same as the one used in
[jsonpath](https://kubernetes.io/docs/reference/kubectl/jsonpath/)
document to be more consistent. The jsonpath example uses cmd syntax,
though it is note inside a note shortcode, therefore I've opted out of
using any syntax as it seems to break rendering inside the shortcode.

Signed-off-by: Mariyan Dimitrov <mariyan.dimitrov@gmail.com>

* Add cmd markdown syntax and fix order list

I've tested this locally with `make docker-serve` on my Linux machine
and finally things are looking better, I've managed to address these two
issues:

- the Windows example is now inside `note` shortcode and also the cmd
syntax renders correctly on the page

- the list of steps broke after the first one, I've indented a paragraph
and now the steps are in the expected order

Signed-off-by: Mariyan Dimitrov <mariyan.dimitrov@gmail.com>

* Remove command prompt from example

According to the [style guide](https://kubernetes.io/docs/contribute/style/style-guide/#don-t-include-the-command-prompt), the command prompt should not be included when showing an example. This commit removes it for consistency with the style guide.

Signed-off-by: Mariyan Dimitrov <mariyan.dimitrov@gmail.com>

* cleanup /docs/concepts/workloads/pods/pod-lifecycle/ (#19009)

* update nodes.md (#18987)

将“用量低”更改为“可用量低”,避免歧义

* Remove command prompt from Windows example (#18906)

* Remove command prompt from Windows example

According to the [style
guide](https://kubernetes.io/docs/contribute/style/style-guide/#don-t-include-the-command-prompt),
the command prompt should not be included in the examples. Removing the
Windows command prompt from the jsonpath example.

Signed-off-by: Mariyan Dimitrov <mariyan.dimitrov@gmail.com>

* Put Windows example inside note shortcode

I'm putting the Windows example in a Hug note shortcode to be consistent
with the rest of the documentation.

Signed-off-by: Mariyan Dimitrov <mariyan.dimitrov@gmail.com>

* Updated CHANGELOG-11 link (#19036)

* update command used to create deployment (#19005)

The previous one was showing a deprecation warning when used.

* Update Korean localization guide (#19004)

rev1-Update Korean localization guide

* docs: fix broken etcd's official documents link (#19021)

* Update automated-tasks-with-cron-jobs.md (#19043)

Co-authored-by: Xin Chen <xchen@opq.com.au>
Co-authored-by: Tim Bannister <tim@scalefactory.com>
Co-authored-by: lemon <lemonli@users.noreply.github.com>
Co-authored-by: Slava Semushin <slava.semushin@gmail.com>
Co-authored-by: Olivier Cloirec <5033885+clook@users.noreply.github.com>
Co-authored-by: inductor <kohei.ota@zozo.com>
Co-authored-by: Naoki Oketani <okepy.naoki@gmail.com>
Co-authored-by: Samuel Kihahu <kihahu@users.noreply.github.com>
Co-authored-by: Takuma Hashimoto <takuma-hashimoto@freee.co.jp>
Co-authored-by: Keita Akutsu <kakts.git@gmail.com>
Co-authored-by: Masa Taniguchi <maabou512@gmail.com>
Co-authored-by: Soto Sugita <sotoiwa@gmail.com>
Co-authored-by: Kozzy Hasebe <48105562+hasebe@users.noreply.github.com>
Co-authored-by: kazuaki harada <canhel.4suti50y.salamander@gmail.com>
Co-authored-by: Shunsuke Miyoshi <s.miyoshi@jp.fujitsu.com>
Co-authored-by: hato wang <26351545+wyyxd2017@users.noreply.github.com>
Co-authored-by: xieyanker <xjsisnice@gmail.com>
Co-authored-by: zhouya0 <50729202+zhouya0@users.noreply.github.com>
Co-authored-by: littleboy <zhaoze01@inspur.com>
Co-authored-by: camper42 <camper.xlii@gmail.com>
Co-authored-by: Dominic Yin <hi@ydcool.me>
Co-authored-by: Steve Bang <stevebang@gmail.com>
Co-authored-by: Zach Corleissen <zacharysarah@users.noreply.github.com>
Co-authored-by: Ryan McGinnis <ryanmcginnis@users.noreply.github.com>
Co-authored-by: Shunde Zhang <shunde.p.zhang@gmail.com>
Co-authored-by: Bob Killen <killen.bob@gmail.com>
Co-authored-by: Taylor Dolezal <onlydole@users.noreply.github.com>
Co-authored-by: Patrick Ohly <patrick.ohly@intel.com>
Co-authored-by: Eugenio Marzo <eugenio.marzo@yahoo.it>
Co-authored-by: Kaitlyn Barnard <kaitlynbarnard10@gmail.com>
Co-authored-by: TimYin <shiguangyin@inspur.com>
Co-authored-by: Shivang Goswami <shivang.goswami@infosys.com>
Co-authored-by: Fabian Baumanis <fabian.baumanis@gmx.de>
Co-authored-by: Rémy Léone <remy.leone@gmail.com>
Co-authored-by: chentanjun <tanjunchen20@gmail.com>
Co-authored-by: helight <helight@helight.info>
Co-authored-by: Jie Shen <drfish.me@gmail.com>
Co-authored-by: Joe Betz <jpbetz@google.com>
Co-authored-by: Danni Setiawan <danninov@users.noreply.github.com>
Co-authored-by: GoodGameZoo <gaoguangze111@gmail.com>
Co-authored-by: makocchi <makocchi@gmail.com>
Co-authored-by: babang <prabangkoro@users.noreply.github.com>
Co-authored-by: Sharjeel Aziz <sharjeel.aziz@gmail.com>
Co-authored-by: Wojtek Cichoń <wojtek.cichon@protonmail.com>
Co-authored-by: Mariyan Dimitrov <mariyan.dimitrov@gmail.com>
Co-authored-by: Maciej Filocha <12587791+mfilocha@users.noreply.github.com>
Co-authored-by: Michał Sochoń <kaszpir@gmail.com>
Co-authored-by: Yudi A Phanama <11147376+phanama@users.noreply.github.com>
Co-authored-by: Giovan Isa Musthofa <giovanism@outlook.co.id>
Co-authored-by: Park Sung Taek <tjdxor8223@gmail.com>
Co-authored-by: Kyle Smith <kylessmith@protonmail.com>
Co-authored-by: craigbox <craig.box@gmail.com>
Co-authored-by: Afrizal Fikri <laser.survivor@gmail.com>
Co-authored-by: Gede Wahyu Adi Pramana <tokekbesi@gmail.com>
Co-authored-by: Anshu Prateek <333902+anshprat@users.noreply.github.com>
Co-authored-by: Sergei Zyubin <sergei@crate.io>
Co-authored-by: Christoph Blecker <admin@toph.ca>
Co-authored-by: Brad Topol <btopol@us.ibm.com>
Co-authored-by: Venkata Harshavardhan Reddy Allu <venkataharshavardhan_ven@srmuniv.edu.in>
Co-authored-by: KYamani <yamani.kamel@gmail.com>
Co-authored-by: Trishank Karthik Kuppusamy <33133073+trishankatdatadog@users.noreply.github.com>
Co-authored-by: Jacky Wu <Colstuwjx@gmail.com>
Co-authored-by: Gerasimos Dimitriadis <gedimitr@gmail.com>
Co-authored-by: Rajat Toshniwal <rnt.rajat@gmail.com>
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
Co-authored-by: Sascha Grunert <sgrunert@suse.com>
Co-authored-by: wawa <xiaozhang0210@hotmail.com>
Co-authored-by: Claudia J.Kang <claudiajkang@gmail.com>
Co-authored-by: Yuk, Yongsu <ysyukr@gmail.com>
Co-authored-by: Seokho Son <shsongist@gmail.com>
Co-authored-by: Lawrence Kay <me@lkaybob.pe.kr>
Co-authored-by: Jesang Myung <jesang.myung@gmail.com>
Co-authored-by: June Yi <june.yi@samsung.com>
Co-authored-by: Karen Bradshaw <kbhawkey@gmail.com>
Co-authored-by: Alexey Pyltsyn <lex61rus@gmail.com>
Co-authored-by: Karol Pucyński <9209870+kpucynski@users.noreply.github.com>
Co-authored-by: Julian V. Modesto <julianvmodesto@gmail.com>
Co-authored-by: Jeremy L. Morris <jeremylevanmorris@gmail.com>
Co-authored-by: Casey Davenport <caseydavenport@users.noreply.github.com>
Co-authored-by: zhanwang <zhanw15@gmail.com>
Co-authored-by: wwgfhf <51694849+wwgfhf@users.noreply.github.com>
Co-authored-by: harleyliao <357857613@qq.com>
Co-authored-by: ten2ton <50288981+ten2ton@users.noreply.github.com>
Co-authored-by: Aurélien Perrier <aperrier@universe.sh>
Co-authored-by: UDIT GAURAV <35391335+uditgaurav@users.noreply.github.com>
Co-authored-by: Rene Luria <rene@luria.ch>
Co-authored-by: Neil Jerram <neiljerram@gmail.com>
Co-authored-by: Arjun <arjunrn@users.noreply.github.com>
Co-authored-by: Katarzyna Kańska <katarzyna.m.kanska@gmail.com>
Co-authored-by: Laurens Versluis <lfdversluis@users.noreply.github.com>
Co-authored-by: Ray76 <rayfoo55@gmail.com>
Co-authored-by: Alexander Zimmermann <7714821+alexzimmer96@users.noreply.github.com>
Co-authored-by: Christian Meter <cmeter@googlemail.com>
Co-authored-by: MMeent <boekewurm@gmail.com>
Co-authored-by: RA489 <rohit.anand@india.nec.com>
Co-authored-by: Akira Tanimura <autopp.inc@gmail.com>
Co-authored-by: Patouche <Patouche@users.noreply.github.com>
Co-authored-by: Jordan Liggitt <jordan@liggitt.net>
Co-authored-by: Maria Ntalla <maria.ntalla@gmail.com>
Co-authored-by: Marko Lukša <marko.luksa@gmail.com>
Co-authored-by: John Morrissey <jwm@horde.net>
Co-authored-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
Co-authored-by: ngsw <ngsw@ngsw.jp>
Co-authored-by: Aman Gupta <aman.gupta@mayadata.io>
Co-authored-by: Marek Siarkowicz <marek.siarkowicz@protonmail.com>
Co-authored-by: tom1299 <tom1299@users.noreply.github.com>
Co-authored-by: cmluciano <cmluciano@cruznet.org>
Co-authored-by: Celeste Horgan <celeste@cncf.io>
Co-authored-by: Prasad Honavar <prasadhonavar@gmail.com>
Co-authored-by: Sam <sammcj@users.noreply.github.com>
Co-authored-by: Victor Martinez <victormartinezrubio@gmail.com>
Co-authored-by: Dan Kohn <dan@linuxfoundation.org>
Co-authored-by: vishakha <54327666+vishakhanihore@users.noreply.github.com>
Co-authored-by: liyinda246 <liyinda0000@163.com>
Co-authored-by: Kabir Kwatra <kabir@kwatra.me>
Co-authored-by: Armand Grillet <2117580+armandgrillet@users.noreply.github.com>
Co-authored-by: Junwoo Ji <jydrogen@gmail.com>
Co-authored-by: rm <rajib.jolite@gmail.com>
2020-02-10 14:45:53 -08:00

632 lines
28 KiB
Markdown

---
title: Mengatur Sumber Daya Komputasi untuk Container
content_template: templates/concept
weight: 20
feature:
title: Bin Packing Otomatis
description: >
Menaruh kontainer-kontainer secara otomatis berdasarkan kebutuhan sumber daya mereka dan batasan-batasan lainnya, tanpa mengorbankan ketersediaan. Membaurkan beban-beban kerja kritis dan _best-effort_ untuk meningkatkan penggunaan sumber daya dan menghemat lebih banyak sumber daya.
---
{{% capture overview %}}
Saat kamu membuat spesifikasi sebuah [Pod](/docs/concepts/workloads/pods/pod/), kamu
dapat secara opsional menentukan seberapa banyak CPU dan memori (RAM) yang dibutuhkan
oleh setiap Container. Saat Container-Container menentukan _request_ (permintaan) sumber daya,
scheduler dapat membuat keputusan yang lebih baik mengenai Node mana yang akan dipilih
untuk menaruh Pod-Pod. Dan saat limit (batas) sumber daya Container-Container telah ditentukan,
maka kemungkinan rebutan sumber daya pada sebuah Node dapat dihindari.
Untuk informasi lebih lanjut mengenai perbedaan `request` dan `limit`, lihat [QoS Sumber Daya](https://git.k8s.io/community/contributors/design-proposals/node/resource-qos.md).
{{% /capture %}}
{{% capture body %}}
## Jenis-jenis sumber daya
_CPU_ dan _memori_ masing-masing merupakan _jenis sumber daya_ (_resource type_).
Sebuah jenis sumber daya memiliki satuan dasar. CPU ditentukan dalam satuan jumlah _core_,
dan memori ditentukan dalam satuan _bytes_. Jika kamu menggunakan Kubernetes v1.14 keatas,
kamu dapat menentukan sumber daya _huge page_. _Huge page_ adalah fitur khusus Linux
di mana kernel Node mengalokasikan blok-blok memori yang jauh lebih besar daripada ukuran
_page_ bawaannya.
Sebagai contoh, pada sebuah sistem di mana ukuran _page_ bawaannya adalah 4KiB, kamu
dapat menentukan sebuah limit, `hugepages-2Mi: 80Mi`. Jika kontainer mencoba mengalokasikan
lebih dari 40 _huge page_ berukuran 20MiB (total 80MiB), maka alokasi tersebut akan gagal.
{{< note >}}
Kamu tidak dapat melakukan _overcommit_ terhadap sumber daya `hugepages-*`.
Hal ini berbeda dari sumber daya `memory` dan `cpu` (yang dapat di-_overcommit_).
{{< /note >}}
CPU dan memori secara kolektif disebut sebagai _sumber daya komputasi_, atau cukup
_sumber daya_ saja. Sumber daya komputasi adalah jumlah yang dapat diminta, dialokasikan,
dan dikonsumsi. Mereka berbeda dengan [sumber daya API](/docs/concepts/overview/kubernetes-api/).
Sumber daya API, seperti Pod dan [Service](/docs/concepts/services-networking/service/) adalah
objek-objek yang dapat dibaca dan diubah melalui Kubernetes API Server.
## Request dan Limit Sumber daya dari Pod dan Container
Setiap Container dari sebuah Pod dapat menentukan satu atau lebih dari hal-hal berikut:
* `spec.containers[].resources.limits.cpu`
* `spec.containers[].resources.limits.memory`
* `spec.containers[].resources.limits.hugepages-<size>`
* `spec.containers[].resources.requests.cpu`
* `spec.containers[].resources.requests.memory`
* `spec.containers[].resources.requests.hugepages-<size>`
Walaupun `requests` dan `limits` hanya dapat ditentukan pada Container individual, akan
lebih mudah untuk membahas tentang request dan limit sumber daya dari Pod. Sebuah
_request/limit sumber daya Pod_ untuk jenis sumber daya tertentu adalah jumlah dari
request/limit sumber daya pada jenis tersebut untuk semua Container di dalam Pod tersebut.
## Arti dari CPU
Limit dan request untuk sumber daya CPU diukur dalam satuan _cpu_.
Satu cpu, dalam Kubernetes, adalah sama dengan:
- 1 vCPU AWS
- 1 Core GCP
- 1 vCore Azure
- 1 vCPU IBM
- 1 *Hyperthread* pada sebuah prosesor Intel _bare-metal_ dengan Hyperthreading
Request dalam bentuk pecahan diizinkan. Sebuah Container dengan
`spec.containers[].resources.requests.cpu` bernilai `0.5` dijamin mendapat
setengah CPU dibandingkan dengan yang meminta 1 CPU. Ekspresi nilai `0.1` ekuivalen
dengan ekspresi nilai `100m`, yang dapat dibaca sebagai "seratus milicpu". Beberapa
orang juga membacanya dengan "seratus milicore", dan keduanya ini dimengerti sebagai
hal yang sama. Sebuah request dengan angka di belakang koma, seperti `0.1` dikonversi
menjadi `100m` oleh API, dan presisi yang lebih kecil lagi dari `1m` tidak dibolehkan.
Untuk alasan ini, bentuk `100m` mungkin lebih disukai.
CPU juga selalu diminta dalam jumlah yang mutlak, tidak sebagai jumlah yang relatif;
0.1 adalah jumlah CPU yang sama pada sebuah mesin _single-core_, _dual-core_, atau
_48-core_.
## Arti dari Memori
Limit dan request untuk `memory` diukur dalam satuan _bytes_. Kamu dapat mengekspresikan
memori sebagai _plain integer_ atau sebagai sebuah _fixed-point integer_ menggunakan
satu dari sufiks-sufiks berikut: E, P, T, G, M, K. Kamu juga dapat menggunakan bentuk
pangkat dua ekuivalennya: Ei, Pi, Ti, Gi, Mi, Ki.
Sebagai contoh, nilai-nilai berikut kurang lebih sama:
```shell
128974848, 129e6, 129M, 123Mi
```
Berikut sebuah contoh.
Pod berikut memiliki dua Container. Setiap Container memiliki request 0.25 cpu dan
64MiB (2<sup>26</sup> bytes) memori. Setiap Container memiliki limit 0.5 cpu dan
128MiB memori. Kamu dapat berkata bahwa Pod tersebut memiliki request 0.5 cpu dan
128MiB memori, dan memiliki limit 1 cpu dan 265MiB memori.
```yaml
apiVersion: v1
kind: Pod
metadata:
name: frontend
spec:
containers:
- name: db
image: mysql
env:
- name: MYSQL_ROOT_PASSWORD
value: "password"
resources:
requests:
memory: "64Mi"
cpu: "250m"
limits:
memory: "128Mi"
cpu: "500m"
- name: wp
image: wordpress
resources:
requests:
memory: "64Mi"
cpu: "250m"
limits:
memory: "128Mi"
cpu: "500m"
```
## Bagaimana Pod-Pod dengan request sumber daya dijadwalkan
Saat kamu membuat sebuah Pod, Kubernetes scheduler akan memilih sebuah Node
untuk Pod tersebut untuk dijalankan. Setiap Node memiliki kapasitas maksimum
untuk setiap jenis sumber daya: jumlah CPU dan memori yang dapat disediakan
oleh Node tersebut untuk Pod-Pod. Scheduler memastikan bahwa, untuk setiap
jenis sumber daya, jumlah semua request sumber daya dari Container-Container
yang dijadwalkan lebih kecil dari kapasitas Node tersebut. Perlu dicatat
bahwa walaupun penggunaan sumber daya memori atau CPU aktual/sesungguhnya pada
Node-Node sangat rendah, scheduler tetap akan menolak untuk menaruh sebuah
Pod pada sebuah Node jika pemeriksaan kapasitasnya gagal. Hal ini adalah untuk
menjaga dari kekurangan sumber daya pada sebuah Node saat penggunaan sumber daya
meningkat suatu waktu, misalnya pada saat titik puncak _traffic_ harian.
## Bagaimana Pod-Pod dengan limit sumber daya dijalankan
Saat Kubelet menjalankan sebuah Container dari sebuah Pod, Kubelet tersebut
mengoper limit CPU dan memori ke _runtime_ kontainer.
Ketika menggunakan Docker:
- `spec.containers[].resources.requests.cpu` diubah menjadi nilai _core_-nya,
yang mungkin berbentuk angka pecahan, dan dikalikan dengan 1024. Nilai yang
lebih besar antara angka ini atau 2 digunakan sebagai nilai dari _flag_
[`--cpu-shares`](https://docs.docker.com/engine/reference/run/#cpu-share-constraint)
pada perintah `docker run`.
- `spec.containers[].resources.limits.cpu` diubah menjadi nilai _millicore_-nya dan
dikalikan dengan 100. Nilai hasilnya adalah jumlah waktu CPU yang dapat digunakan oleh
sebuah kontainer setiap 100 milidetik. Sebuah kontainer tidak dapat menggunakan lebih
dari jatah waktu CPU-nya selama selang waktu ini.
{{< note >}}
Periode kuota bawaan adalah 100ms. Resolusi minimum dari kuota CPU adalah 1 milidetik.
{{</ note >}}
- `spec.containers[].resources.limits.memory` diubah menjadi sebuah bilangan bulat, dan
digunakan sebagai nilai dari _flag_ [`--memory`](https://docs.docker.com/engine/reference/run/#/user-memory-constraints)
dari perintah `docker run`.
Jika sebuah Container melebihi batas memorinya, Container tersebut mungkin akan diterminasi.
Jika Container tersebut dapat diulang kembali, Kubelet akan mengulangnya kembali, sama
seperti jenis kegagalan lainnya.
Jika sebuah Container melebihi request memorinya, kemungkinan Pod-nya akan dipindahkan
kapanpun Node tersebut kehabisan memori.
Sebuah Container mungkin atau mungkin tidak diizinkan untuk melebihi limit CPU-nya
untuk periode waktu yang lama. Tetapi, Container tersebut tidak akan diterminasi karena
penggunaan CPU yang berlebihan.
Untuk menentukan apabila sebuah Container tidak dapat dijadwalkan atau sedang diterminasi
karena limit sumber dayanya, lihat bagian [Penyelesaian Masalah](#penyelesaian-masalah).
## Memantau penggunaan sumber daya komputasi
Penggunaan sumber daya dari sebuah Pod dilaporkan sebagai bagian dari kondisi Pod.
Jika [_monitoring_ opsional](http://releases.k8s.io/{{< param "githubbranch" >}}/cluster/addons/cluster-monitoring/README.md) diaktifkan pada klaster kamu, maka penggunaan sumber daya Pod dapat diambil
dari sistem _monitoring_ kamu.
## Penyelesaian Masalah
### Pod-Pod saya berkondisi Pending (tertunda) dengan _event message_ failedScheduling
Jika scheduler tidak dapat menemukan Node manapun yang muat untuk sebuah Pod,
Pod tersebut tidak akan dijadwalkan hingga ditemukannya sebuah tempat yang
muat. Sebuah _event_ akan muncul setiap kali scheduler gagal menemukan tempat
untuk Pod tersebut, seperti berikut:
```shell
kubectl describe pod frontend | grep -A 3 Events
```
```
Events:
FirstSeen LastSeen Count From Subobject PathReason Message
36s 5s 6 {scheduler } FailedScheduling Failed for reason PodExceedsFreeCPU and possibly others
```
Pada contoh di atas, Pod bernama "frontend" gagal dijadwalkan karena kekurangan
sumber daya CPU pada Node tersebut. Pesan kesalahan yang serupa dapat juga menunjukkan
kegagalan karena kekurangan memori (PodExceedsFreeMemroy). Secara umum, jika sebuah
Pod berkondisi Pending (tertunda) dengan sebuah pesan seperti ini, ada beberapa hal yang
dapat dicoba:
- Tambah lebih banyak Node pada klaster.
- Terminasi Pod-Pod yang tidak dibutuhkan untuk memberikan ruangan untuk Pod-Pod yang
tertunda.
- Periksa jika nilai request Pod tersebut tidak lebih besar dari Node-node yang ada.
Contohnya, jika semua Node memiliki kapasitas `cpu: 1`, maka Pod dengan request
`cpu: 1.1` tidak akan pernah dijadwalkan.
Kamu dapat memeriksa kapasitas Node-Node dan jumlah-jumlah yang telah dialokasikan
dengan perintah `kubectl describe nodes`. Contohnya:
```shell
kubectl describe nodes e2e-test-node-pool-4lw4
```
```
Name: e2e-test-node-pool-4lw4
[ ... lines removed for clarity ...]
Capacity:
cpu: 2
memory: 7679792Ki
pods: 110
Allocatable:
cpu: 1800m
memory: 7474992Ki
pods: 110
[ ... beberapa baris dihapus untuk kejelasan ...]
Non-terminated Pods: (5 in total)
Namespace Name CPU Requests CPU Limits Memory Requests Memory Limits
--------- ---- ------------ ---------- --------------- -------------
kube-system fluentd-gcp-v1.38-28bv1 100m (5%) 0 (0%) 200Mi (2%) 200Mi (2%)
kube-system kube-dns-3297075139-61lj3 260m (13%) 0 (0%) 100Mi (1%) 170Mi (2%)
kube-system kube-proxy-e2e-test-... 100m (5%) 0 (0%) 0 (0%) 0 (0%)
kube-system monitoring-influxdb-grafana-v4-z1m12 200m (10%) 200m (10%) 600Mi (8%) 600Mi (8%)
kube-system node-problem-detector-v0.1-fj7m3 20m (1%) 200m (10%) 20Mi (0%) 100Mi (1%)
Allocated resources:
(Total limit mungkin melebihi 100 persen, misalnya, karena _overcommit_.)
CPU Requests CPU Limits Memory Requests Memory Limits
------------ ---------- --------------- -------------
680m (34%) 400m (20%) 920Mi (12%) 1070Mi (14%)
```
Pada keluaran di atas, kamu dapat melihat bahwa jika sebuah Pod meminta lebih dari
1120m CPU atau 6.23Gi memori, Pod tersebut tidak akan muat pada Node tersebut.
Dengan melihat pada bagian `Pods`, kamu dapat melihat Pod-Pod mana saja yang memakan
sumber daya pada Node tersebut.
Jumlah sumber daya yang tersedia untuk Pod-Pod kurang dari kapasitas Node, karena
_daemon_ sistem menggunakan sebagian dari sumber daya yang ada. Kolom `allocatable` pada
[NodeStatus](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#nodestatus-v1-core)
memberikan jumlah sumber daya yang tersedia untuk Pod-Pod. Untuk lebih lanjut, lihat
[Sumber daya Node yang dapat dialokasikan](https://git.k8s.io/community/contributors/design-proposals/node/node-allocatable.md).
Fitur [kuota sumber daya](/docs/concepts/policy/resource-quotas/) dapat disetel untuk
membatasi jumlah sumber daya yang dapat digunakan. Jika dipakai bersama dengan Namespace,
kuota sumber daya dapat mencegah suatu tim menghabiskan semua sumber daya.
### Container saya diterminasi
Container kamu mungkin diterminasi karena Container tersebut melebihi batasnya. Untuk
memeriksa jika sebuah Container diterminasi karena ia melebihi batas sumber dayanya,
gunakan perintah `kubectl describe pod` pada Pod yang bersangkutan:
```shell
kubectl describe pod simmemleak-hra99
```
```
Name: simmemleak-hra99
Namespace: default
Image(s): saadali/simmemleak
Node: kubernetes-node-tf0f/10.240.216.66
Labels: name=simmemleak
Status: Running
Reason:
Message:
IP: 10.244.2.75
Replication Controllers: simmemleak (1/1 replicas created)
Containers:
simmemleak:
Image: saadali/simmemleak
Limits:
cpu: 100m
memory: 50Mi
State: Running
Started: Tue, 07 Jul 2015 12:54:41 -0700
Last Termination State: Terminated
Exit Code: 1
Started: Fri, 07 Jul 2015 12:54:30 -0700
Finished: Fri, 07 Jul 2015 12:54:33 -0700
Ready: False
Restart Count: 5
Conditions:
Type Status
Ready False
Events:
FirstSeen LastSeen Count From SubobjectPath Reason Message
Tue, 07 Jul 2015 12:53:51 -0700 Tue, 07 Jul 2015 12:53:51 -0700 1 {scheduler } scheduled Successfully assigned simmemleak-hra99 to kubernetes-node-tf0f
Tue, 07 Jul 2015 12:53:51 -0700 Tue, 07 Jul 2015 12:53:51 -0700 1 {kubelet kubernetes-node-tf0f} implicitly required container POD pulled Pod container image "k8s.gcr.io/pause:0.8.0" already present on machine
Tue, 07 Jul 2015 12:53:51 -0700 Tue, 07 Jul 2015 12:53:51 -0700 1 {kubelet kubernetes-node-tf0f} implicitly required container POD created Created with docker id 6a41280f516d
Tue, 07 Jul 2015 12:53:51 -0700 Tue, 07 Jul 2015 12:53:51 -0700 1 {kubelet kubernetes-node-tf0f} implicitly required container POD started Started with docker id 6a41280f516d
Tue, 07 Jul 2015 12:53:51 -0700 Tue, 07 Jul 2015 12:53:51 -0700 1 {kubelet kubernetes-node-tf0f} spec.containers{simmemleak} created Created with docker id 87348f12526a
```
Pada contoh di atas, `Restart Count: 5` menunjukkan bahwa Container `simmemleak`
pada Pod tersebut diterminasi dan diulang kembali sebanyak lima kali.
Kamu dapat menggunakan perintah `kubectl get pod` dengan opsi `-o go-template=...` untuk
mengambil kondisi dari Container-Container yang sebelumnya diterminasi:
```shell
kubectl get pod -o go-template='{{range.status.containerStatuses}}{{"Container Name: "}}{{.name}}{{"\r\nLastState: "}}{{.lastState}}{{end}}' simmemleak-hra99
```
```
Container Name: simmemleak
LastState: map[terminated:map[exitCode:137 reason:OOM Killed startedAt:2015-07-07T20:58:43Z finishedAt:2015-07-07T20:58:43Z containerID:docker://0e4095bba1feccdfe7ef9fb6ebffe972b4b14285d5acdec6f0d3ae8a22fad8b2]]
```
Kamu dapat lihat bahwa Container tersebut diterminasi karena `reason:OOM Killed`, di mana
`OOM` merupakan singkatan dari _Out Of Memory_, atau kehabisan memori.
## Penyimpanan lokal sementara
{{< feature-state state="beta" >}}
Kubernetes versi 1.8 memperkenalkan sebuah sumber daya baru, _ephemeral-storage_ untuk mengatur penyimpanan lokal yang bersifat sementara. Pada setiap Node Kubernetes, direktori _root_ dari Kubelet (secara bawaan /var/lib/kubelet) dan direktori log (/var/log) ditaruh pada partisi _root_ dari Node tersebut. Partisi ini juga digunakan bersama oleh Pod-Pod melalui volume emptyDir, log kontainer, lapisan _image_, dan lapisan kontainer yang dapat ditulis.
Partisi ini bersifat "sementara" dan aplikasi-aplikasi tidak dapat mengharapkan SLA kinerja (misalnya _Disk IOPS_) dari partisi ini. Pengelolaan penyimpanan lokal sementara hanya berlaku untuk partisi _root_; partisi opsional untuk lapisan _image_ dan lapisan yang dapat ditulis berada di luar ruang lingkup.
{{< note >}}
Jika sebuah partisi _runtime_ opsional digunakan, partisi _root_ tidak akan menyimpan lapisan _image_ ataupun lapisan yang dapat ditulis manapun.
{{< /note >}}
### Menyetel request dan limit dari penyimpanan lokal sementara
Setiap Container dari sebuah Pod dapat menentukan satu atau lebih dari hal-hal berikut:
* `spec.containers[].resources.limits.ephemeral-storage`
* `spec.containers[].resources.requests.ephemeral-storage`
Limit dan request untuk `ephemeral-storage` diukur dalam satuan _bytes_. Kamu dapat menyatakan
penyimpanan dalam bilangan bulat biasa, atau sebagai _fixed-point integer_ menggunakan satu dari
sufiks-sufiks ini: E, P, T, G, M, K. Kamu jika dapat menggunakan bentuk pangkat dua ekuivalennya:
Ei, Pi, Ti, Gi, Mi, Ki. Contohnya, nilai-nilai berikut kurang lebih sama:
```shell
128974848, 129e6, 129M, 123Mi
```
Contohnya, Pod berikut memiliki dua Container. Setiap Container memiliki request 2GiB untuk penyimpanan lokal sementara. Setiap Container memiliki limit 4GiB untuk penyimpanan lokal sementara. Maka, Pod tersebut memiliki jumlah request 4GiB penyimpanan lokal sementara, dan limit 8GiB.
```yaml
apiVersion: v1
kind: Pod
metadata:
name: frontend
spec:
containers:
- name: db
image: mysql
env:
- name: MYSQL_ROOT_PASSWORD
value: "password"
resources:
requests:
ephemeral-storage: "2Gi"
limits:
ephemeral-storage: "4Gi"
- name: wp
image: wordpress
resources:
requests:
ephemeral-storage: "2Gi"
limits:
ephemeral-storage: "4Gi"
```
### Bagaimana Pod-Pod dengan request ephemeral-storage dijadwalkan
Saat kamu membuat sebuah Pod, Kubernetes scheduler memilih sebuah Node di mana Pod
tersebut akan dijalankan. Setiap Node memiliki jumlah maksimum penyimpanan lokal sementara yang dapat disediakan.
Untuk lebih lanjut, lihat ["Hal-hal yang dapat dialokasikan Node"](/docs/tasks/administer-cluster/reserve-compute-resources/#node-allocatable).
Scheduler memastikan bahwa jumlah dari request-request sumber daya dari Container-Container yang dijadwalkan lebih kecil dari kapasitas Node.
### Bagaimana Pod-Pod dengan limit ephemeral-storage dijalankan
Untuk isolasi pada tingkat kontainer, jika lapisan yang dapat ditulis dari sebuah Container dan penggunaan log melebihi limit penyimpanannya, maka Pod tersebut akan dipindahkan. Untuk isolasi pada tingkat Pod, jika jumlah dari penyimpanan lokal sementara dari semua Container dan juga volume emptyDir milik Pod melebihi limit, maka Pod teresebut akan dipindahkan.
### Memantau penggunaan ephemeral-storage
Saat penyimpanan lokal sementara digunakan, ia dipantau terus-menerus
oleh Kubelet. Pemantauan dilakukan dengan cara memindai setiap volume
emptyDir, direktori log, dan lapisan yang dapat ditulis secara periodik.
Dimulai dari Kubernetes 1.15, volume emptyDir (tetapi tidak direktori log
atau lapisan yang dapat ditulis) dapat, sebagai pilihan dari operator
klaster, dikelola dengan menggunakan [_project quotas_](http://xfs.org/docs/xfsdocs-xml-dev/XFS_User_Guide/tmp/en-US/html/xfs-quotas.html).
_Project quotas_ aslinya diimplementasikan dalam XFS, dan baru-baru ini
telah diubah ke ext4fs. _Project quotas_ dapat digunakan baik untuk
_monitoring_ dan pemaksaan; sejak Kubernetes 1.16, mereka tersedia sebagai
fitur _alpha_ untuk _monitoring_ saja.
_Quota_ lebih cepat dan akurat dibandingkan pemindaian direktori. Saat
sebuah direktori ditentukan untuk sebuah proyek, semua berkas yang dibuat
pada direktori tersebut dibuat untuk proyek tersebut, dan kernel hanya
perlu melacak berapa banyak blok yang digunakan oleh berkas-berkas pada
proyek tersebut. Jika sebuah berkas dibuat dan dihapus, tetapi tetap dengan
sebuah _file descriptor_ yang terbuka, maka berkas tersebut tetap akan
memakan ruangan penyimpanan. Ruangan ini akan dilacak oleh _quota_ tersebut,
tetapi tidak akan terlihat oleh sebuah pemindaian direktori.
Kubernetes menggunakan ID proyek yang dimulai dari 1048576. ID-ID yang
digunakan akan didaftarkan di dalam `/etc/projects` dan `/etc/projid`.
Jika ID-ID proyek pada kisaran ini digunakan untuk tujuan lain pada sistem,
ID-ID proyek tersebut harus terdaftar di dalam `/etc/projects` dan `/etc/projid`
untuk mencegah Kubernetes menggunakan ID-ID tersebut.
Untuk mengaktifkan penggunaan _project quotas_, operator klaster
harus melakukan hal-hal berikut:
* Aktifkan _feature gate_ `LocalStorageCapacityIsolationFSQuotaMonitoring=true`
pada konfigurasi Kubelet. Nilainya secara bawaan `false` pada
Kubernetes 1.16, jadi harus secara eksplisit disetel menjadi `true`.
* Pastikan bahwa partisi _root_ (atau partisi opsional _runtime_)
telah dibangun (_build_) dengan mengaktifkan _project quotas_. Semua sistem berkas (_filesystem_)
XFS mendukung _project quotas_, tetapi sistem berkas ext4 harus dibangun
secara khusus untuk mendukungnya
* Pastikan bahwa partisi _root_ (atau partisi opsional _runtime_) ditambatkan (_mount_)
dengan _project quotas_ yang telah diaktifkan.
#### Membangun dan menambatkan sistem berkas dengan _project quotas_ yang telah diaktifkan
Sistem berkas XFS tidak membutuhkan tindakan khusus saat dibangun;
mereka secara otomatis telah dibangun dengan _project quotas_ yang
telah diaktifkan.
Sistem berkas _ext4fs_ harus dibangun dengan mengaktifkan _quotas_,
kemudian mereka harus diaktifkan pada sistem berkas tersebut.
```
% sudo mkfs.ext4 other_ext4fs_args... -E quotatype=prjquota /dev/block_device
% sudo tune2fs -O project -Q prjquota /dev/block_device
```
Untuk menambatkan sistem berkasnya, baik ext4fs dan XFS membutuhkan opsi
`prjquota` disetel di dalam `/etc/fstab`:
```
/dev/block_device /var/kubernetes_data defaults,prjquota 0 0
```
## Sumber daya yang diperluas
Sumber daya yang diperluas (_Extended Resource_) adalah nama sumber daya di luar domain `kubernetes.io`.
Mereka memungkinkan operator klaster untuk menyatakan dan pengguna untuk menggunakan
sumber daya di luar sumber daya bawaan Kubernetes.
Ada dua langkah untuk menggunakan sumber daya yang diperluas. Pertama, operator
klaster harus menyatakan sebuah Extended Resource. Kedua, pengguna harus meminta
sumber daya yang diperluas tersebut di dalam Pod.
### Mengelola sumber daya yang diperluas
#### Sumber daya yang diperluas pada tingkat Node
Sumber daya yang diperluas pada tingkat Node terikat pada Node.
##### Sumber daya Device Plugin yang dikelola
Lihat [Device
Plugin](/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/) untuk
cara menyatakan sumber daya _device plugin_ yang dikelola pada setiap node.
##### Sumber daya lainnya
Untuk menyatakan sebuah sumber daya yang diperluas tingkat Node, operator klaster
dapat mengirimkan permintaan HTTP `PATCH` ke API server untuk menentukan kuantitas
sumber daya yang tersedia pada kolom `status.capacity` untuk Node pada klaster.
Setelah itu, `status.capacity` pada Node akan memiliki sumber daya baru tersebut.
Kolom `status.allocatable` diperbarui secara otomatis dengan sumber daya baru
tersebut secara _asynchrounous_ oleh Kubelet. Perlu dicatat bahwa karena scheduler
menggunakan nilai `status.allocatable` milik Node saat mengevaluasi muat atau tidaknya
Pod, mungkin ada waktu jeda pendek antara melakukan `PATCH` terhadap kapasitas Node
dengan sumber daya baru dengan Pod pertama yang meminta sumber daya tersebut untuk
dapat dijadwalkan pada Node tersebut.
**Contoh:**
Berikut sebuah contoh yang menunjukkan bagaimana cara menggunakan `curl` untuk
mengirim permintaan HTTP yang menyatakan lima sumber daya "example.com/foo" pada
Node `k8s-node-1` yang memiliki master `k8s-master`.
```shell
curl --header "Content-Type: application/json-patch+json" \
--request PATCH \
--data '[{"op": "add", "path": "/status/capacity/example.com~1foo", "value": "5"}]' \
http://k8s-master:8080/api/v1/nodes/k8s-node-1/status
```
{{< note >}}
Pada permintaan HTTP di atas, `~1` adalah _encoding_ untuk karakter `/` pada jalur (_path_) _patch_.
Nilai jalur operasi tersebut di dalam JSON-Patch diinterpretasikan sebagai sebuah JSON-Pointer.
Untuk lebih lanjut, lihat [IETF RFC 6901, bagian 3](https://tools.ietf.org/html/rfc6901#section-3).
{{< /note >}}
#### Sumber daya yang diperluas pada tingkat klaster
Sumber daya yang diperluas pada tingkat klaster tidak terikat pada Node. Mereka
biasanya dikelola oleh _scheduler extender_, yang menangani penggunaan sumber daya
dan kuota sumber daya.
Kamu dapat menentukan sumber daya yang diperluas yang ditangani oleh _scheduler extender_
pada [konfigurasi kebijakan scheduler](https://github.com/kubernetes/kubernetes/blob/release-1.10/pkg/scheduler/api/v1/types.go#L31).
**Contoh:**
Konfigurasi untuk sebuah kebijakan scheduler berikut menunjukkan bahwa
sumber daya yang diperluas pada tingkat klaster "example.com/foo" ditangani
oleh _scheduler extender_.
- Scheduler mengirim sebuah Pod ke _scheduler extender_ hanya jika Pod tersebut
meminta "example.com/foo".
- Kolom `ignoredByScheduler` menentukan bahwa scheduler tidak memeriksa sumber daya
"example.com/foo" pada predikat `PodFitsResources` miliknya.
```json
{
"kind": "Policy",
"apiVersion": "v1",
"extenders": [
{
"urlPrefix":"<extender-endpoint>",
"bindVerb": "bind",
"managedResources": [
{
"name": "example.com/foo",
"ignoredByScheduler": true
}
]
}
]
}
```
### Menggunakan sumber daya yang diperluas
Pengguna dapat menggunakan sumber daya yang diperluas di dalam spesifikasi Pod
seperti CPU dan memori. Scheduler menangani akuntansi sumber daya tersebut agar
tidak ada alokasi untuk yang melebihi jumlah yang tersedia.
API server membatasi jumlah sumber daya yang diperluas dalam bentuk
bilangan bulat. Contoh jumlah yang _valid_ adalah `3`, `3000m`, dan
`3Ki`. Contoh jumlah yang _tidak valid_ adalah `0.5` dan `1500m`.
{{< note >}}
Sumber daya yang diperluas menggantikan Opaque Integer Resource.
Pengguna dapat menggunakan prefiks nama domain selain `kubernetes.io` yang sudah dipakai.
{{< /note >}}
Untuk menggunakan sebuah sumber daya yang diperluas di sebuah Pod, masukkan nama
sumber daya tersebut sebagai nilai _key_ dari map `spec.containers[].resources.limit`
pada spesifikasi Container.
{{< note >}}
Sumber daya yang diperluas tidak dapat di-_overcommit_, sehingga
request dan limit nilainya harus sama jika keduanya ada di spesifikasi
sebuah Container.
{{< /note >}}
Sebuah Pod hanya dijadwalkan jika semua request sumber dayanya terpenuhi, termasuk
CPU, memori, dan sumber daya yang diperluas manapun. Pod tersebut akan tetap
berada pada kondisi `PENDING` selama request sumber daya tersebut tidak terpenuhi.
**Contoh:**
Pod di bawah meminta 2 CPU dan 1 "example.com/foo" (sebuah sumber daya yang diperluas).
```yaml
apiVersion: v1
kind: Pod
metadata:
name: my-pod
spec:
containers:
- name: my-container
image: myimage
resources:
requests:
cpu: 2
example.com/foo: 1
limits:
example.com/foo: 1
```
{{% /capture %}}
{{% capture whatsnext %}}
* Dapatkan pengalaman langsung [menentukan sumber daya memori untuk Container dan Pod](/docs/tasks/configure-pod-container/assign-memory-resource/).
* Dapatkan pengalaman langsung [menentukan sumber daya CPU untuk Container dan Pod](/docs/tasks/configure-pod-container/assign-cpu-resource/).
* [Container API](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#container-v1-core)
* [ResourceRequirements](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#resourcerequirements-v1-core)
{{% /capture %}}