For the most part I am able to follow the documentation here:
https://ubuntu.com/kubernetes/docs/storage
The documents above don't work for people who deployed to LXD.
When I tried to run:
juju deploy -n 3 ceph-osd --storage osd-devices=32G,2 --storage osd-journals=8G,1
My osd-devices got stuck.
vandorjw@dilbert:~$ juju show-storage osd-devices/1
osd-devices/1:
kind: block
life: alive
status:
current: attaching
message: 'attaching volume 13/1: attaching loop device: attaching loop device
to "/var/lib/juju/storage/loop/volume-13-1": losetup: cannot find an unused
loop device: exit status 1'
since: 28 Sep 2019 18:07:40Z
persistent: false
attachments:
units:
ceph-osd/0:
machine: "13"
life: alive
I checked the app name using:
vandorjw@dilbert:~$ juju status
Model Controller Cloud/Region Version SLA Timestamp
conjure-charmed-kubernet-b0a conjure-up-localhost-62f localhost/localhost 2.6.9 unsupported 19:14:47Z
App Version Status Scale Charm Store Rev OS Notes
ceph-mon 12.2.12 waiting 3 ceph-mon jujucharms 42 ubuntu
ceph-osd waiting 0/3 ceph-osd jujucharms 291 ubuntu
containerd active 5 containerd jujucharms 30 ubuntu
easyrsa 3.0.1 active 1 easyrsa jujucharms 277 ubuntu
etcd 3.2.10 active 3 etcd jujucharms 457 ubuntu
flannel 0.11.0 active 5 flannel jujucharms 447 ubuntu
kubeapi-load-balancer 1.14.0 active 1 kubeapi-load-balancer jujucharms 677 ubuntu exposed
kubernetes-master 1.16.0 active 2 kubernetes-master jujucharms 747 ubuntu
kubernetes-worker 1.16.0 active 3 kubernetes-worker jujucharms 589 ubuntu exposed
Removing a stuck app with juju is as simple as running.
vandorjw@dilbert:~$ juju remove-application ceph-osd
removing application ceph-osd
- will remove storage osd-devices/0
- will remove storage osd-devices/1
- will remove storage osd-journals/2
- will remove storage osd-devices/3
- will remove storage osd-devices/4
- will remove storage osd-journals/5
- will remove storage osd-devices/6
- will remove storage osd-devices/7
- will remove storage osd-journals/8
I tried again, hoping I could specify lxd as the storage pool instead of loop, which is the default:
vandorjw@dilbert:~$ juju deploy -n 3 ceph-osd --storage osd-devices=lxd,32G,2 --storage osd-journals=lxd,8G,1
It then tells me...
Located charm "cs:ceph-osd-291".
Deploying charm "cs:ceph-osd-291".
ERROR cannot add application "ceph-osd": "lxd" provider does not support "block" storage
Seems to be a known bug.