[live-migration] disable log listener for migratable UVMs#2715
Open
rawahars wants to merge 1 commit intomicrosoft:mainfrom
Open
[live-migration] disable log listener for migratable UVMs#2715rawahars wants to merge 1 commit intomicrosoft:mainfrom
rawahars wants to merge 1 commit intomicrosoft:mainfrom
Conversation
49ad723 to
1f015af
Compare
Introduces a sandbox-scoped LiveMigrationAllowed flag (parsed from the LiveMigrationAllowed annotation) that propagates from the LCOW sandbox options through spec building, kernel-args construction, and the host-side VM controller. When a sandbox opts into live migration, the builder validates and locks the allow-listed UVM-shape annotations up front so the GCS init command is emitted without the /bin/vsockexec wrapper since the host will not run a log listener that is non-migratable. Correspondingly, the controller short-circuits its GCS log listener setup for live-migratable pods, closing logOutputDone so the boot path proceeds cleanly without a host-side log socket. Signed-off-by: Harsh Rawat <harshrawat@microsoft.com>
1f015af to
a570878
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This pull request adds support for live-migratable Linux containers on Windows (LCOW) sandboxes by introducing a new
LiveMigrationAllowedoption. When enabled, this option changes how the sandbox is initialized to avoid starting a log listener and to skip the/bin/vsockexecwrapper in the kernel arguments, which is necessary for live migration scenarios. The changes include updates to the configuration, kernel argument construction, and test coverage to ensure correct behavior.Live migration support and configuration:
LiveMigrationAllowedfield toSandboxOptionsand parse it from theio.microsoft.migration.allowedannotation, allowing sandboxes to be marked as live-migratable.buildKernelArgs,buildInitArgs, andbuildGCSCommandto thread theliveMigrationAllowedflag through and alter command-line construction accordingly. When enabled, the/bin/vsockexecwrapper is omitted to prevent stalling during migration.Controller and runtime behavior:
Testing and validation:
specs_test.goto verify correct parsing, kernel argument construction, and runtime behavior for both enabled and disabled live migration scenarios, including edge cases.