Hi Folks,
Still early days for me in Juju/Conjure-up so bear with me.
So far, I have an LXD host properly configured and I have deployed a Kubernetes cluster with conjure-up, and it’s working. I can schedule workloads that do not require storage. Cool. But now I need persistent storage, and after reviewing the cluster deployed by conjure-up, I see that there are no storage classes out of the box.
Adding storage seems to be problematic as nothing I have tried seems to work, each command I attempt from the docs seems to be unaware of the model I’ve deployed and thus fails. Working with models that are already deployed seems to be a major hole in the docs, btw. They all talk about creating models from scratch, but not how to select and modify deployed ones.
Currently my Juju command sees this model:
routhinator@andromeda:~$ juju show-model
kubernetes:
name: admin/kubernetes
short-name: kubernetes
model-uuid: 366a3fec-0af6-4e57-8da5-5d11bf1fc49f
model-type: iaas
controller-uuid: f59cb3fd-74b8-4562-812c-61ef298537b6
controller-name: conjure-up-localhost-091
is-controller: false
owner: admin
cloud: localhost
region: localhost
type: lxd
life: alive
status:
current: available
since: 23 hours ago
users:
admin:
display-name: admin
access: admin
last-connection: 22 seconds ago
sla: unsupported
agent-version: 2.6.5
credential:
name: localhost
owner: admin
cloud: localhost
It also sees my controller:
routhinator@andromeda:~$ juju show-controller
conjure-up-localhost-091:
details:
uuid: f59cb3fd-74b8-4562-812c-61ef298537b6
controller-uuid: f59cb3fd-74b8-4562-812c-61ef298537b6
api-endpoints: ['192.168.52.196:17070']
cloud: localhost
region: localhost
agent-version: 2.6.5
mongo-version: 3.6.3
ca-fingerprint: FD:8E:24:D6:D7:6C:10:CC:E8:58:3E:A4:38:1F:A1:29:D3:9E:01:66:64:41:34:CD:9A:32:AD:1A:0E:22:ED:24
ca-cert: |
-----BEGIN CERTIFICATE-----
MIIDrTCCApWgAwIBAgIVAK6xP44ko0kgszYRvfq5ifd7+c/+MA0GCSqGSIb3DQEB
CwUAMG4xDTALBgNVBAoTBGp1anUxLjAsBgNVBAMMJWp1anUtZ2VuZXJhdGVkIENB
IGZvciBtb2RlbCAianVqdS1jYSIxLTArBgNVBAUTJDU5N2M4ZDI0LTQzZmQtNGEy
Yy04NTNiLWJiOWM1YjMwMmQ1MzAeFw0xOTA5MjIyMDU5MTVaFw0yOTA5MjkyMDU5
MTRaMG4xDTALBgNVBAoTBGp1anUxLjAsBgNVBAMMJWp1anUtZ2VuZXJhdGVkIENB
IGZvciBtb2RlbCAianVqdS1jYSIxLTArBgNVBAUTJDU5N2M4ZDI0LTQzZmQtNGEy
Yy04NTNiLWJiOWM1YjMwMmQ1MzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
ggEBAM0dlHZPpr6frgf+udcg4ULX00tLIJbJsb/ZYHoRJrA9oL7gcEiRZKcOySDa
4aQ9yVeFGfYOMAW/zKyVyq30J9ELF+g8LZX6VIq+dd7ci2d9f71k/W7ekDoGPacr
HXsc8pUFagcFbP/J1cpUsn8iqMqdkofndmcMCCAeSSiHCCC+/cPW5uJ/9tX+errV
MuyGQ6eNUn1Q+Gk2kHM/MXlaME6R4QwqkEEEYEq8UIXKKJfrLDdJ13GPVWzUpuZY
vhYTmzUjwV74ZLyR4EhCuzC7zLpf6bAE2Tg2/iJfXvZ0ij/yX93uFbeL9shaReYz
TTXE2Kv6fdZKBVh3TmH5n7OA56UCAwEAAaNCMEAwDgYDVR0PAQH/BAQDAgKkMA8G
A1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFFmmyXOz16Uy4b8Kz3sFyVSThoJOMA0G
CSqGSIb3DQEBCwUAA4IBAQAt0zTEH8QCETI27rBhiyc+93wMmMprVzj7Nd3s3fPs
sDFRe2uB5+72tURsVzEXtM4SVhB7LvOa0Rh+nNY4BzpoMDFsMmYfQb/zuemSvlF5
KuYqjMYnMMJBOKovXBGiws3ZKgxnVcFBs70Tusm1UuRvaG1LeQOvuvEf/s1OaiWY
+mmkFozzoUVbZPs/KdDlCM8eDtjW4+rOptbKnt6Hdl1Xh9koApYKd4PuHLZp+KT5
Y2LsgBU9n2yRdiJRkNFgADNHyCkV5J5EUICqhKSRDV8dI75MbyidbXwjwNkIAlRT
0v9ZBAkHi91n8vLeNTQ5NFVWgAZT1d0gr8/pEzed0IMs
-----END CERTIFICATE-----
controller-machines:
"0":
instance-id: juju-337606-0
models:
conjure-charmed-kubernet-e31:
uuid: 08548267-242a-41ad-8d34-1248894a6e82
model-uuid: 08548267-242a-41ad-8d34-1248894a6e82
machine-count: 5
core-count: 6
controller:
uuid: b2499f8d-ecc4-4332-83cd-aeadb1337606
model-uuid: b2499f8d-ecc4-4332-83cd-aeadb1337606
machine-count: 1
kubernetes:
uuid: 366a3fec-0af6-4e57-8da5-5d11bf1fc49f
model-uuid: 366a3fec-0af6-4e57-8da5-5d11bf1fc49f
current-model: admin/kubernetes
account:
user: admin
access: superuser
routhinator@andromeda:~$ juju list-controllers
Use --refresh option with this command to see the latest information.
Controller Model User Access Cloud/Region Models Nodes HA Version
conjure-up-localhost-091* kubernetes admin superuser localhost/localhost 3 6 none 2.6.5
However, in spite of it seeing the kubernetes model that’s been deployed, whenever I attempt to add storage to my cluster I get an error indicating the juju controller doesn’t recognize this as a kubernetes model:
routhinator@andromeda:~$ juju create-storage-pool operator-storage kubernetes \
> storage-class=microk8s-hostpath
ERROR storage provider "kubernetes" not found
I’m not sure exactly how I fix this.
Ultimately this is a single node LXD host that’s meant for a staging/review cluster, so I just want to pass in an LXD storage pool that all the kubenodes can access and share. I am attempting to test out the hostpath provisioner, but ultimately would like to either add LXD dir storage or something lightweight like ZFS. Ceph is completely overkill resource wise and not really useful as a result.