Clarifying gcr vs mcr pause image usage for Windows (#29063)

* Clarifying gcr vs mcr pause iamge usage for Windows

Signed-off-by: Mark Rossetti <marosset@microsoft.com>

* updating more pause image references

* Link to pause image section instead of duplicating container image multiple places

* Update content/en/docs/setup/production-environment/windows/intro-windows-in-kubernetes.md

Co-authored-by: James Sturtevant <jsturtevant@gmail.com>

* update link to wincat source

* Removing here link

* end of file blank line

* specify  pause image v3.5 is for v1.22

* Update content/en/docs/setup/production-environment/windows/intro-windows-in-kubernetes.md

Co-authored-by: Tim Bannister <tim@scalefactory.com>

* Update content/en/docs/setup/production-environment/windows/intro-windows-in-kubernetes.md

Co-authored-by: Tim Bannister <tim@scalefactory.com>

* removing v1.15 reference from docs

* Update content/en/docs/setup/production-environment/windows/intro-windows-in-kubernetes.md

Co-authored-by: James Sturtevant <jsturtevant@gmail.com>

* Update content/en/docs/setup/production-environment/windows/intro-windows-in-kubernetes.md

Co-authored-by: James Sturtevant <jsturtevant@gmail.com>

Co-authored-by: James Sturtevant <jsturtevant@gmail.com>
Co-authored-by: Tim Bannister <tim@scalefactory.com>
This commit is contained in:
Mark Rossetti
2021-07-26 22:48:44 -07:00
committed by GitHub
parent 6399fb6c75
commit 2a42dd439c
@@ -99,10 +99,14 @@ limitation and compatibility rules will change.
#### Pause Image #### Pause Image
Microsoft maintains a Windows pause infrastructure container at Kubernetes maintains a multi-architecture image that includes support for Windows.
`mcr.microsoft.com/oss/kubernetes/pause:3.4.1`. For Kubernetes v1.22 the recommended pause image is `k8s.gcr.io/pause:3.5`.
Kubernetes maintains a multi-architecture image `k8s.gcr.io/pause:3.5` that The [source code](https://github.com/kubernetes/kubernetes/tree/master/build/pause)
supports Linux as well as Windows. is available on GitHub.
Microsoft maintains a multi-architecture image with Linux and Windows amd64 support at `mcr.microsoft.com/oss/kubernetes/pause:3.5`.
This image is built from the same source as the Kubernetes maintained image but all of the Windows binaries are [authenticode signed](https://docs.microsoft.com/en-us/windows-hardware/drivers/install/authenticode) by Microsoft.
The Microsoft maintained image is recommended for production environments when signed binaries are required.
#### Compute #### Compute
@@ -1063,9 +1067,8 @@ contributors. Follow the instructions in the SIG-Windows
Register kubelet.exe: Register kubelet.exe:
```powershell ```powershell
# Microsoft releases the pause infrastructure container at mcr.microsoft.com/oss/kubernetes/pause:3.4.1
nssm install kubelet C:\k\kubelet.exe nssm install kubelet C:\k\kubelet.exe
nssm set kubelet AppParameters --hostname-override=<hostname> --v=6 --pod-infra-container-image=mcr.microsoft.com/oss/kubernetes/pause:3.4.1 --resolv-conf="" --allow-privileged=true --enable-debugging-handlers --cluster-dns=<DNS-service-IP> --cluster-domain=cluster.local --kubeconfig=c:\k\config --hairpin-mode=promiscuous-bridge --image-pull-progress-deadline=20m --cgroups-per-qos=false --log-dir=<log directory> --logtostderr=false --enforce-node-allocatable="" --network-plugin=cni --cni-bin-dir=c:\k\cni --cni-conf-dir=c:\k\cni\config nssm set kubelet AppParameters --hostname-override=<hostname> --v=6 --pod-infra-container-image=k8s.gcr.io/pause:3.5 --resolv-conf="" --allow-privileged=true --enable-debugging-handlers --cluster-dns=<DNS-service-IP> --cluster-domain=cluster.local --kubeconfig=c:\k\config --hairpin-mode=promiscuous-bridge --image-pull-progress-deadline=20m --cgroups-per-qos=false --log-dir=<log directory> --logtostderr=false --enforce-node-allocatable="" --network-plugin=cni --cni-bin-dir=c:\k\cni --cni-conf-dir=c:\k\cni\config
nssm set kubelet AppDirectory C:\k nssm set kubelet AppDirectory C:\k
nssm start kubelet nssm start kubelet
``` ```
@@ -1234,11 +1237,11 @@ contributors. Follow the instructions in the SIG-Windows
* `kubectl port-forward` fails with "unable to do port forwarding: wincat not found" * `kubectl port-forward` fails with "unable to do port forwarding: wincat not found"
This was implemented in Kubernetes 1.15 by including wincat.exe in the Port forwarding support for Windows requires wincat.exe to be available in the
pause infrastructure container `mcr.microsoft.com/oss/kubernetes/pause:3.4.1`. [pause infrastructure container](#pause-image).
Be sure to use these versions or newer ones. If you would like to build your Ensure you are using a supported image that is compatable with your Windows OS version.
own pause infrastructure container be sure to include If you would like to build your own pause infrastructure container be sure to include
[wincat](https://github.com/kubernetes-sigs/sig-windows-tools/tree/master/cmd/wincat). [wincat](https://github.com/kubernetes/kubernetes/tree/master/build/pause/windows/wincat).
* My Kubernetes installation is failing because my Windows Server node is * My Kubernetes installation is failing because my Windows Server node is
behind a proxy behind a proxy
@@ -1260,10 +1263,8 @@ contributors. Follow the instructions in the SIG-Windows
to accommodate worker containers crashing or restarting without losing any of to accommodate worker containers crashing or restarting without losing any of
the networking configuration. the networking configuration.
The "pause" (infrastructure) image is hosted on Microsoft Container Registry Refer to the [pause image](#pause-image) section to find the recommended version
(MCR). You can access it using `mcr.microsoft.com/oss/kubernetes/pause:3.4.1`. of the pause image.
For more details, see the
[DOCKERFILE](https://github.com/kubernetes-sigs/windows-testing/blob/master/images/pause/Dockerfile).
### Further investigation ### Further investigation
@@ -1332,4 +1333,3 @@ guide is available
[here](/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/). We are [here](/docs/tasks/administer-cluster/kubeadm/adding-windows-nodes/). We are
also making investments in cluster API to ensure Windows nodes are properly also making investments in cluster API to ensure Windows nodes are properly
provisioned. provisioned.