Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[KEP-2876] Placeholder doc PR for kep 2876 #42043

Closed
wants to merge 34 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
d2d1242
KEP-3325: Promote SelfSubjectReview to GA
nabokihms May 4, 2023
3084195
Apply suggestions from code review
nabokihms May 4, 2023
77709a9
Merge pull request #40956 from nabokihms/ssr-ga
k8s-ci-robot May 5, 2023
c75d308
move DelegateFSGroupToCSIDriver featuregate
carlory May 8, 2023
818851f
Merge pull request #41007 from carlory/fix-002
k8s-ci-robot May 12, 2023
77e403d
kubeadm: add the "config validate" command
neolit123 May 15, 2023
7323fdd
Merge branch 'merged-main-dev1.28' into dev-1.28
Rishit-dagli May 16, 2023
c32105d
Merge pull request #2 from Rishit-dagli/dev-1.28
Rishit-dagli May 16, 2023
16bc2a7
Merge pull request #41169 from Rishit-dagli/merged-main-dev1.28
k8s-ci-robot May 16, 2023
e7bc5e1
Update hugo.toml for 1.28
Rishit-dagli May 16, 2023
f0eebb1
remove featuregate DevicePlugins
carlory May 12, 2023
78ccaa5
Merge pull request #41095 from carlory/fix-003
k8s-ci-robot May 17, 2023
970317e
Remove 1.23 from versions dropdown
Rishit-dagli May 17, 2023
6d956fe
Merge pull request #41150 from neolit123/1.28-add-kubeadm-config-vali…
k8s-ci-robot May 26, 2023
610b895
Merge pull request #41308 from kubernetes/main
k8s-ci-robot May 30, 2023
8d42b3a
Update ExpandedDNSConfig docs for GA
gjkim42 Apr 12, 2023
485133f
promote ServiceNodePortStaticSubrange to beta
xuzhenglun May 9, 2023
35190c2
Merge pull request #41037 from xuzhenglun/dev-1.28
k8s-ci-robot May 31, 2023
df7cbd1
Merge pull request #40639 from gjkim42/update-expanded-dns-config-doc…
k8s-ci-robot May 31, 2023
1a473ee
Merge pull request #41179 from Rishit-dagli/config-dev.128
k8s-ci-robot May 31, 2023
f5cd332
Add LegacyServiceAccountTokenCleanUp feature in alpha and Update
yt2985 May 26, 2023
884bf0b
Merge pull request #41341 from yt2985/dev-1.28
k8s-ci-robot May 31, 2023
6f9fec3
node: graduate the podresources API endpoint to GA
carlory Jun 6, 2023
290b12c
Removed the keyword new from dynamic-resource-allocation.md (#41483)
vaibhav2107 Jun 13, 2023
01c9dec
rename PodHasNetwork to PodReadyToStartContainers (#40945)
kannon92 Jun 16, 2023
d5a2a69
kubeadm: add docs for UpgradeAddonsBeforeControlPlane feature gate
SataQiu Jun 21, 2023
e2dc67d
Merge pull request #3 from Rishit-dagli/main
Rishit-dagli Jun 21, 2023
30f8c53
Merge pull request #41606 from SataQiu/add-docs-for-UpgradeAddonsBefo…
k8s-ci-robot Jun 22, 2023
79ac61b
Merge pull request #41506 from carlory/kep-606
k8s-ci-robot Jun 24, 2023
3e0e88d
docs: podresources API is stable
ffromani Jun 29, 2023
9e2b2cb
Merge pull request #41720 from Rishit-dagli/merged
k8s-ci-robot Jul 1, 2023
a4a0872
Merge pull request #41804 from ffromani/podresources-ga-fixup
k8s-ci-robot Jul 3, 2023
e003b02
Move Feature Gate AdvancedAuditing to Feature Gates (removed) Page (#…
Shubham82 Jul 4, 2023
0f66ee5
Update doc for KEP 2876
cici37 Jul 17, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -195,7 +195,7 @@ of the device allocations during the upgrade.

## Monitoring device plugin resources

{{< feature-state for_k8s_version="v1.15" state="beta" >}}
{{< feature-state for_k8s_version="v1.28" state="stable" >}}

In order to monitor resources provided by device plugins, monitoring agents need to be able to
discover the set of devices that are in-use on the node and obtain metadata to describe which
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ weight: 65

{{< feature-state for_k8s_version="v1.27" state="alpha" >}}

Dynamic resource allocation is a new API for requesting and sharing resources
Dynamic resource allocation is an API for requesting and sharing resources
between pods and containers inside a pod. It is a generalization of the
persistent volumes API for generic resources. Third-party resource drivers are
responsible for tracking and allocating resources. Different kinds of
Expand All @@ -32,7 +32,7 @@ check the documentation for that version of Kubernetes.
## API

The `resource.k8s.io/v1alpha2` {{< glossary_tooltip text="API group"
term_id="api-group" >}} provides four new types:
term_id="api-group" >}} provides four types:

ResourceClass
: Defines which resource driver handles a certain kind of
Expand Down Expand Up @@ -61,7 +61,7 @@ typically using the type defined by a {{< glossary_tooltip
term_id="CustomResourceDefinition" text="CRD" >}} that was created when
installing a resource driver.

The `core/v1` `PodSpec` defines ResourceClaims that are needed for a Pod in a new
The `core/v1` `PodSpec` defines ResourceClaims that are needed for a Pod in a
`resourceClaims` field. Entries in that list reference either a ResourceClaim
or a ResourceClaimTemplate. When referencing a ResourceClaim, all Pods using
this PodSpec (for example, inside a Deployment or StatefulSet) share the same
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -292,7 +292,7 @@ Below are the properties a user can specify in the `dnsConfig` field:
This property is optional. When specified, the provided list will be merged
into the base search domain names generated from the chosen DNS policy.
Duplicate domain names are removed.
Kubernetes allows for at most 6 search domains.
Kubernetes allows up to 32 search domains.
- `options`: an optional list of objects where each object may have a `name`
property (required) and a `value` property (optional). The contents in this
property will be merged to the options generated from the specified DNS policy.
Expand Down
2 changes: 1 addition & 1 deletion content/en/docs/concepts/services-networking/service.md
Original file line number Diff line number Diff line change
Expand Up @@ -516,7 +516,7 @@ spec:

#### Reserve Nodeport Ranges to avoid collisions when port assigning

{{< feature-state for_k8s_version="v1.27" state="alpha" >}}
{{< feature-state for_k8s_version="v1.28" state="beta" >}}

The policy for assigning ports to NodePort services applies to both the auto-assignment and
the manual assignment scenarios. When a user wants to create a NodePort service that
Expand Down
16 changes: 10 additions & 6 deletions content/en/docs/concepts/workloads/pods/pod-lifecycle.md
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ through which the Pod has or has not passed. Kubelet manages the following
PodConditions:

* `PodScheduled`: the Pod has been scheduled to a node.
* `PodHasNetwork`: (alpha feature; must be [enabled explicitly](#pod-has-network)) the
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should list this as a legacy name that people may still see.

* `PodReadyToStartContainers`: (alpha feature; must be [enabled explicitly](#pod-has-network)) the
Pod sandbox has been successfully created and networking configured.
* `ContainersReady`: all containers in the Pod are ready.
* `Initialized`: all [init containers](/docs/concepts/workloads/pods/init-containers/)
Expand Down Expand Up @@ -244,15 +244,19 @@ When a Pod's containers are Ready but at least one custom condition is missing o

{{< feature-state for_k8s_version="v1.25" state="alpha" >}}

{{< note >}}
This condition was renamed from PodHasNetwork to PodReadyToStartContainers.
{{< /note >}}

After a Pod gets scheduled on a node, it needs to be admitted by the Kubelet and
have any volumes mounted. Once these phases are complete, the Kubelet works with
a container runtime (using {{< glossary_tooltip term_id="cri" >}}) to set up a
runtime sandbox and configure networking for the Pod. If the
`PodHasNetworkCondition` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) is enabled,
`PodReadyToStartContainersCondition` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) is enabled,
Kubelet reports whether a pod has reached this initialization milestone through
the `PodHasNetwork` condition in the `status.conditions` field of a Pod.
the `PodReadyToStartContainers` condition in the `status.conditions` field of a Pod.

The `PodHasNetwork` condition is set to `False` by the Kubelet when it detects a
The `PodReadyToStartContainers` condition is set to `False` by the Kubelet when it detects a
Pod does not have a runtime sandbox with networking configured. This occurs in
the following scenarios:
* Early in the lifecycle of the Pod, when the kubelet has not yet begun to set up a sandbox for the Pod using the container runtime.
Expand All @@ -262,10 +266,10 @@ the following scenarios:
* for container runtimes that use virtual machines for isolation, the Pod
sandbox virtual machine rebooting, which then requires creating a new sandbox and fresh container network configuration.

The `PodHasNetwork` condition is set to `True` by the kubelet after the
The `PodReadyToStartContainers` condition is set to `True` by the kubelet after the
successful completion of sandbox creation and network configuration for the Pod
by the runtime plugin. The kubelet can start pulling container images and create
containers after `PodHasNetwork` condition has been set to `True`.
containers after `PodReadyToStartContainers` condition has been set to `True`.

For a Pod with init containers, the kubelet sets the `Initialized` condition to
`True` after the init containers have successfully completed (which happens
Expand Down
18 changes: 10 additions & 8 deletions content/en/docs/reference/access-authn-authz/authentication.md
Original file line number Diff line number Diff line change
Expand Up @@ -1220,7 +1220,7 @@ The following `ExecCredential` manifest describes a cluster information sample.

## API access to authentication information for a client {#self-subject-review}

{{< feature-state for_k8s_version="v1.27" state="beta" >}}
{{< feature-state for_k8s_version="v1.28" state="stable" >}}

If your cluster has the API enabled, you can use the `SelfSubjectReview` API to find out how your Kubernetes cluster maps your authentication
information to identify you as a client. This works whether you are authenticating as a user (typically representing
Expand All @@ -1230,19 +1230,19 @@ a real person) or as a ServiceAccount.

Request example (the body would be a `SelfSubjectReview`):
```
POST /apis/authentication.k8s.io/v1beta1/selfsubjectreviews
POST /apis/authentication.k8s.io/v1/selfsubjectreviews
```
```json
{
"apiVersion": "authentication.k8s.io/v1beta1",
"apiVersion": "authentication.k8s.io/v1",
"kind": "SelfSubjectReview"
}
```
Response example:

```json
{
"apiVersion": "authentication.k8s.io/v1beta1",
"apiVersion": "authentication.k8s.io/v1",
"kind": "SelfSubjectReview",
"status": {
"userInfo": {
Expand Down Expand Up @@ -1285,7 +1285,7 @@ By providing the output flag, it is also possible to print the JSON or YAML repr
{{% tab name="JSON" %}}
```json
{
"apiVersion": "authentication.k8s.io/v1alpha1",
"apiVersion": "authentication.k8s.io/v1",
"kind": "SelfSubjectReview",
"status": {
"userInfo": {
Expand Down Expand Up @@ -1314,7 +1314,7 @@ By providing the output flag, it is also possible to print the JSON or YAML repr

{{% tab name="YAML" %}}
```yaml
apiVersion: authentication.k8s.io/v1alpha1
apiVersion: authentication.k8s.io/v1
kind: SelfSubjectReview
status:
userInfo:
Expand Down Expand Up @@ -1351,8 +1351,10 @@ By default, all authenticated users can create `SelfSubjectReview` objects when
You can only make `SelfSubjectReview` requests if:
* the `APISelfSubjectReview`
[feature gate](/docs/reference/command-line-tools-reference/feature-gates/)
is enabled for your cluster (enabled by default after reaching Beta)
* the API server for your cluster has the `authentication.k8s.io/v1alpha1` or `authentication.k8s.io/v1beta1`
is enabled for your cluster (not needed for Kubernetes {{< skew currentVersion >}}, but older
Kubernetes versions might not offer this feature gate, or might default it to be off)
* (if you are running a version of Kubernetes older than v1.28) the API server for your
cluster has the `authentication.k8s.io/v1alpha1` or `authentication.k8s.io/v1beta1`
{{< glossary_tooltip term_id="api-group" text="API group" >}}
enabled.
{{< /note >}}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,9 @@ In the following table:
|---------|---------|-------|-------|-------|
| `Accelerators` | `false` | Alpha | 1.6 | 1.10 |
| `Accelerators` | - | Deprecated | 1.11 | 1.11 |
| `AdvancedAuditing` | `false` | Alpha | 1.7 | 1.7 |
| `AdvancedAuditing` | `true` | Beta | 1.8 | 1.11 |
| `AdvancedAuditing` | `true` | GA | 1.12 | 1.27 |
| `AffinityInAnnotations` | `false` | Alpha | 1.6 | 1.7 |
| `AffinityInAnnotations` | - | Deprecated | 1.8 | 1.8 |
| `AllowExtTrafficLocalEndpoints` | `false` | Beta | 1.4 | 1.6 |
Expand Down Expand Up @@ -134,6 +137,12 @@ In the following table:
| `DefaultPodTopologySpread` | `false` | Alpha | 1.19 | 1.19 |
| `DefaultPodTopologySpread` | `true` | Beta | 1.20 | 1.23 |
| `DefaultPodTopologySpread` | `true` | GA | 1.24 | 1.25 |
| `DelegateFSGroupToCSIDriver` | `false` | Alpha | 1.22 | 1.22 |
| `DelegateFSGroupToCSIDriver` | `true` | Beta | 1.23 | 1.25 |
| `DelegateFSGroupToCSIDriver` | `true` | GA | 1.26 | 1.27 |
| `DevicePlugins` | `false` | Alpha | 1.8 | 1.9 |
| `DevicePlugins` | `true` | Beta | 1.10 | 1.25 |
| `DevicePlugins` | `true` | GA | 1.26 | 1.27 |
| `DynamicAuditing` | `false` | Alpha | 1.13 | 1.18 |
| `DynamicAuditing` | - | Deprecated | 1.19 | 1.19 |
| `DynamicKubeletConfig` | `false` | Alpha | 1.4 | 1.10 |
Expand Down Expand Up @@ -244,6 +253,7 @@ In the following table:
| `PodDisruptionBudget` | `false` | Alpha | 1.3 | 1.4 |
| `PodDisruptionBudget` | `true` | Beta | 1.5 | 1.20 |
| `PodDisruptionBudget` | `true` | GA | 1.21 | 1.25 |
| `PodHasNetworkCondition` | `false` | Alpha | 1.25 | 1.27 |
| `PodOverhead` | `false` | Alpha | 1.16 | 1.17 |
| `PodOverhead` | `true` | Beta | 1.18 | 1.23 |
| `PodOverhead` | `true` | GA | 1.24 | 1.25 |
Expand Down Expand Up @@ -389,6 +399,8 @@ In the following table:
- `AffinityInAnnotations`: Enable setting
[Pod affinity or anti-affinity](/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity).

- `AdvancedAuditing`: Enable [advanced auditing](/docs/tasks/debug/debug-cluster/audit/#advanced-audit)

- `AllowExtTrafficLocalEndpoints`: Enable a service to route external requests to node local endpoints.

- `AllowInsecureBackendProxy`: Enable the users to skip TLS verification of
Expand Down Expand Up @@ -564,6 +576,13 @@ In the following table:
- `DefaultPodTopologySpread`: Enables the use of `PodTopologySpread` scheduling plugin to do
[default spreading](/docs/concepts/scheduling-eviction/topology-spread-constraints/#internal-default-constraints).

- `DelegateFSGroupToCSIDriver`: If supported by the CSI driver, delegates the
role of applying `fsGroup` from a Pod's `securityContext` to the driver by
passing `fsGroup` through the NodeStageVolume and NodePublishVolume CSI calls.

- `DevicePlugins`: Enable the [device-plugins](/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/)
based resource provisioning on nodes.

- `DynamicAuditing`: Used to enable dynamic auditing before v1.19.

- `DynamicKubeletConfig`: Enable the dynamic configuration of kubelet. The
Expand Down Expand Up @@ -699,6 +718,8 @@ In the following table:

- `PodDisruptionBudget`: Enable the [PodDisruptionBudget](/docs/tasks/run-application/configure-pdb/) feature.

- `PodHasNetwork`: Enable the kubelet to mark the [PodHasNetwork](/docs/concepts/workloads/pods/pod-lifecycle/#pod-has-network)
condition on pods. This was renamed to `PodReadyToStartContainersCondition` in 1.28.
- `PodOverhead`: Enable the [PodOverhead](/docs/concepts/scheduling-eviction/pod-overhead/)
feature to account for pod overheads.

Expand Down
Loading