Setting Up ManageIQ Spassky for KVM and Hyper-V

ManageIQ is the upstream open-source project behind Red Hat CloudForms and Red Hat Ansible Automation Platform's infrastructure management layer. It gives you a single pane of glass across heterogeneous hypervisors, pulling inventory, capacity metrics, policy compliance, and automation into one interface. If you have KVM hosts managed through oVirt, Hyper-V machines under System Center Virtual Machine Manager (SCVMM), or a mix of both, ManageIQ can monitor and manage them together without requiring you to deploy separate tools for each platform.

This guide covers deploying the ManageIQ Spassky appliance on VMware (the most common bootstrap environment), completing initial configuration through the appliance console, then connecting both KVM/oVirt and Hyper-V/SCVMM infrastructure as providers. The Hyper-V integration requires one extra step at the gem level that catches most people off guard, so we cover that in full.

Version note: This guide uses ManageIQ Spassky (spassky-1), the current stable release as of March 2026. The OVA image and appliance console flow are consistent with the Quinteros and Radjabov series as well.

Requirements

ComponentMinimumRecommended
vCPU48
RAM16 GB32 GB
OS disk100 GB thick100 GB thick
Database disk50 GB100 GB+
NetworkStatic IP, DNS resolutionStatic IP, DNS forward + reverse

The appliance runs CentOS Stream 9 and ships as a pre-built OVA. Kafka and Zookeeper run inside the appliance itself for the messaging layer, so the RAM requirement is real. Running under 16 GB results in services getting OOM-killed under any load.

ManageIQ VM hardware configuration showing 8 vCPU, 32 GB RAM, and 100 GB thick-provisioned disk
VM hardware used in this guide: 8 vCPU, 32 GB RAM, 100 GB OS disk. A second 100 GB disk will be added for the database.

Download and Deploy the OVA

Download the latest ManageIQ appliance from the official releases page:

# OVA download (VMware target)
https://github.com/ManageIQ/manageiq/releases
# Look for: manageiq-vsphere-spassky-N.ova

The OVA deploys to any VMware environment that supports vSphere 6.5+. During deployment, you do not need to configure the network at the OVA level. The appliance console handles networking after first boot.

Before powering on, add a second virtual disk. The appliance console will initialize this disk as a dedicated PostgreSQL volume during setup. Using a separate disk keeps your database I/O isolated from the OS and makes it easier to expand later.

Disk provisioning: Use thick provision lazy zeroed for both disks. ManageIQ writes heavily to the database disk during provider inventory refresh. Thin-provisioned disks on heavily used datastores cause latency spikes that manifest as inventory sync timeouts.

First Boot and Appliance Console

Power on the VM and connect to the console. The appliance boots into CentOS Stream 9 and drops to a login prompt. Log in as root with the default password smartvm. You will be prompted to change the password immediately.

ManageIQ first boot console login prompt on CentOS Stream 9
First boot login. Default credentials are root / smartvm. The appliance will force a password change before proceeding.

After changing the password, launch the appliance console menu:

appliance_console

This opens a TUI with a summary screen showing the current state of all subsystems. On a fresh deploy, everything shows "not configured."

ManageIQ appliance console summary screen showing all components as not configured
Fresh appliance state. Hostname is localhost.localdomain, database and messaging are unconfigured. This is the starting point for all configuration.

Configure Networking

Press any key to get to the main menu, then choose Configure Network. This launches nmtui, which is the standard NetworkManager text UI. Set a static IP, subnet mask, default gateway, and DNS servers.

NetworkManager TUI interface for configuring static IP on ManageIQ appliance
NetworkManager TUI. Set IPv4 to Manual and enter your static IP, gateway, and DNS. Save and activate the connection before exiting.

After saving, exit nmtui and return to the appliance console menu. The summary should now show your configured IP address. The hostname at this point is still localhost.localdomain. You will set it as part of the messaging configuration step coming up.

DNS matters here: The messaging (Kafka) setup resolves the hostname to verify connectivity. If your appliance hostname does not resolve in DNS, the messaging configuration will fail. Set your hostname to something your DNS server can resolve before proceeding, or add it to /etc/hosts as a fallback.

Appliance Console: Advanced Settings

Return to the appliance console menu and select Advanced Settings (option 5 in most versions). This exposes a sub-menu with all the major configuration steps.

ManageIQ appliance console Advanced Settings menu showing all configuration options
Advanced Settings menu. The main configuration flow runs in order: Configure Database, Configure Messaging, then Start EVM Server Processes.

Configure the Database

Select Configure Application from the Advanced Settings menu. The wizard walks you through creating a new internal PostgreSQL database.

When it asks whether to use an existing disk, select yes and choose the second virtual disk you added before powering on. On a standard VMware deployment this will be /dev/sdb.

ManageIQ database disk selection showing /dev/sdb at 107520 MB
Disk selection for the PostgreSQL database volume. Select the second disk (/dev/sdb). The appliance formats and mounts it automatically.

The wizard then asks for a database region number. This is an integer that uniquely identifies this ManageIQ region. If this is your first deployment, use 01. The region number affects replication topology if you later add remote appliances to the same region.

Each database region number must be unique.
Enter the database region number: 01
Checking for connections to the database...

Create region starting
Create region complete
Database reset successfully

Configure Messaging

Back at the Advanced Settings menu, select Configure Messaging.

ManageIQ Configure Messaging submenu with options for new or existing messaging server
Configure Messaging submenu. For a standalone deployment, choose "Configure this appliance as a messaging server."

Choose to configure this appliance as its own messaging server. The wizard prompts for the hostname, a keystore username, and a keystore password. Enter the fully qualified hostname of this appliance for the hostname field.

ManageIQ messaging server parameter entry showing hostname and keystore username fields
Message server parameter entry. Use the appliance's FQDN as the hostname. The keystore username defaults to admin. Use a strong password for the keystore.

The console will verify that the hostname resolves and is reachable, then configure Kafka and Zookeeper. This takes about 30 to 60 seconds. When complete, you will see:

Message Server configured successfully.
Starting ManageIQ Server...
If the hostname check fails: The appliance resolves the hostname you entered as a connectivity test. If it fails, the messaging configuration rolls back. Ensure the hostname resolves from the appliance itself using getent hosts <yourhost> and fix DNS or /etc/hosts before retrying.

Start EVM Server Processes

After the messaging configuration completes, return to the Advanced Settings menu and choose Start EVM Server Processes. The appliance starts the ManageIQ Rails application stack, worker processes, and supporting services. This takes several minutes on first start.

The appliance summary screen will eventually show all key services as running. You can also monitor startup progress from the Cockpit web console at https://<yourip>:9090 or watch the EVM log:

journalctl -fu evmserverd

Access the ManageIQ Web Interface

Once EVM server processes are running, browse to https://<yourip>. The default credentials are:

FieldDefault value
Usernameadmin
Passwordsmartvm
ManageIQ web interface login page showing username and password fields
ManageIQ login page. Region 1, Zone: default, Appliance: EVM. Change the admin password immediately after first login.
Change the default password immediately. The smartvm password is well-known and ManageIQ runs with super-administrator privileges over your infrastructure. Go to Settings > My Settings > Change Password as your first action after login.

Configure Server Roles

Navigate to Settings > Configuration > Settings > Server (gear icon at top right). This page controls which roles are active on this EVM server instance. For a standalone single-appliance deployment, most roles should be on. The roles that matter for provider connectivity are:

RoleRequired for
Provider InventoryCollecting VM, host, and cluster inventory from providers
Provider OperationsSending control operations back to providers (power on/off, etc.)
Capacity & Utilization Data CollectorPulling C&U metrics from connected providers
Capacity & Utilization Data ProcessorProcessing and storing the metrics
Event MonitorSubscribing to real-time infrastructure events
SmartState AnalysisAgentless introspection of VM disk images
ManageIQ Settings > Server roles configuration page showing all available roles and their on/off state
Server Roles configuration. Provider Inventory, Provider Operations, Event Monitor, and both Capacity and Utilization roles must be on to get full functionality from connected providers.

Enable the roles you need and click Save. Role changes take effect at the next EVM server heartbeat, which is approximately 60 seconds.

Connecting KVM (oVirt / RHV) Infrastructure

ManageIQ connects to KVM infrastructure through the oVirt provider type. This requires oVirt Engine or Red Hat Virtualization Manager running and accessible. If your KVM hosts are managed directly without oVirt, use the Red Hat Virtualization provider type and point it at the Manager URL.

Navigate to Compute > Infrastructure > Providers, then click Configuration > Add a New Infrastructure Provider.

ManageIQ Add New Infrastructure Provider type dropdown showing oVirt option highlighted
Provider type dropdown. For KVM infrastructure, select oVirt. Red Hat Virtualization is an alias for the same provider type and connects to the same oVirt Manager API endpoint.

Fill in the provider form:

FieldValue
TypeoVirt
NameA friendly display name (e.g., Production KVM)
Zonedefault (unless you have custom zones)
HostnameFQDN or IP of your oVirt Engine / RHV Manager
API Port443 (default, uses HTTPS REST API)
SSL verificationVerify if you have a trusted cert, or Do not verify for self-signed
UsernameA service account with read access to all clusters
PasswordService account password

Click Validate before saving. ManageIQ will test the connection and return a success or error message. Common errors at this stage are certificate verification failures (switch to "Do not verify" to test) and credentials with insufficient permissions. The oVirt service account needs at minimum the UserRole role at the data center level to enumerate all clusters and hosts.

Once validation passes, click Add. ManageIQ will save the provider and trigger an immediate inventory refresh. After a few minutes, navigate to Compute > Infrastructure > Hosts to confirm hosts are appearing.

Connecting Hyper-V (SCVMM) Infrastructure

Hyper-V integration in ManageIQ uses Microsoft's SCVMM provider. Unlike the other provider types, the Microsoft provider gem is not included in the default ManageIQ appliance bundle. You need to install it manually before the provider type becomes available in the UI.

Step 1: Enable the Microsoft Provider Gem

SSH into the ManageIQ appliance and run the following commands. These add the Microsoft provider gem to the bundle and restart the EVM service to load the new code.

# Navigate to the ManageIQ application directory
cd /var/www/miq/vmdb

# Add the Microsoft provider gem to the Gemfile
echo "gem 'manageiq-providers-microsoft', :group => [:microsoft]" >> Gemfile.dev.rb

# Install the new gem (takes 1-3 minutes)
bundle install --with microsoft

# Restart ManageIQ services to load the new provider code
systemctl restart evmserverd
Bundler deprecation warning: You will see a warning that --with is deprecated in favor of bundle config set with 'microsoft'. The command still works correctly in Spassky. If you want to use the preferred syntax: bundle config set --local with microsoft then bundle install.

After the restart, wait two to three minutes for EVM to fully initialize, then refresh the Add New Infrastructure Provider form. You should now see Microsoft SCVMM as a provider type option.

Step 2: Configure the SCVMM Provider

Navigate again to Compute > Infrastructure > Providers > Add a New Infrastructure Provider and select Microsoft SCVMM.

FieldValue
TypeMicrosoft SCVMM
NameA friendly display name (e.g., Production Hyper-V)
Zonedefault
HostnameFQDN or IP of the SCVMM server
Port5985 (HTTP) or 5986 (HTTPS) for WinRM
UsernameDomain service account with SCVMM Administrator role
PasswordService account password

ManageIQ communicates with SCVMM over WinRM (Windows Remote Management). The service account must have the SCVMM Administrator role, not just Delegated Administrator. Delegated Administrator lacks the PowerShell runspace permissions that ManageIQ requires for inventory collection.

WinRM prerequisite: WinRM must be enabled on the SCVMM server before ManageIQ can connect. Run the following on the SCVMM server with an elevated PowerShell session if it is not already configured:
Enable-PSRemoting -Force
winrm set winrm/config/listener?Address=*+Transport=HTTP '@{Port="5985"}'
For production environments, configure HTTPS (port 5986) with a valid certificate instead.

Validate the connection, then click Add. The initial SCVMM inventory refresh collects hosts, VMs, templates, and logical networks. Depending on the size of your environment, the first refresh can take 10 to 30 minutes.

Verifying Provider Connectivity

After adding both providers, navigate to Compute > Infrastructure > Providers to see the unified list. Each provider entry shows the discovered host count, vCore count, and total memory. If these are all zero after 10 minutes, click the provider name and check the provider timeline for error events.

Common post-add issues:

SymptomLikely cause
Provider shows 0 hosts after 15 minProvider Inventory role not enabled, or service account lacks read rights on clusters
Authentication Error in timelineCredentials rejected by the endpoint; revalidate the provider
Connection refusedFirewall blocking port 443 (oVirt) or 5985/5986 (SCVMM)
SSL certificate errorSet SSL verification to "Do not verify" on the provider form
SCVMM "No such runspace"WinRM not enabled on SCVMM server; run Enable-PSRemoting

To force a full re-inventory, select the provider in the list, click Configuration > Refresh Relationships and Power States. This queues an immediate inventory task regardless of the scheduled interval.

Enabling Capacity and Utilization Collection

By default, ManageIQ collects inventory (hosts, VMs, clusters) but not real-time metrics. To enable C&U data collection, you need to configure the provider to capture metrics and ensure the C&U server roles are active.

For oVirt, navigate to the provider record and click Configuration > Edit this Infrastructure Provider. On the C&U tab, enable collection and set the collection interval. oVirt exposes metrics through its own REST API; ManageIQ polls this directly.

For SCVMM/Hyper-V, performance data collection uses Windows Performance Counters over WinRM. The SCVMM service account needs read access to performance counter data on each Hyper-V host, not just on the SCVMM server itself. If C&U shows no data for Hyper-V hosts, check that the service account is in the local Performance Monitor Users group on the Hyper-V host machines.

What You've Completed

  • Deployed the ManageIQ Spassky OVA on VMware with correct hardware sizing
  • Configured networking, database, and messaging through the appliance console
  • Accessed the ManageIQ web interface and configured server roles
  • Connected KVM/oVirt infrastructure as an infrastructure provider
  • Enabled the Microsoft provider gem and connected Hyper-V/SCVMM infrastructure
  • Verified provider inventory and configured C&U data collection

Read more