openstack how to prevent losing vms - openstack

I am using "devstack" to play with the openstack in my desktop.
I had configured several vms in my instance. What happened was couple of days ago there was a power failure which caused my desktop to power down(I didnt have a UPS) attached to it. This resulted in my losing all the vms since i didnt unstack.
One of the solution to prevent this from happening next time is using a UPS. Are there any other solutions that I can use to back the vms so that even if there is a power loss the vms will run if i just restart and do ./stack.sh

Create snapshot of VM
Instance snapshots are uploaded to Glance which will store them in /var/lib/glance/images on the controller node.
Backup this folder.
When there is a data lose occurs , just restore this folder and Launch new instance by boot from image. select the snapshot and click launch.

Devstack is a developer environment, it is not meant to recover from power losses.
You should consider using another all-in-one openstack installer which should support restarting the openstack services without losing state. For instance, you can use Redhat's packstack - https://openstack.redhat.com/Quickstart

Related

Airflow background tasks

I have started to work with Airflow recently and I have two questions. I am currently using it as background on Ubuntu as I have created the two following services:
sudo touch /etc/systemd/system/airflow-webserver.service
sudo touch /etc/systemd/system/airflow-scheduler.service
It work well but, my questions are:
Is there a way to use the GUI when not connected to the VM? (It is currently impossible for me)
The scheduler does not work as soon as I stop the VM local forwarding. Is there a way to have it enables 24/7, whatever if my computer is on or off?
Any kind of explanation would be appreciated.
Edit:
According to this post How do you keep your airflow scheduler running in AWS EC2 while exiting ssh?
running as a service seems to be enough to have the scheduler set even when not doing ssh. But in my case it is not working. Could it be because of the user name in the .service file? What should be the user name in the file?

BOSH doesn't recognize deleted VM

I'm working with BOSH on Openstack. I called bosh -n deploy to have BOSH update an existing deployment. The update required some slave machines to be brought down. As far as I can tell on the Openstack Horizon Web GUI and through command line calls to the Openstack tenancy I'm working on the VMs that should have been brought down have been. However, BOSH seems to think all but one have been brought down.
Is there a way to go into my MicroBOSH VM to edit an entry somewhere that will fix this error?
I can't be positive that the error is completely due to BOSH because the Openstack cloud that I'm working on is going to be completely rebuilt soon and therefore there could be any number of things happening behind the scenes that I don't know about. As such I just want to be able to stop BOSH from complaining about a VM that it can't delete (because it's already gone).
Running bosh cck should take care of it.

How to achieve high availability of instance in openstack

I wanted to launch an instance with high availability with out having risk factor i.e, an instance will be launched in multiple regions(zones) that to sync the state like database(master-slave). When some applications got installed, same should reflect in another region/zone also(mostly image format). Can we do that?.
I have checked some links based on this. I got a confusion after reading all the docs.
Host-aggregate/Cell in openstack
Nova evacuate command
Buildbot tool
Exactly what is the difference among. VM replication & syncing is possiblein Openstack?
To the best of my knowledge, Open Stack does not support VM replication for now.
There is a component called Remus under the Xen project, which could potentially used by manual configuration as Open Stack supports Xen (https://www.xenproject.org/directory/directory/projects/70-remus.html). But it seems to be slow and unstable.
The newest approach is called reversed virtual machine replication (http://dl.acm.org/citation.cfm?id=2996894&CFID=918229768&CFTOKEN=85577813), this one seems to be very interesting and some critical problems in VM replication is well defined and elegantly solved. However, I did not find the open source project for it.

Booting up Teradata express VM using VirtualBox

I downloaded the Teradata express VM today. But I don't use vmware... i use virtual box instead. I created a new VM and added all the vmdk disk files to virtual box.
but it is throwing error could not find /dev/disk/by-label/ROOT-BE1. Want me to fall back to /dev/disk/by-path/pci-0000:00
does anyone know how to boot the vm image with virtual box?
I have the same problem, with the same message. The same mistake.
The solution is simple. Just change the Storage Controler to SCSI. After this, restart the VM and it will start normally, but in command line.
I try, but i can't run the startx command...
Try adding IDE controller and then add the disk as existing hard disk device. This should let you boot into the OS.
I saw this exact error when trying to load the VM in KVM. What seemed to fix it was selecting 'single user mode' in the grub menu. After booting like this once, selecting the default grub option subsequently allowed the VM to boot further than this error.
Note that I haven't been able to successfully bring up the actual database yet - the service doesn't start automatically, and when I start it manually, it reboots the VM, bringing me back to the same state as before. Maybe you'll have more luck with VirtualBox?

How to run automated GUI tests on a remote headless ESXi Virtual Machine?

I'm trying to setup automated GUI tests in ESXi Virtual Machines using TestComplete. The problem, as I understand it, is that when no remote desktop connection is made to the ESXi virtual machine, then it is impossible for TestComplete to perform screen captures and therefore automate the GUI testing. As far as I understand it, this is due to the fact that Windows does not generate any user interface when nobody is viewing it.
I'm sure other have experienced this problem. How did you solve it ? Are you using a third party computer which automatically launch remote desktop connections prior to running the tests ?
Would it be possible to launch a remote desktop from a head-less virtual machine to another to fake somebody viewing ?
Any other smarter solutions I haven't thought about ?
You should be able to log in to Windows on the VM's console using the vSphere client, then close vSphere, and Windows will still believe the user is viewing the console. Simple as that. :)
So there shouldn't be a need to involve remote desktop in the mix.
As long as your tests then run as that logged-in Windows user, you should be fine.
This technique has always worked like a charm for me with certain Watir, Selenium, and MS UI Automation tests that depend on having an interactive desktop.
If you need to reboot the VM automatically before/during the test, instead of logging in manually in the vSphere client, you can make Windows log in as an arbitrary user automatically - check the "control userpasswords2" command, or you can use the Sysinternals app "Autologin":
http://technet.microsoft.com/en-us/sysinternals/bb963905
Only catch with this technique is that you need to be able to launch your tests while not viewing the console on the VM, but it sounds like you've already taken care of that?
If you need a solution for launching your tests remotely, I highly recommend using Jenkins or Hudson to kick off tests/collect results from the VM. Jenkins has changed my life in this regard.
You may consider using the Network Suites functionality of TestComplete:
http://smartbear.com/support/viewarticle/16849/
It can open Remote Desktop connections on its own, control tests on remote PCs, and pull the logs back to the "master" project. This feature is designed to be used for distributed tests, and looks like it's just what you need.
As for opening RDP to a head-less VM, it should not be a problem - it's up to Windows to "think" about this. You just open RDP and it works even if there is no monitor attached to the remote PC/VM.
I hope this helps,
Alex
You can always use VNC with checking the option "Do nothing" when disconnecting viewer. This way you'll trick windows to generate the image.

Resources