diff --git a/Containerfile.bundle b/Containerfile.bundle index 611ab72e4d..21defd3923 100644 --- a/Containerfile.bundle +++ b/Containerfile.bundle @@ -33,7 +33,7 @@ LABEL operators.operatorframework.io.metrics.project_layout=go.kubebuilder.io/v3 LABEL distribution-scope=public LABEL release="10.20.0" -LABEL url="https://docs.openshift.com/container-platform/4.20/windows_containers/index.html" +LABEL url="https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/index" LABEL vendor="Red Hat, Inc." # Copy files to locations specified by labels. diff --git a/README.md b/README.md index 544fef4931..4dcbabed3f 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ ## Introduction The Windows Machine Config Operator configures Windows instances into nodes, enabling Windows container workloads to -be ran within OKD/OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.openshift.com/container-platform/latest/machine_management/creating_machinesets/creating-machineset-aws.html#machine-api-overview_creating-machineset-aws), +be ran within OKD/OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/machine_management/overview-of-machine-management#machine-mgmt-intro-managing-compute_overview-of-machine-management), or by specifying existing instances through a ConfigMap. The operator will do all the necessary steps to configure the instance so that it can join the cluster as a worker node. @@ -25,7 +25,7 @@ the private key that will be used to access the Windows instances: oc create secret generic cloud-private-key --from-file=private-key.pem=/path/to/key -n openshift-windows-machine-config-operator ``` We strongly recommend not using the same -[private key](https://docs.openshift.com/container-platform/latest/installing/installing_azure/installing-azure-default.html#ssh-agent-using_installing-azure-default) +[private key](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/installing_on_azure/installer-provisioned-infrastructure#installing-azure-default) used when installing the cluster #### Changing the private key secret @@ -223,24 +223,25 @@ in a healthy state with no disruptions. - The cluster must be running on a supported EUS version of OCP - All Windows nodes must be in a healthy state - All Windows nodes must be running on the same version of WMCO -- All the of the [prerequisites of the EUS-to-EUS OCP upgrade](https://docs.openshift.com/container-platform/latest/updating/updating_a_cluster/eus-eus-update.html) +- All the of the [prerequisites of the Control Plane Only OCP upgrade](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/windows_container_support_for_openshift/windows-node-upgrades#wmco-upgrades-eus_windows-node-upgrades) ### Windows nodes EUS-to-EUS update using the web console **Procedure** -1. Uninstall WMCO from the [cluster using the web console](https://docs.openshift.com/container-platform/latest/operators/admin/olm-deleting-operators-from-cluster.html#olm-deleting-operators-from-a-cluster-using-web-console_olm-deleting-operators-from-a-cluster) -2. Follow steps for [EUS-to-EUS update using the web console](https://docs.openshift.com/container-platform/latest/updating/updating_a_cluster/eus-eus-update.html#updating-eus-to-eus-upgrade-console_eus-to-eus-update) +1. Uninstall WMCO from the [cluster using the web console](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/operators/administrator-tasks#olm-deleting-operators-from-a-cluster-using-web-console_olm-deleting-operators-from-a-cluster) +2. Follow steps for [Control Plane Only update using the web console](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/windows_container_support_for_openshift/windows-node-upgrades#wmco-upgrades-eus-using-web-console_windows-node-upgrades) 3. Wait for the upgrade to complete towards the target EUS version -4. Install the latest available WMCO version [from OperatorHub](https://docs.openshift.com/container-platform/latest/operators/admin/olm-adding-operators-to-cluster.html#olm-installing-from-operatorhub-using-web-console_olm-adding-operators-to-a-cluster) +4. Install the latest available WMCO version [from OperatorHub](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/operators/administrator-tasks#olm-adding-operators-to-a-cluster) + 5. Wait for the Windows nodes to be upgraded towards the corresponding EUS version ### Windows nodes EUS-to-EUS update using the CLI **Procedure** -1. Uninstall WMCO from the [cluster using the CLI](https://docs.openshift.com/container-platform/latest/operators/admin/olm-deleting-operators-from-cluster.html#olm-deleting-operator-from-a-cluster-using-cli_olm-deleting-operators-from-a-cluster) -2. Follow the steps for [EUS-to-EUS update using the CLI](https://docs.openshift.com/container-platform/latest/updating/updating_a_cluster/eus-eus-update.html#updating-eus-to-eus-upgrade-cli_eus-to-eus-update) +1. Uninstall WMCO from the [cluster using the CLI](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/operators/administrator-tasks#olm-deleting-operators-from-a-cluster) +2. Follow the steps for [Control Plane Only update using the CLI](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/windows_container_support_for_openshift/windows-node-upgrades#wmco-upgrades-eus-using-cli_windows-node-upgrades) 3. Wait for the upgrade to complete towards the target EUS version -4. Install the latest available WMCO version [using the CLI](https://docs.openshift.com/container-platform/latest/operators/admin/olm-adding-operators-to-cluster.html#olm-installing-operator-from-operatorhub-using-cli_olm-adding-operators-to-a-cluster) +4. Install the latest available WMCO version [using the CLI](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/windows_container_support_for_openshift/enabling-windows-container-workloads#installing-wmco-using-cli_enabling-windows-container-workloads) 5. Wait for the Windows nodes to be upgraded towards the corresponding EUS version ## Enabled features @@ -248,9 +249,9 @@ in a healthy state with no disruptions. ### Autoscaling Windows nodes Cluster autoscaling is supported for Windows instances. -- Define and deploy a [ClusterAutoscaler](https://docs.openshift.com/container-platform/latest/machine_management/applying-autoscaling.html#configuring-clusterautoscaler). +- Define and deploy a [ClusterAutoscaler](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/machine_management/applying-autoscaling). - Create a Windows node through a MachineSet (see spec in [Usage section](https://github.com/openshift/windows-machine-config-operator#usage)). -- Define and deploy a [MachineAutoscaler](https://docs.openshift.com/container-platform/latest/machine_management/applying-autoscaling.html#configuring-machineautoscaler), referencing a Windows MachineSet. +- Define and deploy a [MachineAutoscaler](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/machine_management/applying-autoscaling#configuring-clusterautoscaler_applying-autoscaling), referencing a Windows MachineSet. ### Container Runtime Windows instances brought up with WMCO are set up with the containerd container runtime. As WMCO installs and manages the container runtime, @@ -262,7 +263,7 @@ to route egress traffic from Windows nodes on OpenShift Container Platform. ### Running in a disconnected/airgapped environment WMCO supports running in a disconnected environment. -Please follow the [disconnected mirroring docs](https://docs.openshift.com/container-platform/latest/installing/disconnected_install/index.html) +Please follow the [disconnected mirroring docs](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/installing_an_on-premise_cluster_with_the_agent-based_installer/understanding-disconnected-installation-mirroring#agent-install-mirroring-images-disconnected_understanding-disconnected-installation-mirroring) in order to mirror and run WMCO on your cluster. Nodes can be added through both MachineSets and the windows-instances ConfigMap. @@ -273,7 +274,7 @@ For AWS platform, the Windows AMI must have installed the EC2LaunchV2 agent with See install options in the [EC2LaunchV2 documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2launch-v2-install.html#lv2-configure-install). In order to run Windows workloads on Nodes, the image `mcr.microsoft.com/oss/kubernetes/pause:3.9` must be mirrored. -See [Image configuration resources](https://docs.openshift.com/container-platform/latest/openshift_images/image-configuration.html) for general information on image mirroring. +See [Image configuration resources](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/images/image-configuration) for general information on image mirroring. Using ImageDigestMirrorSets and ImageTagMirrorSets to mirror container images results in different behavior than Linux Nodes. Please account for the following differences when reading the above documentation. @@ -312,18 +313,18 @@ must deploy the appropriate Windows CSI driver Daemonset. This should be done by by the chosen storage driver's provider. A list of drivers can be found [here](https://kubernetes-csi.github.io/docs/drivers.html#production-drivers). ### Pod Autoscaling -[Vertical](https://docs.openshift.com/container-platform/latest/nodes/pods/nodes-pods-vertical-autoscaler.html) Pod +[Vertical](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/nodes/working-with-pods#additional-resources-2) Pod autoscaling support is not available for Windows workloads. ### Other limitations WMCO / Windows nodes does not work with the following products: -* [odo](https://docs.openshift.com/container-platform/latest/cli_reference/developer_cli_odo/understanding-odo.html) -* [OpenShift Builds](https://docs.openshift.com/container-platform/latest/cicd/builds/understanding-image-builds.html#understanding-image-builds) -* [OpenShift Pipelines](https://docs.openshift.com/container-platform/latest/cicd/pipelines/understanding-openshift-pipelines.html#understanding-openshift-pipelines) -* [OpenShift Service Mesh](https://docs.openshift.com/container-platform/latest/service_mesh/v2x/ossm-about.html) +* [odo](https://docs.redhat.com/en/documentation/openshift_container_platform/4.8/html/cli_tools/developer-cli-odo) +* [OpenShift Builds](https://docs.redhat.com/en/documentation/builds_for_red_hat_openshift/1.4/html/about_builds/overview-of-builds) +* [OpenShift Pipelines](https://docs.redhat.com/en/documentation/red_hat_openshift_pipelines/1.17/html-single/about_openshift_pipelines/index) +* [OpenShift Service Mesh](https://docs.redhat.com/en/documentation/openshift_container_platform/4.1/html/service_mesh/service-mesh-architecture#understanding-service-mesh) * [Red Hat Insights cost management](https://docs.redhat.com/en/documentation/cost_management_service/1-latest) * [Red Hat OpenShift Local](https://developers.redhat.com/products/openshift-local/overview) -* [OpenShift monitoring of user defined project](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html#enabling-monitoring-for-user-defined-projects) +* [OpenShift monitoring of user defined project](https://docs.redhat.com/en/documentation/openshift_container_platform/4.10/html/monitoring/enabling-monitoring-for-user-defined-projects) * [HugePages](https://kubernetes.io/docs/tasks/manage-hugepages/scheduling-hugepages/) ### Trunk port diff --git a/bundle/manifests/windows-machine-config-operator.clusterserviceversion.yaml b/bundle/manifests/windows-machine-config-operator.clusterserviceversion.yaml index 591620268f..24eca5dc29 100644 --- a/bundle/manifests/windows-machine-config-operator.clusterserviceversion.yaml +++ b/bundle/manifests/windows-machine-config-operator.clusterserviceversion.yaml @@ -35,8 +35,8 @@ spec: description: |- ### Introduction The Windows Machine Config Operator configures Windows Machines into nodes, enabling Windows container workloads to - be run on OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.openshift.com/container-platform/4.19/machine_management/creating_machinesets/creating-machineset-aws.html#machine-api-overview_creating-machineset-aws), - or by specifying existing instances through a [ConfigMap](https://docs.openshift.com/container-platform/4.19/windows_containers/byoh-windows-instance.html) + be run on OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets), + or by specifying existing instances through a [ConfigMap](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/byoh-windows-instance) The operator completes all the necessary steps to configure the Windows instance so that it can join the cluster as a worker node. Usage of this operator requires an OpenShift Container Platform for Windows Containers subscription. Users looking to @@ -46,8 +46,8 @@ spec: ### Pre-requisites * A Red Hat OpenShift Container Platform for Windows Containers [subscription](https://access.redhat.com/support/policy/updates/openshift#windows) - * OCP 4.19 cluster running on Azure, AWS, GCP or vSphere configured with hybrid OVN Kubernetes networking - * [WMCO prerequisites](https://docs.openshift.com/container-platform/4.19/windows_containers/understanding-windows-container-workloads.html#wmco-prerequisites__understanding-windows-container-workloads) + * OCP 4.20 cluster running on Azure, AWS, GCP or vSphere configured with hybrid OVN Kubernetes networking + * [WMCO prerequisites](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/understanding-windows-container-workloads) ### Usage Once the `openshift-windows-machine-config-operator` namespace has been created, a secret must be created containing @@ -57,7 +57,7 @@ spec: oc create secret generic cloud-private-key --from-file=private-key.pem=/path/to/key -n openshift-windows-machine-config-operator ``` We strongly recommend not using the same - [private key](https://docs.openshift.com/container-platform/4.19/installing/installing_azure/installing-azure-default.html#ssh-agent-using_installing-azure-default) + [private key](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/installing_on_azure/installing-on-azure#ssh-agent-using_installing-azure-customizations) used when installing the cluster Below is an example of a vSphere Windows MachineSet which can create Windows Machines that the WMCO can react upon. @@ -142,9 +142,9 @@ spec: server: ``` Example MachineSet for other cloud providers: - - [AWS](https://docs.openshift.com/container-platform/4.19/windows_containers/creating_windows_machinesets/creating-windows-machineset-aws.html) - - [Azure](https://docs.openshift.com/container-platform/4.19/windows_containers/creating_windows_machinesets/creating-windows-machineset-azure.html) - - [GCP](https://docs.openshift.com/container-platform/4.19/windows_containers/creating_windows_machinesets/creating-windows-machineset-gcp.html) + - [AWS](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-aws) + - [Azure](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-azure) + - [GCP](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-gcp) ### Limitations #### DeploymentConfigs @@ -153,7 +153,7 @@ spec: ### Reporting issues Support for this distribution of WMCO requires a Red Hat OpenShfit subscription. Support should be requested through the Red Hat Customer Portal. - Please read through the [troubleshooting document](https://docs.openshift.com/container-platform/4.19/support/troubleshooting/troubleshooting-windows-container-workload-issues.html) + Please read through the [troubleshooting document](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/support/troubleshooting) before opening a support case. displayName: Windows Machine Config Operator icon: diff --git a/config/manifests/bases/windows-machine-config-operator.clusterserviceversion.yaml b/config/manifests/bases/windows-machine-config-operator.clusterserviceversion.yaml index 4db645711b..c93fca952f 100644 --- a/config/manifests/bases/windows-machine-config-operator.clusterserviceversion.yaml +++ b/config/manifests/bases/windows-machine-config-operator.clusterserviceversion.yaml @@ -33,8 +33,8 @@ spec: description: |- ### Introduction The Windows Machine Config Operator configures Windows Machines into nodes, enabling Windows container workloads to - be run on OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.openshift.com/container-platform/4.19/machine_management/creating_machinesets/creating-machineset-aws.html#machine-api-overview_creating-machineset-aws), - or by specifying existing instances through a [ConfigMap](https://docs.openshift.com/container-platform/4.19/windows_containers/byoh-windows-instance.html) + be run on OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-aws), + or by specifying existing instances through a [ConfigMap](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/byoh-windows-instance) The operator completes all the necessary steps to configure the Windows instance so that it can join the cluster as a worker node. Usage of this operator requires an OpenShift Container Platform for Windows Containers subscription. Users looking to @@ -44,8 +44,8 @@ spec: ### Pre-requisites * A Red Hat OpenShift Container Platform for Windows Containers [subscription](https://access.redhat.com/support/policy/updates/openshift#windows) - * OCP 4.19 cluster running on Azure, AWS, GCP or vSphere configured with hybrid OVN Kubernetes networking - * [WMCO prerequisites](https://docs.openshift.com/container-platform/4.19/windows_containers/understanding-windows-container-workloads.html#wmco-prerequisites__understanding-windows-container-workloads) + * OCP 4.20 cluster running on Azure, AWS, GCP or vSphere configured with hybrid OVN Kubernetes networking + * [WMCO prerequisites](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/understanding-windows-container-workloads) ### Usage Once the `openshift-windows-machine-config-operator` namespace has been created, a secret must be created containing @@ -55,7 +55,7 @@ spec: oc create secret generic cloud-private-key --from-file=private-key.pem=/path/to/key -n openshift-windows-machine-config-operator ``` We strongly recommend not using the same - [private key](https://docs.openshift.com/container-platform/4.19/installing/installing_azure/installing-azure-default.html#ssh-agent-using_installing-azure-default) + [private key](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/installing_on_azure/installing-azure-default#ssh-agent-using_installing-azure-default) used when installing the cluster Below is an example of a vSphere Windows MachineSet which can create Windows Machines that the WMCO can react upon. @@ -140,9 +140,9 @@ spec: server: ``` Example MachineSet for other cloud providers: - - [AWS](https://docs.openshift.com/container-platform/4.19/windows_containers/creating_windows_machinesets/creating-windows-machineset-aws.html) - - [Azure](https://docs.openshift.com/container-platform/4.19/windows_containers/creating_windows_machinesets/creating-windows-machineset-azure.html) - - [GCP](https://docs.openshift.com/container-platform/4.19/windows_containers/creating_windows_machinesets/creating-windows-machineset-gcp.html) + - [AWS](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-aws) + - [Azure](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-azure) + - [GCP](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-gcp) ### Limitations #### DeploymentConfigs @@ -151,7 +151,7 @@ spec: ### Reporting issues Support for this distribution of WMCO requires a Red Hat OpenShfit subscription. Support should be requested through the Red Hat Customer Portal. - Please read through the [troubleshooting document](https://docs.openshift.com/container-platform/4.19/support/troubleshooting/troubleshooting-windows-container-workload-issues.html) + Please read through the [troubleshooting document](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/support/troubleshooting#olm-reinstall_troubleshooting-operator-issues) before opening a support case. displayName: Windows Machine Config Operator icon: diff --git a/docs/HACKING.md b/docs/HACKING.md index 4082ca6378..bdffa2672d 100644 --- a/docs/HACKING.md +++ b/docs/HACKING.md @@ -20,12 +20,12 @@ If you already have a configured cluster, move on to [Build](#build) - [Initialize git submodules]() - Verify push/pull access to [quay.io]() - Create an install-config.yaml - - [AWS](https://docs.openshift.com/container-platform/latest/installing/installing_aws/installing-aws-default.html) - - [GCP](https://docs.openshift.com/container-platform/latest/installing/installing_gcp/installing-gcp-default.html) - - [Azure](https://docs.openshift.com/container-platform/latest/installing/installing_azure/installing-azure-default.html) - - [vSphere](https://docs.openshift.com/container-platform/latest/installing/installing_vsphere/installing-vsphere-installer-provisioned.html) - - [None](https://docs.openshift.com/container-platform/latest/installing/installing_bare_metal/installing-bare-metal.html) -- [Set Up OVNKubernetes networking](https://docs.openshift.com/container-platform/latest/networking/ovn_kubernetes_network_provider/configuring-hybrid-networking.html) + - [AWS](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/installing_on_aws/index) + - [GCP](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/installing_on_gcp/index) + - [Azure](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/installing_on_azure/index) + - [vSphere](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/installing_on_vsphere/index) + - [None](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/installing_on_bare_metal/index) +- [Set Up OVNKubernetes networking](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/networking/ovn-kubernetes-network-plugin) ## Build @@ -238,12 +238,12 @@ opm index rm --from-index $INDEX_IMAGE:$INDEX_TAG ``` #### Create a CatalogSource using the index -See the OpenShift docs for [adding a CatalogSource to a cluster](https://docs.openshift.com/container-platform/latest/operators/admin/olm-managing-custom-catalogs.html#olm-creating-catalog-from-index_olm-managing-custom-catalogs) +See the OpenShift docs for [adding a CatalogSource to a cluster](https://docs.redhat.com/en/documentation/openshift_container_platform/4.17/html/extensions/catalogs) #### Create a subscription object To use the custom CatalogSource you need to change the subscription object to reference the CatalogSource you are -introducing. See the docs for [Subscription objects](https://docs.openshift.com/container-platform/latest/operators/understanding/olm/olm-understanding-olm.html#olm-subscription_olm-understanding-olm) +introducing. See the docs for [Subscription objects](https://docs.redhat.com/en/documentation/openshift_container_platform/4.2/html/operators/understanding-the-operator-lifecycle-manager-olm#olm-upgrades_olm-understanding-olm) for an example. Edit your subscription yaml to match your CatalogSource. diff --git a/docs/TROUBLESHOOTING.md b/docs/TROUBLESHOOTING.md index bcd82e8703..1fa16bceb4 100644 --- a/docs/TROUBLESHOOTING.md +++ b/docs/TROUBLESHOOTING.md @@ -23,7 +23,7 @@ oc logs -f deployment/windows-machine-config-operator -n openshift-windows-machi File a GitHub issue and attach the logs to the issue along with the *MachineSet* used. ## Windows Server 2019 LTSC (1809) nodes never become Ready -Ensure that you have not [configured the cluster network](https://docs.openshift.com/container-platform/latest/networking/ovn_kubernetes_network_provider/configuring-hybrid-networking.html) with a +Ensure that you have not [configured the cluster network](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/networking/ovn-kubernetes-network-plugin) with a custom VXLAN port, as that is not a supported feature in 1809. ## Accessing a Windows node @@ -32,7 +32,7 @@ not yet supported for Windows. Instead, a Windows node can be accessed using SSH [SSH bastion](https://github.com/eparis/ssh-bastion) needs to be setup for both methods. The following information is common across both methods: * The key used in the *cloud-private-key* [secret](../README.md#Usage) and the key used when creating the cluster should - be added to the [ssh-agent](https://docs.openshift.com/container-platform/latest/installing/installing_azure/installing-azure-default.html#ssh-agent-using_installing-azure-default). + be added to the [ssh-agent](https://docs.redhat.com/en/documentation/openshift_container_platform/4.15/html/installing_on_azure/installing-azure-default#ssh-agent-using_installing-azure-default). For [security reasons](https://manpages.debian.org/buster/openssh-client/ssh.1.en.html#A) we suggest removing the keys from the ssh-agent after use. * *\* is *Administrator* (AWS) or *capi* (Azure) @@ -65,7 +65,7 @@ In general, the operator tries to minimize disruptions and avoids node reboots w updates at the system level still require a traditional reboot process to ensure changes are applied correctly and securely. -To reboot a Windows node, please follow the Openshift documentation on [Rebooting a node gracefully](https://docs.openshift.com/container-platform/latest/nodes/nodes/nodes-nodes-rebooting.html#nodes-nodes-rebooting-gracefully_nodes-nodes-rebooting) +To reboot a Windows node, please follow the Openshift documentation on [Rebooting a node gracefully](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/nodes/working-with-nodes#nodes-nodes-rebooting) to cordon, drain and reboot with the following command in PowerShell: ```powershell Restart-Computer -Force diff --git a/docs/machineset-nutanix.md b/docs/machineset-nutanix.md index 4b40074f79..46af870970 100644 --- a/docs/machineset-nutanix.md +++ b/docs/machineset-nutanix.md @@ -8,7 +8,7 @@ Replace _\_ with the output: oc get -o jsonpath='{.status.infrastructureName}{"\n"}' infrastructure cluster ``` -For the general Nutanix MachineSet `providerSpec` configuration, refer to the OpenShift document [creating machineset nutanix](https://docs.openshift.com/container-platform/latest/machine_management/creating_machinesets/creating-machineset-nutanix.html). +For the general Nutanix MachineSet `providerSpec` configuration, refer to the OpenShift document [creating machineset nutanix](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/machine_management/managing-compute-machines-with-the-machine-api#creating-machineset-nutanix). ``` apiVersion: machine.openshift.io/v1beta1 kind: MachineSet @@ -60,4 +60,4 @@ spec: name: windows-user-data vcpuSockets: 4 vcpusPerSocket: 1 -``` \ No newline at end of file +``` diff --git a/docs/nutanix-prerequisites.md b/docs/nutanix-prerequisites.md index 5a2c8e9a97..ac17dc21a8 100644 --- a/docs/nutanix-prerequisites.md +++ b/docs/nutanix-prerequisites.md @@ -26,4 +26,4 @@ Note: The DNS entry can be a CNAME or an additional A record. The above DNS entry ensures that Windows VMs can download the ignition file from the internal API server, and the `kubelet` on the configured VM can communicate with the internal API server. For Linux nodes, CoreDNS runs on every node, which helps resolving the internal API server URL. The external API endpoint -should have been created as part of the [cluster install](https://docs.openshift.com/container-platform/latest/installing/installing_nutanix/installing-nutanix-installer-provisioned.html). +should have been created as part of the [cluster install](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/installing_on_nutanix/installing-nutanix-installer-provisioned). diff --git a/docs/vsphere-golden-image.md b/docs/vsphere-golden-image.md index 64db5604d7..e6e7af2525 100644 --- a/docs/vsphere-golden-image.md +++ b/docs/vsphere-golden-image.md @@ -8,14 +8,14 @@ Currently, the Windows Machine Config Operator (WMCO) stable version supports: * Windows Server 2022 Long-Term Servicing Channel (must contain the OS-level container networking patch [KB5012637](https://support.microsoft.com/en-us/topic/april-25-2022-kb5012637-os-build-20348-681-preview-2233d69c-d4a5-4be9-8c24-04a450861a8d)) *Please note that Windows Server 2019 is unsupported, as patch [KB4565351](https://support.microsoft.com/en-us/help/4565351/windows-10-update-kb4565351) -is not included. This is a requirement of the [hybrid OVN Kubernetes networking with a custom VXLAN port](https://docs.openshift.com/container-platform/latest/networking/ovn_kubernetes_network_provider/configuring-hybrid-networking.html) feature.* +is not included. This is a requirement of the [hybrid OVN Kubernetes networking with a custom VXLAN port](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/networking/ovn-kubernetes-network-plugin) feature.* ## 2. Create the virtual machine To start with, create a new virtual machine in vSphere from the selected Windows Server distribution using the ISO image. See [vSphere documentation](https://docs.vmware.com/en/VMware-vSphere/index.html) for installation guidelines. Ensure that the [virtual hardware version](https://kb.vmware.com/s/article/1003746) meets the -[OpenShift infrastructure requirements](https://docs.openshift.com/container-platform/latest/installing/installing_vsphere/preparing-to-install-on-vsphere.html#installation-vsphere-infrastructure_preparing-to-install-on-vsphere). +[OpenShift infrastructure requirements](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html-single/installing_an_on-premise_cluster_with_the_agent-based_installer/index#preparing-to-install-with-agent-based-installer). ### Setup VMware Tools diff --git a/docs/vsphere-prerequisites.md b/docs/vsphere-prerequisites.md index 2c032345bb..b8b72f06de 100644 --- a/docs/vsphere-prerequisites.md +++ b/docs/vsphere-prerequisites.md @@ -3,7 +3,7 @@ In order to successfully use the Windows Machine Config Operator (WMCO) on a vSphere Platform, the following pre-requisites are required: -* The vSphere cluster must be configured with [hybrid OVN Kubernetes networking with a custom VXLAN port](https://docs.openshift.com/container-platform/latest/networking/ovn_kubernetes_network_provider/configuring-hybrid-networking.html) +* The vSphere cluster must be configured with [hybrid OVN Kubernetes networking with a custom VXLAN port](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/networking/ovn-kubernetes-network-plugin) to work around the pod-to-pod connectivity between hosts [issue](https://docs.microsoft.com/en-us/virtualization/windowscontainers/kubernetes/common-problems#pod-to-pod-connectivity-between-hosts-is-broken-on-my-kubernetes-cluster-running-on-vsphere) * Set up a [VM golden image with a compatible Windows Server version](vsphere-golden-image.md#1-select-a-compatible-windows-server-version). * Add a [DNS entry](#adding-a-dns-entry-in-vsphere-environment) for the internal API endpoint in the vSphere environment @@ -31,4 +31,4 @@ Note: The DNS entry can be a CNAME or an additional A record. The above DNS entry ensures that Windows VM can download the ignition file from the internal API server and the `kubelet` on the configured VM can communicate with the internal API server. In the case of Linux nodes, CoreDNS is running on every node which helps in resolving the internal API server URL. The external API endpoint -should have been created as part of the [cluster install](https://docs.openshift.com/container-platform/latest/installing/installing_vsphere/installing-vsphere-installer-provisioned.html). +should have been created as part of the [cluster install](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html-single/installing_on_vmware_vsphere/index). diff --git a/docs/wmco-prerequisites.md b/docs/wmco-prerequisites.md index 1e33cb30e7..673a501161 100644 --- a/docs/wmco-prerequisites.md +++ b/docs/wmco-prerequisites.md @@ -44,7 +44,7 @@ these errors, only use the appropriate version according to the cloud provider i *Please note that the Windows Server 2022 image must contain the OS-level container networking patch [KB5012637](https://support.microsoft.com/en-us/topic/april-25-2022-kb5012637-os-build-20348-681-preview-2233d69c-d4a5-4be9-8c24-04a450861a8d).* ## Supported Networking -[OVNKubernetes hybrid networking](https://docs.openshift.com/container-platform/latest/networking/ovn_kubernetes_network_provider/configuring-hybrid-networking.html) is the only supported networking configuration. +[OVNKubernetes hybrid networking](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/networking/ovn-kubernetes-network-plugin) is the only supported networking configuration. The following tables outline the type of networking configuration and Windows Server versions to be used based on your cloud provider. The network configuration must be completed during the installation of the cluster. @@ -57,7 +57,7 @@ Note: | AWS | Hybrid OVNKubernetes | | Azure | Hybrid OVNKubernetes | | GCP | Hybrid OVNKubernetes | -| VMware vSphere | Hybrid OVNKubernetes with a [Custom VXLAN port](https://docs.openshift.com/container-platform/latest/networking/ovn_kubernetes_network_provider/configuring-hybrid-networking.html) | +| VMware vSphere | Hybrid OVNKubernetes with a [Custom VXLAN port](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/networking/ovn-kubernetes-network-plugin#configuring-hybrid-networking) | | Nutanix | Hybrid OVNKubernetes | | Hybrid OVNKubernetes | Supported Windows Server version | diff --git a/hack/community/csv/description.md b/hack/community/csv/description.md index b0cbd53d0d..7f818c3a78 100644 --- a/hack/community/csv/description.md +++ b/hack/community/csv/description.md @@ -9,8 +9,8 @@ version of OKD/OCP you are using. This CSV is meant for OKD/OCP COMMUNITY_VERSIO ## Documentation ### Introduction The Windows Machine Config Operator configures Windows instances into nodes, enabling Windows container workloads -to be ran within OKD/OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.openshift.com/container-platform/latest/machine_management/creating_machinesets/creating-machineset-aws.html#machine-api-overview_creating-machineset-aws), -or by specifying existing instances through a [ConfigMap](https://github.com/openshift/windows-machine-config-operator/blob/COMMUNITY_VERSION/README.md#configuring-byoh-bring-your-own-host-windows-instances). +to be ran within OKD/OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.redhat.com/en/documentation/openshift_container_platform/4.18/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-aws), +or by specifying existing instances through a [ConfigMap](https://docs.redhat.com/en/documentation/openshift_container_platform/4.18/html/windows_container_support_for_openshift/byoh-windows-instance). The operator will do all the necessary steps to configure the instance so that it can join the cluster as a worker node. ### Pre-requisites - [Cluster and OS pre-requisites](https://github.com/openshift/windows-machine-config-operator/blob/COMMUNITY_VERSION/docs/wmco-prerequisites.md) diff --git a/pkg/services/services.go b/pkg/services/services.go index e89feb822f..9fd026c202 100644 --- a/pkg/services/services.go +++ b/pkg/services/services.go @@ -15,8 +15,8 @@ import ( ) const ( - // See doc link for explanation of log levels: - // https://docs.openshift.com/container-platform/latest/rest_api/editing-kubelet-log-level-verbosity.html#log-verbosity-descriptions_editing-kubelet-log-level-verbosity + // See doc link for explanation of log levels:\ + // https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/api_overview/editing-kubelet-log-level-verbosity#log-verbosity-descriptions_editing-kubelet-log-level-verbosity debugLogLevel = "4" standardLogLevel = "2" // hostnameOverrideVar is the variable that should be replaced with the value of the desired instance hostname diff --git a/test/e2e/network_test.go b/test/e2e/network_test.go index 2d178e1130..e1229b3637 100644 --- a/test/e2e/network_test.go +++ b/test/e2e/network_test.go @@ -475,7 +475,7 @@ func (tc *testContext) getLogs(podLabelSelector string) (string, error) { // testNorthSouthNetworking deploys a Windows Server pod, and tests that we can network with it from outside the cluster func (tc *testContext) testNorthSouthNetworking(t *testing.T) { // Ignore the application ingress load balancer test for None and vSphere platforms as it has to be created manually - // https://docs.openshift.com/container-platform/4.9/networking/configuring_ingress_cluster_traffic/configuring-ingress-cluster-traffic-load-balancer.html + // https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/networking/configuring-ingress-cluster-traffic#configuring-ingress-cluster-traffic-ingress-controller if tc.CloudProvider.GetType() == config.VSpherePlatformType || tc.CloudProvider.GetType() == config.NutanixPlatformType || tc.CloudProvider.GetType() == config.NonePlatformType { diff --git a/test/e2e/providers/vsphere/vsphere.go b/test/e2e/providers/vsphere/vsphere.go index 92115ffa44..4d023e6d69 100644 --- a/test/e2e/providers/vsphere/vsphere.go +++ b/test/e2e/providers/vsphere/vsphere.go @@ -141,7 +141,7 @@ func (p *Provider) CreatePVC(client client.Interface, namespace string, _ *core. return nil, err } // Use a StorageClass to allow for dynamic volume provisioning - // https://docs.openshift.com/container-platform/4.12/storage/dynamic-provisioning.html#about_dynamic-provisioning + // https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/storage/dynamic-provisioning sc, err := p.ensureStorageClass(client) if err != nil { return nil, fmt.Errorf("unable to ensure a usable StorageClass is created: %w", err) diff --git a/test/e2e/storage_test.go b/test/e2e/storage_test.go index 08f914fed8..c1f31e9e2f 100644 --- a/test/e2e/storage_test.go +++ b/test/e2e/storage_test.go @@ -35,7 +35,7 @@ func testStorage(t *testing.T) { // Create the PVC and choose the node the deployment will be scheduled on. This is necessary as ReadWriteOnly // volumes can only be bound to a single node. - // https://docs.openshift.com/container-platform/4.12/storage/understanding-persistent-storage.html#pv-access-modes_understanding-persistent-storage + // https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/storage/understanding-persistent-storage var pv *core.PersistentVolume if tc.CloudProvider.GetType() == config.NonePlatformType { err = smb.EnsureSMBControllerResources(tc.client.K8s)