From ad77d693c74551eaf56b1facb387935590ad3be4 Mon Sep 17 00:00:00 2001 From: Steve Perry Date: Sun, 24 Sep 2017 11:41:34 -0700 Subject: [PATCH] Update links to avoid redirects. (#5605) --- docs/admin/accessing-the-api.md | 2 +- docs/admin/authorization/rbac.md | 2 +- .../cluster-administration-overview.md | 2 +- docs/concepts/policy/resource-quotas.md | 6 +++--- docs/concepts/storage/persistent-volumes.md | 2 +- docs/concepts/storage/volumes.md | 2 +- docs/concepts/workloads/controllers/petset.md | 2 +- .../photon-controller.md | 2 +- .../change-default-storage-class.md | 2 +- .../change-pv-reclaim-policy.md | 2 +- .../administer-cluster/securing-a-cluster.md | 2 +- .../set-up-cluster-federation-kubefed.md | 18 +++++++++--------- .../horizontal-pod-autoscale-walkthrough.md | 2 +- ...run-single-instance-stateful-application.md | 4 ++-- .../stateful-application/zookeeper.md | 6 +++--- 15 files changed, 28 insertions(+), 28 deletions(-) diff --git a/docs/admin/accessing-the-api.md b/docs/admin/accessing-the-api.md index 03447f2488..a844b0f5fd 100644 --- a/docs/admin/accessing-the-api.md +++ b/docs/admin/accessing-the-api.md @@ -97,7 +97,7 @@ Kubernetes authorization requires that you use common REST attributes to interac Kubernetes supports multiple authorization modules, such as ABAC mode, RBAC Mode, and Webhook mode. When an administrator creates a cluster, they configured the authorization modules that should be used in the API server. If more than one authorization modules are configured, Kubernetes checks each module, and if any module authorizes the request, then the request can proceed. If all of the modules deny the request, then the request is denied (HTTP status code 403). -To learn more about Kubernetes authorization, including details about creating policies using the supported authorization modules, see [Authorization Overview](/docs/admin/authorization). +To learn more about Kubernetes authorization, including details about creating policies using the supported authorization modules, see [Authorization Overview](/docs/admin/authorization/). ## Admission Control diff --git a/docs/admin/authorization/rbac.md b/docs/admin/authorization/rbac.md index 23d36f7185..a5bc8e1cfe 100644 --- a/docs/admin/authorization/rbac.md +++ b/docs/admin/authorization/rbac.md @@ -519,7 +519,7 @@ This is commonly used by add-on API servers for unified authentication and autho system:persistent-volume-provisioner None -Allows access to the resources required by most dynamic volume provisioners. +Allows access to the resources required by most dynamic volume provisioners. diff --git a/docs/concepts/cluster-administration/cluster-administration-overview.md b/docs/concepts/cluster-administration/cluster-administration-overview.md index f430a389e6..97c07725e3 100644 --- a/docs/concepts/cluster-administration/cluster-administration-overview.md +++ b/docs/concepts/cluster-administration/cluster-administration-overview.md @@ -57,7 +57,7 @@ If you are using a guide involving Salt, see [Configuring Kubernetes with Salt]( * [Auditing](/docs/tasks/debug-application-cluster/audit/) describes how to interact with Kubernetes' audit logs. ### Securing the kubelet - * [Master-Node communication](/docs/concepts/cluster-administration/master-node-communication/) + * [Master-Node communication](/docs/concepts/architecture/master-node-communication/) * [TLS bootstrapping](/docs/admin/kubelet-tls-bootstrapping/) * [Kubelet authentication/authorization](/docs/admin/kubelet-authentication-authorization/) diff --git a/docs/concepts/policy/resource-quotas.md b/docs/concepts/policy/resource-quotas.md index 814567c440..2d6935b786 100644 --- a/docs/concepts/policy/resource-quotas.md +++ b/docs/concepts/policy/resource-quotas.md @@ -74,9 +74,9 @@ In addition, you can limit consumption of storage resources based on associated | Resource Name | Description | | --------------------- | ----------------------------------------------------------- | | `requests.storage` | Across all persistent volume claims, the sum of storage requests cannot exceed this value. | -| `persistentvolumeclaims` | The total number of [persistent volume claims](/docs/user-guide/persistent-volumes/#persistentvolumeclaims) that can exist in the namespace. | +| `persistentvolumeclaims` | The total number of [persistent volume claims](/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims) that can exist in the namespace. | | `.storageclass.storage.k8s.io/requests.storage` | Across all persistent volume claims associated with the storage-class-name, the sum of storage requests cannot exceed this value. | -| `.storageclass.storage.k8s.io/persistentvolumeclaims` | Across all persistent volume claims associated with the storage-class-name, the total number of [persistent volume claims](/docs/user-guide/persistent-volumes/#persistentvolumeclaims) that can exist in the namespace. | +| `.storageclass.storage.k8s.io/persistentvolumeclaims` | Across all persistent volume claims associated with the storage-class-name, the total number of [persistent volume claims](/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims) that can exist in the namespace. | For example, if an operator wants to quota storage with `gold` storage class separate from `bronze` storage class, the operator can define a quota as follows: @@ -92,7 +92,7 @@ are supported: | Resource Name | Description | | ------------------------------- | ------------------------------------------------- | | `configmaps` | The total number of config maps that can exist in the namespace. | -| `persistentvolumeclaims` | The total number of [persistent volume claims](/docs/user-guide/persistent-volumes/#persistentvolumeclaims) that can exist in the namespace. | +| `persistentvolumeclaims` | The total number of [persistent volume claims](/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims) that can exist in the namespace. | | `pods` | The total number of pods in a non-terminal state that can exist in the namespace. A pod is in a terminal state if `status.phase in (Failed, Succeeded)` is true. | | `replicationcontrollers` | The total number of replication controllers that can exist in the namespace. | | `resourcequotas` | The total number of [resource quotas](/docs/admin/admission-controllers/#resourcequota) that can exist in the namespace. | diff --git a/docs/concepts/storage/persistent-volumes.md b/docs/concepts/storage/persistent-volumes.md index d7d1fc428f..19a17e0491 100644 --- a/docs/concepts/storage/persistent-volumes.md +++ b/docs/concepts/storage/persistent-volumes.md @@ -35,7 +35,7 @@ administrators. Kubernetes itself is unopinionated about what classes represent. This concept is sometimes called "profiles" in other storage systems. -Please see the [detailed walkthrough with working examples](/docs/user-guide/persistent-volumes/walkthrough/). +Please see the [detailed walkthrough with working examples](/docs/concepts/storage/persistent-volumes/walkthrough/). ## Lifecycle of a volume and claim diff --git a/docs/concepts/storage/volumes.md b/docs/concepts/storage/volumes.md index 8c6130bfa6..f6fce622b6 100644 --- a/docs/concepts/storage/volumes.md +++ b/docs/concepts/storage/volumes.md @@ -675,7 +675,7 @@ More details and examples can be found [here](https://github.com/kubernetes/exam ScaleIO is a software-based storage platform that can use existing hardware to create clusters of scalable shared block networked storage. The ScaleIO volume plugin allows deployed pods to access existing ScaleIO volumes (or it can dynamically provision new volumes for persistent volume claims, see -[ScaleIO Persistent Volumes](/docs/user-guide/persistent-volumes/#scaleio)). +[ScaleIO Persistent Volumes](/docs/concepts/storage/persistent-volumes/#scaleio)). **Important:** You must have an existing ScaleIO cluster already setup and running with the volumes created before you can use them. {: .caution} diff --git a/docs/concepts/workloads/controllers/petset.md b/docs/concepts/workloads/controllers/petset.md index 5858da2415..e8e7e32fc1 100644 --- a/docs/concepts/workloads/controllers/petset.md +++ b/docs/concepts/workloads/controllers/petset.md @@ -24,7 +24,7 @@ Throughout this doc you will see a few terms that are sometimes used interchange * Node: A single virtual or physical machine in a Kubernetes cluster. * Cluster: A group of nodes in a single failure domain, unless mentioned otherwise. -* Persistent Volume Claim (PVC): A request for storage, typically a [persistent volume](/docs/user-guide/persistent-volumes/walkthrough/). +* Persistent Volume Claim (PVC): A request for storage, typically a [persistent volume](/docs/concepts/storage/persistent-volumes/walkthrough/). * Host name: The hostname attached to the UTS namespace of the pod, i.e. the output of `hostname` in the pod. * DNS/Domain name: A *cluster local* domain name resolvable using standard methods (e.g.: [gethostbyname](http://linux.die.net/man/3/gethostbyname)). * Ordinality: the property of being "ordinal", or occupying a position in a sequence. diff --git a/docs/getting-started-guides/photon-controller.md b/docs/getting-started-guides/photon-controller.md index ecdaf13f82..e0de503156 100644 --- a/docs/getting-started-guides/photon-controller.md +++ b/docs/getting-started-guides/photon-controller.md @@ -35,7 +35,7 @@ Mac, you can install this with [brew](http://brew.sh/): 5. You should have an ssh public key installed. This will be used to give you access to the VM's user account, `kube`. -6. Get or build a [binary release](/docs/getting-started-guides/binary_release) +6. Get or build a [binary release](/docs/getting-started-guides/binary_release/) ### Download VM Image diff --git a/docs/tasks/administer-cluster/change-default-storage-class.md b/docs/tasks/administer-cluster/change-default-storage-class.md index 8326d49f4f..625d599dfc 100644 --- a/docs/tasks/administer-cluster/change-default-storage-class.md +++ b/docs/tasks/administer-cluster/change-default-storage-class.md @@ -22,7 +22,7 @@ Depending on the installation method, your Kubernetes cluster may be deployed wi an existing StorageClass that is marked as default. This default StorageClass is then used to dynamically provision storage for PersistentVolumeClaims that do not require any specific storage class. See -[PersistentVolumeClaim documentation](/docs/user-guide/persistent-volumes/#class-1) +[PersistentVolumeClaim documentation](/docs/concepts/storage/persistent-volumes/#class-1) for details. The pre-installed default StorageClass may not fit well with your expected workload; diff --git a/docs/tasks/administer-cluster/change-pv-reclaim-policy.md b/docs/tasks/administer-cluster/change-pv-reclaim-policy.md index 43080789ed..3cbb8a7642 100644 --- a/docs/tasks/administer-cluster/change-pv-reclaim-policy.md +++ b/docs/tasks/administer-cluster/change-pv-reclaim-policy.md @@ -68,7 +68,7 @@ the corresponding `PersistentVolume` is not be deleted. Instead, it is moved to {% capture whatsnext %} * Learn more about [PersistentVolumes](/docs/concepts/storage/persistent-volumes/). -* Learn more about [PersistentVolumeClaims](/docs/user-guide/persistent-volumes/#persistentvolumeclaims). +* Learn more about [PersistentVolumeClaims](/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims). ### Reference diff --git a/docs/tasks/administer-cluster/securing-a-cluster.md b/docs/tasks/administer-cluster/securing-a-cluster.md index 2885a27da9..6df8e0f1b3 100644 --- a/docs/tasks/administer-cluster/securing-a-cluster.md +++ b/docs/tasks/administer-cluster/securing-a-cluster.md @@ -66,7 +66,7 @@ being terminated and recreated on other nodes. The out of the box roles represen between flexibility and the common use cases, but more limited roles should be carefully reviewed to prevent accidental escalation. You can make roles specific to your use case if the out-of-box ones don't meet your needs. -Consult the [authorization reference section](/docs/admin/authorization) for more information. +Consult the [authorization reference section](/docs/admin/authorization/) for more information. ## Controlling the capabilities of a workload or user at runtime diff --git a/docs/tasks/federation/set-up-cluster-federation-kubefed.md b/docs/tasks/federation/set-up-cluster-federation-kubefed.md index bbb1852911..8f6b970dde 100644 --- a/docs/tasks/federation/set-up-cluster-federation-kubefed.md +++ b/docs/tasks/federation/set-up-cluster-federation-kubefed.md @@ -289,17 +289,17 @@ Federation control plane stores its state in [`etcd`](https://coreos.com/etcd/docs/latest/) data must be stored in a persistent storage volume to ensure correct operation across federation control plane restarts. On host clusters that support -[dynamic provisioning of storage volumes](/docs/user-guide/persistent-volumes/#dynamic), +[dynamic provisioning of storage volumes](/docs/concepts/storage/persistent-volumes/#dynamic), `kubefed init` dynamically provisions a -[`PersistentVolume`](/docs/user-guide/persistent-volumes/#persistent-volumes) +[`PersistentVolume`](/docs/concepts/storage/persistent-volumes/#persistent-volumes) and binds it to a -[`PersistentVolumeClaim`](/docs/user-guide/persistent-volumes/#persistentvolumeclaims) +[`PersistentVolumeClaim`](/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims) to store [`etcd`](https://coreos.com/etcd/docs/latest/) data. If your host cluster doesn't support dynamic provisioning, you can also statically provision a -[`PersistentVolume`](/docs/user-guide/persistent-volumes/#persistent-volumes). +[`PersistentVolume`](/docs/concepts/storage/persistent-volumes/#persistent-volumes). `kubefed init` creates a -[`PersistentVolumeClaim`](/docs/user-guide/persistent-volumes/#persistentvolumeclaims) +[`PersistentVolumeClaim`](/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims) that has the following configuration: ```yaml @@ -321,12 +321,12 @@ spec: ``` To statically provision a -[`PersistentVolume`](/docs/user-guide/persistent-volumes/#persistent-volumes), +[`PersistentVolume`](/docs/concepts/storage/persistent-volumes/#persistent-volumes), you must ensure that the -[`PersistentVolume`](/docs/user-guide/persistent-volumes/#persistent-volumes) +[`PersistentVolume`](/docs/concepts/storage/persistent-volumes/#persistent-volumes) that you create has the matching storage class, access mode and at least as much capacity as the requested -[`PersistentVolumeClaim`](/docs/user-guide/persistent-volumes/#persistentvolumeclaims). +[`PersistentVolumeClaim`](/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims). Alternatively, you can disable persistent storage completely by passing `--etcd-persistent-storage=false` to `kubefed init`. @@ -342,7 +342,7 @@ kubefed init fellowship \ ``` `kubefed init` still doesn't support attaching an existing -[`PersistentVolumeClaim`](/docs/user-guide/persistent-volumes/#persistentvolumeclaims) +[`PersistentVolumeClaim`](/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims) to the federation control plane that it bootstraps. We are planning to support this in a future version of `kubefed`. diff --git a/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough.md b/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough.md index 4a7efc9d94..6d23d7d008 100644 --- a/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough.md +++ b/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough.md @@ -24,7 +24,7 @@ heapster monitoring will be turned-on by default). To specify multiple resource metrics for a Horizontal Pod Autoscaler, you must have a Kubernetes cluster and kubectl at version 1.6 or later. Furthermore, in order to make use of custom metrics, your cluster must be able to communicate with the API server providing the custom metrics API. -See the [Horizontal Pod Autoscaling user guide](/docs/user-guide/horizontal-pod-autoscaling/#support-for-custom-metrics) for more details. +See the [Horizontal Pod Autoscaling user guide](/docs/tasks/run-application/horizontal-pod-autoscale/#support-for-custom-metrics) for more details. ## Step One: Run & expose php-apache server diff --git a/docs/tasks/run-application/run-single-instance-stateful-application.md b/docs/tasks/run-application/run-single-instance-stateful-application.md index 6a1c305fa9..4fdc223b42 100644 --- a/docs/tasks/run-application/run-single-instance-stateful-application.md +++ b/docs/tasks/run-application/run-single-instance-stateful-application.md @@ -27,7 +27,7 @@ application is MySQL. * For data persistence we will create a Persistent Volume that references a disk in your environment. See - [here](/docs/user-guide/persistent-volumes/#types-of-persistent-volumes) for + [here](/docs/concepts/storage/persistent-volumes/#types-of-persistent-volumes) for the types of environments supported. This Tutorial will demonstrate `GCEPersistentDisk` but any type will work. `GCEPersistentDisk` volumes only work on Google Compute Engine. @@ -40,7 +40,7 @@ application is MySQL. ## Set up a disk in your environment You can use any type of persistent volume for your stateful app. See -[Types of Persistent Volumes](/docs/user-guide/persistent-volumes/#types-of-persistent-volumes) +[Types of Persistent Volumes](/docs/concepts/storage/persistent-volumes/#types-of-persistent-volumes) for a list of supported environment disks. For Google Compute Engine, run: ``` diff --git a/docs/tutorials/stateful-application/zookeeper.md b/docs/tutorials/stateful-application/zookeeper.md index a7857241d8..9ad45caef9 100644 --- a/docs/tutorials/stateful-application/zookeeper.md +++ b/docs/tutorials/stateful-application/zookeeper.md @@ -13,7 +13,7 @@ title: Running ZooKeeper, A CP Distributed System {% capture overview %} This tutorial demonstrates [Apache Zookeeper](https://zookeeper.apache.org) on Kubernetes using [StatefulSets](/docs/concepts/abstractions/controllers/statefulsets/), -[PodDisruptionBudgets](/docs/admin/disruptions/#specifying-a-poddisruptionbudget), +[PodDisruptionBudgets](/docs/concepts/workloads/pods/disruptions/#specifying-a-poddisruptionbudget), and [PodAntiAffinity](/docs/user-guide/node-selection/#inter-pod-affinity-and-anti-affinity-beta-feature). {% endcapture %} @@ -29,7 +29,7 @@ Kubernetes concepts. * [PersistentVolume Provisioning](https://github.com/kubernetes/examples/tree/{{page.githubbranch}}/staging/persistent-volume-provisioning/) * [ConfigMaps](/docs/tasks/configure-pod-container/configmap/) * [StatefulSets](/docs/concepts/abstractions/controllers/statefulsets/) -* [PodDisruptionBudgets](/docs/admin/disruptions/#specifying-a-poddisruptionbudget) +* [PodDisruptionBudgets](/docs/concepts/workloads/pods/disruptions/#specifying-a-poddisruptionbudget) * [PodAntiAffinity](/docs/user-guide/node-selection/#inter-pod-affinity-and-anti-affinity-beta-feature) * [kubectl CLI](/docs/user-guide/kubectl) @@ -91,7 +91,7 @@ safely discarded. The manifest below contains a [Headless Service](/docs/concepts/services-networking/service/#headless-services), a [ConfigMap](/docs/tasks/configure-pod-container/configmap/), -a [PodDisruptionBudget](/docs/admin/disruptions/#specifying-a-poddisruptionbudget), +a [PodDisruptionBudget](/docs/concepts/workloads/pods/disruptions//#specifying-a-poddisruptionbudget), and a [StatefulSet](/docs/concepts/abstractions/controllers/statefulsets/). {% include code.html language="yaml" file="zookeeper.yaml" ghlink="/docs/tutorials/stateful-application/zookeeper.yaml" %}