The blog aims to create a zero to fully working instance of VersionVault Explorer on AWS. The assumption is that the reader has a valid credential on AWS with permission to EC2 and S3 on an admin level. We also presume, the user has his initial setup in place and can take off with the installation with the instructions that follow.

Security port creation

VerisonVault Express operates on pre-defined ports which will need to be allowed for incoming traffic on AWS. For this reason, we need to create a security group that allows ports 22, 443, 8080, and 8443. In case of an available security group existing, you may add the ports on the list to allow ingress traffic

Command to create a security group (firewall) – Take note of the security group ID (sg-xxxxxxxx) of your newly created security group.

aws ec2 create-security-group –group-name SECURITY_GROUP_NAME –description “Ports for VersionVault Express”

Note: Please capture the SECURITY_GROUP_ID which gets displayed as the output of the commands; we may need them while spinning out instances

Commands to allow the ports for ingress(incoming) traffic

aws ec2 authorize-security-group-ingress –group-id SECURITY_GROUP_ID –protocol tcp –cidr –port 22
aws ec2 authorize-security-group-ingress –group-id SECURITY_GROUP_ID –protocol tcp –cidr –port 443
aws ec2 authorize-security-group-ingress –group-id SECURITY_GROUP_ID –protocol tcp –cidr –port 8080
aws ec2 authorize-security-group-ingress –group-id SECURITY_GROUP_ID –protocol tcp –cidr –port 8443

Uploading the product ova onto S3

Now that the user has enabled the ports, we can upload the product executables onto AWS. The user may create a new bucket on S3 to store the ova file of VersionVault, or in the event of having an existing bucket; you may directly copy/upload the ova available on your laptop/machine using the below commands

Bucket creation

Create an S3 bucket to store the VersionVault ova using:

aws s3api create-bucket –bucket MY_BUCKET_NAME –region us-east-1

Copy VersionVault Express ova file to the S3 bucket

Now that the bucket is created, you can move the ova file from your virtual machine/laptop with the below command: aws s3 cp /local/path/to/versionvault.ova s3://MY_BUCKET/[DIRNAME/]FILENAME.ova
The copy of the ova file could take some time depending on the speed of the network

Creating an Amazon Machine Image(AMI) for VVE

Having uploaded the ova, we can now create an AMI which will be used to spin any number of instances of VVE. The image creation can be used as a one-time activity and can be used in the future to clone instances on a need basis.

A configuration file needs to be created manually by the user which contains information about the ova file and where it is placed on the AWS S3 storage. For the sake of convenience, we call it container.json with sample contents below:

[ { “Description”: “Versionvault”, “Format”: “ova”, “Url”: “s3://my-bucket-name/versionvault.ova” } ]

Once the configuration is created, we execute the below command along with the path to the file. This will create an AMI with the details of the image displayed on the console.
aws ec2 import-image –description “My description” –disk-containers “file://containers.json”

Note: Please capture the AMI ID which is displayed on the console as an output for future reference.

VVE instance creation

With the AMI created, we can now proceed to create instances out of the image. You can have multiple instances running at the same time using the same image.

VVE needs to attach to an external storage with a recommended size of 80GB. The information can be provided by way of a manually created configuration file, which is for the sake of convenience called as mapping.json with sample contents below:

[{ “DeviceName”: “/dev/sdg”, “Ebs”: { “VolumeSize”: 80 } }]

Once the mapping file is created, execute the below command which will create an instance for us using the information provided in the list.

aws ec2 run-instances –security-group-ids SECURITY_GROUP_ID –instance-type INSTANCE_TYPE –image-id AMI_ID –region REGION –block-device-mappings file://mapping.json


Now that the instances are running, the user will be able to use the product using the licenses available with him and use the AMI created as part of this activity to create future spins of the product. Happy Exploring!

Comment wrap
Further Reading
Secure DevOps | January 13, 2022
Comparing file in VersionVault Express
VersionVault Express features an intuitive side-by-side comparison viewer where you can easily compare files and directories. VersionVault Express not only allows you to compare elements against their immediate predecessor but also to compare them against the changeset predecessor.
Secure DevOps | January 12, 2022
How to automatically create webhooks on new streams
In this article we’ll look at one such extension and show how to automatically give newly created streams the ability to request builds.
Secure DevOps | December 30, 2021
Steps to load HCL VersionVault Express image (OVA file) into a Virtualisation tool (VirtualBox VM manager)
As VVE is released as OVA files (Open Virtual Appliance file), that must be downloaded and loaded as a VM in any of the VM provisioning tools or Hypervisor.In this document we will see how we can load the VersionVault Express OVA image in Oracle Virtual Box VM manager.
Filters result by