Hyper-V : 統合サービス (Linux)2024/12/13 |
Hyper-V ホストと Linux ゲストシステムとの統合性を向上させる [統合サービス] の設定です。 |
|
[1] | Hyper-V ホスト側の設定では、既定では [ゲスト サービス インターフェイス] 以外は有効になっています。 |
Windows PowerShell Copyright (C) Microsoft Corporation. All rights reserved. # Hyper-V ホスト側の統合サービスの設定 PS C:\Users\Administrator> Get-VMIntegrationService -VMName "Ubuntu 24.04" VMName Name Enabled PrimaryStatusDescription SecondaryStatusDescription ------ ---- ------- ------------------------ -------------------------- Ubuntu 24.04 Guest Service Interface False OK Ubuntu 24.04 Heartbeat True OK Ubuntu 24.04 Key-Value Pair Exchange True OK The protocol version of the component installed in the... Ubuntu 24.04 Shutdown True OK Ubuntu 24.04 Time Synchronization True OK Ubuntu 24.04 VSS True OK The protocol version of the component installed in the... |
[2] | Linux ゲスト側では、主要なディストリビューションにおいては、スクリーンやキーボード系のドライバーはデフォルトでカーネルモジュールとして読み込まれていますが、 ホスト側からゲスト側の IP アドレス等々の情報を取得したりスナップショットを取得するためには、Linux ゲスト側でパッケージの追加インストールが必要です。 |
root@ubuntu:~# lsmod | grep hv_ hv_balloon 45056 0 hv_storvsc 24576 2 hv_netvsc 118784 0 scsi_transport_fc 114688 1 hv_storvsc hv_utils 53248 0 hv_vmbus 176128 8 hv_balloon,hv_utils,hv_netvsc,hid_hyperv,hv_storvsc,hyperv_keyboard,hyperv_drm,hyperv_fb # 必要に応じて パッケージをインストールしてサービス起動 # - hypervkvpd : IP アドレス等のゲストシステムの情報をホストへ送る # - hypervvssd : ホストからスナップショットやバックアップが取得可 # RedHat 系 [root@rhel ~]# dnf -y install hyperv-daemons [root@rhel ~]# systemctl start hypervkvpd hypervvssd # Debian root@debian:~# apt -y install hyperv-daemons root@debian:~# systemctl start hv-kvp-daemon hv-vss-daemon # Ubuntu root@ubuntu:~# apt -y install linux-cloud-tools-$(uname -r) root@ubuntu:~# systemctl start hv-kvp-daemon hv-vss-daemon |
[3] | Linux ゲスト側で KVP サービスや VSS サービスを有効にすると、Hyper-V ホスト側から IP アドレス等の情報が確認等々が可能となります。 |
PS C:\Users\Administrator> Get-VM Name State CPUUsage(%) MemoryAssigned(M) Uptime Status Version ---- ----- ----------- ----------------- ------ ------ ------- CentOS 9 Running 0 4096 00:37:32.6540000 Operating normally 12.0 Ubuntu 24.04 Running 0 4096 00:06:19.8610000 Operating normally 12.0 PS C:\Users\Administrator> Get-VMNetworkAdapter -VMName "CentOS 9" | Select IPAddresses IPAddresses ----------- {10.0.0.221, fe80::215:5dff:fe00:6602} PS C:\Users\Administrator> Get-VMNetworkAdapter -VMName "Ubuntu 24.04" | Select-Object * VMCheckpointId : 00000000-0000-0000-0000-000000000000 VMCheckpointName : VmmqQueuePairs : 8 VmmqQueuePairsRequested : 16 ClusterMonitored : True MacAddress : 00155D006601 MediaType : 0 DynamicMacAddressEnabled : True InterruptModeration : True AllowPacketDirect : False VirtualSystemIdentifiers : {1db50410-0987-44e2-b1c3-53947e99e5c8, b72d2e6e-27b5-41c9-8b98-a32207bfa9cb} NumaAwarePlacement : False IsLegacy : False IsSynthetic : True IPAddresses : {10.0.0.233, fe80::215:5dff:fe00:6601} DeviceNaming : Off IovWeight : 0 IovQueuePairsRequested : 1 IovInterruptModeration : Default PacketDirectNumProcs : 0 PacketDirectModerationCount : 64 PacketDirectModerationInterval : 1000000 IovQueuePairsAssigned : 0 IovUsage : 0 VirtualFunction : MandatoryFeatureId : {} MandatoryFeatureName : {} PoolName : Connected : True SwitchName : Red Hat VirtIO Ethernet Adapter - Virtual Switch AdapterId : F2967DAC-68A0-47DB-8D7A-8F96201843CA TestReplicaPoolName : TestReplicaSwitchName : StatusDescription : {OK} Status : {Ok} IsManagementOs : False IsExternalAdapter : False Id : Microsoft:089529DA-6A06-4627-AA5E-E66F6BD6E28E\F2967DAC-68A0-47DB-8D7A-8F96201843CA SwitchId : 0291c0bc-7e81-4d90-a039-21d2a92cdb6b AclList : {} ExtendedAclList : {} IsolationSetting : VMNetworkAdapterIsolationSetting RoutingDomainList : {} VlanSetting : VMNetworkAdapterVlanSetting BandwidthSetting : CurrentIsolationMode : Vlan MacAddressSpoofing : Off DhcpGuard : Off RouterGuard : Off PortMirroringMode : None IeeePriorityTag : Off VirtualSubnetId : 0 DynamicIPAddressLimit : 0 StormLimit : 0 AllowTeaming : Off FixSpeed10G : Off VMQWeight : 100 IPsecOffloadMaxSA : 512 VrssEnabled : True VrssEnabledRequested : True VmmqEnabled : False VmmqEnabledRequested : True VrssMaxQueuePairs : 8 VrssMaxQueuePairsRequested : 16 VrssMinQueuePairs : 1 VrssMinQueuePairsRequested : 1 VrssQueueSchedulingMode : Dynamic VrssQueueSchedulingModeRequested : Dynamic VrssExcludePrimaryProcessor : False VrssExcludePrimaryProcessorRequested : False VrssIndependentHostSpreading : False VrssIndependentHostSpreadingRequested : False VrssVmbusChannelAffinityPolicy : Strong VrssVmbusChannelAffinityPolicyRequested : Strong RscEnabled : True RscEnabledRequested : True VmqUsage : 0 IPsecOffloadSAUsage : 0 VFDataPathActive : False VMQueue : BandwidthPercentage : 0 IsTemplate : False Name : Network Adapter VMId : 089529da-6a06-4627-aa5e-e66f6bd6e28e VMName : Ubuntu 24.04 VMSnapshotId : 00000000-0000-0000-0000-000000000000 VMSnapshotName : CimSession : CimSession: . ComputerName : RX-8 IsDeleted : False |
[4] | Hyper-V ホスト側で [ゲスト サービス インターフェイス] を有効にした上で、ゲスト側で ファイルコピーサービスを起動すると、ホスト/ゲスト間でのファイルコピーができるようになります。 |
# Hyper-V ホスト側 PS C:\Users\Administrator> Enable-VMIntegrationService -VMName "Ubuntu 24.04" -Name "Guest Service Interface" PS C:\Users\Administrator> Get-VMIntegrationService -VMName "Ubuntu 24.04" VMName Name Enabled PrimaryStatusDescription SecondaryStatusDescription ------ ---- ------- ------------------------ -------------------------- Ubuntu 24.04 Guest Service Interface True OK Ubuntu 24.04 Heartbeat True OK Ubuntu 24.04 Key-Value Pair Exchange True OK The protocol version of the component installed in the... Ubuntu 24.04 Shutdown True OK Ubuntu 24.04 Time Synchronization True OK Ubuntu 24.04 VSS True OK The protocol version of the component installed in the... # ゲスト側 # RedHat 系 [root@rhel ~]# dnf -y install hyperv-daemons [root@rhel ~]# systemctl start hypervfcopyd # Debian root@debian:~# apt -y install hyperv-daemons root@debian:~# systemctl start hv-fcopy-daemon # Ubuntu root@ubuntu:~# apt -y install linux-cloud-tools-$(uname -r) root@ubuntu:~# systemctl start hv-fcopy-daemon # Hyper-V ホストでファイルコピー確認 PS C:\Users\Administrator> Add-Content testfile.txt "file copy test" PS C:\Users\Administrator> Copy-VMFile "Ubuntu 24.04" -SourcePath "C:\Users\Administrator\testfile.txt" -DestinationPath "/tmp" -FileSource Host PS C:\Users\Administrator> Get-VMNetworkAdapter -VMName "Ubuntu 24.04" | Select IPAddresses IPAddresses ----------- {10.0.0.233, fe80::215:5dff:fe00:6601} PS C:\Users\Administrator> ssh ubuntu@10.0.0.233 "cat /tmp/testfile.txt" ubuntu@10.0.0.233's password: file copy test |
Sponsored Link |
|