From: "Микола Микола" <nikolaytihonov2022@gmail.com>
To: pve-devel@lists.proxmox.com
Subject: [PATCH docs v2 3/3] add FreeBSD CTL support for ZFS over iSCSI
Date: Mon, 6 Apr 2026 07:41:18 +0300 [thread overview]
Message-ID: <CADzCCsNzAbZDyV9Tkhm8B5etUvDhb-pHnbUt5jHud6pMp1y89g@mail.gmail.com> (raw)
In-Reply-To: <CADzCCsNfznS8NktTGnpN+5KABLcF9ceBF9-9zdRmhgk=DyULdA@mail.gmail.com>
>From 8d724a09390fc52671c2c1ef83250c90612527a7 Mon Sep 17 00:00:00 2001
From: mykola2312 <49044616+mykola2312@users.noreply.github.com>
Date: Mon, 6 Apr 2026 05:17:45 +0300
Subject: [PATCH] storage: document FreeBSD ctld for ZFS over iSCSI
---
pve-storage-zfs.adoc | 23 ++++++++++++++++++++---
1 file changed, 20 insertions(+), 3 deletions(-)
diff --git a/pve-storage-zfs.adoc b/pve-storage-zfs.adoc
index c07f534..49d9737 100644
--- a/pve-storage-zfs.adoc
+++ b/pve-storage-zfs.adoc
@@ -17,6 +17,7 @@ The following iSCSI target implementations are supported:
* LIO (Linux)
* IET (Linux)
* ISTGT (FreeBSD)
+* CTL / `ctld` (FreeBSD)
* Comstar (Solaris)
NOTE: This plugin needs a ZFS capable remote storage appliance, you cannot use
@@ -47,7 +48,7 @@ The backend supports the common storage properties
`content`, `nodes`,
pool::
The ZFS pool/filesystem on the iSCSI target. All allocations are done
within that
-pool.
+pool or dataset. This can also be a nested dataset path, for example
`zroot/pve`.
portal::
@@ -55,11 +56,13 @@ iSCSI portal (IP or DNS name with optional port).
target::
-iSCSI target.
+iSCSI target. When using `ctld`, this target must already exist on the remote
+FreeBSD host.
iscsiprovider::
-The iSCSI target implementation used on the remote machine
+The iSCSI target implementation used on the remote machine. `ctld` uses the
+native FreeBSD CTL iSCSI target implementation.
comstar_tg::
@@ -86,6 +89,11 @@ sparse::
Use ZFS thin-provisioning. A sparse volume is a volume whose
reservation is not equal to the volume size.
+With FreeBSD `ctld`, configure the target itself on the remote host first,
+including any portal or authentication groups required by your deployment.
+{pve} then manages inline `lun N` entries below the configured target for the
+zvol-backed guest disks.
+
.Configuration Examples (`/etc/pve/storage.cfg`)
----
@@ -107,6 +115,15 @@ zfs: solaris
portal 192.0.2.112
content images
+zfs: freebsd-ctl
+ blocksize 4k
+ target iqn.2026-03.example:freebsd.pve
+ pool zroot/pve
+ iscsiprovider ctld
+ portal 192.0.2.113
+ content images
+ sparse 1
+
zfs: freebsd
blocksize 4k
target iqn.2007-09.jp.ne.peach.istgt:tank1
--
2.47.3
prev parent reply other threads:[~2026-04-06 4:41 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-06 4:38 [PATCH storage/manager/docs v2 0/3] " Микола Микола
2026-04-06 4:39 ` [PATCH storage v2 1/3] " Микола Микола
2026-04-06 4:40 ` [PATCH manager v2 2/3] " Микола Микола
2026-04-06 4:41 ` Микола Микола [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CADzCCsNzAbZDyV9Tkhm8B5etUvDhb-pHnbUt5jHud6pMp1y89g@mail.gmail.com \
--to=nikolaytihonov2022@gmail.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox