June 20-22 Announcing HashiConf Europe full schedule: keynotes, sessions, labs & more Register Now
  • Infrastructure
    • terraform
    • packer
  • Networking
    • consul
  • Security
    • vault
    • boundary
  • Applications
    • nomad
    • waypoint
    • vagrant
  • HashiCorp Cloud Platform

    A fully managed platform to automate infrastructure on any cloud with HashiCorp products.

    • consul
    • terraform
    • vault
    • packerbeta
    Visit cloud.hashicorp.com
  • Intro
  • Docs
  • Community
GitHub—Stars on GitHub
Download
    • v2.2.19 (latest)
    • v2.2.18
    • v2.2.17
    • v2.2.16
    • v2.2.15
    • v2.2.14
    • v2.2.13
    • v2.2.12
    • v2.2.11
    • v2.2.10
  • Overview
    • Overview
    • Backwards Compatibility
    • Upgrading
    • Upgrading from 1.0.x
    • From Source
    • Uninstallation
    • Overview
    • box
    • cloud
    • connect
    • destroy
    • global-status
    • halt
    • init
    • login
    • package
    • plugin
    • port
    • powershell
    • provision
    • rdp
    • reload
    • resume
    • share
    • snapshot
    • ssh
    • ssh-config
    • status
    • suspend
    • up
    • upload
    • validate
    • version
    • More Commands
    • Aliases
    • Machine Readable Output
    • rsync
    • rsync-auto
    • winrm
    • winrm_config
    • Overview
    • HTTP Sharing
    • SSH Sharing
    • Connect
    • Security
    • Custom Provider
    • Overview
    • Configuration Version
    • Minimum Vagrant Version
    • Tips & Tricks
    • config.vm
    • config.ssh
    • config.winrm
    • config.winssh
    • config.vagrant
    • Overview
    • Box Versioning
    • Creating a Base Box
    • Box File Format
    • Box Info Format
    • Overview
    • Basic Usage
    • File
    • Shell
    • Ansible Intro
    • Ansible
    • Ansible Local
    • Common Ansible Options
    • CFEngine
    • Chef Common Configuration
    • Chef Solo
    • Chef Zero
    • Chef Client
    • Chef Apply
    • Docker
    • Podman
    • Puppet Apply
    • Puppet Agent
    • Salt
    • Overview
    • Basic Usage
    • Forwarded Ports
    • Private Network
    • Public Network
    • Overview
    • Basic Usage
    • NFS
    • RSync
    • SMB
    • VirtualBox
    • Overview
    • Configuration
    • Usage
    • Overview
    • Configuration
    • Usage
      • Overview
      • Usage
      • Common Issues
      • Overview
      • Usage
      • Common Issues
      • Overview
      • Usage
      • Common Issues
  • Multi-Machine
    • Overview
    • Installation
    • Basic Usage
    • Configuration
    • Default Provider
      • Overview
      • Usage
      • Creating a Base Box
      • Configuration
      • Networking
      • Common Issues
      • Overview
      • Installation
      • VMware Utility
      • Usage
      • Boxes
      • Configuration
      • Known Issues
      • FAQ
      • Overview
      • Basic Usage
      • Commands
      • Boxes
      • Configuration
      • Networking
      • Overview
      • Usage
      • Creating a Base Box
      • Configuration
      • Limitations
    • Custom Provider
    • Overview
    • Usage
    • Plugin Development Basics
    • Action Hooks
    • Commands
    • Configuration
    • Guests
    • Guest Capabilities
    • Hosts
    • Host Capabilities
    • Providers
    • Provisioners
    • Packaging & Distribution
    • Overview
    • FTP / SFTP
    • Heroku
    • Local Exec
    • Overview
    • Configuration
    • Usage
  • Experimental
    • Overview
    • Debugging
    • Environmental Variables
    • WSL
    • macOS Catalina

  • Vagrant Cloud
Type '/' to Search

»Configuration

The Vagrant Hyper-V provider has some provider-specific configuration options you may set. A complete reference is shown below:

  • auto_start_action (Nothing, StartIfRunning, Start) - Automatic start action for VM on host startup. Default: Nothing.
  • auto_stop_action (ShutDown, TurnOff, Save) - Automatic stop action for VM on host shutdown. Default: ShutDown.
  • cpus (integer) - Number of virtual CPUs allocated to VM at startup.
  • differencing_disk (boolean) - Deprecated Use differencing disk instead of cloning entire VHD (use linked_clone instead) Default: false.
  • enable_virtualization_extensions (boolean) - Enable virtualization extensions for the virtual CPUs. Default: false
  • enable_checkpoints (boolean) Enable checkpoints of the VM. Default: true
  • enable_automatic_checkpoints (boolean) Enable automatic checkpoints of the VM. Default: false
  • enable_enhanced_session_mode (boolean) - Enable enhanced session transport type for the VM. Default: false
  • ip_address_timeout (integer) - Number of seconds to wait for the VM to report an IP address. Default: 120.
  • linked_clone (boolean) - Use differencing disk instead of cloning entire VHD. Default: false
  • mac (string) - MAC address for the guest network interface
  • maxmemory (integer) - Maximum number of megabytes allowed to be allocated for the VM. When set Dynamic Memory Allocation will be enabled.
  • memory (integer) - Number of megabytes allocated to VM at startup. If maxmemory is set, this will be amount of memory allocated at startup.
  • vlan_id (integer) - VLAN ID for the guest network interface.
  • vmname (string) - Name of virtual machine as shown in Hyper-V manager. Default: Generated name.
  • vm_integration_services (Hash) - Hash to set the state of integration services. (Note: Unknown key values will be passed directly.)
    • guest_service_interface (boolean)
    • heartbeat (boolean)
    • key_value_pair_exchange (boolean)
    • shutdown (boolean)
    • time_synchronization (boolean)
    • vss (boolean)

»VM Integration Services

The vm_integration_services configuration option consists of a simple Hash. The key values are the 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 key is unknown, the key value is used "as-is" without any modifications.

For example, if a new CustomVMSRV VM integration service was added and Vagrant is not aware of this new service name, it can be provided as the key value explicitly:

config.vm.provider "hyperv" do |h|
  h.vm_integration_services = {
    guest_service_interface: true,
    CustomVMSRV: true
  }
end
config.vm.provider "hyperv" do |h|
  h.vm_integration_services = {
    guest_service_interface: true,
    CustomVMSRV: true
  }
end

This example would enable the GuestServiceInterface (which Vagrant is aware) and CustomVMSRV (which Vagrant is not aware) VM integration services.

github logoEdit this page
IntroDocsBookVMwarePrivacySecurityPress KitConsent Manager