diff options
Diffstat (limited to 'src/ceph/doc/dev/freebsd.rst')
-rw-r--r-- | src/ceph/doc/dev/freebsd.rst | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/src/ceph/doc/dev/freebsd.rst b/src/ceph/doc/dev/freebsd.rst new file mode 100644 index 0000000..5a401ee --- /dev/null +++ b/src/ceph/doc/dev/freebsd.rst @@ -0,0 +1,58 @@ +============================== +FreeBSD Implementation details +============================== + + +Disk layout +----------- + +Current implementation works on ZFS pools + +* created in /var/lib/ceph +* One ZFS pool per OSD, like:: + + gpart create -s GPT ada1 + gpart add -t freebsd-zfs -l osd1 ada1 + zpool create -o mountpoint=/var/lib/ceph/osd/osd.1 osd + +* Maybe add some cache and log (ZIL)? Assuming that ada2 is an SSD:: + + gpart create -s GPT ada2 + gpart add -t freebsd-zfs -l osd1-log -s 1G ada2 + zpool add osd1 log gpt/osd1-log + gpart add -t freebsd-zfs -l osd1-cache -s 10G ada2 + zpool add osd1 log gpt/osd1-cache + +* Note: *UFS2 does not allow large xattribs* + + +Configuration +------------- + +As per FreeBSD default parts of extra software go into ``/usr/local/``. Which +means that for ``/etc/ceph.conf`` the default location is +``/usr/local/etc/ceph/ceph.conf``. Smartest thing to do is to create a softlink +from ``/etc/ceph`` to ``/usr/local/etc/ceph``:: + + ln -s /usr/local/etc/ceph /etc/ceph + +A sample file is provided in ``/usr/local/share/doc/ceph/sample.ceph.conf`` + + +MON creation +------------ + +Monitors are created by following the manual creation steps on:: + + http://docs.ceph.com/docs/master/install/manual-deployment/ + + +OSD creation +------------ + +OSDs can be create with ``ceph-disk``:: + + ceph-disk prepare /var/lib/ceph/osd/osd1 + ceph-disk activate /var/lib/ceph/osd/osd1 + +And things should automagically work out. |