Skip to content

Commit 95b7685

Browse files
committed
Fix some links in the En docs
1 parent b64cf31 commit 95b7685

14 files changed

Lines changed: 224 additions & 177 deletions

File tree

content/en/docs/concepts/cluster-administration/dra.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ While this is a good starting point, you can get a better idea of how to tune
111111
the different components that have the biggest effect on DRA performance for
112112
your deployment by monitoring the following metrics. For more information on all
113113
the stable metrics in Kubernetes, see the [Kubernetes Metrics
114-
Reference](/docs/reference/generated/metrics/).
114+
Reference](/docs/reference/instrumentation/metrics/).
115115

116116
### `kube-controller-manager` metrics
117117

@@ -191,4 +191,4 @@ metrics.
191191
* [Learn more about
192192
DRA](/docs/concepts/scheduling-eviction/dynamic-resource-allocation/)
193193
* Read the [Kubernetes Metrics
194-
Reference](/docs/reference/generated/metrics/)
194+
Reference](/docs/reference/instrumentation/metrics/)

content/en/docs/concepts/containers/container-lifecycle-hooks.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ Resources consumed by the command are counted against the Container.
6969

7070
When a Container lifecycle management hook is called,
7171
the Kubernetes management system executes the handler according to the hook action,
72-
`httpGet`, `tcpSocket` ([deprecated](/docs/reference/generated/kubernetes-api/v1.31/#lifecyclehandler-v1-core))
72+
`httpGet`, `tcpSocket` ([deprecated](/docs/reference/generated/kubernetes-api/v1.35/#lifecyclehandler-v1-core))
7373
and `sleep` are executed by the kubelet process, and `exec` is executed in the container.
7474

7575
The `PostStart` hook handler call is initiated when a container is created,

content/en/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,8 @@ let you meet it.
4949
* To get the aggregator working in your environment, [configure the aggregation layer](/docs/tasks/extend-kubernetes/configure-aggregation-layer/).
5050
* Then, [setup an extension api-server](/docs/tasks/extend-kubernetes/setup-extension-api-server/) to work with the aggregation layer.
5151
* Read about [APIService](/docs/reference/kubernetes-api/cluster-resources/api-service-v1/) in the API reference
52-
* Learn about [Declarative Validation Concepts](/docs/reference/using-api/declarative-validation.md), an internal mechanism for defining validation rules that in the future will help support validation for extension API server development.
53-
54-
Alternatively: learn how to
55-
[extend the Kubernetes API using Custom Resource Definitions](/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/).
52+
* Learn about [Declarative Validation Concepts](/docs/reference/using-api/declarative-validation/),
53+
an internal mechanism for defining validation rules that in the future will help support validation for extension API server development.
5654

55+
Alternatively: learn how to extend the Kubernetes API using
56+
[Custom Resource Definitions](/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/).

content/en/docs/concepts/scheduling-eviction/dynamic-resource-allocation.md

Lines changed: 102 additions & 103 deletions
Large diffs are not rendered by default.

content/en/docs/concepts/security/hardening-guide/scheduler.md

Lines changed: 37 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -22,43 +22,58 @@ This can aid an attacker with a [Yo-Yo attack](https://arxiv.org/abs/2105.00542)
2222

2323
### Scheduler authentication & authorization command line options
2424

25-
When setting up authentication configuration, it should be made sure that kube-scheduler's authentication remains consistent with kube-api-server's authentication.
26-
If any request has missing authentication headers,
27-
the [authentication should happen through the kube-api-server allowing all authentication to be consistent in the cluster](/docs/tasks/extend-kubernetes/configure-aggregation-layer/#original-request-username-and-group).
28-
29-
- `authentication-kubeconfig`: Make sure to provide a proper kubeconfig so that the scheduler can retrieve authentication configuration options from the API Server. This kubeconfig file should be protected with strict file permissions.
30-
- `authentication-tolerate-lookup-failure`: Set this to `false` to make sure the scheduler _always_ looks up its authentication configuration from the API server.
31-
- `authentication-skip-lookup`: Set this to `false` to make sure the scheduler _always_ looks up its authentication configuration from the API server.
32-
- `authorization-always-allow-paths`: These paths should respond with data that is appropriate for anonymous authorization. Defaults to `/healthz,/readyz,/livez`.
33-
- `profiling`: Set to `false` to disable the profiling endpoints which are provide debugging information but which should not be enabled on production clusters as they present a risk of denial of service or information leakage. The `--profiling` argument is deprecated and can now be provided through the [KubeScheduler DebuggingConfiguration](https://kubernetes.io/docs/reference/config-api/kube-scheduler-config.v1/#DebuggingConfiguration). Profiling can be disabled through the kube-scheduler config by setting `enableProfiling` to `false`.
25+
When setting up authentication configuration, it should be made sure that
26+
kube-scheduler's authentication remains consistent with kube-api-server's authentication.
27+
If any request has missing authentication headers, the authentication should happen through the kube-api-server
28+
[allowing all authentication to be consistent in the cluster](/docs/tasks/extend-kubernetes/configure-aggregation-layer/#original-request-username-and-group).
29+
30+
- `authentication-kubeconfig`: Make sure to provide a proper kubeconfig so that
31+
the scheduler can retrieve authentication configuration options from the API Server.
32+
This kubeconfig file should be protected with strict file permissions.
33+
- `authentication-tolerate-lookup-failure`: Set this to `false` to make sure
34+
the scheduler _always_ looks up its authentication configuration from the API server.
35+
- `authentication-skip-lookup`: Set this to `false` to make sure
36+
the scheduler _always_ looks up its authentication configuration from the API server.
37+
- `authorization-always-allow-paths`: These paths should respond with data that is appropriate
38+
for anonymous authorization. Defaults to `/healthz,/readyz,/livez`.
39+
- `profiling`: Set to `false` to disable the profiling endpoints which are provide debugging information
40+
but which should not be enabled on production clusters as they present a risk of denial of service
41+
or information leakage. The `--profiling` argument is deprecated and can now be provided through the
42+
[KubeScheduler DebuggingConfiguration](/docs/reference/config-api/kube-scheduler-config.v1/#DebuggingConfiguration).
43+
Profiling can be disabled through the kube-scheduler config by setting `enableProfiling` to `false`.
3444
- `requestheader-client-ca-file`: Avoid passing this argument.
3545

36-
3746
### Scheduler networking command line options
3847

39-
- `bind-address`: In most cases, the kube-scheduler does not need to be externally accessible. Setting the bind address to `localhost` is a secure practice.
40-
- `permit-address-sharing`: Set this to `false` to disable connection sharing through `SO_REUSEADDR`. `SO_REUSEADDR` can lead to reuse of terminated connections that are in `TIME_WAIT` state.
48+
- `bind-address`: In most cases, the kube-scheduler does not need to be externally accessible.
49+
Setting the bind address to `localhost` is a secure practice.
50+
- `permit-address-sharing`: Set this to `false` to disable connection sharing through `SO_REUSEADDR`.
51+
`SO_REUSEADDR` can lead to reuse of terminated connections that are in `TIME_WAIT` state.
4152
- `permit-port-sharing`: Default `false`. Use the default unless you are confident you understand the security implications.
4253

43-
4454
### Scheduler TLS command line options
4555

46-
- `tls-cipher-suites`: Always provide a list of preferred cipher suites. This ensures encryption never happens with insecure cipher suites.
47-
56+
- `tls-cipher-suites`: Always provide a list of preferred cipher suites.
57+
This ensures encryption never happens with insecure cipher suites.
4858

4959
## Scheduling configurations for custom schedulers
5060

5161
When using custom schedulers based on the Kubernetes scheduling code, cluster administrators need to be careful with
5262
plugins that use the `queueSort`, `prefilter`, `filter`, or `permit` [extension points](/docs/reference/scheduling/config/#extension-points).
53-
These extension points control various stages of a scheduling process, and the wrong configuration can impact the kube-scheduler's behavior in your cluster.
63+
These extension points control various stages of a scheduling process,
64+
and the wrong configuration can impact the kube-scheduler's behavior in your cluster.
5465

5566
### Key considerations
5667

57-
- Exactly one plugin that uses the `queueSort` extension point can be enabled at a time. Any plugins that use `queueSort` should be scrutinized.
58-
- Plugins that implement the `prefilter` or `filter` extension point can potentially mark all nodes as unschedulable. This can bring scheduling of new pods to a halt.
59-
- Plugins that implement the `permit` extension point can prevent or delay the binding of a Pod. Such plugins should be thoroughly reviewed by the cluster administrator.
68+
- Exactly one plugin that uses the `queueSort` extension point can be enabled at a time.
69+
Any plugins that use `queueSort` should be scrutinized.
70+
- Plugins that implement the `prefilter` or `filter` extension point can potentially mark all nodes as unschedulable.
71+
This can bring scheduling of new pods to a halt.
72+
- Plugins that implement the `permit` extension point can prevent or delay the binding of a Pod.
73+
Such plugins should be thoroughly reviewed by the cluster administrator.
6074

61-
When using a plugin that is not one of the [default plugins](/docs/reference/scheduling/config/#scheduling-plugins), consider disabling the `queueSort`, `filter` and `permit` extension points as follows:
75+
When using a plugin that is not one of the [default plugins](/docs/reference/scheduling/config/#scheduling-plugins),
76+
consider disabling the `queueSort`, `filter` and `permit` extension points as follows:
6277

6378
```yaml
6479
apiVersion: kubescheduler.config.k8s.io/v1
@@ -84,7 +99,8 @@ profiles:
8499
This creates a scheduler profile ` my-scheduler`.
85100
Whenever the `.spec` of a Pod does not have a value for `.spec.schedulerName`, the kube-scheduler runs for that Pod,
86101
using its main configuration, and default plugins.
87-
If you define a Pod with `.spec.schedulerName` set to `my-scheduler`, the kube-scheduler runs but with a custom configuration; in that custom configuration,
102+
If you define a Pod with `.spec.schedulerName` set to `my-scheduler`, the kube-scheduler runs
103+
but with a custom configuration; in that custom configuration,
88104
the `queueSort`, `filter` and `permit` extension points are disabled.
89105
If you use this KubeSchedulerConfiguration, and don't run any custom scheduler,
90106
and you then define a Pod with `.spec.schedulerName` set to `nonexistent-scheduler`

content/en/docs/concepts/storage/projected-volumes.md

Lines changed: 24 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -77,12 +77,18 @@ volume mount will not receive updates for those volume sources.
7777
{{< feature-state feature_gate_name="ClusterTrustBundleProjection" >}}
7878

7979
{{< note >}}
80-
To use this feature in Kubernetes {{< skew currentVersion >}}, you must enable support for ClusterTrustBundle objects with the `ClusterTrustBundle` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) and `--runtime-config=certificates.k8s.io/v1beta1/clustertrustbundles=true` kube-apiserver flag, then enable the `ClusterTrustBundleProjection` feature gate.
80+
To use this feature in Kubernetes {{< skew currentVersion >}}, you must enable support for ClusterTrustBundle objects
81+
with the `ClusterTrustBundle` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) and
82+
`--runtime-config=certificates.k8s.io/v1beta1/clustertrustbundles=true` kube-apiserver flag,
83+
then enable the `ClusterTrustBundleProjection` feature gate.
8184
{{< /note >}}
8285

83-
The `clusterTrustBundle` projected volume source injects the contents of one or more [ClusterTrustBundle](/docs/reference/access-authn-authz/certificate-signing-requests#cluster-trust-bundles) objects as an automatically-updating file in the container filesystem.
86+
The `clusterTrustBundle` projected volume source injects the contents of one or more
87+
[ClusterTrustBundle](/docs/reference/access-authn-authz/certificate-signing-requests#cluster-trust-bundles)
88+
objects as an automatically-updating file in the container filesystem.
8489

85-
ClusterTrustBundles can be selected either by [name](/docs/reference/access-authn-authz/certificate-signing-requests#ctb-signer-unlinked) or by [signer name](/docs/reference/access-authn-authz/certificate-signing-requests#ctb-signer-linked).
90+
ClusterTrustBundles can be selected either by [name](/docs/reference/access-authn-authz/certificate-signing-requests#ctb-signer-unlinked)
91+
or by [signer name](/docs/reference/access-authn-authz/certificate-signing-requests#ctb-signer-linked).
8692

8793
To select by name, use the `name` field to designate a single ClusterTrustBundle object.
8894

@@ -91,22 +97,26 @@ To select by signer name, use the `signerName` field (and optionally the
9197
the given signer name. If `labelSelector` is not present, then all
9298
ClusterTrustBundles for that signer are selected.
9399

94-
The kubelet deduplicates the certificates in the selected ClusterTrustBundle objects, normalizes the PEM representations (discarding comments and headers), reorders the certificates, and writes them into the file named by `path`. As the set of selected ClusterTrustBundles or their content changes, kubelet keeps the file up-to-date.
100+
The kubelet deduplicates the certificates in the selected ClusterTrustBundle objects,
101+
normalizes the PEM representations (discarding comments and headers), reorders the certificates,
102+
and writes them into the file named by `path`.
103+
As the set of selected ClusterTrustBundles or their content changes, kubelet keeps the file up-to-date.
95104

96-
By default, the kubelet will prevent the pod from starting if the named ClusterTrustBundle is not found, or if `signerName` / `labelSelector` do not match any ClusterTrustBundles. If this behavior is not what you want, then set the `optional` field to `true`, and the pod will start up with an empty file at `path`.
105+
By default, the kubelet will prevent the pod from starting if the named ClusterTrustBundle is not found,
106+
or if `signerName` / `labelSelector` do not match any ClusterTrustBundles.
107+
If this behavior is not what you want, then set the `optional` field to `true`,
108+
and the pod will start up with an empty file at `path`.
97109

98110
{{% code_sample file="pods/storage/projected-clustertrustbundle.yaml" %}}
99111

100-
101112
## podCertificate projected volumes {#podcertificate}
102113

103114
{{< feature-state feature_gate_name="PodCertificateRequest" >}}
104115

105116
{{< note >}}
106117
In Kubernetes {{< skew currentVersion >}}, you must enable support for Pod
107-
Certificates using the `PodCertificateRequest` [feature
108-
gate](/docs/reference/command-line-tools-reference/feature-gates/) and the
109-
`--runtime-config=certificates.k8s.io/v1beta1/podcertificaterequests=true`
118+
Certificates using the `PodCertificateRequest` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/)
119+
and the `--runtime-config=certificates.k8s.io/v1beta1/podcertificaterequests=true`
110120
kube-apiserver flag.
111121
{{< /note >}}
112122

@@ -140,7 +150,8 @@ Each `podCertificate` projection supports the following configuration fields:
140150
write *just* the private key or certificate chain.
141151
* `userAnnotations`: a map that allows you to pass additional information to
142152
the signer implementation. It is copied verbatim into the
143-
`spec.unverifiedUserAnnotations` field of the [PodCertificateRequest](docs/reference/access-authn-authz/certificate-signing-requests#pod-certificate-requests) objects
153+
`spec.unverifiedUserAnnotations` field of the
154+
[PodCertificateRequest](/docs/reference/access-authn-authz/certificate-signing-requests#pod-certificate-requests) objects
144155
that Kubelet creates. Entries are subject to the same validation as object
145156
metadata annotations, with the addition that all keys must be domain-prefixed.
146157
No restrictions are placed on values, except an overall size limitation on the
@@ -167,7 +178,9 @@ resulting in your application loading a mismatched key and certificate.
167178

168179
## SecurityContext interactions
169180

170-
The [proposal](https://git.k8s.io/enhancements/keps/sig-storage/2451-service-account-token-volumes#proposal) for file permission handling in projected service account volume enhancement introduced the projected files having the correct owner permissions set.
181+
The [proposal](https://git.k8s.io/enhancements/keps/sig-storage/2451-service-account-token-volumes#proposal)
182+
for file permission handling in projected service account volume enhancement
183+
introduced the projected files having the correct owner permissions set.
171184

172185
### Linux
173186

content/en/docs/reference/_index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ Tools such as {{< glossary_tooltip text="kubectl" term_id="kubectl" >}}
121121
can work with different formats / encodings. These include:
122122

123123
* [CBOR](https://cbor.io/), used on the network but **not** available as a kubectl output format
124-
* See [CBOR resource encoding](https://kubernetes.io/docs/reference/using-api/api-concepts/#cbor-encoding)
124+
* See [CBOR resource encoding](/docs/reference/using-api/api-concepts/#cbor-encoding)
125125
* [JSON](https://www.json.org/), available as a `kubectl` output format and also used at the HTTP layer
126126
* [KYAML](/docs/reference/encodings/kyaml), a Kubernetes dialect of YAML
127127
* KYAML is essentially an _output format_; any place where you can provide KYAML to Kubernetes, you can also provide any other valid YAML input
@@ -130,4 +130,4 @@ can work with different formats / encodings. These include:
130130
Kubernetes also has a custom [protobuf encoding](/docs/reference/using-api/api-concepts/#protobuf-encoding) that is only used within HTTP messages.
131131

132132
The `kubectl` tool supports some other output formats, such as _custom columns_;
133-
see [output formats](/docs/reference/kubectl/#output-options) in the kubectl reference.
133+
see [output formats](/docs/reference/kubectl/#output-options) in the kubectl reference.

content/en/docs/reference/access-authn-authz/admission-controllers.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -788,10 +788,10 @@ The PodTopologyLabels admission controller mutates the `pods/binding` subresourc
788788
for all pods bound to a Node, adding topology labels matching those of the bound Node.
789789
This allows Node topology labels to be available as pod labels,
790790
which can be surfaced to running containers using the
791-
[Downward API](docs/concepts/workloads/pods/downward-api/).
791+
[Downward API](/docs/concepts/workloads/pods/downward-api/).
792792
The labels available as a result of this controller are the
793-
[topology.kubernetes.io/region](docs/reference/labels-annotations-taints/#topologykubernetesioregion) and
794-
[topology.kuberentes.io/zone](docs/reference/labels-annotations-taints/#topologykubernetesiozone) labels.
793+
[topology.kubernetes.io/region](/docs/reference/labels-annotations-taints/#topologykubernetesioregion) and
794+
[topology.kuberentes.io/zone](/docs/reference/labels-annotations-taints/#topologykubernetesiozone) labels.
795795

796796
{{<note>}}
797797
If any mutating admission webhook adds or modifies labels of the `pods/binding` subresource,

0 commit comments

Comments
 (0)