Clone hyper in GoPath
> cd ${GOPATH}/src
> mkdir -p github.com/hyperhq
> cd github.com/hyperhq
> git clone https://github.com/hyperhq/hyperd.git
And make sure you have go (>= 1.5, 1.7 or later is recommended) and autotools, develop files of
libdevmapper, libsqlite3, libvirt-devel then
> cd hyperd
> ./autogen.sh
> ./configure
> make
(If you want to build without Xen support, use configure option --without-xen.)
Then you can get the binaries hyperd daemon and hyperctl CLI tool.
Download Xen 4.5.0 or later version, and configure with the following option
> ./configure --with-extra-qemuu-configure-args="--enable-virtfs"
Clone hyperstart
> git clone https://github.com/hyperhq/hyperstart.git hyperstart
And build with autotools
> ./autogen.sh
> ./configure
> make
Then you can find hyper-initrd.img in build directory, together with a pre-build kernel. You can also find the kernel_config in the repo.
Hyperd could work with vanilla qemu 2.0 or newer, however, we provided our branch with some patches from hyper:
https://github.com/hyperhq/qemu/tree/2.4.1-template
If you build Qemu from source, don't forget enable virtfs (--enable-virtfs) during configuration.
You can reference the Hyper kernel configuration.
You can find related configuration items in the config file.