Windows containers on Red Hat OpenShift
At the end of last year, Red Hat OpenShift received a public version of the Windows Container Support functionality, which allows you to include Windows Compute Nodes in an OpenShift Container Platform cluster in order to run workloads in the form of Windows containers and manage these containers in the same way as Linux -containers. Today we will talk about this in a little more detail.
A (very) brief history of Windows containers
In 2016, Microsoft decided to develop its own container engine that implements the Docker specification so that Windows containers can be launched using familiar tools, for example, like this:
docker run -it microsoft/windowsservercore cmd
As a result, Microsoft created two Windows container implementations:
Process containers (aka Windows Server Containers, WSC);
Hyper-V containers.
, WSC. Windows Containers :
Windows-
Windows- โ Linux, . , Nano Windows Server Core, , , PowerShell PowerShell Core .NET Core.
GUI- โ Windows- UI, .
Windows Server. Windows- Windows, DLL. , Windows-. Linux- .
Windows-
. Windows Server , C# . Windows Server .
Windows-. () Microsoft SQL IIS, ? , bare metal, , , .
, agility Windows-. โ . , , , Windows- ยซยป Windows. Visual Studio Visual Studio Code, : OpenShift on premises, OpenShift Azure AWS.
Windows- OpenShift
5R- (Rehost, Refactor, Revise, Rebuild Replace), Gartner, Windows- OpenShift:
5R |
OpenShift |
|
|
|
Rehost |
OpenShift Virtualization |
Windows OpenShift |
, |
|
Refactor |
Windows Machine Config Operator |
.Net framework Windows Server Containers Windows Worker Node OpenShift |
, OpenShift |
Windows- Windows Server 2019 |
Rearchitect |
RHEL/Red Hat CoreOS |
.Net framework to .Net Core RHEL- OpenShift |
OpenShift, |
|
Rebuild |
RHEL/Red Hat CoreOS |
Linux- RHEL- OpenShift |
OpenShift, |
, |
Windows Machine Config Operator (WMCO)
WMCO โ Windows OpenShift. Windows worker node (scheduling) Windows-. WMCO OpenShift 4.6 OVN Kubernetes.
, WMCO
|
|
|
Red Hat OpenShift Container Platform (OCP) on Azure |
|
|
OCP on AWS |
|
|
OCP on vSphere |
|
|
OCP on Bare metal |
|
|
OCP on Red Hat Virtualization |
|
|
OCP on Red Hat OpenStack Platform |
|
|
OpenShift (Azure Red Hat OpenShift, OpenShift Dedicated ) |
|
|
, Windows Worker Node
WMCO Windows Server Long-Term Servicing Channel (LTSC): Windows Server 2019 ( 10.0.17763.1457 ).
Windows-
Windows- OpenShift WMCO, Linux-, Linux- Control Plane Compute, Windows- .
Windows Compute Node, Windows-. Windows Compute Node MachineSet Windows Server. (label) Windows Docker- (Kubernetes Docker Kubernetes Windows- Containerd).
WMCO Windows- Windows MachineSet , WMCO Windows, Compute Node.
WMCO , Windows. WMCO user data secret, Windows MachineSet. WMCO user data secret , . , Windows SSH.
, , Windows- , Linux, Windows- , taints, tolerations node selectors. Windows Linux, Windows- Windows RuntimeClass.
Windows-
, , , , . Windows- Windows OpenShift :
โ C:\var\log\kube-proxy\kube-proxy.exe.INFO
โ C:\var\log\kube-proxy\kube-proxy.exe.ERROR
โ C:\var\log\kube-proxy\kube-proxy.exe.WARNING
โ C:\var\log\hybrid-overlay\hybrid-overlay.log
โ C:\var\log\kubelet\kubelet.log
โ %APPDATA%\Local\Docker\log.txt
OpenShift Container Platform Windows-podโ :
$ oc logs -f windows-pod-name -n openshift-windows
must-gather :
Windows-podโ - OpenShift Container Platform .