From a70d68b882ba7a3086745aa46af450c9936d628a Mon Sep 17 00:00:00 2001 From: Michael Adam Date: Thu, 2 Jul 2026 18:53:47 +0200 Subject: [PATCH] docs: fix some broken links This change fixes some of the broken links in the markdown documentatoion sources found by the markdown link checker. Assisted-by: IBM Bob Signed-off-by: Michael Adam --- Documentation/CRDs/Cluster/ceph-cluster-crd.md | 2 +- Documentation/CRDs/Object-Storage/ceph-object-store-crd.md | 2 +- Documentation/Contributing/documentation.md | 2 +- Documentation/Contributing/rook-test-framework.md | 2 +- Documentation/Helm-Charts/ceph-cluster-chart.gotmpl.md | 2 +- Documentation/Helm-Charts/ceph-cluster-chart.md | 2 +- Documentation/README.md | 2 +- .../Storage-Configuration/Advanced/ceph-configuration.md | 2 +- .../Storage-Configuration/Advanced/key-management-system.md | 2 +- .../Storage-Configuration/Ceph-CSI/ceph-csi-drivers.md | 6 +++--- .../Storage-Configuration/Monitoring/ceph-monitoring.md | 4 ++-- .../Object-Storage-RGW/ceph-object-multisite.md | 2 +- .../Object-Storage-RGW/object-storage.md | 2 +- design/ceph/ceph-csi-driver.md | 4 ++-- 14 files changed, 18 insertions(+), 18 deletions(-) diff --git a/Documentation/CRDs/Cluster/ceph-cluster-crd.md b/Documentation/CRDs/Cluster/ceph-cluster-crd.md index 0891c598c..db4a4b580 100755 --- a/Documentation/CRDs/Cluster/ceph-cluster-crd.md +++ b/Documentation/CRDs/Cluster/ceph-cluster-crd.md @@ -376,7 +376,7 @@ The following storage selection settings are specific to Ceph and do not apply t * `encryptedDevice`**: Encrypt OSD volumes using dmcrypt ("true" or "false"). By default this option is disabled. See [encryption](http://docs.ceph.com/docs/master/ceph-volume/lvm/encryption/) for more information on encryption in Ceph. (Resizing is not supported for host-based clusters.) * `crushRoot`: The value of the `root` CRUSH map label. The default is `default`. Generally, you should not need to change this. However, if any of your topology labels may have the value `default`, you need to change `crushRoot` to avoid conflicts, since CRUSH map values need to be unique. * `enableCrushUpdates`: Enables rook to update the pool crush rule using Pool Spec. Can cause data remapping if crush rule changes, Defaults to false. -* `migration`: Existing PVC based OSDs can be migrated to enable or disable encryption. Refer to the [osd management](../../Storage-Configuration/Advanced/ceph-osd-mgmt.md/#osd-encryption-as-day-2-operation) topic for details. +* `migration`: Existing PVC based OSDs can be migrated to enable or disable encryption. Refer to the [osd management](../../Storage-Configuration/Advanced/ceph-osd-mgmt.md#osd-encryption-as-day-2-operation) topic for details. Supported configurations are: diff --git a/Documentation/CRDs/Object-Storage/ceph-object-store-crd.md b/Documentation/CRDs/Object-Storage/ceph-object-store-crd.md index f3be6dee2..db45f4035 100644 --- a/Documentation/CRDs/Object-Storage/ceph-object-store-crd.md +++ b/Documentation/CRDs/Object-Storage/ceph-object-store-crd.md @@ -240,7 +240,7 @@ The gateway settings correspond to the RGW daemon settings. subdirectory where that volumes files will be mounted. Rook supports several standard Kubernetes volume types. Example: for an additional mount at subPath `ldap`, mounted from a secret that has key `bindpass.secret`, the file would reside at `/var/rgw/ldap/bindpass.secret`. -* `service`: The annotations to set on to the Kubernetes Service of RGW. The [service serving cert](https://docs.openshift.com/container-platform/4.6/security/certificates/service-serving-certificate.html) feature supported in Openshift is enabled by the following example: +* `service`: The annotations to set on to the Kubernetes Service of RGW. The [service serving cert](https://docs.okd.io/latest/security/certificates/service-serving-certificate.html) feature supported in Openshift is enabled by the following example: ```yaml gateway: diff --git a/Documentation/Contributing/documentation.md b/Documentation/Contributing/documentation.md index aa88f6a9e..477488409 100644 --- a/Documentation/Contributing/documentation.md +++ b/Documentation/Contributing/documentation.md @@ -24,7 +24,7 @@ To locally preview the documentation, you can run the following command (in the make docs-preview ``` -When previewing, now you can navigate your browser to [http://127.0.0.1:8000/](http://127.0.0.1:8000/) to open the preview of the documentation. +When previewing, now you can navigate your browser to `http://127.0.0.1:8000/` to open the preview of the documentation. !!! hint Should you encounter a `command not found` error while trying to preview the docs for the first diff --git a/Documentation/Contributing/rook-test-framework.md b/Documentation/Contributing/rook-test-framework.md index 9b8b29d77..38603a553 100644 --- a/Documentation/Contributing/rook-test-framework.md +++ b/Documentation/Contributing/rook-test-framework.md @@ -51,7 +51,7 @@ docker tag rook/ceph:local-build rook/ceph:master ## Run integration tests Some settings are available to run the tests under different environments. The settings are all configured with environment variables. -See [environment.go](/tests/framework/installer/environment.go) for the available environment variables. +See [environment.go](../../tests/framework/installer/environment.go) for the available environment variables. Set the following variables: diff --git a/Documentation/Helm-Charts/ceph-cluster-chart.gotmpl.md b/Documentation/Helm-Charts/ceph-cluster-chart.gotmpl.md index e3494d66b..293e5ccf3 100644 --- a/Documentation/Helm-Charts/ceph-cluster-chart.gotmpl.md +++ b/Documentation/Helm-Charts/ceph-cluster-chart.gotmpl.md @@ -3,7 +3,7 @@ title: Ceph Cluster Helm Chart --- {{ template "generatedDocsWarning" . }} -Creates Rook resources to configure a [Ceph](https://ceph.io/) cluster using the [Helm](https://helm.sh) package manager. +Creates Rook resources to configure a [Ceph](https://ceph.io/en/) cluster using the [Helm](https://helm.sh) package manager. This chart is a simple packaging of templates that will optionally create Rook resources such as: * CephCluster, CephFilesystem, and CephObjectStore CRs diff --git a/Documentation/Helm-Charts/ceph-cluster-chart.md b/Documentation/Helm-Charts/ceph-cluster-chart.md index 4702dd5d1..d4efcb282 100644 --- a/Documentation/Helm-Charts/ceph-cluster-chart.md +++ b/Documentation/Helm-Charts/ceph-cluster-chart.md @@ -6,7 +6,7 @@ Document is generated by `make helm-docs`. DO NOT EDIT. Edit the corresponding *.gotmpl.md file instead --> -Creates Rook resources to configure a [Ceph](https://ceph.io/) cluster using the [Helm](https://helm.sh) package manager. +Creates Rook resources to configure a [Ceph](https://ceph.io/en/) cluster using the [Helm](https://helm.sh) package manager. This chart is a simple packaging of templates that will optionally create Rook resources such as: * CephCluster, CephFilesystem, and CephObjectStore CRs diff --git a/Documentation/README.md b/Documentation/README.md index ede5c8523..ae5dd1e32 100644 --- a/Documentation/README.md +++ b/Documentation/README.md @@ -7,7 +7,7 @@ title: Rook Rook is an open source **cloud-native storage orchestrator**, providing the platform, framework, and support for Ceph storage to natively integrate with cloud-native environments. -[Ceph](https://ceph.com/) is a distributed storage system that provides file, block and object storage and is deployed in large scale production clusters. +[Ceph](https://ceph.com/en/) is a distributed storage system that provides file, block and object storage and is deployed in large scale production clusters. Rook automates deployment and management of Ceph to provide self-managing, self-scaling, and self-healing storage services. The Rook operator does this by building on Kubernetes resources to deploy, configure, provision, scale, upgrade, and monitor Ceph. diff --git a/Documentation/Storage-Configuration/Advanced/ceph-configuration.md b/Documentation/Storage-Configuration/Advanced/ceph-configuration.md index 64be39887..357c5b4dd 100644 --- a/Documentation/Storage-Configuration/Advanced/ceph-configuration.md +++ b/Documentation/Storage-Configuration/Advanced/ceph-configuration.md @@ -195,7 +195,7 @@ The general rules for deciding how many PGs your pool(s) should contain is: If you have more than 50 OSDs, you need to understand the tradeoffs and how to calculate the pg_num value by yourself. For calculating pg_num yourself please -make use of [the pgcalc tool](https://old.ceph.com/pgcalc/). +make use of [the pgcalc tool](https://docs.ceph.com/en/latest/rados/operations/pgcalc/). ### Setting PG Count diff --git a/Documentation/Storage-Configuration/Advanced/key-management-system.md b/Documentation/Storage-Configuration/Advanced/key-management-system.md index 098ebcc28..be30af721 100644 --- a/Documentation/Storage-Configuration/Advanced/key-management-system.md +++ b/Documentation/Storage-Configuration/Advanced/key-management-system.md @@ -351,7 +351,7 @@ Different methods are available in Azure to authenticate a client. Rook supports * [Create Azure Key Vault](https://learn.microsoft.com/en-us/azure/key-vault/general/quick-create-portal) * `AZURE_VAULT_URL` can be retrieved at this step -* [Create Service Principal](https://learn.microsoft.com/en-us/entra/identity-platform/howto-create-service-principal) +* [Create Service Principal](https://learn.microsoft.com/en-us/entra/identity-platform/howto-create-service-principal-portal) * `AZURE_CLIENT_ID` and `AZURE_TENANT_ID` can be obtained after creating the service principal * Ensure that the service principal is authenticated with a certificate and not with a client secret. diff --git a/Documentation/Storage-Configuration/Ceph-CSI/ceph-csi-drivers.md b/Documentation/Storage-Configuration/Ceph-CSI/ceph-csi-drivers.md index c256070b1..72de85c74 100644 --- a/Documentation/Storage-Configuration/Ceph-CSI/ceph-csi-drivers.md +++ b/Documentation/Storage-Configuration/Ceph-CSI/ceph-csi-drivers.md @@ -217,10 +217,10 @@ CSI-Addons supports the following operations: Ceph-CSI supports encrypting PersistentVolumeClaims (PVCs) for both RBD and CephFS. This can be achieved using LUKS for RBD and fscrypt for CephFS. More details on encrypting RBD PVCs can be found -[here](https://github.com/ceph/ceph-csi/blob/v3.16.2/docs/deploy-rbd.md#encryption-for-rbd-volumes), +[here](https://github.com/ceph/ceph-csi/blob/devel/docs/rbd/deploy.md#encryption-for-rbd-volumes), which includes a full list of supported encryption configurations. -More details on encrypting CephFS PVCs can be found [here](https://github.com/ceph/ceph-csi/blob/v3.14.2/docs/deploy-cephfs.md#cephfs-volume-encryption). -A sample KMS configmap can be found [here](https://github.com/ceph/ceph-csi/blob/v3.16.2/examples/kms/vault/kms-config.yaml). +More details on encrypting CephFS PVCs can be found [here](https://github.com/ceph/ceph-csi/blob/devel/docs/cephfs/deploy.md#cephfs-volume-encryption). +A sample KMS configmap can be found [here](https://github.com/ceph/ceph-csi/blob/devel/examples/kms/vault/kms-config.yaml). !!! note Not all KMS are compatible with fscrypt. Generally, KMS that either store secrets to use directly (like Vault) diff --git a/Documentation/Storage-Configuration/Monitoring/ceph-monitoring.md b/Documentation/Storage-Configuration/Monitoring/ceph-monitoring.md index f800ad2e1..ab3a111ed 100644 --- a/Documentation/Storage-Configuration/Monitoring/ceph-monitoring.md +++ b/Documentation/Storage-Configuration/Monitoring/ceph-monitoring.md @@ -125,7 +125,7 @@ Below the `Execute` button, ensure the `Graph` tab is selected and you should no ## Prometheus Consoles -You can find Prometheus Consoles for and from Ceph here: [GitHub ceph/cephmetrics - dashboards/current directory](https://github.com/ceph/cephmetrics/tree/master/dashboards/current). +You can find Prometheus Consoles for and from Ceph here: [GitHub ceph/cephmetrics - dashboards/](https://github.com/ceph/cephmetrics/tree/master/dashboards/). A guide to how you can write your own Prometheus consoles can be found on the official Prometheus site here: [Prometheus.io Documentation - Console Templates](https://prometheus.io/docs/visualization/consoles/). @@ -337,4 +337,4 @@ spec: ``` !!! warning - During reconciliation of a `CephObjectStore`, the Rook Operator will reset the replica count for RGW which was set by horizontal pod scaler. The horizontal pod autoscaler will change the again once it re-evaluates the rule. This can result in a performance hiccup of several seconds after a reconciliation. This is briefly discussed (here)[https://github.com/rook/rook/issues/10001] + During reconciliation of a `CephObjectStore`, the Rook Operator will reset the replica count for RGW which was set by horizontal pod scaler. The horizontal pod autoscaler will change the again once it re-evaluates the rule. This can result in a performance hiccup of several seconds after a reconciliation. This is briefly discussed [here](https://github.com/rook/rook/issues/10001) diff --git a/Documentation/Storage-Configuration/Object-Storage-RGW/ceph-object-multisite.md b/Documentation/Storage-Configuration/Object-Storage-RGW/ceph-object-multisite.md index bfe8b6943..f139489c8 100644 --- a/Documentation/Storage-Configuration/Object-Storage-RGW/ceph-object-multisite.md +++ b/Documentation/Storage-Configuration/Object-Storage-RGW/ceph-object-multisite.md @@ -38,7 +38,7 @@ kubectl create -f object-multisite.yaml The first zone group created in a realm is the master zone group. The first zone created in a zone group is the master zone. -When a non-master zone or non-master zone group is created, the zone group or zone is not in the Ceph Radosgw Multisite [Period](https://docs.ceph.com/docs/en/latest/radosgw/multisite/) until an object-store is created in that zone (and zone group). +When a non-master zone or non-master zone group is created, the zone group or zone is not in the Ceph Radosgw Multisite [Period](https://docs.ceph.com/en/latest/radosgw/multisite/#setting-a-zonegroup-procedure) until an object-store is created in that zone (and zone group). The zone will create the pools for the object-store(s) that are in the zone to use. diff --git a/Documentation/Storage-Configuration/Object-Storage-RGW/object-storage.md b/Documentation/Storage-Configuration/Object-Storage-RGW/object-storage.md index 9435128bc..04ba47332 100644 --- a/Documentation/Storage-Configuration/Object-Storage-RGW/object-storage.md +++ b/Documentation/Storage-Configuration/Object-Storage-RGW/object-storage.md @@ -696,7 +696,7 @@ Virtual host-style addressing requires 2 things: Wildcard addressing can be configured in myriad ways. Some options: - Kubernetes [ingress loadbalancer](https://kubernetes.io/docs/concepts/services-networking/ingress/#hostname-wildcards) -- Openshift [DNS operator](https://docs.openshift.com/container-platform/latest/networking/dns-operator.html) +- Openshift [DNS operator](https://docs.okd.io/latest/networking/networking_operators/dns-operator.html) The minimum recommended `hosting` configuration is exemplified below. It is important to ensure that Rook advertises the wildcard-addressable endpoint as a priority over the default. TLS is also diff --git a/design/ceph/ceph-csi-driver.md b/design/ceph/ceph-csi-driver.md index 6993cff0e..4e23eaf71 100644 --- a/design/ceph/ceph-csi-driver.md +++ b/design/ceph/ceph-csi-driver.md @@ -35,8 +35,8 @@ There is also upstream Kubernetes work to [include these drivers for e2e tests]( Starting Kubernetes CSI driver brings up an [external-provisioner](https://github.com/kubernetes-csi/external-provisioner), an [external-attacher](https://github.com/kubernetes-csi/external-attacher), DaemonSet that runs the driver on the nodes, and optionally an [external-snapshotter](https://github.com/kubernetes-csi/external-snapshotter). For example, deploying a CephFS CSI driver consists of the following steps: -1. Creating a [RBAC for external provisioner](https://github.com/ceph/ceph-csi/blob/master/deploy/cephfs/kubernetes/csi-provisioner-rbac.yaml) and the [provisioner itself](https://github.com/ceph/ceph-csi/blob/master/deploy/cephfs/kubernetes/csi-cephfsplugin-provisioner.yaml). -2. Creating [RBAC for CSI driver](https://github.com/ceph/ceph-csi/blob/master/deploy/cephfs/kubernetes/csi-nodeplugin-rbac.yaml) and [driver DaemonSet](https://github.com/ceph/ceph-csi/blob/master/deploy/cephfs/kubernetes/csi-cephfsplugin.yaml) +1. Creating a [RBAC for external provisioner](https://github.com/ceph/ceph-csi/blob/devel/deploy/cephfs/kubernetes/csi-provisioner-rbac.yaml) and the [provisioner itself](https://github.com/ceph/ceph-csi/blob/devel/deploy/cephfs/kubernetes/csi-cephfsplugin-provisioner.yaml). +2. Creating [RBAC for CSI driver](https://github.com/ceph/ceph-csi/blob/devel/deploy/cephfs/kubernetes/csi-nodeplugin-rbac.yaml) and [driver DaemonSet](https://github.com/ceph/ceph-csi/blob/devel/deploy/cephfs/kubernetes/csi-cephfsplugin.yaml) 3. Creating Storage Classes for CSI provisioners. ## Integration Plan