Skip to content

Commit 6b03513

Browse files
authored
Merge pull request #29153 from PI-Victor/merged-main-dev-1.22
Merge main into dev 1.22 to sync and fix conflicts
2 parents 845ff46 + 252c44c commit 6b03513

File tree

22 files changed

+83
-53
lines changed

22 files changed

+83
-53
lines changed

content/en/docs/concepts/cluster-administration/flow-control.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -412,6 +412,10 @@ poorly-behaved workloads that may be harming system health.
412412
queue) requests, broken down by the labels `priority_level` and
413413
`flow_schema`.
414414

415+
* `apiserver_flowcontrol_request_concurrency_in_use` is a gauge vector
416+
holding the instantaneous number of occupied seats, broken down by
417+
the labels `priority_level` and `flow_schema`.
418+
415419
* `apiserver_flowcontrol_priority_level_request_count_samples` is a
416420
histogram vector of observations of the then-current number of
417421
requests broken down by the labels `phase` (which takes on the

content/en/docs/concepts/configuration/manage-resources-containers.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ CPU is always requested as an absolute quantity, never as a relative quantity;
115115

116116
Limits and requests for `memory` are measured in bytes. You can express memory as
117117
a plain integer or as a fixed-point number using one of these suffixes:
118-
E, P, T, G, M, K. You can also use the power-of-two equivalents: Ei, Pi, Ti, Gi,
118+
E, P, T, G, M, k. You can also use the power-of-two equivalents: Ei, Pi, Ti, Gi,
119119
Mi, Ki. For example, the following represent roughly the same value:
120120

121121
```shell

content/en/docs/concepts/configuration/secret.md

Lines changed: 32 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -12,26 +12,33 @@ weight: 30
1212

1313
<!-- overview -->
1414

15-
Kubernetes Secrets let you store and manage sensitive information, such
16-
as passwords, OAuth tokens, and ssh keys. Storing confidential information in a Secret
17-
is safer and more flexible than putting it verbatim in a
18-
{{< glossary_tooltip term_id="pod" >}} definition or in a
19-
{{< glossary_tooltip text="container image" term_id="image" >}}.
20-
See [Secrets design document](https://git.k8s.io/community/contributors/design-proposals/auth/secrets.md) for more information.
21-
2215
A Secret is an object that contains a small amount of sensitive data such as
2316
a password, a token, or a key. Such information might otherwise be put in a
24-
Pod specification or in an image. Users can create Secrets and the system
25-
also creates some Secrets.
17+
{{< glossary_tooltip term_id="pod" >}} specification or in a
18+
{{< glossary_tooltip text="container image" term_id="image" >}}. Using a
19+
Secret means that you don't need to include confidential data in your
20+
application code.
21+
22+
Because Secrets can be created independently of the Pods that use them, there
23+
is less risk of the Secret (and its data) being exposed during the workflow of
24+
creating, viewing, and editing Pods. Kubernetes, and applications that run in
25+
your cluster, can also take additional precautions with Secrets, such as
26+
avoiding writing confidential data to nonvolatile storage.
27+
28+
Secrets are similar to {{< glossary_tooltip text="ConfigMaps" term_id="configmap" >}}
29+
but are specifically intended to hold confidential data.
2630

2731
{{< caution >}}
28-
Kubernetes Secrets are, by default, stored as unencrypted base64-encoded
29-
strings. By default they can be retrieved - as plain text - by anyone with API
30-
access, or anyone with access to Kubernetes' underlying data store, etcd. In
31-
order to safely use Secrets, it is recommended you (at a minimum):
32+
Kubernetes Secrets are, by default, stored unencrypted in the API server's underlying data store (etcd). Anyone with API access can retrieve or modify a Secret, and so can anyone with access to etcd.
33+
Additionally, anyone who is authorized to create a Pod in a namespace can use that access to read any Secret in that namespace; this includes indirect access such as the ability to create a Deployment.
34+
35+
In order to safely use Secrets, take at least the following steps:
3236

3337
1. [Enable Encryption at Rest](/docs/tasks/administer-cluster/encrypt-data/) for Secrets.
34-
2. [Enable or configure RBAC rules](/docs/reference/access-authn-authz/authorization/) that restrict reading and writing the Secret. Be aware that secrets can be obtained implicitly by anyone with the permission to create a Pod.
38+
2. Enable or configure [RBAC rules](/docs/reference/access-authn-authz/authorization/) that
39+
restrict reading data in Secrets (including via indirect means).
40+
3. Where appropriate, also use mechanisms such as RBAC to limit which principals are allowed to create new Secrets or replace existing ones.
41+
3542
{{< /caution >}}
3643

3744
<!-- body -->
@@ -47,6 +54,10 @@ A Secret can be used with a Pod in three ways:
4754
- As [container environment variable](#using-secrets-as-environment-variables).
4855
- By the [kubelet when pulling images](#using-imagepullsecrets) for the Pod.
4956

57+
The Kubernetes control plane also uses Secrets; for example,
58+
[bootstrap token Secrets](#bootstrap-token-secrets) are a mechanism to
59+
help automate node registration.
60+
5061
The name of a Secret object must be a valid
5162
[DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names).
5263
You can specify the `data` and/or the `stringData` field when creating a
@@ -407,9 +418,9 @@ stringData:
407418

408419
There are several options to create a Secret:
409420

410-
- [create Secrets using `kubectl` command](/docs/tasks/configmap-secret/managing-secret-using-kubectl/)
411-
- [create Secrets from config file](/docs/tasks/configmap-secret/managing-secret-using-config-file/)
412-
- [create Secrets using kustomize](/docs/tasks/configmap-secret/managing-secret-using-kustomize/)
421+
- [create Secret using `kubectl` command](/docs/tasks/configmap-secret/managing-secret-using-kubectl/)
422+
- [create Secret from config file](/docs/tasks/configmap-secret/managing-secret-using-config-file/)
423+
- [create Secret using kustomize](/docs/tasks/configmap-secret/managing-secret-using-kustomize/)
413424

414425
## Editing a Secret
415426

@@ -1164,7 +1175,7 @@ limit access using [authorization policies](
11641175
Secrets often hold values that span a spectrum of importance, many of which can
11651176
cause escalations within Kubernetes (e.g. service account tokens) and to
11661177
external systems. Even if an individual app can reason about the power of the
1167-
secrets it expects to interact with, other apps within the same namespace can
1178+
Secrets it expects to interact with, other apps within the same namespace can
11681179
render those assumptions invalid.
11691180

11701181
For these reasons `watch` and `list` requests for secrets within a namespace are
@@ -1236,10 +1247,8 @@ for secret data, so that the secrets are not stored in the clear into {{< glossa
12361247
if the API server policy does not allow that user to read the Secret, the user could
12371248
run a Pod which exposes the secret.
12381249

1239-
12401250
## {{% heading "whatsnext" %}}
12411251

1242-
- Learn how to [manage Secrets using `kubectl`](/docs/tasks/configmap-secret/managing-secret-using-kubectl/)
1243-
- Learn how to [manage Secrets using config file](/docs/tasks/configmap-secret/managing-secret-using-config-file/)
1244-
- Learn how to [manage Secrets using kustomize](/docs/tasks/configmap-secret/managing-secret-using-kustomize/)
1245-
1252+
- Learn how to [manage Secret using `kubectl`](/docs/tasks/configmap-secret/managing-secret-using-kubectl/)
1253+
- Learn how to [manage Secret using config file](/docs/tasks/configmap-secret/managing-secret-using-config-file/)
1254+
- Learn how to [manage Secret using kustomize](/docs/tasks/configmap-secret/managing-secret-using-kustomize/)

content/en/docs/concepts/overview/working-with-objects/annotations.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,11 @@ Annotations, like labels, are key/value maps:
3030
}
3131
```
3232

33+
{{<note>}}
34+
The keys and the values in the map must be strings. In other words, you cannot use
35+
numeric, boolean, list or other types for either the keys or the values.
36+
{{</note>}}
37+
3338
Here are some examples of information that could be recorded in annotations:
3439

3540
* Fields managed by a declarative configuration layer. Attaching these fields

content/en/docs/concepts/workloads/controllers/daemonset.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -230,6 +230,8 @@ storage servers).
230230
Use a Deployment for stateless services, like frontends, where scaling up and down the
231231
number of replicas and rolling out updates are more important than controlling exactly which host
232232
the Pod runs on. Use a DaemonSet when it is important that a copy of a Pod always run on
233-
all or certain hosts, and when it needs to start before other Pods.
233+
all or certain hosts, if the DaemonSet provides node-level functionality that allows other Pods to run correctly on that particular node.
234+
235+
For example, [network plugins](/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/) often include a component that runs as a DaemonSet. The DaemonSet component makes sure that the node where it's running has working cluster networking.
234236

235237

content/en/docs/concepts/workloads/pods/init-containers.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,8 @@ Given the ordering and execution for init containers, the following rules
291291
for resource usage apply:
292292

293293
* The highest of any particular resource request or limit defined on all init
294-
containers is the *effective init request/limit*
294+
containers is the *effective init request/limit*. If any resource has no
295+
resource limit specified this is considered as the highest limit.
295296
* The Pod's *effective request/limit* for a resource is the higher of:
296297
* the sum of all app containers request/limit for a resource
297298
* the effective init request/limit for a resource

content/en/docs/concepts/workloads/pods/pod-lifecycle.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -379,7 +379,7 @@ An example flow:
379379
as terminating (a graceful shutdown duration has been set), the kubelet begins the local Pod
380380
shutdown process.
381381
1. If one of the Pod's containers has defined a `preStop`
382-
[hook](/docs/concepts/containers/container-lifecycle-hooks/#hook-details), the kubelet
382+
[hook](/docs/concepts/containers/container-lifecycle-hooks), the kubelet
383383
runs that hook inside of the container. If the `preStop` hook is still running after the
384384
grace period expires, the kubelet requests a small, one-off grace period extension of 2
385385
seconds.

content/en/docs/contribute/generate-ref-docs/quickstart.md

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ weight: 40
66

77
<!-- overview -->
88

9-
This page shows how to use the `update-imported-docs` script to generate
9+
This page shows how to use the `update-imported-docs.py` script to generate
1010
the Kubernetes reference documentation. The script automates
1111
the build setup and generates the reference documentation for a release.
1212

@@ -39,7 +39,7 @@ see the [contributing upstream guide](/docs/contribute/generate-ref-docs/contrib
3939

4040
## Overview of update-imported-docs
4141

42-
The `update-imported-docs` script is located in the `<web-base>/update-imported-docs/`
42+
The `update-imported-docs.py` script is located in the `<web-base>/update-imported-docs/`
4343
directory.
4444

4545
The script builds the following references:
@@ -48,7 +48,7 @@ The script builds the following references:
4848
* The `kubectl` command reference
4949
* The Kubernetes API reference
5050

51-
The `update-imported-docs` script generates the Kubernetes reference documentation
51+
The `update-imported-docs.py` script generates the Kubernetes reference documentation
5252
from the Kubernetes source code. The script creates a temporary directory
5353
under `/tmp` on your machine and clones the required repositories: `kubernetes/kubernetes` and
5454
`kubernetes-sigs/reference-docs` into this directory.
@@ -69,7 +69,7 @@ The `generate-command` field defines a series of build instructions
6969
from `kubernetes-sigs/reference-docs/Makefile`. The `K8S_RELEASE` variable
7070
determines the version of the release.
7171

72-
The `update-imported-docs` script performs the following steps:
72+
The `update-imported-docs.py` script performs the following steps:
7373

7474
1. Clones the related repositories specified in a configuration file. For the
7575
purpose of generating reference docs, the repository that is cloned by
@@ -152,17 +152,17 @@ For example:
152152

153153
## Running the update-imported-docs tool
154154

155-
You can run the `update-imported-docs` tool as follows:
155+
You can run the `update-imported-docs.py` tool as follows:
156156

157157
```shell
158158
cd <web-base>/update-imported-docs
159-
./update-imported-docs <configuration-file.yml> <release-version>
159+
./update-imported-docs.py <configuration-file.yml> <release-version>
160160
```
161161

162162
For example:
163163

164164
```shell
165-
./update-imported-docs reference.yml 1.17
165+
./update-imported-docs.py reference.yml 1.17
166166
```
167167

168168
<!-- Revisit: is the release configuration used -->
@@ -254,4 +254,3 @@ running the build targets, see the following guides:
254254
* [Generating Reference Documentation for kubectl Commands](/docs/contribute/generate-ref-docs/kubectl/)
255255
* [Generating Reference Documentation for the Kubernetes API](/docs/contribute/generate-ref-docs/kubernetes-api/)
256256
257-

content/en/docs/reference/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ client libraries:
3939
- [Kubernetes Java client library](https://github.com/kubernetes-client/java)
4040
- [Kubernetes JavaScript client library](https://github.com/kubernetes-client/javascript)
4141
- [Kubernetes C# client library](https://github.com/kubernetes-client/csharp)
42-
- [Kubernetes Haskell Client library](https://github.com/kubernetes-client/haskell)
42+
- [Kubernetes Haskell client library](https://github.com/kubernetes-client/haskell)
4343

4444
## CLI
4545

content/en/docs/reference/command-line-tools-reference/feature-gates.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22
title: Feature Gates
33
weight: 10
44
content_type: concept
5+
card:
6+
name: reference
7+
weight: 60
58
---
69

710
<!-- overview -->

0 commit comments

Comments
 (0)