Once the .ova file has been downloaded, it is ready to be imported into the host you have already prepared. Please ensure that the host meets the requirements stated earlier in this guide, then based on the hypervisor environment follow the instructions below.
The following steps can be used to import the virtual appliance into VMWare ESXi 6.5:
Once the VM has imported it should be visible on the vSphere web console:
Once the VM has imported it should be visible on the Workstation player:
The following steps can be used to import the virtual appliance into VirtualBox 5.2 or above.
Once the VM has imported it should be visible on the VirtualBox Manager:
This section explains how to create a Real-time Virtual Appliance EC2 instance on the Amazon Web Services (AWS) platform by using the AWS VM Import/Export tool. This tool is designed for importing VM images from the OVA file format provided by Speechmatics. You will import the image as an Amazon Machine Image (AMI), from which you can then launch machine instances.
The information in this section is taken from the official AWS documentation and parts of it have been extracted to focus more on the particulars of the Speechmatics Real-time Virtual Appliance. For more details of the Amazon VM image import process, please refer to https://docs.aws.amazon.com/vm-import/latest/userguide/vmimport-image-import.html
There are a few pre-requisites that you will need to have setup before you can follow the instructions in this section:
Please follow the recommendations on configuration of the AWS CLI by referring to the Getting Started guide.
This section describes the process of uploading the Speechmatics OVA file to an Amazon S3 bucket from where it can be imported as an AMI instance. We recommend using a bucket in the same region where you want the AMI to be created and made available.
Once you've identified or created the S3 bucket on your account where the Speechmatics Real-time Virtual Appliance OVA will be uploaded to, you can use any of the tools below to help with the upload of the OVA file.
For more information about the multipart uploads, see the AWS documentation.
After the Virtual Appliance OVA file has been successfully uploaded to an S3 bucket, it's time to import the image.
See the AWS documentation that covers uploading an image for full details.
The steps that you will perform in this section include (in orderr):
First of all, a service role needs to be created on your AWS account. This allows certain operations, including downloading images from an S3 bucket.
Create a file named trust-policy.json
with the following policy:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": { "Service": "vmie.amazonaws.com" },
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals":{
"sts:Externalid": "vmimport"
}
}
}
]
}
Then use the create-role
command from the AWS CLI to create a role named vmimport
. You need to specify the full path of the trust-policy.json
file:
aws iam create-role --role-name vmimport --assume-role-policy-document file://trust-policy.json
You need to ensure the that file://
prefix is prepended to the filename.
Create a file named role-policy.json
with the following policy. Where you see ova-bucket
it will need to be replaced with the name of the S3 bucket where the OVA file is stored.
{
"Version":"2012-10-17",
"Statement":[
{
"Effect":"Allow",
"Action":[
"s3:GetBucketLocation",
"s3:GetObject",
"s3:ListBucket"
],
"Resource":[
"arn:aws:s3:::ova-bucket",
"arn:aws:s3:::ova-bucket/*"
]
},
{
"Effect":"Allow",
"Action":[
"ec2:ModifySnapshotAttribute",
"ec2:CopySnapshot",
"ec2:RegisterImage",
"ec2:Describe*"
],
"Resource":"*"
}
]
}
Use the put-role-policy
command to attach the policy to the role. You must specify the full path to the location of the role-policy.json
:
aws iam put-role-policy --role-name vmimport --policy-name vmimport --policy-document file://role-policy.json
Importing the virtual appliance image (OVA) to Amazon EC2 as an Amazon Machine Image (AMI) is the next step.
Create a file named containers.json
with the following content. Where you see ova-bucket
it will need to be replaced with the name of the S3 bucket where the OVA file is stored. The below example has a file named rtappliance-2.0.1-b21086.ova
.
[
{
"Description": "Real Time Virtual Appliance OVA",
"Format": "ova",
"UserBucket": {
"S3Bucket": "ova-bucket",
"S3Key": "rtappliance-1.1.0-b21086.ova"
}
}]
Use the import-image
command to create an import task (Specify the full path to the location of the containers.json
):
aws ec2 import-image --description "Real Time Virtual Appliance OVA" --disk-containers file://containers.json
The resulting JSON output will show an ImportTaskId
which you can use to check the status of the import task. You do this by running the describe-import-image-tasks
command:
aws ec2 describe-import-image-tasks --import-task-ids import-ami-abcd1234
You need to replace the task identifier with the ImportTaskId
for your import task (import-ami-abcd1234
in this example).
When the status is in the completed
state the AMI is ready to use.
The following ports should be opened to be able to submit jobs and manage and monitor the Speechmatics Virtual Appliance. For more background on creating security groups refer to the official AWS documentation
Port | Description |
---|---|
8080/TCP | Used for the Management API to manage the virtual appliance |
9000/TCP | WebSockets Speech API for submitting jobs |
3000/TCP | Monitoring (Glances) |
Port | Description |
---|---|
8080/TCP | Used for the Management API to manage the virtual appliance |
8082/TCP | REST Speech API for submitting jobs |
3000/TCP | Monitoring (Glances) |
Now that the Virtual Appliance has been imported, it will be available as an AMI which can be launched as an instance. To launch a Speechmatics Virtual Appliance, do the following:
Full instructions for launching instances can be found here: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/launching-instance.html