From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) by lore.proxmox.com (Postfix) with ESMTPS id A44721FF146 for ; Tue, 23 Jun 2026 12:33:35 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 833841FB56; Tue, 23 Jun 2026 12:33:34 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; t=1782067420; cv=none; d=google.com; s=arc-20240605; b=jHOk6XPJi4pgsQYda1X0LASu9Z4i13lU/4QHe8M8zTbNETgnE37C/yubJGLCQ/7KEo JJDqqqpIFVfc/EHhEL7y0fCfmA9dnQHFvJAOmeZWd5vN1DI85ZAGdHnFsYvIUzDxyF7I JZt09ZtLCvo0awtHgJWIRV6Ny0cvNXujJ/9eOtuEgEB/QLGKqftikHFxh1CaP9OxI9nF xmEhSRXvxmtsOODY1a9NBUQtRXM2Ur7SoiWA2JfY5jLZ57j269ULYMO2HcGqgsl2bAAs isoZFwWficZvhmLVAdN24MOUNYkM6vQ+NtoQpoPWREyJOmVhkE7sdNRXt0rqJEPI4w0Y wSxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:to:subject:message-id:date:from :mime-version:dkim-signature; bh=20MQ7uriVa2/BmjrsTYjO0CEwdSjYN7fWVqRGoh4pUI=; fh=qUdnlOw4HMavIAa4vJfUpEe/QUA6LBLHlg5B+iT7exQ=; b=h5odFVcMDUn6hbNrYZ1oNy4PrjHnpN1ty/UZziiVZM9LEmFn5T3xwwOwUrcVM7spSa 1akR4RlpZEidcOGfBma+D2gaWGoPTtjN9IbshydZfKTEpVtAs332VG2ILh1s0XZN7oQD PRfIlbrXYbOp/LrW1pXRievV0zosTIzNv++TE8xvmkQQpjgBtO4F4dOxIvGkAfNd/wgC OCjN+rcxVS0g8HzK1YSa5QOuVPnokjKd3GjnXYJTJpxKoHeDLyq0aKQvlvWhojlKE/51 zmtU/+ssqbMfbv7hnBFQ73G6CvOfCHotuwBlTZgJyS47DgakcuEQwOocoDnEP8EETxSi X49w==; darn=lists.proxmox.com ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1782067420; x=1782672220; darn=lists.proxmox.com; h=content-transfer-encoding:to:subject:message-id:date:from :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=20MQ7uriVa2/BmjrsTYjO0CEwdSjYN7fWVqRGoh4pUI=; b=IeSpsdc5+X+pqTEJaBcVXS3bRneuEJIhitVDLS3BEi45rSqpM+2kcw0Bgy12jbDwy+ LngqymE6gKfwB5RV+HMElqADptbOldDVyE600WD4Ih2aq76ynxXsT+UmnEHMGUYXu6Uh 4T54gktq/0d2Y465h5WYr1eP9nlbSL+xnanE7aet0L0Pe77ZF9tbHCCafsCCa2ZoMWyZ n4Vu8lL64OrHje13u3tCWRqvkvEvsb8v2fQ2JcTmdvWYIqhlt1VLg/kn6Aw+Re7Hb6go C1Eux58pzQbEcAS5OH+c3Oaps+xtm5Jgu7T13lUfYDPs12jev2Mve1g1kbbzlA14wNIa gW8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782067420; x=1782672220; h=content-transfer-encoding:to:subject:message-id:date:from :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=20MQ7uriVa2/BmjrsTYjO0CEwdSjYN7fWVqRGoh4pUI=; b=S7mtFdeJoBT7zL996dY5+8GYpoZv5jHXlsk8Tmr1jwn+BhAoS3GKtS0xcdzxuGmlJD A5AaezYGhIpU++gc1V13mzd/xBqK7XidUS8NGLcDiqnY33kaYpxMI1PsV4rVhvQFg16r QjqZTJAp0iZDJpyIky9UsjPQ0E0IUwznMdGOstcF53o5oCUEcIQ+ztYP/ka0h6kK6Hz2 owf6C8dB/GmQFoD0MbbN8JjEc65Q3Z0eTMAdymLUCx/FyQy6ptnpgynVR3feNllF7OB0 GvL4J8sg1inb6yhWG68MKzs32lCZ3hrHv5ryNByx7vTYRUkdhVn8d9LlT8rzlLN7s3Ip H1VA== X-Gm-Message-State: AOJu0YzU66HlT+1jUP5WAh8NaLWQhc/LiAkJNtZxXSeChoe9sIjp+6T5 PRdM7fV/5LLVYtUl6a741CROPCiGLoNX0l4jkh0us9UAcIY0+v/V5wr2oyXtCelfj1cJZ8hGS38 xyfs2GLeAhKleiZLQ4XfSt2qjVfIgNOtz+AiJJGM= X-Gm-Gg: AfdE7cnp+XsXInDljfGxQOYL+o65kmBEruKIMMu62p2E9AaY+p6uihUYStMm9RfHFXB phdNkXqk5Kjatg2XT52U9HoEArGYaGuzS8izJMmAlY6NH1dD7tWr3C4RUGPvG8yjCgsAZHZmwtu IQLEu748z+cMfZirXRn7xDZYWkev+T1OOtTPBm98O+P+mgBIu4wycTnwLSgv2reXhy9H1xr+Ml3 ZO5MDz792bvrg5MlPz8hEJvhNZ6HkVLtb1f3PuuLCl7AQEg7QfPHV7pByuCaXL8v8qvuxwpv6s= X-Received: by 2002:a05:6820:2220:b0:6a0:c6fa:59ee with SMTP id 006d021491bc7-6a0eb328b16mr5619455eaf.16.1782067420130; Sun, 21 Jun 2026 11:43:40 -0700 (PDT) MIME-Version: 1.0 From: Cyrus Date: Sun, 21 Jun 2026 15:43:27 -0300 X-Gm-Features: AVVi8CcXGLR7XgJTh0ZwcrvVBT-hjFN7A_Mj7VGV-q8JMHEhe0RIlb37XL9hFmo Message-ID: Subject: Hitachi Block Storage To: pve-devel@lists.proxmox.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-SPAM-LEVEL: Spam detection results: 0 BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain DMARC_PASS -0.1 DMARC pass policy FREEMAIL_FROM 0.001 Sender email is commonly abused enduser mail provider RCVD_IN_DNSWL_NONE -0.0001 Sender listed at https://www.dnswl.org/, no trust SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record X-MailFrom: cyruspy@gmail.com X-Mailman-Rule-Hits: nonmember-moderation X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation Message-ID-Hash: TBWOQXCINVJOAYXLKQJKNPTZLZGQEQ72 X-Message-ID-Hash: TBWOQXCINVJOAYXLKQJKNPTZLZGQEQ72 X-Mailman-Approved-At: Tue, 23 Jun 2026 12:33:36 +0200 X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox VE development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Hello!, Hope you're doing well. I'm scratching a long standing itch in the way traditional Storage systems are used with PVE, but I would like to make a stop and check and ask around in the devel makelist. I'm building a storage plugin to consume storage services from a Hitachi VSP E-series storage system via fiberchannel. I would like to achieve vSphere VVol like features and in that order of ideas I was wondering if a framework should be built instead: Option 1: any vendor could clone my plugin and adapt it to make it work with their brand/model of machine (no framework, just forking) Option 2: Build a vSphere VVol-like framework/plugin, which can accept different connectors implementing the specific API calls required per operation. Option 2 seems the more vendor-friendly way to go, but after reading https://pve.proxmox.com/wiki/Storage_Plugin_Development it seems it would be a framework within the framework (odd at least). I would like to read you feedback, I'm currently halfway to this scope with Option 1: * 1 LUN per virtual disk =E2=80=94 direct array volumes, no LVM layer. * Thin provisioning via Hitachi Dynamic Provisioning (DP) pools. * Snapshots =E2=80=94 array-offloaded Thin Image, per LDEV, with metadata tracked in a cluster-replicated registry. * Copy-on-write linked clones =E2=80=94 space-efficient Thin Image clones f= rom a base image or a snapshot; full copies are handled by Proxmox via the device path. * Online volume resize =E2=80=94 array expand + host-side multipath resize. * QoS =E2=80=94 per-LDEV upper/lower IOPS and throughput limits and I/O pri= ority. * Multipath-aware =E2=80=94 FC WWN discovery, ALUA device stanza, automatic WWID whitelisting (find_multipaths strict), and authoritative WWID from the array. * Active-node-only LUN mapping =E2=80=94 keeps per-host LUN counts low; liv= e migration remaps on the fly. * Management-plane controller redundancy =E2=80=94 mgmt_ip accepts multiple per-controller endpoints with automatic failover and re-authentication. * Storage migration =E2=80=94 Move Storage to/from file stores (hot/cold), plus volume_export/volume_import for offline cross-node / pvesm migration. * Disk reassignment (rename_volume), base/template images, orphan detection, and partial-failure rollback during provisioning. * Replication CLI (hitachiblock-repl) for TrueCopy, Universal Replicator, and Global-Active Device (GAD). Also, I don't see any hooks to expose in the web UI the plugin options, am I missing something? PS: I'm a happy Ceph user, but I believe this should be written :) Regards.