Updates to the AWS Management Console and Provisioned IOPS

After being away from the office for a few days, I noticed today that there is a updated user interface to the Amazon Web Services console.

In addition to the updated user interface a number of updates have been included for the Launch Instance Wizard.

Configuring Instance VPC and Subnet Details

On configuring your instance you may now select your VPC and Subnet details from an existing configuration or if required create a new VPC and/or subnet from the wizard.

ScreenHunter_435 Oct. 14 22.24

Search for snapshot when adding a new EBS volume

On adding storage, you may now search for a snapshot to create the EBS volume

ScreenHunter_430 Oct. 14 22.04

Search for EBS tags and values 

As you type, you may now search for existing tags and values and select from a list.

ScreenHunter_431 Oct. 14 22.07

Security Groups 

You may not view the rules for a particular security group before assigning to your instance as well as copying the rule set of an existing security group and if required modify the rules.

ScreenHunter_433 Oct. 14 22.12

One other notable change which occurred in the past week has been to provisioned IOPS and the ratio to capacity. Previously, this was configured as 10:1, now the ratio of IOPS to capacity has been increased to 30:1. So previously when a 100 GB EBS volume  could only provide a 1,000 IOPS, you can now obtain 3,000 IOPS from the same size EBS volume.


Get VM snapshots older than a particular number of days

I recently wanted to return a list of snapshots which were older than 3 days within my environment, this was primarily to return any snapshots that had been created by third party applications that take advantage of snapshots. This would prevent no single snapshot from growing to be large in size, which may impact on VM performance.

I compiled a powershell script leveraging vSphere PowerCLI to capture the snapshots that were older than a particular number of days, in my case and for the below example I will be using 3 days as mentioned above.

Firstly, I would need to register the PowerCLI snap-ins to the current powershell session and then connect to the vCenter server (in this example, the vCenter server is named SERVER1);

# Adds registered vSphere PowerCLI snap-ins to the current session
Add-PSsnapin VMware.VimAutomation.Core >$null

# Connect to the vCenter Server
Connect-VIServer SERVER1 >$null # Enter the name of your vCenter server

Once I have established a connection to the vCenter server, I will retrieve all virtual machines and then pipe the results to the Get-Snapshot cmdlet. As I do not require to return all snapshots that have been created only those that are older than 3 days, I will be required to filter the results based on the Created attribute of the snapshot. This is achieved by using the subtract method to the DateTime object.

Finally, I wanted to only return a number of attributes such as the VM name (VM), Snapshot Name (Name), Snapshot Created Timestamp (Created) and Snapshot size (SizeMB) so these objects will be selected for the output

# Retrieve VM snapshots older than 3 days
Get-VM | Get-Snapshot | Where {$_.Created -lt (Get-Date).AddDays(-3)} | Select-Object VM, Name, Created, SizeMB

Alternatively, it is possible to create alarms within vCenter to alert when a virtual machine snapshot is a certain size; this following article details these steps: