Set up Software Defined Network (SDN) components in the VMM fabric using PowerShell

System Center Virtual Machine Manager (VMM) can be used to deploy and manage a Software Defined Network (SDN) infrastructure.

You can deploy SDN components in the VMM fabric, including:

  • Network Controller: The network controller allows you to automate the configuration of your network infrastructure instead of manually configuring network devices and services.
  • RAS Gateway for SDN: RAS Gateway is a software-based, multi-tenant, BGP capable router in Windows Server 2016 that is designed for CSPs and enterprises that host multiple tenant virtual networks using HNV.
  • Software Load Balancing (SLB) for SDN: SDN in Windows Server 2016 can use Software Load Balancing (SLB) to evenly distribute tenant and tenant customer network traffic among virtual network resources. The Windows Server SLB enables multiple servers to host the same workload, providing high availability and scalability.

There are a couple of ways to deploy these components:

Advantages of PowerShell deployment

  • Deploy all SDN components with PowerShell scripts.
  • The use of a script reduces the introduction of manual errors and save significant deployment time.
  • If you deploy using the script, you can modify settings in the VMM console afterwards just as you would if you deploy the SDN components manually.
  • Like the manual deployment, you have the option of setting up a new management logical network and switch or to reuse an existing network and switch.
  • If the script deployment fails, all the changed settings are rolled back so that you can start again.
  • You can turn off deployment for specific components. For example, if you already have network controller deployed, you can deploy SLB and RAS gateway only.

Before you start

Deployment steps

Here's what you need to do to set up SDN components in VMM with PowerShell.

  1. Configure hosts and physical network infrastructure: You need access to your physical network devices to configure VLANs, routing, and others. You also need Hyper-V hosts to host the SDN infrastructure and tenant VMs. Learn more.

  2. Prepared virtual hard disk for the service templates in VHD or VHDX format.

  3. Download the network controller service template, the SLB service template, and the RAS gateway service template.

  4. Import the network controller, SLB, and RAS gateway templates into the VMM library.

  5. Set up Active Directory security groups. One for network controller management, and another for network controller clients. Each group will need at least one user account in it.

  6. Set up a VMM library share. You can have an optional library file share for keeping diagnostics logs. This library share will be accessed by the network controller to store diagnostics information throughout its lifetime.

  7. Set up a dedicated VMM host group for all SDN Hyper-V hosts.

    Note

    Hosts must be running the latest version of applicable Windows Server version and have the Hyper-V role enabled.

  8. Set up a certificate. You need an SSL certificate for HTTPS communications between VMM and the network controller.

  9. Download and run the SDN scripts. There are three scripts:

    • VMMExpress.ps1: This script deploys the SDN stack. After you download it, you can add your own customizations.
    • Fabricconfig.psd1: This file accepts all the inputs for setting up SDN.
    • Fabricconfig_Example.psd1: A sample file that contains dummy parameters. You can replace those with your own parameters.

Next steps

Configure hosts and physical network infrastructure for SDN .