<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Oct 18, 2014 at 10:04 AM, Roman Bogorodskiy <span dir="ltr"><<a href="mailto:rbogorodskiy@mirantis.com" target="_blank">rbogorodskiy@mirantis.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Hi,<br>
<br>
In discussion of this spec proposal:<br>
<a href="https://review.openstack.org/#/c/127827/" target="_blank">https://review.openstack.org/#/c/127827/</a> it was suggested by Joe Gordon<br>
to start a discussion on the mailing list.<br>
<br>
So I'll share my thoughts and a long term plan on adding FreeBSD host<br>
support for OpenStack.<br>
<br>
An ultimate goal is to allow using libvirt/bhyve as a compute driver.<br>
However, I think it would be reasonable to start with libvirt/qemu<br>
support first as it will allow to prepare the ground.<br></blockquote><div><br></div><div><div style="font-family:arial,sans-serif;font-size:13px">Before diving into the technical details below, I have one question. Why, What is the benefit of this, besides the obvious 'we not support FreeBSD'?  Adding support for a new kernel introduces yet another column in our support matrix, and will require a long term commitment to testing and maintaining OpenStack on FreeBSD.</div><div><br></div><span class="im" style="font-family:arial,sans-serif;font-size:13px"></span></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
High level overview of what needs to be done:<br>
<br>
 - Nova<br>
  * linux_net needs to be re-factored to allow to plug in FreeBSD<br>
    support (that's what the spec linked above is about)<br>
  * nova.virt.disk.mount needs to be extended to support FreeBSD's<br>
    mdconfig(8) in a similar way to Linux's losetup<br>
 - Glance and Keystone<br>
    These components are fairly free of system specifics. Most likely<br>
    they will require some small fixes like e.g. I made for Glance<br>
    <a href="https://review.openstack.org/#/c/94100/" target="_blank">https://review.openstack.org/#/c/94100/</a><br>
 - Cinder<br>
    I didn't look close at Cinder from a porting perspective, tbh.<br>
    Obviously, it'll need some backend driver that would work on<br>
    FreeBSD, e.g. ZFS. I've seen some patches floating around for ZFS<br>
    though. Also, I think it'll need an implementation of iSCSI stack<br>
    on FreeBSD, because it has its own stack, not stgt. On the other<br>
    hand, Cinder is not required for a minimal installation and that<br>
    could be done after adding support of the other components.<br></blockquote><div><br></div><div><div style="font-family:arial,sans-serif;font-size:13px">What about neutron? We are in the process of trying to deprecate nova-network, so any new thing needs to support neutron.</div><div class="" style="font-family:arial,sans-serif;font-size:13px"></div></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
Also, it's worth to mention that a discussion on this topic already<br>
happened on this maillist:<br>
<br>
<a href="http://lists.openstack.org/pipermail/openstack-dev/2014-March/031431.html" target="_blank">http://lists.openstack.org/pipermail/openstack-dev/2014-March/031431.html</a><br>
<br>
Some of the limitations were resolved since then, specifically,<br>
libvirt/bhyve has no limitation on count of disk and ethernet devices<br>
anymore.<br>
<span class=""><font color="#888888"><br>
Roman Bogorodskiy<br>
</font></span></blockquote></div><br></div></div>