Created attachment 177795 [details] nova __ Please note that this is a development version of nova. ___ Many features are not available. Currently nova works on FreeBSD 11 and supports QEMU and Xen. Common issues: - Security groups are not implemented - ARP spoofing, DHCP isolation protection are not implemented - Nova services work from the root user - No IPv6 support QEMU issues: - Need to enable serialconsole (TCP) - Need to disable online CPU tracking - Cannot mount cinder volumes Xen issues: - Live snapshots doesn't work - No support for cinder volume hot-plugging - XENBUS delay (5 min) when using qemu driver and COW images - Some linux images cannot be booted Nova requires procfs to be mounted. Please add this line to /etc/fstab: proc /proc procfs rw 0 0 Also devel/libvirt port should be installed with enabled QEMU backend or qemu tools installed separately. Directory to keep VM data should be created manually # su -m nova -c "mkdir /var/lib/nova/instances" For proper networking enable PF # sysrc pf_enable="YES" # sysrc pflog_enable="YES" # sysrc gateway_enable="YES" /etc/pf.conf should contain: rdr-anchor "org.openstack/*" nat-anchor "org.openstack/*" anchor "org.openstack/*" To boot images on Xen please specify glance metadata properties glance image-update b1216ff6-23ec-4a08-baee-43994760158a \ --property hypervisor_type=xen \ --property vm_mode=hvm \ --property hw_disk_bus=xen I will fork official openstack documentation and make BSD version this month.
Any specific reason to use EXTRA_PATCHES? As these patches are mandatory and we keep this in-tree, why not just store these as files/patch-* (as would be generated if you do make makepatch for example)?
(In reply to Roman Bogorodskiy from comment #1) Well, since many things are in development I find this approach more developer-friendly. It's not limited to per-file basis like makepatch and allows me to import/export patches directly from the git repository and apply multiple patches for specific file. This is a temporary solution until I get all core services to work. Then I'm going to keep only integration code and move all FreeBSD specific code into separate modules.
A commit references this bug: Author: novel Date: Sun Dec 18 06:30:59 UTC 2016 New revision: 428837 URL: https://svnweb.freebsd.org/changeset/ports/428837 Log: Add emulators/py-nova 14.0.2, Openstack Compute Service Please note that this is a development version of nova. Many features are not available. Currently nova works on FreeBSD 11 and supports QEMU and Xen. Common issues: - Security groups are not implemented - ARP spoofing, DHCP isolation protection are not implemented - Nova services work from the root user - No IPv6 support QEMU issues: - Need to enable serialconsole (TCP) - Need to disable online CPU tracking - Cannot mount cinder volumes Xen issues: - Live snapshots don't work - No support for cinder volume hot-plugging - XENBUS delay (5 min) when using qemu driver and COW images - Some Linux images cannot be booted For further FreeBSD specific notes please refer to port's pkg-message. PR: 215151 Submitted by: Alexander Nusov (alexander.nusov@nfvexpress.com) Changes: head/GIDs head/UIDs head/emulators/Makefile head/emulators/py-nova/ head/emulators/py-nova/Makefile head/emulators/py-nova/distinfo head/emulators/py-nova/files/ head/emulators/py-nova/files/01-firewall-manager.patch head/emulators/py-nova/files/02-freebsd-l3.patch head/emulators/py-nova/files/03-nova-conf.patch head/emulators/py-nova/files/04-xen-phy.patch head/emulators/py-nova/files/05-online-cpus.patch head/emulators/py-nova/files/06-freebsd-net.patch head/emulators/py-nova/files/nova-api.in head/emulators/py-nova/files/nova-cells.in head/emulators/py-nova/files/nova-cert.in head/emulators/py-nova/files/nova-compute.conf.sample head/emulators/py-nova/files/nova-compute.in head/emulators/py-nova/files/nova-conductor.in head/emulators/py-nova/files/nova-consoleauth.in head/emulators/py-nova/files/nova-network.in head/emulators/py-nova/files/nova-scheduler.in head/emulators/py-nova/files/nova-serialproxy.in head/emulators/py-nova/files/nova.conf.sample head/emulators/py-nova/pkg-descr head/emulators/py-nova/pkg-message head/emulators/py-nova/pkg-plist
Committed, thanks!