Frequently asked questions
Listing all Virtual Machines in all projects
If you are member or owner of multiple project, it may be challenging to match particular Virtual Machines to their hosting project. To list all your projects, and the hosted VMs, you can run:
$ openstack project list -f value -c Name | while read -r project; do echo $project ; OS_PROJECT_NAME="$project" openstack server list ; done
Not keeping time in guests
The guest VMs will occasionally time clocks will occasionally drift. To ensure time is kept in sync, the CERN time server can be used. For Puppet managed machines, NTP is configured by default.
For Linux hosts which are manually managed, you can use ntpd and ntpdate to synchronise the host.
$ sudo yum install -y ntp $ sudo ntpdate ip-time-1
Graphical interface on Linux VMs
Recipes to install a graphical interface exist here:
Can I extend a volume or shall I create a new one and synchronize the data?
First of all, volumes can be extended live if you have enough quota on the project, with no downtime.
Volume snapshots in our infrastructure are just pointers in the RW history of the volume. It takes a few seconds to take it. You can do it even when the volume is in-use, it will create this pointer before any subsequent write.
Once you have an snapshot, you can create as many volumes as you want based on this one and make them even with a bigger size. Every single of them will contain exactly the same data as the original. The time to create this volume depends. For example if you create a volume with a different type, from standard to cp1, it may need to copy data accross (different power zones)
Just to let you know, once you create a volume snapshot, it is linked to the volume history, so you may not be able to delete the original volume until all his snapshots are deleted.
Both approaches are valid, it really depends on your application, the amount of data that changes. You can even merge both to do the first copy of data with snapshots, and use rsync for the final copy at the moment of the intervention
I am unable to delete a volume, the operation returns BadRequest(400)
If you delete a volume and the api returns something like this:
BadRequest: Failed to delete volume with name or ID: Invalid volume: Volume status must be available or error or error_restoring or error_extending or error_managing and must not be migrating, attached, belong to a group, have snapshots or be disassociated from snapshots after volume transfer. (HTTP 400)
Please check if the volume has any volume snapshots. You need to delete them first, before triggering the deletion of the volume