This repository provides the base files for build your own FreeBSD image for Openstack using normal build system (using GENERIC kernel) and CLOUDWARE.
BSD
The only requirements are the src
(source) component installed and net/py-python-openstackclient
port (for image upload).
Source or define also the variables for openstack upload:
- OS_USERNAME: Your Openstack username.
- OS_PASSWORD: Your Openstack password.
- OS_AUTH_URL: The auth URL for Keystone.
- OS_PROJECT_NAME: The old fashion tenant name
- OS_USER_DOMAIN_NAME: The user domain name (only for Keystone v3)
- OS_PROJECT_DOMAIN_NAME: The Project domain name (only for Keystone v3)
- OS_IDENTITY_API_VERSION: Keystone Identity API version
In order to build your Openstack FreeBSD image please download the archive from the release page, and extract it in the /usr/src/release/
folder. Then follow these instructions:
- Fetch the archive
fetch <latest-release-url>
- Extract the archive
tar -C /usr/src/release -xvf openstack.txz
- Move the src folder (
cd /usr/src
); run alsoldconfig
for the first time in order to create the "library cache" - Build the userland and the kernel
make buildworld buildkernel
- Move to the release folder
cd /usr/src/release
- Run
make cloudware-release WITH_CLOUDWARE=yes CLOUDWARE=OPENSTACK
- Run
make openstack-upload
to upload (and also install the port if missing) the image to your Openstack cluster.
Tested on:
- FreeBSD 11.x
- FreeBSD 12.x
- (In progress) FreeBSD 13.0
- No logs available in Horizon (tested with rsyslog and syslog)
- No Python at default (add
python
toVM_EXTRA_PACKAGES
intools/openstack.conf
), if you are planning to manage it with ansible do not forget to useansible_python_interpreter=/usr/local/bin/python2.7
to your inventory.
- ZFS Module is present in the kernel, could be loaded using
kldload zfs