Hi, I’m new to Incus and I just received my new mini PC and installed Ubuntu 24.04.02 and did a basic setup (updates, bride interface & zfs pool).
Now I need to do the incus admin init, but I’m not sure how to answer the setup questions “correctly”.
My zfs pool is called zfspool and I want all incus stuff to be in zfspool/incus.
Would I have to answer incus for Name of the new storage pool [default=default]:
or do I have to create it first (sudo zfs create zfspool/incus)
And then later, when I am asked: name of existing ZFS pool or dataset:
what do I have to answer?
PS:
I will introduce myself properly in a later post and ask a few more questions, but for now I want to get started with Incus and maybe some of the questions will have been answered by the time I’ve experimented a bit.
Since you already have a ZFS pool on your system, you want to make Incus use a dataset in that ZFS pool. See example at Help with Setup - #2 by simos
Therefore,
Name of the new storage pool [default=default]: (you may leave this empty to use default, which is just the local name that Incus will be using for the name of the Incus Storage Pool. You can put anything here. )
Name of the existing ZFS pool or dataset:zfspool/incus Incus will create the dataset for you. Do not create it manually.
@marvindinges If you already have zfs pool in your system created and if you want to use that to be passed to “incus admin init” then use my setup as a reference. NOTE: THIS IS ONLY IF YOU ALREADY HAVE AN EXISTING ZFS POOL
Make sure you have the zfspool whichever you want to provide to “incus admin init” is in place.
In my case, I have zfs pool named “basepool” and it is that pool that I passed it to “incus admin init”
The command “zpool list” should show all your existing zfs pools.
Note that in my case my “basepool” which I am going to pass it to “incus admin init” is only 5GB (experimental). Make sure to allocate a bigger size
Here is the output of my “incus admin init”. Note that I am also assigning an ip address of my choice (10.1.1.253/24) to incusbr0.
# incus admin init
Would you like to use clustering? (yes/no) [default=no]:
Do you want to configure a new storage pool? (yes/no) [default=yes]:
Name of the new storage pool [default=default]: basepool
Name of the storage backend to use (zfs, btrfs, dir, lvm, lvmcluster) [default=zfs]:
Create a new ZFS pool? (yes/no) [default=yes]: no
Name of the existing ZFS pool or dataset: basepool
Would you like to create a new local network bridge? (yes/no) [default=yes]:
What should the new bridge be called? [default=incusbr0]:
What IPv4 address should be used? (CIDR subnet notation, “auto” or “none”) [default=auto]: 10.1.1.253/24
Would you like to NAT IPv4 traffic on your bridge? [default=yes]:
What IPv6 address should be used? (CIDR subnet notation, “auto” or “none”) [default=auto]: none
Would you like the server to be available over the network? (yes/no) [default=no]: yes
Address to bind to (not including port) [default=all]:
Port to bind to [default=8443]:
Would you like stale cached images to be updated automatically? (yes/no) [default=yes]:
Would you like a YAML "init" preseed to be printed? (yes/no) [default=no]: yes
config:
core.https_address: '[::]:8443'
networks:
- config:
ipv4.address: 10.1.1.253/24
ipv4.nat: "true"
ipv6.address: none
description: ""
name: incusbr0
type: ""
project: default
storage_pools:
- config:
source: basepool
description: ""
name: basepool
driver: zfs
storage_volumes: []
profiles:
- config: {}
description: ""
devices:
eth0:
name: eth0
network: incusbr0
type: nic
root:
path: /
pool: basepool
type: disk
name: default
project: default
projects: []
cluster: null
And this is how it will be listed:
# incus storage list
+----------+--------+-------------+---------+---------+
| NAME | DRIVER | DESCRIPTION | USED BY | STATE |
+----------+--------+-------------+---------+---------+
| basepool | zfs | | 4 | CREATED |
+----------+--------+-------------+---------+---------+