Merge pull request #19823 from VineethReddy02/vineeth-merged-master-into-dev-1.18-for-syncup

Merged master into dev-1.18 for syncup
pull/19116/head
Kubernetes Prow Robot 2020-03-24 10:06:45 -07:00 committed by GitHub
commit f115a2bf52
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
64 changed files with 904 additions and 921 deletions

View File

@ -578,6 +578,9 @@ section
li li
display: inline-block display: inline-block
height: 100% height: 100%
margin-right: 10px
&:last-child
margin-right: 0
a a
display: block display: block
@ -598,11 +601,11 @@ section
#vendorStrip #vendorStrip
line-height: 44px line-height: 44px
max-width: 100% max-width: 100%
overflow-x: auto
-webkit-overflow-scrolling: touch -webkit-overflow-scrolling: touch
ul ul
float: none float: none
overflow-x: auto
#searchBox #searchBox
float: none float: none
@ -1052,6 +1055,9 @@ dd
a.issue a.issue
margin-left: 0px margin-left: 0px
.gridPageHome .flyout-button
display: none
.feedback--no .feedback--no
margin-left: 1em margin-left: 1em

View File

@ -3,7 +3,7 @@ title: Kubernetes Dokumentation
noedit: true noedit: true
cid: docsHome cid: docsHome
layout: docsportal_home layout: docsportal_home
class: gridPage class: gridPage gridPageHome
linkTitle: "Home" linkTitle: "Home"
main_menu: true main_menu: true
weight: 10 weight: 10

View File

@ -68,13 +68,7 @@ resource requests/limits of that type for each Container in the Pod.
## Meaning of CPU ## Meaning of CPU
Limits and requests for CPU resources are measured in *cpu* units. Limits and requests for CPU resources are measured in *cpu* units.
One cpu, in Kubernetes, is equivalent to: One cpu, in Kubernetes, is equivalent to **1 vCPU/Core** for cloud providers and **1 hyperthread** on bare-metal Intel processors.
- 1 AWS vCPU
- 1 GCP Core
- 1 Azure vCore
- 1 IBM vCPU
- 1 *Hyperthread* on a bare-metal Intel processor with Hyperthreading
Fractional requests are allowed. A Container with Fractional requests are allowed. A Container with
`spec.containers[].resources.requests.cpu` of `0.5` is guaranteed half as much `spec.containers[].resources.requests.cpu` of `0.5` is guaranteed half as much

View File

@ -312,6 +312,10 @@ spec:
server: 172.17.0.2 server: 172.17.0.2
``` ```
{{< note >}}
Helper programs relating to the volume type may be required for consumption of a PersistentVolume within a cluster. In this example, the PersistentVolume is of type NFS and the helper program /sbin/mount.nfs is required to support the mounting of NFS filesystems.
{{< /note >}}
### Capacity ### Capacity
Generally, a PV will have a specific storage capacity. This is set using the PV's `capacity` attribute. See the Kubernetes [Resource Model](https://git.k8s.io/community/contributors/design-proposals/scheduling/resources.md) to understand the units expected by `capacity`. Generally, a PV will have a specific storage capacity. This is set using the PV's `capacity` attribute. See the Kubernetes [Resource Model](https://git.k8s.io/community/contributors/design-proposals/scheduling/resources.md) to understand the units expected by `capacity`.

View File

@ -102,7 +102,7 @@ Do | Don't
:--| :----- :--| :-----
Open the `envars.yaml` file. | Open the envars.yaml file. Open the `envars.yaml` file. | Open the envars.yaml file.
Go to the `/docs/tutorials` directory. | Go to the /docs/tutorials directory. Go to the `/docs/tutorials` directory. | Go to the /docs/tutorials directory.
Open the `/_data/concepts.yaml` file. | Open the /_data/concepts.yaml file. Open the `/_data/concepts.yaml` file. | Open the /\_data/concepts.yaml file.
{{< /table >}} {{< /table >}}
### Use the international standard for punctuation inside quotes ### Use the international standard for punctuation inside quotes
@ -119,15 +119,15 @@ The copy is called a "fork". | The copy is called a "fork."
### Use code style for inline code and commands ### Use code style for inline code and commands
For inline code in an HTML document, use the `<code>` tag. In a Markdown For inline code in an HTML document, use the `<code>` tag. In a Markdown
document, use the backtick (`). document, use the backtick (`` ` ``).
{{< table caption = "Do and Don't - Use code style for inline code and commands" >}} {{< table caption = "Do and Don't - Use code style for inline code and commands" >}}
Do | Don't Do | Don't
:--| :----- :--| :-----
The `kubectl run`command creates a Deployment. | The "kubectl run" command creates a Deployment. The `kubectl run`command creates a Deployment. | The "kubectl run" command creates a Deployment.
For declarative management, use `kubectl apply`. | For declarative management, use "kubectl apply". For declarative management, use `kubectl apply`. | For declarative management, use "kubectl apply".
Enclose code samples with triple backticks. `(```)`| Enclose code samples with any other syntax. Enclose code samples with triple backticks. (\`\`\`)| Enclose code samples with any other syntax.
Use single backticks to enclose inline code. For example, `var example = true`. | Use two asterisks (**) or an underscore (_) to enclose inline code. For example, **var example = true**. Use single backticks to enclose inline code. For example, `var example = true`. | Use two asterisks (`**`) or an underscore (`_`) to enclose inline code. For example, **var example = true**.
Use triple backticks before and after a multi-line block of code for fenced code blocks. | Use multi-line blocks of code to create diagrams, flowcharts, or other illustrations. Use triple backticks before and after a multi-line block of code for fenced code blocks. | Use multi-line blocks of code to create diagrams, flowcharts, or other illustrations.
Use meaningful variable names that have a context. | Use variable names such as 'foo','bar', and 'baz' that are not meaningful and lack context. Use meaningful variable names that have a context. | Use variable names such as 'foo','bar', and 'baz' that are not meaningful and lack context.
Remove trailing spaces in the code. | Add trailing spaces in the code, where these are important, because the screen reader will read out the spaces as well. Remove trailing spaces in the code. | Add trailing spaces in the code, where these are important, because the screen reader will read out the spaces as well.
@ -255,7 +255,7 @@ On-premises | On-premises or On-prem rather than On-premise or other variations.
## Shortcodes ## Shortcodes
Hugo [Shortcodes](https://gohugo.io/content-management/shortcodes) help create different rhetorical appeal levels. Our documentation supports three different shortcodes in this category: **Note** {{</* note */>}}, **Caution** {{</* caution */>}}, and **Warning** {{</* warning */>}}. Hugo [Shortcodes](https://gohugo.io/content-management/shortcodes) help create different rhetorical appeal levels. Our documentation supports three different shortcodes in this category: **Note** `{{</* note */>}}`, **Caution** `{{</* caution */>}}`, and **Warning** `{{</* warning */>}}`.
1. Surround the text with an opening and closing shortcode. 1. Surround the text with an opening and closing shortcode.
@ -275,7 +275,7 @@ The prefix you choose is the same text for the tag.
### Note ### Note
Use {{</* note */>}} to highlight a tip or a piece of information that may be helpful to know. Use `{{</* note */>}}` to highlight a tip or a piece of information that may be helpful to know.
For example: For example:
@ -291,7 +291,7 @@ The output is:
You can _still_ use Markdown inside these callouts. You can _still_ use Markdown inside these callouts.
{{< /note >}} {{< /note >}}
You can use a {{</* note */>}} in a list: You can use a `{{</* note */>}}` in a list:
``` ```
1. Use the note shortcode in a list 1. Use the note shortcode in a list
@ -323,7 +323,7 @@ The output is:
### Caution ### Caution
Use {{</* caution */>}} to call attention to an important piece of information to avoid pitfalls. Use `{{</* caution */>}}` to call attention to an important piece of information to avoid pitfalls.
For example: For example:
@ -341,7 +341,7 @@ The callout style only applies to the line directly above the tag.
### Warning ### Warning
Use {{</* warning */>}} to indicate danger or a piece of information that is crucial to follow. Use `{{</* warning */>}}` to indicate danger or a piece of information that is crucial to follow.
For example: For example:
@ -391,7 +391,7 @@ For example:
1. Preheat oven to 350˚F 1. Preheat oven to 350˚F
1. Prepare the batter, and pour into springform pan. 1. Prepare the batter, and pour into springform pan.
{{</* note */>}}Grease the pan for best results.{{</* /note */>}} `{{</* note */>}}Grease the pan for best results.{{</* /note */>}}`
1. Bake for 20-25 minutes or until set. 1. Bake for 20-25 minutes or until set.
@ -429,7 +429,7 @@ Do | Don't
:--| :----- :--| :-----
Update the title in the front matter of the page or blog post. | Use first level heading, as Hugo automatically converts the title in the front matter of the page into a first-level heading. Update the title in the front matter of the page or blog post. | Use first level heading, as Hugo automatically converts the title in the front matter of the page into a first-level heading.
Use ordered headings to provide a meaningful high-level outline of your content. | Use headings level 4 through 6, unless it is absolutely necessary. If your content is that detailed, it may need to be broken into separate articles. Use ordered headings to provide a meaningful high-level outline of your content. | Use headings level 4 through 6, unless it is absolutely necessary. If your content is that detailed, it may need to be broken into separate articles.
Use pound or hash signs (#) for non-blog post content. | Use underlines (--- or ===) to designate first-level headings. Use pound or hash signs (`#`) for non-blog post content. | Use underlines (`---` or `===`) to designate first-level headings.
Use sentence case for headings. For example, **Extend kubectl with plugins** | Use title case for headings. For example, **Extend Kubectl With Plugins** Use sentence case for headings. For example, **Extend kubectl with plugins** | Use title case for headings. For example, **Extend Kubectl With Plugins**
{{< /table >}} {{< /table >}}
@ -439,7 +439,7 @@ Use sentence case for headings. For example, **Extend kubectl with plugins** | U
Do | Don't Do | Don't
:--| :----- :--| :-----
Try to keep paragraphs under 6 sentences. | Indent the first paragraph with space characters. For example, ⋅⋅⋅Three spaces before a paragraph will indent it. Try to keep paragraphs under 6 sentences. | Indent the first paragraph with space characters. For example, ⋅⋅⋅Three spaces before a paragraph will indent it.
Use three hyphens (---) to create a horizontal rule. Use horizontal rules for breaks in paragraph content. For example, a change of scene in a story, or a shift of topic within a section. | Use horizontal rules for decoration. Use three hyphens (`---`) to create a horizontal rule. Use horizontal rules for breaks in paragraph content. For example, a change of scene in a story, or a shift of topic within a section. | Use horizontal rules for decoration.
{{< /table >}} {{< /table >}}
### Links ### Links
@ -460,9 +460,9 @@ Website navigation links can also be marked up as list items; after all they are
{{< note >}} Ordered lists that are part of an incomplete introductory sentence can be in lowercase and punctuated as if each item was a part of the introductory sentence.{{< /note >}} {{< note >}} Ordered lists that are part of an incomplete introductory sentence can be in lowercase and punctuated as if each item was a part of the introductory sentence.{{< /note >}}
- Use the number one (1.) for ordered lists. - Use the number one (`1.`) for ordered lists.
- Use (+), (* ), or (-) for unordered lists. - Use (`+`), (`*`), or (`-`) for unordered lists.
- Leave a blank line after each list. - Leave a blank line after each list.

View File

@ -5,7 +5,7 @@ title: Kubernetes Documentation
noedit: true noedit: true
cid: docsHome cid: docsHome
layout: docsportal_home layout: docsportal_home
class: gridPage class: gridPage gridPageHome
linkTitle: "Home" linkTitle: "Home"
main_menu: true main_menu: true
weight: 10 weight: 10

View File

@ -184,27 +184,48 @@ sysctl --system
``` ```
{{< tabs name="tab-cri-cri-o-installation" >}} {{< tabs name="tab-cri-cri-o-installation" >}}
{{< tab name="Ubuntu 16.04" codelang="bash" >}} {{< tab name="Debian" codelang="bash" >}}
# Debian Unstable/Sid
echo 'deb http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/Debian_Unstable/ /' > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
wget -nv https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/Debian_Unstable/Release.key -O- | sudo apt-key add -
# Install prerequisites # Debian Testing
apt-get update echo 'deb http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/Debian_Testing/ /' > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
apt-get install -y software-properties-common wget -nv https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/Debian_Testing/Release.key -O- | sudo apt-key add -
add-apt-repository ppa:projectatomic/ppa # Debian 10
apt-get update echo 'deb http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/Debian_10/ /' > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
wget -nv https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/Debian_10/Release.key -O- | sudo apt-key add -
# Raspbian 10
echo 'deb http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/Raspbian_10/ /' > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
wget -nv https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/Raspbian_10/Release.key -O- | sudo apt-key add -
# Install CRI-O # Install CRI-O
apt-get install -y cri-o-1.15 sudo apt-get install cri-o-1.17
{{< /tab >}} {{< /tab >}}
{{< tab name="CentOS/RHEL 7.4+" codelang="bash" >}}
{{< tab name="Ubuntu 18.04, 19.04 and 19.10" codelang="bash" >}}
# Setup repository
. /etc/os-release
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/x${NAME}_${VERSION_ID}/ /' > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list"
wget -nv https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/x${NAME}_${VERSION_ID}/Release.key -O- | sudo apt-key add -
sudo apt-get update
# Install CRI-O
sudo apt-get install cri-o-1.17
{{< /tab >}}
{{< tab name="CentOS/RHEL 7.4+" codelang="bash" >}}
# Install prerequisites # Install prerequisites
yum-config-manager --add-repo=https://cbs.centos.org/repos/paas7-crio-115-release/x86_64/os/ yum-config-manager --add-repo=https://cbs.centos.org/repos/paas7-crio-115-release/x86_64/os/
# Install CRI-O # Install CRI-O
yum install --nogpgcheck -y cri-o yum install --nogpgcheck -y cri-o
{{< /tab >}}
{{< tab name="openSUSE Tumbleweed" codelang="bash" >}}
sudo zypper install cri-o
{{< /tab >}} {{< /tab >}}
{{< /tabs >}} {{< /tabs >}}

View File

@ -48,7 +48,7 @@ W wersjach wcześniejszych niż 1.14, punkty końcowe określone przez ich forma
**Przykłady pobierania specyfikacji OpenAPI**: **Przykłady pobierania specyfikacji OpenAPI**:
Przed 1.10 | Począwszy od Kubernetes 1.10 Przed 1.10 | Kubernetes 1.10 i nowszy
----------- | ----------------------------- ----------- | -----------------------------
GET /swagger.json | GET /openapi/v2 **Accept**: application/json GET /swagger.json | GET /openapi/v2 **Accept**: application/json
GET /swagger-2.0.0.pb-v1 | GET /openapi/v2 **Accept**: application/com.github.proto-openapi.spec.v2@v1.0+protobuf GET /swagger-2.0.0.pb-v1 | GET /openapi/v2 **Accept**: application/com.github.proto-openapi.spec.v2@v1.0+protobuf
@ -108,20 +108,21 @@ API może być rozbudowane na dwa sposoby przy użyciu [custom resources](/docs/
i użyć [agregatora](/docs/tasks/access-kubernetes-api/configure-aggregation-layer/), i użyć [agregatora](/docs/tasks/access-kubernetes-api/configure-aggregation-layer/),
aby zintegrować je w sposób niezauważalny dla klientów. aby zintegrować je w sposób niezauważalny dla klientów.
## Włączanie grup API ## Włączanie i wyłączanie grup API
Określone zasoby i grupy API są włączone domyślnie. Włączanie i wyłączanie odbywa się poprzez ustawienie `--runtime-config` Określone zasoby i grupy API są włączone domyślnie. Włączanie i wyłączanie odbywa się poprzez ustawienie `--runtime-config`
w apiserwerze. `--runtime-config` przyjmuje wartości oddzielane przecinkami. Przykładowo, aby wyłączyć batch/v1, należy ustawić w apiserwerze. `--runtime-config` przyjmuje wartości oddzielane przecinkami. Przykładowo, aby wyłączyć batch/v1, należy ustawić
`--runtime-config=batch/v1=false`, aby włączyć batch/v2alpha1, należy ustawić `--runtime-config=batch/v2alpha1`. `--runtime-config=batch/v1=false`, aby włączyć batch/v2alpha1, należy ustawić `--runtime-config=batch/v2alpha1`.
Ta opcja przyjmuje rozdzielony przecinkami zbiór par klucz=wartość, który opisuje konfigurację wykonawczą apiserwera. Ta opcja przyjmuje rozdzielony przecinkami zbiór par klucz=wartość, który opisuje konfigurację wykonawczą apiserwera.
WAŻNE: Włączenie lub wyłączenie grup lub zasobów wymaga restartu apiserver i controller-manager, aby zmiany w `--runtime-config` zostały wprowadzone. {{< note >}}Włączenie lub wyłączenie grup lub zasobów wymaga restartu apiserver i controller-manager, aby zmiany w `--runtime-config` zostały wprowadzone.{{< /note >}}
## Jak włączać dostęp do grup zasobów ## Jak włączać dostęp do grup zasobów extensions/v1beta1
DaemonSets, Deployments, HorizontalPodAutoscalers, Ingresses, Jobs and ReplicaSets są domyślnie włączone. DaemonSets, Deployments, HorizontalPodAutoscalers, Ingresses, Jobs i ReplicaSets znajdują się w grupie API `extensions/v1beta1` i są domyślnie włączone.
Pozostałe rozszerzenia mogą być włączane poprzez ustawienie `--runtime-config` w Przykładowo: aby włączyć deployments i daemonsets, ustaw
apiserver. `--runtime-config` przyjmuje wartości rozdzielane przecinkami. Na przykład, aby zablokować deployments oraz ingress, ustaw `--runtime-config=extensions/v1beta1/deployments=true,extensions/v1beta1/daemonsets=true`.
`--runtime-config=extensions/v1beta1/deployments=false,extensions/v1beta1/ingresses=false`
{{< note >}}Włączanie i wyłączanie pojedynczych zasobów możliwe jest jedynie w ramach grupy API `extensions/v1beta1` z przyczyn historycznych{{< /note >}}
{{% /capture %}} {{% /capture %}}

View File

@ -1,5 +1,7 @@
--- ---
title: Kubernetes — co to jest? title: Kubernetes — co to jest?
description: >
Kubernetes to przenośna, rozszerzalna platforma oprogramowania *open-source* służąca do zarządzania zadaniami i serwisami uruchamianymi w kontenerach. Umożliwia ich deklaratywną konfigurację i automatyzację. Kubernetes posiada duży i dynamicznie rozwijający się ekosystem. Szeroko dostępne są serwisy, wsparcie i dodatkowe narzędzia.
content_template: templates/concept content_template: templates/concept
weight: 10 weight: 10
card: card:
@ -14,7 +16,7 @@ Na tej stronie znajdziesz ogólne informacje o Kubernetesie.
{{% capture body %}} {{% capture body %}}
Kubernetes to przenośna, rozszerzalna platforma oprogramowania *open-source* służąca do zarządzania zadaniami i serwisami uruchamianymi w kontenerach, która umożliwia deklaratywną konfigurację i automatyzację. Ekosystem Kubernetesa jest duży i dynamicznie się rozwija. Serwisy Kubernetesa, wsparcie i narzędzia są szeroko dostępne. Kubernetes to przenośna, rozszerzalna platforma oprogramowania *open-source* służąca do zarządzania zadaniami i serwisami uruchamianymi w kontenerach, która umożliwia deklaratywną konfigurację i automatyzację. Ekosystem Kubernetesa jest duży i dynamicznie się rozwija. Serwisy Kubernetesa, wsparcie i narzędzia są szeroko dostępne.
Nazwa Kubernetes pochodzi z greki i oznacza sternika albo pilota. Google otworzyło projekt Kubernetes publicznie w 2014. Kubernetes korzysta z [piętnastoletniego doświadczenia Google w uruchamianiu wielkoskalowych serwisów](https://ai.google/research/pubs/pub43438) i łączy je z najlepszymi pomysłami i praktykami wypracowanymi przez społeczność. Nazwa Kubernetes pochodzi z greki i oznacza sternika albo pilota. Google otworzyło projekt Kubernetes publicznie w 2014. Kubernetes korzysta z [piętnastoletniego doświadczenia Google w uruchamianiu wielkoskalowych serwisów](/blog/2015/04/borg-predecessor-to-kubernetes/) i łączy je z najlepszymi pomysłami i praktykami wypracowanymi przez społeczność.
## Trochę historii ## Trochę historii
@ -42,7 +44,7 @@ Kontenery zyskały popularność ze względu na swoje zalety, takie jak:
* Rozdzielenie zadań *Dev* i *Ops*: obrazy kontenerów powstają w fazie *build/release*, oddzielając w ten sposób aplikacje od infrastruktury. * Rozdzielenie zadań *Dev* i *Ops*: obrazy kontenerów powstają w fazie *build/release*, oddzielając w ten sposób aplikacje od infrastruktury.
* Obserwowalność obejmuje nie tylko informacje i metryki z poziomu systemu operacyjnego, ale także poprawność działania samej aplikacji i inne sygnały. * Obserwowalność obejmuje nie tylko informacje i metryki z poziomu systemu operacyjnego, ale także poprawność działania samej aplikacji i inne sygnały.
* Spójność środowiska na etapach rozwoju oprogramowania, testowania i działania w trybie produkcyjnym: działa w ten sam sposób na laptopie i w chmurze. * Spójność środowiska na etapach rozwoju oprogramowania, testowania i działania w trybie produkcyjnym: działa w ten sam sposób na laptopie i w chmurze.
* Możliwość przenoszenia pomiędzy systemami operacyjnymi i platformami chmurowymi: Ubuntu, RHEL, CoreOS, prywatnymi centrami danych, Google Kubernetes Engine czy gdziekolwiek indziej. * Możliwość przenoszenia pomiędzy systemami operacyjnymi i platformami chmurowymi: Ubuntu, RHEL, CoreOS, prywatnymi centrami danych, największymi dostawcami usług chmurowych czy gdziekolwiek indziej.
* Zarządzanie, które w centrum uwagi ma aplikacje: Poziom abstrakcji przeniesiony jest z warstwy systemu operacyjnego działającego na maszynie wirtualnej na poziom działania aplikacji, która działa na systemie operacyjnym używając zasobów logicznych. * Zarządzanie, które w centrum uwagi ma aplikacje: Poziom abstrakcji przeniesiony jest z warstwy systemu operacyjnego działającego na maszynie wirtualnej na poziom działania aplikacji, która działa na systemie operacyjnym używając zasobów logicznych.
* Luźno powiązane, rozproszone i elastyczne "swobodne" mikro serwisy: Aplikacje podzielone są na mniejsze, niezależne komponenty, które mogą być dynamicznie uruchamiane i zarządzane - nie jest to monolityczny system działający na jednej, dużej maszynie dedykowanej na wyłączność. * Luźno powiązane, rozproszone i elastyczne "swobodne" mikro serwisy: Aplikacje podzielone są na mniejsze, niezależne komponenty, które mogą być dynamicznie uruchamiane i zarządzane - nie jest to monolityczny system działający na jednej, dużej maszynie dedykowanej na wyłączność.
* Izolacja zasobów: wydajność aplikacji możliwa do przewidzenia * Izolacja zasobów: wydajność aplikacji możliwa do przewidzenia

View File

@ -14,6 +14,8 @@ menu:
weight: 20 weight: 20
post: > post: >
<p>Naucz się, jak korzystać z Kubernetesa z pomocą dokumentacji, która opisuje pojęcia, zawiera samouczki i informacje źródłowe. Możesz także <a href="/editdocs/" data-auto-burger-exclude>pomóc w jej tworzeniu</a>!</p> <p>Naucz się, jak korzystać z Kubernetesa z pomocą dokumentacji, która opisuje pojęcia, zawiera samouczki i informacje źródłowe. Możesz także <a href="/editdocs/" data-auto-burger-exclude>pomóc w jej tworzeniu</a>!</p>
description: >
Kubernetes to otwarte oprogramowanie służące do automatyzacji procesów uruchamiania, skalowania i zarządzania aplikacjami w kontenerach. Gospodarzem tego projektu o otwartym kodzie źródłowym jest Cloud Native Computing Foundation.
overview: > overview: >
Kubernetes to otwarte oprogramowanie służące do automatyzacji procesów uruchamiania, skalowania i zarządzania aplikacjami w kontenerach. Gospodarzem tego projektu o otwartym kodzie źródłowym jest Cloud Native Computing Foundation (<a href="https://www.cncf.io/about">CNCF</a>). Kubernetes to otwarte oprogramowanie służące do automatyzacji procesów uruchamiania, skalowania i zarządzania aplikacjami w kontenerach. Gospodarzem tego projektu o otwartym kodzie źródłowym jest Cloud Native Computing Foundation (<a href="https://www.cncf.io/about">CNCF</a>).
cards: cards:
@ -37,6 +39,11 @@ cards:
description: "Wyszukaj popularne zadania i dowiedz się, jak sobie z nimi efektywnie poradzić." description: "Wyszukaj popularne zadania i dowiedz się, jak sobie z nimi efektywnie poradzić."
button: "Przegląd zadań" button: "Przegląd zadań"
button_path: "/docs/tasks" button_path: "/docs/tasks"
- name: training
title: "Szkolenia"
description: "Uzyskaj certyfikat Kubernetes i spraw, aby Twoje projekty cloud native zakończyły się sukcesem!"
button: "Oferta szkoleń"
button_path: "/training"
- name: reference - name: reference
title: Dokumentacja źródłowa title: Dokumentacja źródłowa
description: Zapoznaj się z terminologią, składnią poleceń, typami zasobów API i dokumentacją narzędzi instalacyjnych. description: Zapoznaj się z terminologią, składnią poleceń, typami zasobów API i dokumentacją narzędzi instalacyjnych.

View File

@ -4,7 +4,8 @@ id: cluster
date: 2019-06-15 date: 2019-06-15
full_link: full_link:
short_description: > short_description: >
Zestaw maszyn roboczych, nazywanych węzłami, na których uruchamiane są aplikacje w kontenerach. Każdy klaster musi posiadać przynajmniej jeden węzeł. Zestaw maszyn roboczych, nazywanych {{< glossary_tooltip text="węzłami" term_id="node" >}}, na których uruchamiane są aplikacje w kontenerach.
Każdy klaster musi posiadać przynajmniej jeden węzeł.
aka: aka:
tags: tags:
@ -14,4 +15,9 @@ tags:
Zestaw maszyn roboczych, nazywanych węzłami, na których uruchamiane są aplikacje w kontenerach. Każdy klaster musi posiadać przynajmniej jeden węzeł. Zestaw maszyn roboczych, nazywanych węzłami, na których uruchamiane są aplikacje w kontenerach. Każdy klaster musi posiadać przynajmniej jeden węzeł.
<!--more--> <!--more-->
Na węźle (lub węzłach) roboczych rozmieszczane są pody, które są częściami składowymi aplikacji. Warstwa sterowania zarządza węzłami roboczymi i podami należącymi do klastra. W środowisku produkcyjnym warstwa sterowania rozłożona jest zazwyczaj na kilka maszyn, a klaster uruchomiony jest na wielu węzłach zapewniając większą niezawodność i odporność na awarie. Na węźle (lub węzłach) roboczych rozmieszczane są {{< glossary_tooltip text="pody" term_id="pod" >}},
które są częściami składowymi aplikacji.
{{< glossary_tooltip text="Warstwa sterowania" term_id="control-plane" >}} zarządza
węzłami roboczymi i podami należącymi do klastra. W środowisku produkcyjnym warstwa sterowania
rozłożona jest zazwyczaj na kilka maszyn, a klaster uruchomiony jest na wielu węzłach zapewniając
większą niezawodność i odporność na awarie.

View File

@ -11,13 +11,17 @@ tags:
- fundamental - fundamental
- networking - networking
--- ---
[kube-proxy](/docs/reference/command-line-tools-reference/kube-proxy/) to *proxy* sieciowe, które uruchomione jest na każdym węźle klastra kube-proxy to *proxy* sieciowe, które uruchomione jest na każdym
i uczestniczy w tworzeniu {{< glossary_tooltip term_id="service">}}. {{< glossary_tooltip text="węźle" term_id="node" >}} klastra
i uczestniczy w tworzeniu
{{< glossary_tooltip text="serwisu" term_id="service">}}.
<!--more--> <!--more-->
kube-proxy utrzymuje reguły sieciowe na węźle. Dzięki tym regułom [kube-proxy](/docs/reference/command-line-tools-reference/kube-proxy/)
sieci na zewnątrz i wewnątrz klastra mogą komunikować się z Podami. utrzymuje reguły sieciowe na węźle. Dzięki tym regułom
sieci na zewnątrz i wewnątrz klastra mogą komunikować się
z podami.
kube-proxy używa warstwy filtrowania pakietów dostarczanych przez system operacyjny, o ile taka jest dostępna. kube-proxy używa warstwy filtrowania pakietów dostarczanych przez system operacyjny, o ile taka jest dostępna.
W przeciwnym przypadku, kube-proxy samo zajmuje sie przekazywaniem ruchu sieciowego. W przeciwnym przypadku, kube-proxy samo zajmuje sie przekazywaniem ruchu sieciowego.

View File

@ -10,8 +10,13 @@ aka:
tags: tags:
- architecture - architecture
--- ---
Składnik warstwy sterowania, który śledzi tworzenie nowych podów i przypisuje im węzły, na których powinny zostać uruchomione. Składnik warstwy sterowania, który śledzi tworzenie nowych
{{< glossary_tooltip term_id="pod" text="podów" >}} i przypisuje im {{< glossary_tooltip term_id="node" text="węzły">}},
na których powinny zostać uruchomione.
<!--more--> <!--more-->
Przy podejmowaniu decyzji o wyborze węzła brane pod uwagę są wymagania indywidualne i zbiorcze odnośnie zasobów, ograniczenia wynikające z polityk sprzętu i oprogramowania, wymagania *affinity* i *anty-affinity*, lokalizacja danych, zależności między zadaniami i wymagania czasowe. Przy podejmowaniu decyzji o wyborze węzła brane pod uwagę są wymagania
indywidualne i zbiorcze odnośnie zasobów, ograniczenia wynikające z polityk
sprzętu i oprogramowania, wymagania *affinity* i *anty-affinity*, lokalizacja danych,
zależności między zadaniami i wymagania czasowe.

View File

@ -11,7 +11,7 @@ tags:
- fundamental - fundamental
- core-object - core-object
--- ---
Agent, który działa na każdym węźle klastra. Odpowiada za uruchamianie kontenerów w ramach poda. Agent, który działa na każdym {{< glossary_tooltip text="węźle" term_id="node" >}} klastra. Odpowiada za uruchamianie {{< glossary_tooltip text="kontenerów" term_id="container" >}} w ramach {{< glossary_tooltip text="poda" term_id="pod" >}}.
<!--more--> <!--more-->

View File

@ -48,62 +48,6 @@ Aby uruchomić klaster Kubernetes do nauki na lokalnym komputerze, skorzystaj z
Wybierając rozwiązanie dla środowiska produkcyjnego musisz zdecydować, którymi poziomami zarządzania klastrem (_abstrakcjami_) chcesz zajmować się sam, a które będą realizowane po stronie zewnętrznego operatora. Wybierając rozwiązanie dla środowiska produkcyjnego musisz zdecydować, którymi poziomami zarządzania klastrem (_abstrakcjami_) chcesz zajmować się sam, a które będą realizowane po stronie zewnętrznego operatora.
Przykładowe poziomy abstrakcji klastra Kubernetesa to: {{< glossary_tooltip text="aplikacje" term_id="applications" >}}, {{< glossary_tooltip text="warstwa danych" term_id="data-plane" >}}, {{< glossary_tooltip text="warstwa sterowania" term_id="control-plane" >}}, {{< glossary_tooltip text="infrastruktura klastra" term_id="cluster-infrastructure" >}} i {{< glossary_tooltip text="operacje na klastrze" term_id="cluster-operations" >}}. Aby zapoznać się z listą dostawców posiadających [certyfikację Kubernetes](https://github.com/cncf/k8s-conformance/#certified-kubernetes), odwiedź stronę "[Partnerzy](https://kubernetes.io/partners/#conformance)".
Poniższy schemat pokazuje poszczególne poziomy abstrakcji klastra Kubernetes oraz informacje, kto jest za nie odpowiedzialny (sam użytkownik czy zewnętrzny operator).
Rozwiązania dla środowisk produkcyjnych![Rozwiązania dla środowisk produkcyjnych](/images/docs/KubernetesSolutions.svg)
{{< table caption="Tabela z dostawcami i rozwiązaniami dla środowisk produkcyjnych." >}}
Poniższa tabela zawiera przegląd dostawców środowisk produkcyjnych i rozwiązań, które oferują.
|Dostawca | Zarządzana | Chmura "pod klucz" | Prywatne centrum danych | Własne (w chmurze) | Własne (VM lokalne)| Własne (Bare Metal) |
| --------- | ------ | ------ | ------ | ------ | ------ | ----- |
| [Agile Stacks](https://www.agilestacks.com/products/kubernetes)| | &#x2714; | &#x2714; | | |
| [Alibaba Cloud](https://www.alibabacloud.com/product/kubernetes)| | &#x2714; | | | |
| [Amazon](https://aws.amazon.com) | [Amazon EKS](https://aws.amazon.com/eks/) |[Amazon EC2](https://aws.amazon.com/ec2/) | | | |
| [AppsCode](https://appscode.com/products/pharmer/) | &#x2714; | | | | |
| [APPUiO](https://appuio.ch/)  | &#x2714; | &#x2714; | &#x2714; | | | |
| [Banzai Cloud Pipeline Kubernetes Engine (PKE)](https://banzaicloud.com/products/pke/) | | &#x2714; | | &#x2714; | &#x2714; | &#x2714; |
| [CenturyLink Cloud](https://www.ctl.io/) | | &#x2714; | | | |
| [Cisco Container Platform](https://cisco.com/go/containers) | | | &#x2714; | | |
| [Cloud Foundry Container Runtime (CFCR)](https://docs-cfcr.cfapps.io/) | | | | &#x2714; |&#x2714; |
| [CloudStack](https://cloudstack.apache.org/) | | | | | &#x2714;|
| [Canonical](https://ubuntu.com/kubernetes) | &#x2714; | &#x2714; | &#x2714; | &#x2714; |&#x2714; | &#x2714;
| [Containership](https://containership.io) | &#x2714; |&#x2714; | | | |
| [D2iQ](https://d2iq.com/) | | [Kommander](https://d2iq.com/solutions/ksphere) | [Konvoy](https://d2iq.com/solutions/ksphere/konvoy) | [Konvoy](https://d2iq.com/solutions/ksphere/konvoy) | [Konvoy](https://d2iq.com/solutions/ksphere/konvoy) | [Konvoy](https://d2iq.com/solutions/ksphere/konvoy) |
| [Digital Rebar](https://provision.readthedocs.io/en/tip/README.html) | | | | | | &#x2714;
| [DigitalOcean](https://www.digitalocean.com/products/kubernetes/) | &#x2714; | | | | |
| [Docker Enterprise](https://www.docker.com/products/docker-enterprise) | |&#x2714; | &#x2714; | | | &#x2714;
| [Gardener](https://gardener.cloud/) | &#x2714; | &#x2714; | &#x2714; | &#x2714; | &#x2714; | [Custom Extensions](https://github.com/gardener/gardener/blob/master/docs/extensions/overview.md) |
| [Giant Swarm](https://www.giantswarm.io/) | &#x2714; | &#x2714; | &#x2714; | |
| [Google](https://cloud.google.com/) | [Google Kubernetes Engine (GKE)](https://cloud.google.com/kubernetes-engine/) | [Google Compute Engine (GCE)](https://cloud.google.com/compute/)|[GKE On-Prem](https://cloud.google.com/gke-on-prem/) | | | | | | | |
| [IBM](https://www.ibm.com/in-en/cloud) | [IBM Cloud Kubernetes Service](https://cloud.ibm.com/kubernetes/catalog/cluster)| |[IBM Cloud Private](https://www.ibm.com/in-en/cloud/private) | |
| [Ionos](https://www.ionos.com/enterprise-cloud) | [Ionos Managed Kubernetes](https://www.ionos.com/enterprise-cloud/managed-kubernetes) | [Ionos Enterprise Cloud](https://www.ionos.com/enterprise-cloud) | |
| [Kontena Pharos](https://www.kontena.io/pharos/) | |&#x2714;| &#x2714; | | |
| [KubeOne](https://kubeone.io/) | | &#x2714; | &#x2714; | &#x2714; | &#x2714; | &#x2714; |
| [Kubermatic](https://kubermatic.io/) | &#x2714; | &#x2714; | &#x2714; | &#x2714; | &#x2714; | &#x2714; |
| [KubeSail](https://kubesail.com/) | &#x2714; | | | | |
| [Kubespray](https://kubespray.io/#/) | | | |&#x2714; | &#x2714; | &#x2714; |
| [Kublr](https://kublr.com/) |&#x2714; | &#x2714; |&#x2714; |&#x2714; |&#x2714; |&#x2714; |
| [Microsoft Azure](https://azure.microsoft.com) | [Azure Kubernetes Service (AKS)](https://azure.microsoft.com/en-us/services/kubernetes-service/) | | | | |
| [Mirantis Cloud Platform](https://www.mirantis.com/software/kubernetes/) | | | &#x2714; | | |
| [NetApp Kubernetes Service (NKS)](https://cloud.netapp.com/kubernetes-service) | &#x2714; | &#x2714; | &#x2714; | | |
| [Nirmata](https://www.nirmata.com/) | | &#x2714; | &#x2714; | | |
| [Nutanix](https://www.nutanix.com/en) | [Nutanix Karbon](https://www.nutanix.com/products/karbon) | [Nutanix Karbon](https://www.nutanix.com/products/karbon) | | | [Nutanix AHV](https://www.nutanix.com/products/acropolis/virtualization) |
| [OpenNebula](https://www.opennebula.org) |[OpenNebula Kubernetes](https://marketplace.opennebula.systems/docs/service/kubernetes.html) | | | | |
| [OpenShift](https://www.openshift.com) |[OpenShift Dedicated](https://www.openshift.com/products/dedicated/) i [OpenShift Online](https://www.openshift.com/products/online/) | | [OpenShift Container Platform](https://www.openshift.com/products/container-platform/) | | [OpenShift Container Platform](https://www.openshift.com/products/container-platform/) |[OpenShift Container Platform](https://www.openshift.com/products/container-platform/)
| [Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE)](https://docs.cloud.oracle.com/iaas/Content/ContEng/Concepts/contengoverview.htm) | &#x2714; | &#x2714; | | | |
| [oVirt](https://www.ovirt.org/) | | | | | &#x2714; |
| [Pivotal](https://pivotal.io/) | | [Enterprise Pivotal Container Service (PKS)](https://pivotal.io/platform/pivotal-container-service) | [Enterprise Pivotal Container Service (PKS)](https://pivotal.io/platform/pivotal-container-service) | | |
| [Platform9](https://platform9.com/) | [Platform9 Managed Kubernetes](https://platform9.com/managed-kubernetes/) | | [Platform9 Managed Kubernetes](https://platform9.com/managed-kubernetes/) | &#x2714; | &#x2714; | &#x2714;
| [Rancher](https://rancher.com/) | | [Rancher 2.x](https://rancher.com/docs/rancher/v2.x/en/) | | [Rancher Kubernetes Engine (RKE)](https://rancher.com/docs/rke/latest/en/) | | [k3s](https://k3s.io/)
| [Supergiant](https://supergiant.io/) | |&#x2714; | | | |
| [SUSE](https://www.suse.com/) | | &#x2714; | | | |
| [SysEleven](https://www.syseleven.io/) | &#x2714; | | | | |
| [Tencent Cloud](https://intl.cloud.tencent.com/) | [Tencent Kubernetes Engine](https://intl.cloud.tencent.com/product/tke) | &#x2714; | &#x2714; | | | &#x2714; |
| [VEXXHOST](https://vexxhost.com/) | &#x2714; | &#x2714; | | | |
| [VMware](https://cloud.vmware.com/) | [VMware Cloud PKS](https://cloud.vmware.com/vmware-cloud-pks) |[VMware Enterprise PKS](https://cloud.vmware.com/vmware-enterprise-pks) | [VMware Enterprise PKS](https://cloud.vmware.com/vmware-enterprise-pks) | [VMware Essential PKS](https://cloud.vmware.com/vmware-essential-pks) | |[VMware Essential PKS](https://cloud.vmware.com/vmware-essential-pks)
| [Z.A.R.V.I.S.](https://zarvis.ai/) | &#x2714; | | | | | |
{{% /capture %}} {{% /capture %}}

View File

@ -77,7 +77,7 @@ weight: 10
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
<div class="content__box content__box_fill"> <div class="content__box content__box_fill">
<p><i>Węzły typu master zarządzają klastrem, pozostałe węzły są wykorzystywane do uruchamiania na nich aplikacji. </i></p> <p><i>Węzły typu master zarządzają klastrem i węzłami wykorzystywanymi do uruchamiania aplikacji. </i></p>
</div> </div>
</div> </div>
</div> </div>

View File

@ -17,7 +17,7 @@ weight: 40
Чтобы работать с Kubernetes, вы используете *объекты API Kubernetes* для описания *желаемого состояния вашего кластера*: какие приложения или другие рабочие нагрузки вы хотите запустить, какие образы контейнеров они используют, количество реплик, какие сетевые и дисковые ресурсы вы хотите использовать и сделать доступными и многое другое. Вы устанавливаете желаемое состояние, создавая объекты с помощью API Kubernetes, обычно через интерфейс командной строки `kubectl`. Вы также можете напрямую использовать API Kubernetes для взаимодействия с кластером и установки или изменения желаемого состояния. Чтобы работать с Kubernetes, вы используете *объекты API Kubernetes* для описания *желаемого состояния вашего кластера*: какие приложения или другие рабочие нагрузки вы хотите запустить, какие образы контейнеров они используют, количество реплик, какие сетевые и дисковые ресурсы вы хотите использовать и сделать доступными и многое другое. Вы устанавливаете желаемое состояние, создавая объекты с помощью API Kubernetes, обычно через интерфейс командной строки `kubectl`. Вы также можете напрямую использовать API Kubernetes для взаимодействия с кластером и установки или изменения желаемого состояния.
После того, как вы установили желаемое состояние, анель управления Kubernetes* заставляет текущее состояние кластера соответствовать желаемому состоянию с помощью генератора событий жизненного цикла подов ([Pod Lifecycle Event Generator, PLEG](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/node/pod-lifecycle-event-generator.md)). Для этого Kubernetes автоматически выполняет множество задач, таких как запуск или перезапуск контейнеров, масштабирование количества реплик данного приложения и многое другое. Плоскость управления Kubernetes состоит из набора процессов, запущенных в вашем кластере: После того, как вы установили желаемое состояние, лоскость управления Kubernetes* заставляет текущее состояние кластера соответствовать желаемому состоянию с помощью генератора событий жизненного цикла подов ([Pod Lifecycle Event Generator, PLEG](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/node/pod-lifecycle-event-generator.md)). Для этого Kubernetes автоматически выполняет множество задач, таких как запуск или перезапуск контейнеров, масштабирование количества реплик данного приложения и многое другое. Плоскость управления Kubernetes состоит из набора процессов, запущенных в вашем кластере:
* **Мастер Kubernetes** — это коллекция из трех процессов, которые выполняются на одном узле в вашем кластере, который обозначен как главный узел. Это процессы: [kube-apiserver](/docs/admin/kube-apiserver/), [kube-controller-manager](/docs/admin/kube-controller-manager/) и [kube-scheduler](/docs/admin/kube-scheduler/). * **Мастер Kubernetes** — это коллекция из трех процессов, которые выполняются на одном узле в вашем кластере, который обозначен как главный узел. Это процессы: [kube-apiserver](/docs/admin/kube-apiserver/), [kube-controller-manager](/docs/admin/kube-controller-manager/) и [kube-scheduler](/docs/admin/kube-scheduler/).
* Каждый отдельный неосновной узел в вашем кластере выполняет два процесса: * Каждый отдельный неосновной узел в вашем кластере выполняет два процесса:
@ -43,11 +43,11 @@ Kubernetes также содержит абстракции более высо
* [ReplicaSet](/docs/concepts/workloads/controllers/replicaset/) * [ReplicaSet](/docs/concepts/workloads/controllers/replicaset/)
* [Job](/docs/concepts/workloads/controllers/jobs-run-to-completion/) * [Job](/docs/concepts/workloads/controllers/jobs-run-to-completion/)
## Панель управления Kubernetes ## Плоскость управления Kubernetes
Различные части панели управления Kubernetes, такие как мастер Kubernetes и процессы kubelet, определяют, как Kubernetes взаимодействует с кластером. Панель управления поддерживает запись всех объектов Kubernetes в системе и запускает непрерывные циклы управления для обработки состояния этих объектов. В любое время циклы управления панели управления будут реагировать на изменения в кластере и работать, чтобы фактическое состояние всех объектов в системе соответствовало желаемому состоянию, которое вы указали. Различные части панели управления Kubernetes, такие как мастер Kubernetes и процессы kubelet, определяют, как Kubernetes взаимодействует с кластером. Плоскость управления поддерживает запись всех объектов Kubernetes в системе и запускает непрерывные циклы управления для обработки состояния этих объектов. В любое время циклы управления панели управления будут реагировать на изменения в кластере и работать, чтобы фактическое состояние всех объектов в системе соответствовало желаемому состоянию, которое вы указали.
Например, когда вы используете API Kubernetes для создания развертывания, вы предоставляете новое желаемое состояние для системы. Панель управления Kubernetes записывает создание этого объекта и выполняет ваши инструкции, запуская необходимые приложения и планируя их на узлы кластера, чтобы фактическое состояние кластера соответствовало желаемому состоянию. Например, когда вы используете API Kubernetes для создания развертывания, вы предоставляете новое желаемое состояние для системы. Плоскость управления Kubernetes записывает создание этого объекта и выполняет ваши инструкции, запуская необходимые приложения и планируя их на узлы кластера, чтобы фактическое состояние кластера соответствовало желаемому состоянию.
### Мастер Kubernetes ### Мастер Kubernetes

View File

@ -23,7 +23,7 @@ card:
{{% capture body %}} {{% capture body %}}
## Панель управления компонентами ## Плоскость управления компонентами
Компоненты панели управления отвечают за основные операции кластера (например, планирование), а также обрабатывают события кластера (например, запускают новый {{< glossary_tooltip text="под" term_id="pod">}}, когда поле `replicas` развертывания не соответствует требуемому количеству реплик). Компоненты панели управления отвечают за основные операции кластера (например, планирование), а также обрабатывают события кластера (например, запускают новый {{< glossary_tooltip text="под" term_id="pod">}}, когда поле `replicas` развертывания не соответствует требуемому количеству реплик).

View File

@ -74,7 +74,7 @@ PodList — это список Pod. | Pod List — это список подо
Можно | Нельзя Можно | Нельзя
:--| :----- :--| :-----
_Кластер_ — это набор узлов ... | "Кластер" — это набор узлов ... _Кластер_ — это набор узлов ... | "Кластер" — это набор узлов ...
Эти компоненты формируют _панель управления_. | Эти компоненты формируют **панель управления**. Эти компоненты формируют _плоскость управления_. | Эти компоненты формируют **плоскость управления**.
{{< /table >}} {{< /table >}}
### Оформляйте как код имена файлов, директории и пути ### Оформляйте как код имена файлов, директории и пути

View File

@ -14,4 +14,4 @@ tags:
Набор машин, так называемые узлы, которые запускают контейнеризированные приложения. Кластер имеет как минимум один рабочий узел. Набор машин, так называемые узлы, которые запускают контейнеризированные приложения. Кластер имеет как минимум один рабочий узел.
<!--more--> <!--more-->
В рабочих узлах размещены поды, являющиеся компонентами приложения. Панель управления управляет рабочими узлами и подами в кластере. В промышленных средах панель управления обычно запускается на нескольких компьютерах, а кластер, как правило, развёртывается на нескольких узлах, гарантируя отказоустойчивость и высокую надёжность. В рабочих узлах размещены поды, являющиеся компонентами приложения. Плоскость управления управляет рабочими узлами и подами в кластере. В промышленных средах плоскость управления обычно запускается на нескольких компьютерах, а кластер, как правило, развёртывается на нескольких узлах, гарантируя отказоустойчивость и высокую надёжность.

View File

@ -14,4 +14,4 @@ tags:
<!--more--> <!--more-->
Рабочий узел может быть как виртуальной, так и физической машиной, в зависимости от кластера. У него есть локальные демоны или сервисы, необходимые для запуска {{< glossary_tooltip text="подов" term_id="pod" >}}, а сам он управляется панелью управления. Демоны на узле включают в себя {{< glossary_tooltip text="kubelet" term_id="kubelet" >}}, {{< glossary_tooltip text="kube-proxy" term_id="kube-proxy" >}} и среду выполнения контейнера, основанную на {{< glossary_tooltip text="CRI" term_id="cri" >}}, например {{< glossary_tooltip term_id="docker" >}}. Рабочий узел может быть как виртуальной, так и физической машиной, в зависимости от кластера. У него есть локальные демоны или сервисы, необходимые для запуска {{< glossary_tooltip text="подов" term_id="pod" >}}, а сам он управляется плоскостью управления. Демоны на узле включают в себя {{< glossary_tooltip text="kubelet" term_id="kubelet" >}}, {{< glossary_tooltip text="kube-proxy" term_id="kube-proxy" >}} и среду выполнения контейнера, основанную на {{< glossary_tooltip text="CRI" term_id="cri" >}}, например {{< glossary_tooltip term_id="docker" >}}.

View File

@ -386,7 +386,7 @@ kubectl config use-context minikube
### Панель управления ### Панель управления
Чтобы получить доступ к [панели управления Kubernetes](/docs/tasks/access-application-cluster/web-ui-dashboard/), запустите эту команду в командной оболочке после запуска Minikube, чтобы получить адрес: Чтобы получить доступ к [веб-панели управления Kubernetes](/docs/tasks/access-application-cluster/web-ui-dashboard/), запустите эту команду в командной оболочке после запуска Minikube, чтобы получить адрес:
```shell ```shell
minikube dashboard minikube dashboard

View File

@ -55,7 +55,7 @@ Katacoda предоставляет бесплатную, встроенную
{{< note >}}Если у вас локально установлен Minikube, выполните `minikube start`.{{< /note >}} {{< note >}}Если у вас локально установлен Minikube, выполните `minikube start`.{{< /note >}}
2. Откройте панель Kubernetes в браузере: 2. Откройте веб-панель Kubernetes в браузере:
```shell ```shell
minikube dashboard minikube dashboard

View File

@ -14,6 +14,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.8 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80

View File

@ -14,6 +14,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.8 # Update the version of nginx from 1.7.9 to 1.8 image: nginx:1.16.1 # Update the version of nginx from 1.14.2 to 1.16.1
ports: ports:
- containerPort: 80 - containerPort: 80

View File

@ -14,6 +14,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80

View File

@ -20,7 +20,7 @@ spec:
spec: spec:
containers: containers:
- name: slave - name: slave
image: gcr.io/google_samples/gb-redisslave:v1 image: gcr.io/google_samples/gb-redisslave:v3
resources: resources:
requests: requests:
cpu: 100m cpu: 100m

View File

@ -1,5 +1,5 @@
kind: PersistentVolume
apiVersion: v1 apiVersion: v1
kind: PersistentVolume
metadata: metadata:
name: mysql-pv-volume name: mysql-pv-volume
labels: labels:

View File

@ -106,16 +106,16 @@ spec:
cd /var/lib/mysql cd /var/lib/mysql
# Determine binlog position of cloned data, if any. # Determine binlog position of cloned data, if any.
if [[ -f xtrabackup_slave_info ]]; then if [[ -f xtrabackup_slave_info && "x$(<xtrabackup_slave_info)" != "x" ]]; then
# XtraBackup already generated a partial "CHANGE MASTER TO" query # XtraBackup already generated a partial "CHANGE MASTER TO" query
# because we're cloning from an existing slave. # because we're cloning from an existing slave. (Need to remove the tailing semicolon!)
mv xtrabackup_slave_info change_master_to.sql.in cat xtrabackup_slave_info | sed -E 's/;$//g' > change_master_to.sql.in
# Ignore xtrabackup_binlog_info in this case (it's useless). # Ignore xtrabackup_binlog_info in this case (it's useless).
rm -f xtrabackup_binlog_info rm -f xtrabackup_slave_info xtrabackup_binlog_info
elif [[ -f xtrabackup_binlog_info ]]; then elif [[ -f xtrabackup_binlog_info ]]; then
# We're cloning directly from master. Parse binlog position. # We're cloning directly from master. Parse binlog position.
[[ `cat xtrabackup_binlog_info` =~ ^(.*?)[[:space:]]+(.*?)$ ]] || exit 1 [[ `cat xtrabackup_binlog_info` =~ ^(.*?)[[:space:]]+(.*?)$ ]] || exit 1
rm xtrabackup_binlog_info rm -f xtrabackup_binlog_info xtrabackup_slave_info
echo "CHANGE MASTER TO MASTER_LOG_FILE='${BASH_REMATCH[1]}',\ echo "CHANGE MASTER TO MASTER_LOG_FILE='${BASH_REMATCH[1]}',\
MASTER_LOG_POS=${BASH_REMATCH[2]}" > change_master_to.sql.in MASTER_LOG_POS=${BASH_REMATCH[2]}" > change_master_to.sql.in
fi fi
@ -126,16 +126,15 @@ spec:
until mysql -h 127.0.0.1 -e "SELECT 1"; do sleep 1; done until mysql -h 127.0.0.1 -e "SELECT 1"; do sleep 1; done
echo "Initializing replication from clone position" echo "Initializing replication from clone position"
mysql -h 127.0.0.1 \
-e "$(<change_master_to.sql.in), \
MASTER_HOST='mysql-0.mysql', \
MASTER_USER='root', \
MASTER_PASSWORD='', \
MASTER_CONNECT_RETRY=10; \
START SLAVE;" || exit 1
# In case of container restart, attempt this at-most-once. # In case of container restart, attempt this at-most-once.
mv change_master_to.sql.in change_master_to.sql.orig mv change_master_to.sql.in change_master_to.sql.orig
mysql -h 127.0.0.1 <<EOF
$(<change_master_to.sql.orig),
MASTER_HOST='mysql-0.mysql',
MASTER_USER='root',
MASTER_PASSWORD='',
MASTER_CONNECT_RETRY=10;
START SLAVE;
EOF
fi fi
# Start a server to send backups when requested by peers. # Start a server to send backups when requested by peers.

View File

@ -29,6 +29,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80

View File

@ -14,6 +14,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80

View File

@ -12,3 +12,5 @@ spec:
volumeMounts: volumeMounts:
- name: shared-data - name: shared-data
mountPath: /usr/share/nginx/html mountPath: /usr/share/nginx/html
hostNetwork: true
dnsPolicy: Default

View File

@ -14,6 +14,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80

View File

@ -13,6 +13,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.11.9 # update the image image: nginx:1.16.1 # update the image
ports: ports:
- containerPort: 80 - containerPort: 80

View File

@ -49,7 +49,7 @@ spec:
replicas: 3 replicas: 3
updateStrategy: updateStrategy:
type: RollingUpdate type: RollingUpdate
podManagementPolicy: Parallel podManagementPolicy: OrderedReady
template: template:
metadata: metadata:
labels: labels:

View File

@ -1,4 +1,4 @@
apiVersion: audit.k8s.io/v1beta1 # This is required. apiVersion: audit.k8s.io/v1 # This is required.
kind: Policy kind: Policy
# Don't generate audit events for all requests in RequestReceived stage. # Don't generate audit events for all requests in RequestReceived stage.
omitStages: omitStages:

View File

@ -15,6 +15,8 @@ spec:
name: fluentd-elasticsearch name: fluentd-elasticsearch
spec: spec:
tolerations: tolerations:
# this toleration is to have the daemonset runnable on master nodes
# remove it if your masters can't run pods
- key: node-role.kubernetes.io/master - key: node-role.kubernetes.io/master
effect: NoSchedule effect: NoSchedule
containers: containers:

View File

@ -11,28 +11,11 @@ spec:
selector: selector:
matchLabels: matchLabels:
tier: frontend tier: frontend
matchExpressions:
- {key: tier, operator: In, values: [frontend]}
template: template:
metadata: metadata:
labels: labels:
app: guestbook
tier: frontend tier: frontend
spec: spec:
containers: containers:
- name: php-redis - name: php-redis
image: gcr.io/google_samples/gb-frontend:v3 image: gcr.io/google_samples/gb-frontend:v3
resources:
requests:
cpu: 100m
memory: 100Mi
env:
- name: GET_HOSTS_FROM
value: dns
# If your cluster config does not include a dns service, then to
# instead access environment variables to find service host
# info, comment out the 'value: dns' line above, and uncomment the
# line below.
# value: env
ports:
- containerPort: 80

View File

@ -16,6 +16,6 @@ spec:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.15.4 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80

View File

@ -1,5 +1,5 @@
kind: ConfigMap
apiVersion: v1 apiVersion: v1
kind: ConfigMap
data: data:
containers.input.conf: |- containers.input.conf: |-
# This configuration file for Fluentd is used # This configuration file for Fluentd is used

View File

@ -14,9 +14,6 @@ spec:
volumeMounts: volumeMounts:
- mountPath: /cache - mountPath: /cache
name: cache-volume name: cache-volume
- mountPath: /etc/app/config.json
readOnly: true
name: secret-volume
ports: ports:
- containerPort: 80 - containerPort: 80
env: env:
@ -32,6 +29,3 @@ spec:
volumes: volumes:
- name: cache-volume - name: cache-volume
emptyDir: {} emptyDir: {}
- name: secret-volume
secret:
secretName: config-details

View File

@ -19,12 +19,6 @@ spec:
volumeMounts: volumeMounts:
- mountPath: /cache - mountPath: /cache
name: cache-volume name: cache-volume
- mountPath: /etc/app/config.json
readOnly: true
name: secret-volume
volumes: volumes:
- name: cache-volume - name: cache-volume
emptyDir: {} emptyDir: {}
- name: secret-volume
secret:
secretName: config-details

View File

@ -5,7 +5,10 @@ metadata:
spec: spec:
containers: containers:
- name: redis - name: redis
image: kubernetes/redis:v1 image: redis:5.0.4
command:
- redis-server
- "/redis-master/redis.conf"
env: env:
- name: MASTER - name: MASTER
value: "true" value: "true"

View File

@ -30,7 +30,6 @@ spec:
volumeMounts: volumeMounts:
- name: podinfo - name: podinfo
mountPath: /etc/podinfo mountPath: /etc/podinfo
readOnly: false
volumes: volumes:
- name: podinfo - name: podinfo
downwardAPI: downwardAPI:

View File

@ -25,7 +25,6 @@ spec:
volumeMounts: volumeMounts:
- name: podinfo - name: podinfo
mountPath: /etc/podinfo mountPath: /etc/podinfo
readOnly: false
volumes: volumes:
- name: podinfo - name: podinfo
downwardAPI: downwardAPI:

View File

@ -3,5 +3,5 @@ kind: Secret
metadata: metadata:
name: test-secret name: test-secret
data: data:
username: bXktYXBwCg== username: bXktYXBw
password: Mzk1MjgkdmRnN0piCg== password: Mzk1MjgkdmRnN0pi

View File

@ -1,5 +1,5 @@
kind: Pod
apiVersion: v1 apiVersion: v1
kind: Pod
metadata: metadata:
name: nginx name: nginx
spec: spec:
@ -9,7 +9,7 @@ spec:
volumeMounts: volumeMounts:
- mountPath: /var/run/secrets/tokens - mountPath: /var/run/secrets/tokens
name: vault-token name: vault-token
serviceAccountName: acct serviceAccountName: build-robot
volumes: volumes:
- name: vault-token - name: vault-token
projected: projected:

View File

@ -15,7 +15,7 @@ spec:
path: /healthz path: /healthz
port: 8080 port: 8080
httpHeaders: httpHeaders:
- name: X-Custom-Header - name: Custom-Header
value: Awesome value: Awesome
initialDelaySeconds: 3 initialDelaySeconds: 3
periodSeconds: 3 periodSeconds: 3

View File

@ -5,13 +5,15 @@ metadata:
spec: spec:
securityContext: securityContext:
runAsUser: 1000 runAsUser: 1000
runAsGroup: 3000
fsGroup: 2000 fsGroup: 2000
volumes: volumes:
- name: sec-ctx-vol - name: sec-ctx-vol
emptyDir: {} emptyDir: {}
containers: containers:
- name: sec-ctx-demo - name: sec-ctx-demo
image: gcr.io/google-samples/node-hello:1.0 image: busybox
command: [ "sh", "-c", "sleep 1h" ]
volumeMounts: volumeMounts:
- name: sec-ctx-vol - name: sec-ctx-vol
mountPath: /data/demo mountPath: /data/demo

View File

@ -5,6 +5,6 @@ metadata:
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.7.9 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80

View File

@ -1,5 +1,5 @@
kind: PersistentVolumeClaim
apiVersion: v1 apiVersion: v1
kind: PersistentVolumeClaim
metadata: metadata:
name: task-pv-claim name: task-pv-claim
spec: spec:

View File

@ -1,5 +1,5 @@
kind: Pod
apiVersion: v1 apiVersion: v1
kind: Pod
metadata: metadata:
name: task-pv-pod name: task-pv-pod
spec: spec:

View File

@ -1,5 +1,5 @@
kind: PersistentVolume
apiVersion: v1 apiVersion: v1
kind: PersistentVolume
metadata: metadata:
name: task-pv-volume name: task-pv-volume
labels: labels:

View File

@ -3,9 +3,9 @@ kind: PodSecurityPolicy
metadata: metadata:
name: restricted name: restricted
annotations: annotations:
seccomp.security.alpha.kubernetes.io/allowedProfileNames: 'docker/default' seccomp.security.alpha.kubernetes.io/allowedProfileNames: 'docker/default,runtime/default'
apparmor.security.beta.kubernetes.io/allowedProfileNames: 'runtime/default' apparmor.security.beta.kubernetes.io/allowedProfileNames: 'runtime/default'
seccomp.security.alpha.kubernetes.io/defaultProfileName: 'docker/default' seccomp.security.alpha.kubernetes.io/defaultProfileName: 'runtime/default'
apparmor.security.beta.kubernetes.io/defaultProfileName: 'runtime/default' apparmor.security.beta.kubernetes.io/defaultProfileName: 'runtime/default'
spec: spec:
privileged: false privileged: false

View File

@ -1,5 +1,5 @@
kind: Service
apiVersion: v1 apiVersion: v1
kind: Service
metadata: metadata:
name: hello name: hello
spec: spec:

View File

@ -1,4 +1,4 @@
apiVersion: extensions/v1beta1 apiVersion: networking.k8s.io/v1beta1
kind: Ingress kind: Ingress
metadata: metadata:
name: test-ingress name: test-ingress

View File

@ -35,6 +35,9 @@ spec:
- name: secret-volume - name: secret-volume
secret: secret:
secretName: nginxsecret secretName: nginxsecret
- name: configmap-volume
configMap:
name: nginxconfigmap
containers: containers:
- name: nginxhttps - name: nginxhttps
image: bprashanth/nginxhttps:1.0 image: bprashanth/nginxhttps:1.0
@ -44,3 +47,5 @@ spec:
volumeMounts: volumeMounts:
- mountPath: /etc/nginx/ssl - mountPath: /etc/nginx/ssl
name: secret-volume name: secret-volume
- mountPath: /etc/nginx/conf.d
name: configmap-volume

View File

@ -14,4 +14,4 @@ spec:
windowsOptions: windowsOptions:
runAsUserName: "ContainerAdministrator" runAsUserName: "ContainerAdministrator"
nodeSelector: nodeSelector:
beta.kubernetes.io/os: windows kubernetes.io/os: windows

View File

@ -11,4 +11,4 @@ spec:
image: mcr.microsoft.com/windows/servercore:ltsc2019 image: mcr.microsoft.com/windows/servercore:ltsc2019
command: ["ping", "-t", "localhost"] command: ["ping", "-t", "localhost"]
nodeSelector: nodeSelector:
beta.kubernetes.io/os: windows kubernetes.io/os: windows

View File

@ -186,3 +186,6 @@ other = "次の項目"
[warning] [warning]
other = "警告:" other = "警告:"
[input_placeholder_email_address]
other = "メールアドレス"

View File

@ -22,7 +22,7 @@
{{- if .Params.deprecated }} {{- if .Params.deprecated }}
<link rel="stylesheet" href="{{ "css/deprecation-warning.css" | relURL }}"> <link rel="stylesheet" href="{{ "css/deprecation-warning.css" | relURL }}">
{{- end }} {{- end }}
{{- if eq .Params.class "gridPage" }} {{- if or (eq .Params.class "gridPage") (eq .Params.class "gridPage gridPageHome") }}
<link rel="stylesheet" href="{{ "css/gridpage.css" | relURL }}"> <link rel="stylesheet" href="{{ "css/gridpage.css" | relURL }}">
{{- end }} {{- end }}
{{- if eq .Params.class "training" }} {{- if eq .Params.class "training" }}

View File

@ -33,12 +33,14 @@ import shutil
import subprocess import subprocess
import sys import sys
import tempfile import tempfile
import platform
error_msgs = [] error_msgs = []
# pip should be installed when Python is installed, but just in case... # pip should be installed when Python is installed, but just in case...
if not (shutil.which('pip') or shutil.which('pip3')): if not (shutil.which('pip') or shutil.which('pip3')):
error_msgs.append("Install pip so you can install PyYAML. https://pip.pypa.io/en/stable/installing") error_msgs.append(
"Install pip so you can install PyYAML. https://pip.pypa.io/en/stable/installing")
reqs = subprocess.check_output([sys.executable, '-m', 'pip', 'freeze']) reqs = subprocess.check_output([sys.executable, '-m', 'pip', 'freeze'])
installed_packages = [r.decode().split('==')[0] for r in reqs.split()] installed_packages = [r.decode().split('==')[0] for r in reqs.split()]
@ -203,7 +205,9 @@ def main():
# create the temp work_dir # create the temp work_dir
try: try:
print("Making temp work_dir") print("Making temp work_dir")
work_dir = tempfile.mkdtemp() work_dir = tempfile.mkdtemp(
dir='/tmp' if platform.system() == 'Darwin' else tempfile.gettempdir()
)
except OSError as ose: except OSError as ose:
print("[Error] Unable to create temp work_dir {}; error: {}" print("[Error] Unable to create temp work_dir {}; error: {}"
.format(work_dir, ose)) .format(work_dir, ose))