Infrastructure Host Rename SOP
This page is intended to guide you through the process of renaming a virtual node.
Contents
-
Introduction
-
Finding out where the host is
-
Preparation
-
Renaming the Logical Volume
-
Doing the actual rename
-
Telling ansible about the new host
-
VPN Stuff
Introduction
Throughout this SOP, we will refer to the old hostname as $oldhostname and the new hostname as $newhostname. We will refer to the Dom0 host that the vm resides on as $vmhost.
If this process is being followed so that a temporary-named host can replace a production host, please be sure to follow the [51]Infrastructure retire machine SOP to properly decommission the old host before continuing.
Finding out where the host is
In order to rename the host, you must have access to the Dom0 (host) on which the virtual server resides. To find out which host that is, log in to batcave01, and run:
grep $oldhostname /var/log/virthost-lists.out
The first column of the output will be the Dom0 of the virtual node.
Preparation
SSH to $oldhostname. If the new name is replacing a production box,
change the IP Address that it binds to, in
/etc/sysconfig/network-scripts/ifcfg-eth0
.
Also change the hostname in /etc/sysconfig/network
.
At this point, you can sudo poweroff
$oldhostname.
Open an ssh session to $vmhost, and make sure that the node is listed as
shut off
. If it is not, you can force it off with:
virsh destroy $oldhostname
Renaming the Logical Volume
Find out the name of the logical volume (on $vmhost):
virsh dumpxml $oldhostname | grep 'source dev'
This will give you a line that looks like
<source dev='/dev/VolGroup00/$oldhostname'/>
which tells you that
/dev/VolGroup00/$oldhostname
is the path to the logical volume.
Run /usr/sbin/lvrename
(the path that you found above) (the path that
you found above, with $newhostname at the end instead of $oldhostname)`
- For example
-
/usr/sbin/lvrename /dev/VolGroup00/noc03-tmp /dev/VolGroup00/noc01
Doing the actual rename
Now that the logical volume has been renamed, we can rename the host in libvirt.
Dump the configuration of $oldhostname into an xml file, by running:
virsh dumpxml $oldhostname > $newhostname.xml
Open up $newhostname.xml, and change all instances of $oldhostname to $newhostname.
Save the file and run:
virsh define $newhostname.xml
If there are no errors above, you can undefine $oldhostname:
virsh undefine $oldhostname
Power on $newhostname, with:
virsh start $newhostname
And remember to set it to autostart:
virsh autostart $newhostname