Configure advanced settings in the Shift Toolkit
Configure advanced settings in Shift Toolkit to manage CredSSP authentication, enable logging and debugging, access REST APIs, and set up email notifications for migration jobs.
Access the advanced settings by clicking the Settings icon in the top toolbar.
Credential Security Service Provider (CredSSP)
The Shift Toolkit uses Credential Security Service Provider (CredSSP) to manage credential transfers during the conversion process. The Shift server runs scripts on the guest operating system of the VM being converted, passing credentials through a "double-hop" from the Shift server to the guest OS through the Hyper-V server.
Configure the Shift server as a CredSSP client
The Advanced Settings wizard automatically configures the Shift server as a CredSSP client, enabling it to delegate credentials to the Hyper-V servers.
Behind the scenes
The Shift Toolkit executes the following commands and policy configurations to set itself up as a client:
Commands executed:
-
Set-Item WSMan:\localhost\Client\TrustedHosts -Value "fqdn-of-hyper-v-host" -
Enable-WSManCredSSP -Role client -DelegateComputer "fqdn-of-hyper-v-host"
Group policy configured:
-
Computer Configuration > Administrative Templates > System > Credentials Delegation > Allow delegating fresh credentials with NTLM-only server authentication
Enable this policy and add
wsman/fqdn-of-hyper-v-host.
Configure the Hyper-V server as a CredSSP server
Use the Enable-WSManCredSSP cmdlet on the Hyper-V server to configure it as a CredSSP server, enabling it to receive credentials from the Shift server.
-
On the Hyper-V host where VMs will be provisioned by the Shift Toolkit server, open a Windows PowerShell session as Administrator.
-
Run the following commands:
Enable-PSRemoting Enable-WSManCredSSP -Role server
Logging and debugging
The Shift Toolkit includes default logging with a 30-day retention period. Logging can be switched to debug mode upon request from support for troubleshooting purposes.
Swagger
The Swagger page in the advanced settings allows you to interact with the Shift Toolkit REST APIs.
The Shift Toolkit REST API provides programmatic access to migration, conversion, and automation capabilities. The APIs are organized by functional workflow to help you quickly find the resources you need for specific tasks.
Authentication and setup APIs
Use these APIs to establish connections, manage users, and configure authentication for the Shift Toolkit server.
Session
Manage user authentication and obtain authorization tokens for API requests:
-
Start a session
-
Validate a session
-
Get all session IDs
-
End a session
User
Manage user accounts and permissions:
-
Add a user
-
Get all users
-
Change user password
-
Accept EULA
CredSSP
Configure Credential Security Service Provider for credential delegation:
-
Enable CredSSP
-
Get CredSSP status
Connector
Manage connections to infrastructure components:
-
Add a connector
-
Get details of all connectors
-
Update connector details by ID
-
Get connector details by ID
Tenant
Manage multi-tenant configurations:
-
Add a tenant
-
Get all tenants
Infrastructure management APIs
Use these APIs to configure and discover your source and target environments.
Site
Manage migration sites and their associated virtual and storage environments:
-
Get count of sites
-
Get all site details
-
Add a site
-
Get site details by ID
-
Delete a site by ID
-
Add virtual environment to a site
-
Add storage environment to a site
-
Get virtual environment details for a site
-
Update virtual environment details for a site
-
Delete virtual environment details for a site
-
Get storage environment details for a site
-
Update storage environment details for a site
-
Delete storage environment details for a site
Discovery
Discover and inventory VMs and resources in source and target sites:
-
Discover source site
-
Get all discovery requests for source site
-
Discover target site
-
Get all discovery requests for target site
-
Get discovery steps for source site by ID
-
Get discovery steps for target site by ID
VM and resource management APIs
Use these APIs to inventory, organize, and manage VMs and resources for migration.
VM
Query and manage virtual machines:
-
Get VMs for a site and virtual environment in source
-
Get unprotected VMs for a site and virtual environment
-
Get VM count
-
Get protected VM count
Resource
View resource utilization and availability:
-
Get resource details for a site and virtual environment
-
Get source site resource count
Resource Group
Organize VMs into protection groups for migration:
-
Get protection group count
-
Get all protection group details
-
Add a protection group
-
Get protection group details by ID
-
Delete a protection group by ID
-
Update protection group details by ID
-
Get VMs of a protection group by ID
-
Get blueprints containing the protection group
Migration and recovery APIs
Use these APIs to execute migrations, monitor compliance, and manage recovery operations.
Blueprint
Define and manage migration blueprints:
-
Get blueprint count
-
Get all blueprint details
-
Add a blueprint
-
Get blueprint details by ID
-
Delete blueprint by ID
-
Update blueprint details for ID
-
Get VMs of a blueprint
-
Get power status of VMs present in the blueprint
Compliance
Verify readiness and compatibility before migration:
-
Get compliance check result for a blueprint
-
Get compliance check final status for a blueprint
-
Add on-demand compliance check for a blueprint
Execution
Monitor migration and conversion job execution:
-
Get all execution details
-
Get details of execution in progress
-
Get execution count
-
Get count of executions in progress
-
Get steps for execution ID
Recovery
Execute and manage migration and recovery operations:
-
Add new execution request for a blueprint
-
Add retry request of execution for a blueprint
-
Get execution statuses of all blueprints
-
Get execution status for blueprint ID
Automation APIs
Use these APIs to extend and automate Shift Toolkit functionality.
Script Block
Access and execute automation scripts:
-
Get all scripts metadata
-
Get script metadata by ID
-
Get all refresh metadata
-
Execute script
Script block and automation
The script block within the Shift Toolkit provides sample code to help you automate, integrate, and develop features using internal and external APIs. Browse and download samples in the Code Samples section, written by the Shift Toolkit automation team and community members. Use these samples to get started with automation, management, or integration tasks.
The following example shows a PowerShell script that deletes a specific job within the Shift Toolkit UI. While this capability is not exposed through the standard workflow, it can be accomplished using the script block. The script is also available as a batch script that can be easily downloaded and executed.
The objective of the script block is to provide sample scripts for day 0 and ongoing operations on specific hypervisors using the Shift Toolkit APIs and the respective hypervisor published APIs.
The objective of the script block is to provide sample scripts for day 0 and ongoing operations on specific hypervisors using the Shift Toolkit APIs and the respective hypervisor published APIs.
Email notifications and alerts
Configure email notifications to send alerts about discovery, conversion, or migration jobs to specified recipients. UI notifications (alerts within the interface) are also available and stored for 7 days.
Access the email notification settings from Settings > Platform Settings > Email configuration.
-
Log in to the Shift Toolkit UI.
-
Navigate to Settings > Platform Settings.
-
Select Email notifications and update SMTP details:
-
SMTP server address
-
Port
-
Username
-
Password
-
-
Update the recipient field and select the events from the available categories.
-
Click Apply.
The screenshot shows the breakdown for each notification category and event.
|
|
The email notification uses basic SMTP authentication and SendGrid in this release. A future release will support modern authentication. |
|
|
The email notification uses basic SMTP authentication and SendGrid in this release. A future release will support modern authentication. |
Abort and revert capabilities
The Shift Toolkit provides the option to cancel a running job at any step within the workflow. When a job is cancelled, all orphaned components are automatically cleaned up, including:
-
Powering off VMs on the hypervisor if they were powered on
-
Removing disk entries from the appropriate qtree
-
Deleting persistent volume claims (PVCs)
Since the Shift Toolkit does not modify the source VM in any way, rollback is straightforward, simply power on the source VM. No other rollback actions are required.