VergeOS PowerShell Module (PSVergeOS)#
Overview#
PSVergeOS is a PowerShell module for managing VergeOS infrastructure through the REST API. It provides over 200 cmdlets for automating VM lifecycle, networking, storage, multi-tenant operations, and disaster recovery workflows, enabling administrators to leverage their PowerShell expertise for VergeOS management.
Key Features#
- VM Management: Creation, configuration, power control, cloning, snapshots, and migration
- Advanced Networking: Virtual networks, firewall rules, DHCP, DNS, IPSec VPN, and WireGuard
- NAS & Storage: Volume management, CIFS/NFS shares, and synchronization
- Multi-Tenancy: Tenant provisioning with resource isolation
- Disaster Recovery: Cloud snapshots, site synchronization, recovery workflows
- Pipeline Support: Chainable cmdlets for bulk operations
- Cross-Platform: Windows, macOS, and Linux with PowerShell 7.4+
Requirements#
- PowerShell 7.4 or later
- VergeOS 26.0 or later
Installation#
From PowerShell Gallery (Recommended)#
Manual Installation#
Authentication#
The module supports multiple authentication methods:
- Interactive credentials: Prompt for username and password at runtime
- PSCredential objects: Automate authentication with stored credentials
- API tokens: Use pre-generated tokens for non-interactive scenarios
- Self-signed certificates: Option to skip certificate validation for test environments
Available Cmdlets#
The module contains over 200 cmdlets organized by category:
| Category | Description |
|---|---|
| Connection | Connect, disconnect, and manage server connections |
| Virtual Machines | Lifecycle, snapshots, drives, NICs |
| Networking | Networks, rules, DNS, DHCP, diagnostics |
| VPN | IPSec connections/policies, WireGuard interfaces/peers |
| NAS/Storage | Services, volumes, shares, snapshots, synchronization |
| Tenants | Provisioning, snapshots, storage allocation |
| Users & Groups | Account management, permissions, API keys |
| System | Clusters, nodes, licenses, settings |
| Monitoring | Alarms, logs, tasks |
| Backup & DR | Profiles, cloud snapshots, site management |
Common Use Cases#
- Bulk VM operations: Stop, start, snapshot, or migrate multiple VMs with pipeline support
- Infrastructure reporting: Export VM inventory, resource usage, and configuration data
- Network automation: Create networks, configure DHCP, and manage firewall rules
- Scheduled maintenance: Integrate with Task Scheduler or cron for automated operations
- CI/CD integration: Provision test environments as part of deployment pipelines
For code samples, see the Examples directory in the GitHub repository.
Documentation and Resources#
For complete documentation, including all cmdlets, parameters, and detailed usage examples, visit the official repository:
Support#
If you encounter issues or have feature requests, please open an issue on the GitHub repository:
https://github.com/verge-io/PSVergeOS/issues