Re: Deploying Garden-Linux-Release on BOSH Lite


Will Pragnell <wpragnell@...>
 

A belated update on this:

As of Garden-Linux-Release v0.306.0 and upwards, btrfs on BOSH Lite now
works, complete with quota support (thanks Alex Suraci!). It’s now
recommended that you don’t set the garden.disk_quota_enabled and
garden.mount_btrfs_loopback properties (they default to true) on BOSH Lite
(well, any BOSH actually). You’ll get full quota support decent performance
again.

Sorry for not letting everyone know sooner!

On 15 September 2015 at 15:04, Will Pragnell <wpragnell(a)pivotal.io> wrote:

TL;DR:

You need to set garden.mount_btrfs_loopback: false and garden.disk_quota_enabled:
false if deploying Garden-Linux-Release to recent versions of BOSH Lite.

Long version:

As of v9000.50.0, BOSH Lite now consumes the latest and greatest version
of Garden-Linux-Release, which means that your deployments to BOSH Lite
will be using btrfs as the filesystem.

This is fine, until you try to deploy Garden-Linux-Release on top, which
assumes that it won’t be deployed on top of btrfs, and tries to mount a
btrfs volume as a loopback device. This turns out not to work, at least
with the current way it tries to do it.

Garden-Linux also uses btrfs subvolumes for disk quotas. Unfortunately,
nesting these is hard, and disk quota setup fails when the btrfs mountpoint
is outside the mount namespace that Garden-Linux is running in.

The fix for both of these issues is to set garden.mount_btrfs_loopback:
false and garden.disk_quota_enabled: false for any Garden-Linux jobs in
your deployment. Note that disk quotas won’t work as a result of this (they
didn’t used to work with Warden on BOSH Lite anyway).

We plan to add a check in the future to detect btrfs filesystems and
remove the mount_btrfs_loopback property, which will make things easier,
but that probably won’t make it in until v0.307.0 of Garden-Linux-Release.

Thanks,
Will

Join cf-dev@lists.cloudfoundry.org to automatically receive all group messages.