Git Product home page Git Product logo

vmrc's Introduction

vmrc

vmrc is a Virtual Machine rc(8) script for managing bhyve, Xen and other virtual machines.

Home page: http://vmrc.bsd.lv

See the "vmrc-known-issues.txt" file for up-to-date status information and there are developer notes at the end of "vmrc-instructions.txt".

As this is a work in progress, please consider submitting questions and feature requests prior to patches.

If you do submit pull requests, note that GitHub will combine requests until they are accepted as a group. This inadvertently makes them inseparable and thus unacceptable, arguably defeating the entire purpose of Git. One workaround is to submit each request from a different local branch.

Thank you for helping test bhyve, Xen and vmrc!

Michael Dexter [email protected]

vmrc's People

Contributors

brooksdavis avatar brycv avatar dfwarden avatar dlangille avatar michaeldexter avatar sevan avatar shirkdog avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vmrc's Issues

10-stable / vmrc snapshot: installing centos does not quite work

Hi Michael,

thanks for vmrc.

I'm a first-time user of vmrc and bhyve ;) , and try to set up a centos image.

Choosing the centos65amd64iso, creating configuration and directories seems to work fine.

I'm dropped into the shell with a notice like
use /usr/local/etc/rc.d/vm onestart zimbra-centos2 to start your image...

Sadly, that drops me into a blank grub window...

Looking at the config file, it seems the machine is not started as iso.

So either the installation did not happen before, or the notice forgets to tell me how to boot the cdrom.

I'm now fumbling with booting manually - have to google a bit about grub...

Ask away if you need more information.

Cheers, Mathias

grub-bhyve & zvol cannot boot

Hallo!

first, vmrc is awesome, but a few things with linux vm's could be better. i will tell you my experience.

if i want to boot a linux vm, i cannot use vmrc. i build my ubuntu/debian/centos on a zvol in /dev/zvol/zroot/vmname1 and always if i use "service vm start vmname1" the script generates a device.map with an img volume. after that, the grub-bhyve does not find the img because there is no and grub is waiting for input...
i found the line in your code, it's on /vmrc/vm on line 903 and on line 405. there is always an echo in the device.map file for an img volume. there is no chance to boot linux from a zvol isnt it?
all my linux vm's work with this commands :

grub.in should looks like this
echo "set root=(hd0,msdos1)" >> grub.in
echo "linux /vmlinuz root=/dev/vda1 quiet splash " >> grub.in
echo "initrd /initrd.img" >> grub.in
echo "boot" >> grub.in

BOOT IT:
grub-bhyve -r hd0 -m /usr/local/vmrc/vm/vmname1/device.map -M 2048 vmname1 < /usr/local/vmrc/vm/vmname1/grub.in > /dev/null

START IT:
tmux new -d -s "vmname1" "eval bhyve -c 4 -m 2048M -H -P -A -s 0:0,hostbridge -s 1:0,lpc -s 2:0,virtio-net,tap8070 -s 3,ahci-cd,vmname1.iso -l com1,stdio -s 4,virtio-blk,/dev/zvol/zroot/vmname1 vmname1"

that works! and i got a linux vm with a tmux session :)
that should work with vmrc, if device.map is not generated on "service vm start vmname1" i think.
any idea how to fix my problem??

greetings from germany

minor issue with service vm oneiso vm1 (trying to install to zvol)

The vm script appear to ignore the value of vm_dev_type in the vm.conf file when booting install CD
using a command like service vm oneiso vm1

This line hard codes image in the device map

line 312:  echo "(hd0) $host_vmdir/$1/${1}.img" > $host_vmdir/$1/device.map

The workaround is to create vm1.img as a symlink to the right zvol. Perhaps in the case of a non-img setting the mkvm.sh could create this link just as it creates a symlink to the iso.

with the symlink in place everything worked smoothly, thanks

option to disable f_netstart() in /usr/local/etc/rc.d/vm script

I'm looking at f_netstart() in the vm script, and it appears to not fit with my set up. I have a private bridge configured with an IP which is not connected to my host system's NIC. For me the easiest change would be to disable this function. The only issue I have with the function is when it attempts to add ${host_nic} to ${host_bridge}. Possibly there can be a check to see if ${host_nic} is non empty then execute the addm.

service vm onestart myvm

Using 94be946 and after having created a VM using a zvol I need to change to /usr/local/vmrc/vm to be able to "service vm onestart myvm". Is this to be expected?

I can see stat for "myvm" but not within /usr/local/vmrc/vm.

Add support for FreeBSD "firstboot" script

It would be really nice to have a way to spin the machine up and do some setup things like get salt installed and pre-seeded with their respective master and to put them into a "highstate" on the first boot of the VM.

Maybe the template can specify a vm_firstboot FreeBSD specific key that can contain the path to a script to put inplace as firstboot on the filesystem?

ifconfig_cmd.sh

File ifconfig_cmd.sh after the change and reboot the machine is overwritten default variables.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.