Deploy the Assembler in Hyper-V
This guide is only for V2 assemblers being deployed with a virtual machine in Hyper-V. The V1 assembler is no longer supported as of June 30, 2024.
Each assembler you created must be deployed via a virtual machine, and then you can add your technology as a security device in Workbench to complete the full integration. For more information about the Expel Assembler or how it works, see the About the Expel Assembler guide.
Prerequisites
You must have completed all of the steps in Add a New Assembler for each assembler you wish to deploy.
You must be using at least Windows 8.1 or later (this is the minimum version we support).
You will need a small utility from the Libhvee library called kvpctl, which will attach your ignition file config to your virtual machine.
Precompiled binaries can be found on the project’s releases page: https://github.com/containers/libhvee/releases
Go to v.0.4.0 and look for kvpctl.exe, then save it to a shared folder or to your local disk; your virtual machine will need to be able to access this file.

Step 1: Download the Ignition File
The ignition file enables the virtual machine to read a configuration file, and to provision the Fedora CoreOS system based on the contents of that file. You will use this file when you configure the virtual machine in Hyper-V.
In the side menu, navigate to Organization Settings > Assemblers.
Find the assembler you created, leave the file format as JSON, and select Download the CoreOS Ignition File. This action will download a JSON file that you will need in the next section.

Move the file to a shared folder so that it can be accessed by the virtual machine in the next section, or move it to your local disk.
Repeat this process for any additional assemblers.
Step 2: Create an External Virtual Switch
You need to create an external virtual switch so that your virtual machine can connect to networks that are external to the Hyper-V host.
Launch Hyper-V Manager from Windows.
Select your server from the list on the left side of the screen.
In the Actions panel, select Virtual Switch Manager.
Make sure the "New virtual network switch" option is selected in the left panel.
Choose External as the type, and select Create Virtual Switch.
Follow the prompts to create your virtual switch.
Enter a name of your choosing for the virtual switch.
Leave all default settings for the Connection type.
Leave VLAN ID unchecked.
Select Apply.
Step 3: Create the Virtual Machine
You must create the virtual machine first, but you will not be able to start it until you run the kvpctl utility on your ignition file in the next step.
Still in Hyper-V Manager, make sure your server is still selected from the list on the left side of the screen.
In the Actions panel, select New > Virtual Machine.
Follow the prompts to create your virtual machine.
Enter a name of your choosing for the virtual machine.
Choose Generation 1 as the generation for the virtual machine.
Enter a minimum of 8192 MB (this equals 8 GB) for the startup memory. Leave the Dynamic Memory checkbox unchecked.
For Connection, select the virtual switch you created earlier.
To connect your virtual hard disk, choose the option to "Use an existing virtual hard disk" and then choose your CoreOS artifact file. Make sure your artifact file is unzipped; using a zipped file does not work.
Select Finish.
Step 4: Run the Kvpctl Utility on Your Ignition File
On Hyper-V, the ignition config is presented to the hypervisor in parts. Ignition reads the parts and reassembles them into a single config. You can use the kvpctl add-ign subcommand to create these parts and attach them to the virtual machine, which will then allow you to start it successfully.
Make sure your new virtual machine is not running.
Open Windows Powershell (or use Command Prompt) and
cdinto the directory where you saved the ignition file.Run the following command:
You should see keys being added, like this:
added key: ignition.config.0 added key: ignition.config.1 added key: ignition.config.2 added key: ignition.config.3 …
Step 5: Start the Virtual Machine
Now you can start the virtual machine and connect securely to Expel’s platform.
In Hyper-V Manager, make sure your server is still selected from the list on the left side of the screen.
Find the virtual machine you created.
Right-click and select Start to power on the virtual machine.
The contents of the ignition file should now display in Powershell as an indication that the startup was successful.
Right-click and select Connect… to connect to your virtual machine's console.
Step 6: Verify a “Connected” Status in Workbench
In the side menu, navigate to Organization Settings > Assemblers (or, refresh the page if you never logged out).
Find your newly created assembler(s) and verify that the status has changed from “Not Yet Connected” to “Connected.”
If your assembler(s) still do not show as connected after waiting at least 15 minutes and refreshing the page, see the Troubleshooting section for help.
Step 7: Connect Your Technology
You can now set up your vendor technology in Workbench.
Troubleshooting
If all firewall and VM settings are correct and you are still unable to connect the assembler, contact Support for help.
Last updated
Was this helpful?

