Update Hyper-V provider configuration documentation

This commit is contained in:
Chris Roberts 2018-05-29 10:21:52 -07:00
parent 73c09de1a9
commit 12194cba5a
1 changed files with 42 additions and 38 deletions

View File

@ -12,41 +12,45 @@ description: |-
The Vagrant Hyper-V provider has some provider-specific configuration options The Vagrant Hyper-V provider has some provider-specific configuration options
you may set. A complete reference is shown below: you may set. A complete reference is shown below:
* `vmname` (string) - Name of virtual machine as shown in Hyper-V manager. * `auto_start_action` (Nothing, StartIfRunning, Start) - Automatic start action for VM on host startup. Default: Nothing.
Defaults is taken from box image XML. * `auto_stop_action` (ShutDown, TurnOff, Save) - Automatic stop action for VM on host shutdown. Default: ShutDown.
* `cpus` (integer) - Number of virtual CPU given to machine. * `cpus` (integer) - Number of virtual CPUs allocated to VM at startup.
Defaults is taken from box image XML. * `differencing_disk` (boolean) - **Deprecated** Use differencing disk instead of cloning entire VHD (use `linked_clone` instead) Default: false.
* `memory` (integer) - Number of MegaBytes allocated to VM at startup. * `enable_virtualization_extensions` (boolean) - Enable virtualization extensions for the virtual CPUs. Default: false
Defaults is taken from box image XML. * `enable_checkpoints` (boolean) Enable automatic checkpoints of the VM. Default: false
* `maxmemory` (integer) - Number of MegaBytes maximal allowed to allocate for VM * `ip_address_timeout` (integer) - Number of seconds to wait for the VM to report an IP address. Default: 120.
This parameter is switch on Dynamic Allocation of memory. * `linked_clone` (boolean) - **Deprecated** Use differencing disk instead of cloning entire VHD. Default: false
Defaults is taken from box image XML. * `mac` (string) - MAC address for the guest network interface
* `vlan_id` (integer) - Number of Vlan ID for your guest network interface * `maxmemory` (integer) - Maximum number of megabytes allowed to be allocated for the VM. When set Dynamic Memory Allocation will be enabled.
Defaults is not defined, vlan configuration will be untouched if not set. * `memory` (integer) - Number of megabytes allocated to VM at startup. If `maxmemory` is set, this will be amount of memory allocated at startup.
* `mac` (string) - MAC address for your guest network interface * `vlan_id` (integer) - VLAN ID for the guest network interface.
Default is not defined, MAC address will be dynamically assigned by Hyper-V if not set. * `vmname` (string) - Name of virtual machine as shown in Hyper-V manager. Default: Generated name.
* `ip_address_timeout` (integer) - The time in seconds to wait for the * `vm_integration_services` (Hash) - Hash to set the state of integration services. (Note: Unknown key values will be passed directly.)
virtual machine to report an IP address. This defaults to 120 seconds. * `guest_service_interface` (boolean)
This may have to be increased if your VM takes longer to boot. * `heartbeat` (boolean)
* `differencing_disk` (boolean) - Switch to use differencing disk instead of cloning whole VHD. * `key_value_pair_exchange` (boolean)
* `enable_virtualization_extensions` (boolean) - Enable virtualization extensions for the virtual CPUs. * `shutdown` (boolean)
This allows Hyper-V to be nested and run inside another Hyper-VM VM. It requires Windows 10 - 1511 (build 10586) or newer. * `time_synchronization` (boolean)
Default is not defined. This will be disabled if not set. * `vss` (boolean)
* `auto_start_action` (Nothing, StartIfRunning, Start) - Action on automatic start of VM when booting OS
* `auto_stop_action` (ShutDown, TurnOff, Save) - Action on automatic stop of VM when shutting down OS. ## VM Integration Services
* `vm_integration_services` (Hash) - Hash to set the state of integration services.
The `vm_integration_services` configuration option consists of a simple Hash. The key values are the
Example: names of VM integration services to enable or disable for the VM. Vagrant includes an internal
mapping of known services which allows them to be provided in a "snake case" format. When a provided
```ruby key is unknown, the key value is used "as-is" without any modifications.
config.vm.provider "hyperv" do |h|
h.vm_integration_services = { For example, if a new `CustomVMSRV` VM integration service was added and Vagrant is not aware of this
guest_service_interface: true, new service name, it can be provided as the key value explicitly:
heartbeat: true,
key_value_pair_exchange: true, ```ruby
shutdown: true, config.vm.provider "hyperv" do |h|
time_synchronization: true, h.vm_integration_services = {
vss: true guest_service_interface: true,
} CustomVMSRV: true
end }
``` end
```
This example would enable the `GuestServiceInterface` (which Vagrant is aware) and `CustomVMSRV` (which
Vagrant is _not_ aware) VM integration services.