Skip to content

Commit 2ad5d12

Browse files
feiskyerzacharysarah
authored and
zacharysarah
committed
Update docs for windows container resources (#7653)
1 parent 87c391e commit 2ad5d12

File tree

1 file changed

+76
-1
lines changed
  • docs/getting-started-guides/windows

1 file changed

+76
-1
lines changed

docs/getting-started-guides/windows/index.md

+76-1
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,14 @@ We recommend using the release binaries that can be found at [https://github.com
2424
We recommend using the release binaries that can be found at [https://github.com/kubernetes/kubernetes/releases](https://github.com/kubernetes/kubernetes/releases). Look for the Node Binaries section by visiting the binary downloads link.
2525
=======
2626
## Get Windows Binaries
27+
<<<<<<< HEAD
2728
We recommend using the release binaries that can be found at [https://github.com/kubernetes/kubernetes/releases/latest](https://github.com/kubernetes/kubernetes/releases/latest). Under the CHANGELOG you can find the Node Binaries link for Windows-amd64, which will include kubeadm, kubectl, kubelet and kube-proxy.
2829
>>>>>>> merge master to 1.10, with fixes (#7682)
30+
||||||| merged common ancestors
31+
We recommend using the release binaries that can be found at [https://github.com/kubernetes/kubernetes/releases/latest](https://github.com/kubernetes/kubernetes/releases/latest). Under the CHANGELOG you can find the Node Binaries link for Windows-amd64, which will include kubeadm, kubectl, kubelet and kube-proxy.
32+
=======
33+
We recommend using the release binaries that can be found at [https://github.com/kubernetes/kubernetes/releases/latest](https://github.com/kubernetes/kubernetes/releases/latest). Under the CHANGELOG you can find the Node Binaries link for Windows-amd64, which will include kubeadm, kubectl, kubelet and kube-proxy.
34+
>>>>>>> Update docs for windows container resources (#7653)
2935
3036
If you wish to build the code yourself, please refer to detailed build instructions [here](https://docs.microsoft.com/en-us/virtualization/windowscontainers/kubernetes/compiling-kubernetes-binaries).
3137

@@ -100,6 +106,7 @@ To run Windows Server Containers on Kubernetes, you'll need to set up both your
100106

101107
More detailed instructions can be found [here](https://github.com/MicrosoftDocs/Virtualization-Documentation/blob/live/virtualization/windowscontainers/kubernetes/getting-started-kubernetes-windows.md).
102108

109+
<<<<<<< HEAD
103110
<<<<<<< HEAD
104111
**Windows CNI Config Example**
105112
Today, Windows CNI plugin is based on wincni.exe code with the following example, configuration file. This is based on the ToR example diagram shown above, specifying the configuration to apply to Windows node-1. Of special interest is Windows node-1 pod CIDR (10.10.187.64/26) and the associated gateway of cbr0 (10.10.187.66). The exception list is specifying the Service CIDR (11.0.0.0/8), Cluster CIDR (10.10.0.0/16), and Management (or Host) CIDR (10.127.132.128/25).
@@ -108,6 +115,11 @@ Today, Windows CNI plugin is based on wincni.exe code with the following example
108115
Today, Windows CNI plugin is based on wincni.exe code with the following example, configuration file.
109116
=======
110117
**Windows CNI Config Example**
118+
||||||| merged common ancestors
119+
**Windows CNI Config Example**
120+
=======
121+
**Windows CNI Config Example**
122+
>>>>>>> Update docs for windows container resources (#7653)
111123
Today, Windows CNI plugin is based on wincni.exe code with the following example, configuration file. This is based on the ToR example diagram shown above, specifying the configuration to apply to Windows node-1. Of special interest is Windows node-1 pod CIDR (10.10.187.64/26) and the associated gateway of cbr0 (10.10.187.66). The exception list is specifying the Service CIDR (11.0.0.0/8), Cluster CIDR (10.10.0.0/16), and Management (or Host) CIDR (10.127.132.128/25).
112124
>>>>>>> merge master to 1.10, with fixes (#7682)
113125
@@ -267,7 +279,7 @@ Because your cluster has both Linux and Windows nodes, you must explicitly set t
267279
=======
268280
## Support for kubeadm join
269281

270-
If your cluster has been created by [kubeadm](https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/),
282+
If your cluster has been created by [kubeadm](https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/),
271283
and your networking is setup correctly using one of the methods listed above (networking is setup outside of kubeadm), you can use kubeadm to add a Windows node to your cluster. At a high level, you first have to initialize the master with kubeadm (Linux), then set up the CNI based networking (outside of kubeadm), and finally start joining Windows or Linux worker nodes to the cluster. For additional documentation and reference material, visit the kubeadm link above.
272284

273285
The kubeadm binary can be found at [Kubernetes Releases](https://github.com/kubernetes/kubernetes/releases), inside the node binaries archive. Adding a Windows node is not any different than adding a Linux node:
@@ -531,23 +543,86 @@ Windows Stats use a hybrid model: pod and container level stats come from CRI (v
531543
Windows Stats use a hybrid model: pod and container level stats come from CRI (via dockershim), while node level stats come from the "winstats" package that exports cadvisor like data structures using windows specific perf counters from the node.
532544
>>>>>>> merge master to 1.10, with fixes (#7682)
533545

546+
### Container Resources
547+
548+
Container resources (CPU and memory) could be set now for windows containers in v1.10.
549+
550+
```yaml
551+
apiVersion: apps/v1
552+
kind: Deployment
553+
metadata:
554+
name: iis
555+
spec:
556+
replicas: 3
557+
template:
558+
metadata:
559+
labels:
560+
app: iis
561+
spec:
562+
containers:
563+
- name: iis
564+
image: microsoft/iis
565+
resources:
566+
limits:
567+
memory: "128Mi"
568+
cpu: 2
569+
ports:
570+
- containerPort: 80
571+
```
572+
573+
### Hyper-V Containers
574+
575+
Hyper-V containers are supported as experimental in v1.10. To create a Hyper-V container, kubelet should be started with feature gates `HyperVContainer=true` and Pod should include annotation `experimental.windows.kubernetes.io/isolation-type=hyperv`.
576+
577+
```yaml
578+
apiVersion: apps/v1
579+
kind: Deployment
580+
metadata:
581+
name: iis
582+
spec:
583+
replicas: 3
584+
template:
585+
metadata:
586+
labels:
587+
app: iis
588+
annotations:
589+
experimental.windows.kubernetes.io/isolation-type: hyperv
590+
spec:
591+
containers:
592+
- name: iis
593+
image: microsoft/iis
594+
ports:
595+
- containerPort: 80
596+
```
597+
534598
## Known Limitations for Windows Server Containers with v1.9
535599
Some of these limitations will be addressed by the community in future releases of Kubernetes
536600
- Shared network namespace (compartment) with multiple Windows Server containers (shared kernel) per pod is only supported on Windows Server 1709 or later
537601
<<<<<<< HEAD
602+
<<<<<<< HEAD
538603
- Using Secrets and ConfigMaps as volume mounts is not supported
539604
- Mount propagation is not supported on Windows
540605
||||||| merged common ancestors
541606
- Using Secrets and ConfigMaps as volume mounts is not supported
542607
=======
543608
- Using Secrets and ConfigMaps as volume mounts is not supported
609+
||||||| merged common ancestors
610+
- Using Secrets and ConfigMaps as volume mounts is not supported
611+
=======
612+
- Using Secrets and ConfigMaps as volume mounts is not supported
613+
>>>>>>> Update docs for windows container resources (#7653)
544614
- Mount propagation is not supported on Windows
545615
>>>>>>> merge master to 1.10, with fixes (#7682)
546616
- The StatefulSet functionality for stateful applications is not supported
547617
- Horizontal Pod Autoscaling for Windows Server Container pods has not been verified to work end-to-end
548618
<<<<<<< HEAD
549619
<<<<<<< HEAD
620+
<<<<<<< HEAD
621+
- Hyper-V isolated containers are not supported.
622+
||||||| merged common ancestors
550623
- Hyper-V isolated containers are not supported.
624+
=======
625+
>>>>>>> Update docs for windows container resources (#7653)
551626
- Windows container OS must match the Host OS. If it does not, the pod will get stuck in a crash loop.
552627
- Under the networking models of L3 or Host GW, Kubernetes Services are inaccessible to Windows nodes due to a Windows issue. This is not an issue if using OVN/OVS for networking.
553628
- Windows kubelet.exe may fail to start when running on Windows Server under VMware Fusion [issue 57110](https://github.com/kubernetes/kubernetes/pull/57124)

0 commit comments

Comments
 (0)