Skip to content

Added linkchecker and fixed broken links #12107

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

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
18 changes: 18 additions & 0 deletions .github/workflows/link-checker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: "Link Checker"
on:
merge_group:
pull_request:
branches:
- master
jobs:
linkchecker:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683

- name: Link Checker
uses: lycheeverse/lychee-action@1d97d84f0bc547f7b25f4c2170d87d810dc2fb2c
with:
fail: true
env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
2 changes: 2 additions & 0 deletions .lycheeignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
.*localhost.*
.*127.0.0.1.*
1 change: 0 additions & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,4 +44,3 @@ Vagrant with VirtualBox or libvirt driver helps you to quickly spin test cluster
6. Sign the CNCF CLA (<https://git.k8s.io/community/CLA.md#the-contributor-license-agreement>)
7. Submit a pull request.
8. Work with the reviewers on their suggestions.
9. Ensure to rebase to the HEAD of your target branch and squash un-necessary commits (<https://blog.carbonfive.com/always-squash-and-rebase-your-git-commits/>) before final merger of your contribution.
11 changes: 3 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
If you have questions, check the documentation at [kubespray.io](https://kubespray.io) and join us on the [kubernetes slack](https://kubernetes.slack.com), channel **\#kubespray**.
You can get your invite [here](http://slack.k8s.io/)

- Can be deployed on **[AWS](docs/cloud_providers/aws.md), GCE, [Azure](docs/cloud_providers/azure.md), [OpenStack](docs/cloud_controllers/openstack.md), [vSphere](docs/cloud_controllers/vsphere.md), [Equinix Metal](docs/cloud_providers/equinix-metal.md) (bare metal), Oracle Cloud Infrastructure (Experimental), or Baremetal**
- Can be deployed on **[AWS](docs/cloud_providers/aws.md), GCE, [Azure](docs/cloud_providers/azure.md), [OpenStack](docs/cloud_controllers/openstack.md), [vSphere](docs/cloud_controllers/vsphere.md), Oracle Cloud Infrastructure (Experimental), or Baremetal**
- **Highly available** cluster
- **Composable** (Choice of the network plugin for instance)
- Supports most popular **Linux distributions**
Expand Down Expand Up @@ -72,7 +72,6 @@ vagrant up
- [Fedora CoreOS bootstrap](docs/operating_systems/fcos.md)
- [openSUSE setup](docs/operating_systems/opensuse.md)
- [Downloaded artifacts](docs/advanced/downloads.md)
- [Equinix Metal](docs/cloud_providers/equinix-metal.md)
- [OpenStack](docs/cloud_controllers/openstack.md)
- [vSphere](docs/cloud_controllers/vsphere.md)
- [Large deployments](docs/operations/large-deployments.md)
Expand Down Expand Up @@ -183,9 +182,6 @@ You can choose among ten network plugins. (default: `calico`, except Vagrant use

- [cilium](http://docs.cilium.io/en/latest/): layer 3/4 networking (as well as layer 7 to protect and secure application protocols), supports dynamic insertion of BPF bytecode into the Linux kernel to implement security services, networking and visibility logic.

- [weave](docs/CNI/weave.md): Weave is a lightweight container overlay network that doesn't require an external K/V database cluster.
(Please refer to `weave` [troubleshooting documentation](https://www.weave.works/docs/net/latest/troubleshooting/)).

- [kube-ovn](docs/CNI/kube-ovn.md): Kube-OVN integrates the OVN-based Network Virtualization with Kubernetes. It offers an advanced Container Network Fabric for Enterprises.

- [kube-router](docs/CNI/kube-router.md): Kube-router is a L3 CNI for Kubernetes networking aiming to provide operational
Expand All @@ -197,7 +193,7 @@ You can choose among ten network plugins. (default: `calico`, except Vagrant use

- [multus](docs/CNI/multus.md): Multus is a meta CNI plugin that provides multiple network interface support to pods. For each interface Multus delegates CNI calls to secondary CNI plugins such as Calico, macvlan, etc.

- [custom_cni](roles/network-plugin/custom_cni/) : You can specify some manifests that will be applied to the clusters to bring you own CNI and use non-supported ones by Kubespray.
- [custom_cni](roles/network_plugin/custom_cni/) : You can specify some manifests that will be applied to the clusters to bring you own CNI and use non-supported ones by Kubespray.
See `tests/files/custom_cni/README.md` and `tests/files/custom_cni/values.yaml`for an example with a CNI provided by a Helm Chart.

The network plugin to use is defined by the variable `kube_network_plugin`. There is also an
Expand All @@ -212,7 +208,6 @@ See also [Network checker](docs/advanced/netcheck.md).

## Community docs and resources

- [kubernetes.io/docs/setup/production-environment/tools/kubespray/](https://kubernetes.io/docs/setup/production-environment/tools/kubespray/)
- [kubespray, monitoring and logging](https://github.com/gregbkr/kubernetes-kargo-logging-monitoring) by @gregbkr
- [Deploy Kubernetes w/ Ansible & Terraform](https://rsmitty.github.io/Terraform-Ansible-Kubernetes/) by @rsmitty
- [Deploy a Kubernetes Cluster with Kubespray (video)](https://www.youtube.com/watch?v=CJ5G4GpqDy0)
Expand All @@ -227,6 +222,6 @@ See also [Network checker](docs/advanced/netcheck.md).

[![Build graphs](https://gitlab.com/kargo-ci/kubernetes-sigs-kubespray/badges/master/pipeline.svg)](https://gitlab.com/kargo-ci/kubernetes-sigs-kubespray/-/pipelines)

CI/end-to-end tests sponsored by: [CNCF](https://cncf.io), [Equinix Metal](https://metal.equinix.com/), [OVHcloud](https://www.ovhcloud.com/), [ELASTX](https://elastx.se/).
CI/end-to-end tests sponsored by: [CNCF](https://cncf.io), [ELASTX](https://elastx.se/).

See the [test matrix](docs/developers/test_cases.md) for details.
13 changes: 0 additions & 13 deletions contrib/terraform/openstack/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ most modern installs of OpenStack that support the basic services.

### Known compatible public clouds

- [Auro](https://auro.io/)
- [Betacloud](https://www.betacloud.io/)
- [CityCloud](https://www.citycloud.com/)
- [DreamHost](https://www.dreamhost.com/cloud/computing/)
Expand Down Expand Up @@ -705,18 +704,6 @@ $ kubectl config use-context default-system
kubectl version
```

## GlusterFS

GlusterFS is not deployed by the standard `cluster.yml` playbook, see the
[GlusterFS playbook documentation](../../network-storage/glusterfs/README.md)
for instructions.

Basically you will install Gluster as

```ShellSession
ansible-playbook --become -i inventory/$CLUSTER/hosts ./contrib/network-storage/glusterfs/glusterfs.yml
```

## What's next

Try out your new Kubernetes cluster with the [Hello Kubernetes service](https://kubernetes.io/docs/tasks/access-application-cluster/service-access-application-cluster/).
Expand Down
4 changes: 2 additions & 2 deletions docs/CNI/calico.md
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,7 @@ calico_group_id=rr1
The inventory above will deploy the following topology assuming that calico's
`global_as_num` is set to `65400`:

![Image](figures/kubespray-calico-rr.png?raw=true)
![Image](../figures/kubespray-calico-rr.png?raw=true)

### Optional : Define default endpoint to host action

Expand Down Expand Up @@ -407,7 +407,7 @@ To view the logs you need to use the `tc` command to read the kernel trace buffe
tc exec bpf debug
```

Please see [Calico eBPF troubleshooting guide](https://docs.projectcalico.org/maintenance/troubleshoot/troubleshoot-ebpf#ebpf-program-debug-logs).
Please see [Calico eBPF troubleshooting guide](https://docs.tigera.io/calico/latest/operations/ebpf/troubleshoot-ebpf#ebpf-program-debug-logs).

## Wireguard Encryption

Expand Down
2 changes: 1 addition & 1 deletion docs/CNI/cilium.md
Original file line number Diff line number Diff line change
Expand Up @@ -384,7 +384,7 @@ Cilium relies on the kernel's BPF support, which is extremely fast at runtime bu

As a result, the Cilium DaemonSet pods can take a significant time to start, which scales with the number of nodes and endpoints in your cluster.

As part of cluster.yml, this DaemonSet is restarted, and Kubespray's [default timeouts for this operation](../roles/network_plugin/cilium/defaults/main.yml)
As part of cluster.yml, this DaemonSet is restarted, and Kubespray's [default timeouts for this operation](../../roles/network_plugin/cilium/defaults/main.yml)
are not appropriate for large clusters.

This means that you will likely want to update these timeouts to a value more in-line with your cluster's number of nodes and their respective CPU performance.
Expand Down
2 changes: 0 additions & 2 deletions docs/CNI/flannel.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@ Flannel is a network fabric for containers, designed for Kubernetes

Supported [backends](https://github.com/flannel-io/flannel/blob/master/Documentation/backends.md#wireguard): `vxlan`, `host-gw` and `wireguard`

**Warning:** You may encounter this [bug](https://github.com/coreos/flannel/pull/1282) with `VXLAN` backend, while waiting on a newer Flannel version the current workaround (`ethtool --offload flannel.1 rx off tx off`) is showcase in kubespray [networking test](tests/testcases/040_check-network-adv.yml:31).

## Verifying flannel install

* Flannel configuration file should have been created there
Expand Down
2 changes: 1 addition & 1 deletion docs/CSI/vsphere-csi.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,4 +99,4 @@ kubectl exec -it nginx -- df -h | grep /usr/share/nginx/html

## More info

For further information about the vSphere CSI Driver, you can refer to the official [vSphere Cloud Provider documentation](https://cloud-provider-vsphere.sigs.k8s.io/container_storage_interface.html).
For further information about the vSphere CSI Driver, you can refer to the official [vSphere Cloud Provider documentation](https://cloud-provider-vsphere.sigs.k8s.io/).
4 changes: 2 additions & 2 deletions docs/ansible/ansible_collection.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ Kubespray can be installed as an [Ansible collection](https://docs.ansible.com/a

## Requirements

- An inventory file with the appropriate host groups. See the [README](../README.md#usage).
- A `group_vars` directory. These group variables **need** to match the appropriate variable names under `inventory/local/group_vars`. See the [README](../README.md#usage).
- An inventory file with the appropriate host groups. See the [README](../../README.md#usage).
- A `group_vars` directory. These group variables **need** to match the appropriate variable names under `inventory/local/group_vars`. See the [README](../../README.md#usage).

## Usage

Expand Down
1 change: 0 additions & 1 deletion docs/cloud_controllers/openstack.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@

Kubespray has been tested on a number of OpenStack Public Clouds including (in alphabetical order):

- [Auro](https://auro.io/)
- [Betacloud](https://www.betacloud.io/)
- [CityCloud](https://www.citycloud.com/)
- [DreamHost](https://www.dreamhost.com/cloud/computing/)
Expand Down
2 changes: 1 addition & 1 deletion docs/cloud_providers/azure.md
Original file line number Diff line number Diff line change
Expand Up @@ -122,4 +122,4 @@ Use instance metadata service where possible

## Provisioning Azure with Resource Group Templates

You'll find Resource Group Templates and scripts to provision the required infrastructure to Azure in [*contrib/azurerm*](../contrib/azurerm/README.md)
You'll find Resource Group Templates and scripts to provision the required infrastructure to Azure in [*contrib/azurerm*](../../contrib/azurerm/README.md)
2 changes: 1 addition & 1 deletion docs/ingress/alb_ingress_controller.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ You can reach the maintainers of this project at:

### Code of conduct

Participation in the Kubernetes community is governed by the [Kubernetes Code of Conduct](code-of-conduct.md).
Participation in the Kubernetes community is governed by the [Kubernetes Code of Conduct](../../code-of-conduct.md).

## License

Expand Down
2 changes: 1 addition & 1 deletion docs/operating_systems/bootstrap-os.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ Variables are listed with their default values, if applicable.
#### CentOS/RHEL/AlmaLinux/Rocky Linux

* `centos_fastestmirror_enabled: false`
Whether the [fastestmirror](https://wiki.centos.org/PackageManagement/Yum/FastestMirror) yum plugin should be enabled.
Whether the [fastestmirror](https://wiki.centos.org/PackageManagement(2f)Yum(2f)FastestMirror.html) yum plugin should be enabled.

## Example Playbook

Expand Down
2 changes: 1 addition & 1 deletion docs/operating_systems/opensuse.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,4 @@ openSUSE Leap installation Notes:

```sudo zypper -n install python-Jinja2 python-netaddr```

Now you can continue with [Preparing your deployment](getting-started.md#starting-custom-deployment)
Now you can continue with [Preparing your deployment](../getting_started/getting-started.md)
2 changes: 1 addition & 1 deletion docs/operations/encrypting-secret-data-at-rest.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,4 @@ Alternatively you can use the values `identity`, `aesgcm`, `aescbc` or `kms`.

## Details about Secretbox

Secretbox uses [Poly1305](https://cr.yp.to/mac.html) as message-authentication code and [XSalsa20](https://www.xsalsa20.com/) as secret-key authenticated encryption and secret-key encryption.
Secretbox uses [Poly1305](https://cr.yp.to/mac.html) as message-authentication code and [XSalsa20](https://en.wikipedia.org/wiki/Salsa20#XSalsa20_with_192-bit_nonce) as secret-key authenticated encryption and secret-key encryption.
2 changes: 1 addition & 1 deletion docs/operations/hardening.md
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ Let's take a deep look to the resultant **kubernetes** configuration:
See <https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/> for more information on the subject.
* If you are installing **kubernetes** in an AppArmor-based OS (eg. Debian/Ubuntu) you can enable the `AppArmor` feature gate uncommenting the lines with the comment `# AppArmor-based OS` on top.
* The `kubelet_systemd_hardening`, both with `kubelet_secure_addresses` setup a minimal firewall on the system. To better understand how these variables work, here's an explanatory image:
![kubelet hardening](img/kubelet-hardening.png)
![kubelet hardening](../img/kubelet-hardening.png)

Once you have the file properly filled, you can run the **Ansible** command to start the installation:

Expand Down