Virtualisation provide a more efficient use of memory, disk and all CPU on a server. Separate servers can be managed within a single server. Centos 8 provide virtual machine (VM) management through KVM (kernel virtual machine).
Each VM is given a domain name. Common practice before upgrading a server operating system, is to create a backup the current VM, or as its known here, a snapshot. Default format in use is qcow2, where tools for snapshot will work. Through Virtual Machine Manager and Cockpit, virtual machines can be created and managed.
Creating of virtual machines is not covered in here as its quite straight forward. Mostly it depends on the organisation practise and best practises.
Pre-requisite:
- Centos 8 is installed with virtual machine manager.
- A virtual machine is already added with the name "Centos7_php"
Let's work with an existing VM named "Centos7_php". This virtual machine is installed with the operating system Centos Linux 8 and all the other packages required as a PHP development server. This requires the VM to be shutdown (and there are no snapshots)
Display available running VM
Syntax:
virsh list
Shutdown VM
Syntax:
virsh shutdown {domain}
virsh shutdown Centos7_php
Rename VM
Syntax:
virsh domrename {domain} {new_name}
virsh domrename Centos7_php php_development
Startup VM
Note: The following will continue to use the initial VM name of Centos7_php.
Syntax:
virsh start {domain}
virsh start Centos7_php
Retrieve VM configuration
Syntax:
virsh dumpxml {domain}
List available snapshots for a domain
Syntax:
virsh snapshot-list --domain {domain}
Create a snapshot
Snapshots can be created while a VM is running. Best practise would be to stop the VM, where possible. The reason why double-quotes are used here, is that its common to have snapshot name with spaces. But no so for the domain name.
Syntax:
virsh snapshot-create-as --domain {domain} --name "{snapshot_name}"
View details of a snapshot with syntax:
virsh snapshot-info --domain {domain} --name "{snapshot_name}"
Example of creating a snapshot, then showing its details
virsh snapshot-create-as --domain Centos7_php \
--name "2021July" --description "Snapshot initial stages"
virsh snapshot-list --domain Centos7_php
virsh snapshot-info --domain Centos7_php --name "2021July"
Revert to a specific snapshot
Ensure the VM is shutdown before switching to a snapshot. Here is the syntax and an example.
Syntax:
virsh --snapshot-revert --domain {domain} --snapshotname "{snapshot_name}"
Example to switch to a snapshot known and initial.
virsh shutdown Centos7_php
virsh --snapshot-revert --domain Centos7_php \
--snapshotname "2021July"
virsh start Centos7_php
Delete a snapshot
Each snapshot takes up disk space, and these can be removed when not in use anymore.
Syntax:
virsh --snapshot-delete --domain {domain} --snapshotname "{snapshot_name}"
Example to delete a snapshot
virsh --snapshot-delete --domain Centos7_php --snapshotname "2021July"
No comments:
Post a Comment