Uh oh!
There was an error while loading. Please reload this page.
adds containerd-shim-lcow-v2 shim - #2627
Conversation
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
In this commit, we are adding the initial draft of `containerd-shim-lcow-v1`. This shim is used for running Linux Containers on Windows. As part of this commit, we are adding the following- - The main entrypoint and supporting logic to start + serve the shim server. - The stubs for Task Service and Shimdiag service. - The implementation for `Sandbox` service. - The implementation for `VM Controller` which manages the VM lifecycle and operations. Signed-off-by: Harsh Rawat <harshrawat@microsoft.com>
6777136 to
1bb1938CompareSigned-off-by: Harsh Rawat <harshrawat@microsoft.com>
1bb1938 to
a457c22CompareUh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Signed-off-by: Harsh Rawat <harshrawat@microsoft.com>
6fb16bd to
49b2b66Compare
Shreyansh Sancheti (shreyanshjain7174)
left a comment
There was a problem hiding this comment.
Review of the critical items — each comment is a question for clarification.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Signed-off-by: Harsh Rawat <harshrawat@microsoft.com>
| const ( | ||
| // LCOWShimName is the name of the LCOW shim implementation. | ||
| LCOWShimName = "containerd-shim-lcow-v2" |
There was a problem hiding this comment.
can you move this to cmd/containerd-shim-lcow-v2? this should be the app name for the shim, and there shouldn't be a need for any code outside of the shim binary code to use/access it
There was a problem hiding this comment.
Relocated the constant to the service package. Since main can import service but not vice versa without creating circular dependencies, this move ensures the name is available to both.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Signed-off-by: Harsh Rawat <harshrawat@microsoft.com>
Uh oh!
There was an error while loading. Please reload this page.
| const ( | ||
| // etwProviderName is the ETW provider name for lcow shim. | ||
| etwProviderName = "Microsoft.Virtualization.RunHCSLCOW" |
There was a problem hiding this comment.
I wonder if we should leave the provider name alone so we just need 1 log stream registered
There was a problem hiding this comment.
Changed the name of provider to Microsoft.Virtualization.containerd-shim-lcow-v2
Signed-off-by: Harsh Rawat <harshrawat@microsoft.com>
| const ( | ||
| // etwProviderName is the ETW provider name for lcow shim. | ||
| etwProviderName = "Microsoft.Virtualization.containerd-shim-lcow-v2" |
There was a problem hiding this comment.
| etwProviderName="Microsoft.Virtualization.containerd-shim-lcow-v2" | |
| etwProviderName="Microsoft.Virtualization"+ShimName |
Summary
This pull request introduces a new implementation of the
containerd-shim-lcow-v2for Windows, used for running Linux Containers on Windows.The changes cover the main entrypoint, shim manager logic, plugin registration, shared service implementation, and a manifest for proper Windows compatibility. The uber changes are-
Sandboxservice.VM Controllerwhich manages the VM lifecycle and operations.This shim follows the upstream pattern of using
containerd/pkg/shimfor managing it's lifecycle. It uses plugin mechanism for registering service with containerd and is initialized during startup.This PR is dependent upon PR #2612 and PR #2616