[Openstack] So you ran stack.sh...
Joe Mcmanus
joe.mcmanus at solidfire.com
Wed Mar 6 22:22:04 UTC 2013
I thought I would send this out since I did not see anything on it already.
If you are running devstack and accidentally run stack.sh you will lose
your LVMs and all configuration. Sure there is that one line you can edit
in stack.sh to not delete LVMs, but it still drops the db so you lose your
configuration anyhow.
Don't panic all is not lost.
Your data is probably still there. Linux does not “clear” data, it merely
marks it as unallocated.
The LVM config files are stored in /etc/lvm/ prior files are in
/etc/lvm/archive .
If you run ls in /etc/lvm/archive notice the files are called
volume_group_XXX.vg
root at stack-1:/etc/lvm/archive# ls -altr
-rw------- 1 root root 1587 Mar 4 12:57 stack-volumes_00069.vg
-rw------- 1 root root 1237 Mar 4 12:57 stack-volumes_00070.vg
-rw------- 1 root root 1524 Mar 5 10:25 stack-volumes_00072.vg
-rw------- 1 root root 805 Mar 5 10:25 stack-volumes_00071.vg
Open a file and look for volume groups that contain your data, look for
volume size or the description line stating “Created *before*…"
root at stack-1:/etc/lvm/archive# grep description *
stack-volumes_00069.vg:description = "Created *before* executing 'lvremove
-f stack-volumes/volume-d767236b-b1c2-4511-ad59-b503a01b24ba'"
Restore the volumes using vgcfgrestore .
root at stack-1:/etc/lvm/archive# vgcfgrestore stack-volumes -f
stack-volumes_00069.vg
Verify they are online using lvscan
root at stack-1:/dev/stack-volumes# lvscan
ACTIVE '/dev/stack-volumes/volume-f7c1d207-8688-4b1e-a8fd-dbe67c923da2'
[10.00 GiB]
ACTIVE '/dev/stack-volumes/volume-d767236b-b1c2-4511-ad59-b503a01b24ba'
[20.00 GiB]
ACTIVE '/dev/stack-volumes/volume-73bd1860-8940-4091-8539-c4251b7b0823'
[20.00 GiB]
ACTIVE '/dev/stack-volumes/volume-0d649e69-3c76-44c9-8e5a-bc0a331820c1'
[40.00 GiB]
Now time to recreate database entries. Use nova list to pick an image to
create a new image.
root at stack-1:/dev/stack-volumes# nova image-list
+--------------------------------------+--------------------------------------+--------+
| ID | Name
| Status |
+--------------------------------------+--------------------------------------+--------+
| 2606f66c-29f0-4dcb-abf4-b19519dd4835 | precise-server-cloudimg-amd64
| ACTIVE |
| 716ae8a4-08aa-46ba-8d80-654d93e193af |
precise-server-cloudimg-amd64-kernel | ACTIVE |
+--------------------------------------+--------------------------------------+--------+
Cinder create
root at stack-1:/dev/stack-volumes# cinder create --image-id
2606f66c-29f0-4dcb-abf4-b19519dd4835 --display-name example-volume 20
+---------------------+--------------------------------------+
| Property | Value |
+---------------------+--------------------------------------+
| attachments | [] |
| availability_zone | nova |
| bootable | false |
| created_at | 2013-03-05T20:06:35.616902 |
| display_description | None |
| display_name | example-name |
| id | f52dc1ea-b6da-4aab-8464-50a1a11840b1 |
| image_id | 2606f66c-29f0-4dcb-abf4-b19519dd4835 |
| metadata | {} |
| size | 20 |
| snapshot_id | None |
| source_volid | None |
| status | creating |
| volume_type | None |
+---------------------+--------------------------------------+
Nova image
root at stack-1:/dev/stack-volumes# nova boot
--image=2606f66c-29f0-4dcb-abf4-b19519dd4835 --flavor 2
--block-device-mapping vda=f52dc1ea-b6da-4aab-8464-50a1a11840b1 --key-name
joem-openstack-key example-instance
+------------------------+--------------------------------------+
| Property | Value |
+------------------------+--------------------------------------+
| status | BUILD |
| updated | 2013-03-05T21:08:07Z |
| OS-EXT-STS:task_state | scheduling |
| key_name | joem-openstack-key |
| image | precise-server-cloudimg-amd64 |
| hostId | |
| OS-EXT-STS:vm_state | building |
| flavor | m1.small |
| id | 74f88463-aba9-4208-86ed-ad24f1052d0c |
| security_groups | [{u'name': u'default'}] |
| user_id | 4473cecb13f746a88f08bfaab19ce828 |
| name | example-instance |
| adminPass | sbK3vbeTDCch |
| tenant_id | 40931001789540ca955d353f3c42bcfc |
| created | 2013-03-05T21:08:07Z |
| OS-DCF:diskConfig | MANUAL |
| accessIPv4 | |
| accessIPv6 | |
| progress | 0 |
| OS-EXT-STS:power_state | 0 |
| metadata | {} |
| config_drive | |
+------------------------+--------------------------------------+
Stop the VM
root at stack-1:~# nova list
+--------------------------------------+-------------------------+--------+-----------------------------------+
| ID | Name | Status |
Networks |
+--------------------------------------+-------------------------+--------+-----------------------------------+
| 74f88463-aba9-4208-86ed-ad24f1052d0c | example-instance | ACTIVE |
private=10.11.12.2, 192.168.157.2 |
+--------------------------------------+-------------------------+--------+-----------------------------------+
root at stack-1:~# nova stop 74f88463-aba9-4208-86ed-ad24f1052d0c
Copy old data to new LVM.
root at stack-1:~# cd /dev/stack-volumes/
root at stack-1:/dev/stack-volumes# ls -1
volume-0d649e69-3c76-44c9-8e5a-bc0a331820c1
volume-73bd1860-8940-4091-8539-c4251b7b0823
volume-d767236b-b1c2-4511-ad59-b503a01b24ba
volume-f52dc1ea-b6da-4aab-8464-50a1a11840b1
volume-f7c1d207-8688-4b1e-a8fd-dbe67c923da2
root at stack-1:/dev/stack-volumes# mkdir /mnt/source ; mkdir /mnt/dest
root at stack-1:/dev/stack-volumes# mount –o ro
volume-d767236b-b1c2-4511-ad59-b503a01b24ba /mnt/source
root at stack-1:/dev/stack-volumes# mount
volume-f52dc1ea-b6da-4aab-8464-50a1a11840b1 /mnt/dest
root at stack-1:/dev/stack-volumes# cp –vr --preserve=all /mnt/source/*
/mnt/dest
root at stack-1:/dev/stack-volumes# umount /mnt/dest; umount /dev/source
Restart
root at stack-1:/dev/stack-volumes# nova start
74f88463-aba9-4208-86ed-ad24f1052d0c
Now that I typed all of that, someone will chime in pointing out a tool
that already exists and reimports LVMs to openstack...
Hope this helps someone out.
Cheers,
-Joe
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20130306/2a38beaf/attachment.html>
More information about the Openstack
mailing list