published on Sunday, Jul 5, 2026 by Daniel Muehlbachler-Pietrzykowski
published on Sunday, Jul 5, 2026 by Daniel Muehlbachler-Pietrzykowski
Experimental. Schema and behavior may change in future releases. Pin the provider version if stability matters.
Manages a Ceph pool on a Proxmox VE cluster.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as proxmoxve from "@muhlba91/pulumi-proxmoxve";
const example = new proxmoxve.ceph.Pool("example", {
nodeName: "pve",
name: "tank",
application: "rbd",
size: 3,
minSize: 2,
pgNum: 128,
pgAutoscaleMode: "warn",
});
import pulumi
import pulumi_proxmoxve as proxmoxve
example = proxmoxve.ceph.Pool("example",
node_name="pve",
name="tank",
application="rbd",
size=3,
min_size=2,
pg_num=128,
pg_autoscale_mode="warn")
package main
import (
"github.com/muhlba91/pulumi-proxmoxve/sdk/v8/go/proxmoxve/ceph"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := ceph.NewPool(ctx, "example", &ceph.PoolArgs{
NodeName: pulumi.String("pve"),
Name: pulumi.String("tank"),
Application: pulumi.String("rbd"),
Size: pulumi.Int(3),
MinSize: pulumi.Int(2),
PgNum: pulumi.Int(128),
PgAutoscaleMode: pulumi.String("warn"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using ProxmoxVE = Pulumi.ProxmoxVE;
return await Deployment.RunAsync(() =>
{
var example = new ProxmoxVE.Ceph.Pool("example", new()
{
NodeName = "pve",
Name = "tank",
Application = "rbd",
Size = 3,
MinSize = 2,
PgNum = 128,
PgAutoscaleMode = "warn",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import io.muehlbachler.pulumi.proxmoxve.ceph.Pool;
import io.muehlbachler.pulumi.proxmoxve.ceph.PoolArgs;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new Pool("example", PoolArgs.builder()
.nodeName("pve")
.name("tank")
.application("rbd")
.size(3)
.minSize(2)
.pgNum(128)
.pgAutoscaleMode("warn")
.build());
}
}
resources:
example:
type: proxmoxve:ceph:Pool
properties:
nodeName: pve
name: tank
application: rbd
size: 3
minSize: 2
pgNum: 128
pgAutoscaleMode: warn
pulumi {
required_providers {
proxmoxve = {
source = "pulumi/proxmoxve"
}
}
}
resource "proxmoxve_ceph_pool" "example" {
node_name = "pve"
name = "tank"
application = "rbd"
size = 3
min_size = 2
pg_num = 128
pg_autoscale_mode = "warn"
}
Create Pool Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Pool(name: string, args: PoolArgs, opts?: CustomResourceOptions);@overload
def Pool(resource_name: str,
args: PoolArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Pool(resource_name: str,
opts: Optional[ResourceOptions] = None,
node_name: Optional[str] = None,
pg_autoscale_mode: Optional[str] = None,
remove_ecprofile: Optional[bool] = None,
erasure_coding: Optional[str] = None,
force_destroy: Optional[bool] = None,
min_size: Optional[int] = None,
name: Optional[str] = None,
crush_rule: Optional[str] = None,
pg_num: Optional[int] = None,
application: Optional[str] = None,
pg_num_min: Optional[int] = None,
add_storages: Optional[bool] = None,
remove_storages: Optional[bool] = None,
size: Optional[int] = None,
target_size: Optional[str] = None,
target_size_ratio: Optional[float] = None)func NewPool(ctx *Context, name string, args PoolArgs, opts ...ResourceOption) (*Pool, error)public Pool(string name, PoolArgs args, CustomResourceOptions? opts = null)type: proxmoxve:ceph:Pool
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "proxmoxve_ceph_pool" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args PoolArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args PoolArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args PoolArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args PoolArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args PoolArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var poolResource = new ProxmoxVE.Ceph.Pool("poolResource", new()
{
NodeName = "string",
PgAutoscaleMode = "string",
RemoveEcprofile = false,
ErasureCoding = "string",
ForceDestroy = false,
MinSize = 0,
Name = "string",
CrushRule = "string",
PgNum = 0,
Application = "string",
PgNumMin = 0,
AddStorages = false,
RemoveStorages = false,
Size = 0,
TargetSize = "string",
TargetSizeRatio = 0,
});
example, err := ceph.NewPool(ctx, "poolResource", &ceph.PoolArgs{
NodeName: pulumi.String("string"),
PgAutoscaleMode: pulumi.String("string"),
RemoveEcprofile: pulumi.Bool(false),
ErasureCoding: pulumi.String("string"),
ForceDestroy: pulumi.Bool(false),
MinSize: pulumi.Int(0),
Name: pulumi.String("string"),
CrushRule: pulumi.String("string"),
PgNum: pulumi.Int(0),
Application: pulumi.String("string"),
PgNumMin: pulumi.Int(0),
AddStorages: pulumi.Bool(false),
RemoveStorages: pulumi.Bool(false),
Size: pulumi.Int(0),
TargetSize: pulumi.String("string"),
TargetSizeRatio: pulumi.Float64(0),
})
resource "proxmoxve_ceph_pool" "poolResource" {
node_name = "string"
pg_autoscale_mode = "string"
remove_ecprofile = false
erasure_coding = "string"
force_destroy = false
min_size = 0
name = "string"
crush_rule = "string"
pg_num = 0
application = "string"
pg_num_min = 0
add_storages = false
remove_storages = false
size = 0
target_size = "string"
target_size_ratio = 0
}
var poolResource = new Pool("poolResource", PoolArgs.builder()
.nodeName("string")
.pgAutoscaleMode("string")
.removeEcprofile(false)
.erasureCoding("string")
.forceDestroy(false)
.minSize(0)
.name("string")
.crushRule("string")
.pgNum(0)
.application("string")
.pgNumMin(0)
.addStorages(false)
.removeStorages(false)
.size(0)
.targetSize("string")
.targetSizeRatio(0.0)
.build());
pool_resource = proxmoxve.ceph.Pool("poolResource",
node_name="string",
pg_autoscale_mode="string",
remove_ecprofile=False,
erasure_coding="string",
force_destroy=False,
min_size=0,
name="string",
crush_rule="string",
pg_num=0,
application="string",
pg_num_min=0,
add_storages=False,
remove_storages=False,
size=0,
target_size="string",
target_size_ratio=float(0))
const poolResource = new proxmoxve.ceph.Pool("poolResource", {
nodeName: "string",
pgAutoscaleMode: "string",
removeEcprofile: false,
erasureCoding: "string",
forceDestroy: false,
minSize: 0,
name: "string",
crushRule: "string",
pgNum: 0,
application: "string",
pgNumMin: 0,
addStorages: false,
removeStorages: false,
size: 0,
targetSize: "string",
targetSizeRatio: 0,
});
type: proxmoxve:ceph:Pool
properties:
addStorages: false
application: string
crushRule: string
erasureCoding: string
forceDestroy: false
minSize: 0
name: string
nodeName: string
pgAutoscaleMode: string
pgNum: 0
pgNumMin: 0
removeEcprofile: false
removeStorages: false
size: 0
targetSize: string
targetSizeRatio: 0
Pool Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Pool resource accepts the following input properties:
- Node
Name string - The cluster node used to dispatch the API call. Any node running Ceph is acceptable; the pool itself is cluster-wide.
- Add
Storages bool - Configure VM and CT storage entries using the new pool. Applied at create time only; changing this value forces replacement.
- Application string
- The application using the pool. One of
rbd,cephfs,rgw. Defaults torbdserver-side. - Crush
Rule string - The CRUSH rule name used for object placement.
- Erasure
Coding string - Create an erasure coded pool. Specified as
k=<int>,m=<int>[,profile=name][,device-class=class][,failure-domain=domain](e.g.k=4,m=2). Cannot be changed after creation. - Force
Destroy bool - If true, destroy the pool even when in use. Passed as
force=1on delete. - Min
Size int - Minimum number of replicas per object.
- Name string
- The pool name. Must be unique within the Ceph cluster.
- Pg
Autoscale stringMode - PG autoscaler mode. One of
on,off,warn. - Pg
Num int - Number of placement groups.
- Pg
Num intMin - Minimum number of placement groups (used by the autoscaler).
- Remove
Ecprofile bool - If true, remove the erasure code profile on destroy. Defaults to true. Only relevant for EC pools.
- Remove
Storages bool - If true, remove all pveceph-managed storages configured for this pool on destroy.
- Size int
- Number of replicas per object.
- Target
Size string - Estimated target size for the PG autoscaler (e.g.
100G). Write-only: PVE returns this as a bytes integer (e.g.1073741824) while the input accepts a unit-suffixed string, so the configured spec is not round-tripped from the server. - Target
Size doubleRatio - Estimated target ratio for the PG autoscaler. Write-only: kept symmetric with
targetSize(which cannot be round-tripped), so the configured value is not refreshed from the server.
- Node
Name string - The cluster node used to dispatch the API call. Any node running Ceph is acceptable; the pool itself is cluster-wide.
- Add
Storages bool - Configure VM and CT storage entries using the new pool. Applied at create time only; changing this value forces replacement.
- Application string
- The application using the pool. One of
rbd,cephfs,rgw. Defaults torbdserver-side. - Crush
Rule string - The CRUSH rule name used for object placement.
- Erasure
Coding string - Create an erasure coded pool. Specified as
k=<int>,m=<int>[,profile=name][,device-class=class][,failure-domain=domain](e.g.k=4,m=2). Cannot be changed after creation. - Force
Destroy bool - If true, destroy the pool even when in use. Passed as
force=1on delete. - Min
Size int - Minimum number of replicas per object.
- Name string
- The pool name. Must be unique within the Ceph cluster.
- Pg
Autoscale stringMode - PG autoscaler mode. One of
on,off,warn. - Pg
Num int - Number of placement groups.
- Pg
Num intMin - Minimum number of placement groups (used by the autoscaler).
- Remove
Ecprofile bool - If true, remove the erasure code profile on destroy. Defaults to true. Only relevant for EC pools.
- Remove
Storages bool - If true, remove all pveceph-managed storages configured for this pool on destroy.
- Size int
- Number of replicas per object.
- Target
Size string - Estimated target size for the PG autoscaler (e.g.
100G). Write-only: PVE returns this as a bytes integer (e.g.1073741824) while the input accepts a unit-suffixed string, so the configured spec is not round-tripped from the server. - Target
Size float64Ratio - Estimated target ratio for the PG autoscaler. Write-only: kept symmetric with
targetSize(which cannot be round-tripped), so the configured value is not refreshed from the server.
- node_
name string - The cluster node used to dispatch the API call. Any node running Ceph is acceptable; the pool itself is cluster-wide.
- add_
storages bool - Configure VM and CT storage entries using the new pool. Applied at create time only; changing this value forces replacement.
- application string
- The application using the pool. One of
rbd,cephfs,rgw. Defaults torbdserver-side. - crush_
rule string - The CRUSH rule name used for object placement.
- erasure_
coding string - Create an erasure coded pool. Specified as
k=<int>,m=<int>[,profile=name][,device-class=class][,failure-domain=domain](e.g.k=4,m=2). Cannot be changed after creation. - force_
destroy bool - If true, destroy the pool even when in use. Passed as
force=1on delete. - min_
size number - Minimum number of replicas per object.
- name string
- The pool name. Must be unique within the Ceph cluster.
- pg_
autoscale_ stringmode - PG autoscaler mode. One of
on,off,warn. - pg_
num number - Number of placement groups.
- pg_
num_ numbermin - Minimum number of placement groups (used by the autoscaler).
- remove_
ecprofile bool - If true, remove the erasure code profile on destroy. Defaults to true. Only relevant for EC pools.
- remove_
storages bool - If true, remove all pveceph-managed storages configured for this pool on destroy.
- size number
- Number of replicas per object.
- target_
size string - Estimated target size for the PG autoscaler (e.g.
100G). Write-only: PVE returns this as a bytes integer (e.g.1073741824) while the input accepts a unit-suffixed string, so the configured spec is not round-tripped from the server. - target_
size_ numberratio - Estimated target ratio for the PG autoscaler. Write-only: kept symmetric with
targetSize(which cannot be round-tripped), so the configured value is not refreshed from the server.
- node
Name String - The cluster node used to dispatch the API call. Any node running Ceph is acceptable; the pool itself is cluster-wide.
- add
Storages Boolean - Configure VM and CT storage entries using the new pool. Applied at create time only; changing this value forces replacement.
- application String
- The application using the pool. One of
rbd,cephfs,rgw. Defaults torbdserver-side. - crush
Rule String - The CRUSH rule name used for object placement.
- erasure
Coding String - Create an erasure coded pool. Specified as
k=<int>,m=<int>[,profile=name][,device-class=class][,failure-domain=domain](e.g.k=4,m=2). Cannot be changed after creation. - force
Destroy Boolean - If true, destroy the pool even when in use. Passed as
force=1on delete. - min
Size Integer - Minimum number of replicas per object.
- name String
- The pool name. Must be unique within the Ceph cluster.
- pg
Autoscale StringMode - PG autoscaler mode. One of
on,off,warn. - pg
Num Integer - Number of placement groups.
- pg
Num IntegerMin - Minimum number of placement groups (used by the autoscaler).
- remove
Ecprofile Boolean - If true, remove the erasure code profile on destroy. Defaults to true. Only relevant for EC pools.
- remove
Storages Boolean - If true, remove all pveceph-managed storages configured for this pool on destroy.
- size Integer
- Number of replicas per object.
- target
Size String - Estimated target size for the PG autoscaler (e.g.
100G). Write-only: PVE returns this as a bytes integer (e.g.1073741824) while the input accepts a unit-suffixed string, so the configured spec is not round-tripped from the server. - target
Size DoubleRatio - Estimated target ratio for the PG autoscaler. Write-only: kept symmetric with
targetSize(which cannot be round-tripped), so the configured value is not refreshed from the server.
- node
Name string - The cluster node used to dispatch the API call. Any node running Ceph is acceptable; the pool itself is cluster-wide.
- add
Storages boolean - Configure VM and CT storage entries using the new pool. Applied at create time only; changing this value forces replacement.
- application string
- The application using the pool. One of
rbd,cephfs,rgw. Defaults torbdserver-side. - crush
Rule string - The CRUSH rule name used for object placement.
- erasure
Coding string - Create an erasure coded pool. Specified as
k=<int>,m=<int>[,profile=name][,device-class=class][,failure-domain=domain](e.g.k=4,m=2). Cannot be changed after creation. - force
Destroy boolean - If true, destroy the pool even when in use. Passed as
force=1on delete. - min
Size number - Minimum number of replicas per object.
- name string
- The pool name. Must be unique within the Ceph cluster.
- pg
Autoscale stringMode - PG autoscaler mode. One of
on,off,warn. - pg
Num number - Number of placement groups.
- pg
Num numberMin - Minimum number of placement groups (used by the autoscaler).
- remove
Ecprofile boolean - If true, remove the erasure code profile on destroy. Defaults to true. Only relevant for EC pools.
- remove
Storages boolean - If true, remove all pveceph-managed storages configured for this pool on destroy.
- size number
- Number of replicas per object.
- target
Size string - Estimated target size for the PG autoscaler (e.g.
100G). Write-only: PVE returns this as a bytes integer (e.g.1073741824) while the input accepts a unit-suffixed string, so the configured spec is not round-tripped from the server. - target
Size numberRatio - Estimated target ratio for the PG autoscaler. Write-only: kept symmetric with
targetSize(which cannot be round-tripped), so the configured value is not refreshed from the server.
- node_
name str - The cluster node used to dispatch the API call. Any node running Ceph is acceptable; the pool itself is cluster-wide.
- add_
storages bool - Configure VM and CT storage entries using the new pool. Applied at create time only; changing this value forces replacement.
- application str
- The application using the pool. One of
rbd,cephfs,rgw. Defaults torbdserver-side. - crush_
rule str - The CRUSH rule name used for object placement.
- erasure_
coding str - Create an erasure coded pool. Specified as
k=<int>,m=<int>[,profile=name][,device-class=class][,failure-domain=domain](e.g.k=4,m=2). Cannot be changed after creation. - force_
destroy bool - If true, destroy the pool even when in use. Passed as
force=1on delete. - min_
size int - Minimum number of replicas per object.
- name str
- The pool name. Must be unique within the Ceph cluster.
- pg_
autoscale_ strmode - PG autoscaler mode. One of
on,off,warn. - pg_
num int - Number of placement groups.
- pg_
num_ intmin - Minimum number of placement groups (used by the autoscaler).
- remove_
ecprofile bool - If true, remove the erasure code profile on destroy. Defaults to true. Only relevant for EC pools.
- remove_
storages bool - If true, remove all pveceph-managed storages configured for this pool on destroy.
- size int
- Number of replicas per object.
- target_
size str - Estimated target size for the PG autoscaler (e.g.
100G). Write-only: PVE returns this as a bytes integer (e.g.1073741824) while the input accepts a unit-suffixed string, so the configured spec is not round-tripped from the server. - target_
size_ floatratio - Estimated target ratio for the PG autoscaler. Write-only: kept symmetric with
targetSize(which cannot be round-tripped), so the configured value is not refreshed from the server.
- node
Name String - The cluster node used to dispatch the API call. Any node running Ceph is acceptable; the pool itself is cluster-wide.
- add
Storages Boolean - Configure VM and CT storage entries using the new pool. Applied at create time only; changing this value forces replacement.
- application String
- The application using the pool. One of
rbd,cephfs,rgw. Defaults torbdserver-side. - crush
Rule String - The CRUSH rule name used for object placement.
- erasure
Coding String - Create an erasure coded pool. Specified as
k=<int>,m=<int>[,profile=name][,device-class=class][,failure-domain=domain](e.g.k=4,m=2). Cannot be changed after creation. - force
Destroy Boolean - If true, destroy the pool even when in use. Passed as
force=1on delete. - min
Size Number - Minimum number of replicas per object.
- name String
- The pool name. Must be unique within the Ceph cluster.
- pg
Autoscale StringMode - PG autoscaler mode. One of
on,off,warn. - pg
Num Number - Number of placement groups.
- pg
Num NumberMin - Minimum number of placement groups (used by the autoscaler).
- remove
Ecprofile Boolean - If true, remove the erasure code profile on destroy. Defaults to true. Only relevant for EC pools.
- remove
Storages Boolean - If true, remove all pveceph-managed storages configured for this pool on destroy.
- size Number
- Number of replicas per object.
- target
Size String - Estimated target size for the PG autoscaler (e.g.
100G). Write-only: PVE returns this as a bytes integer (e.g.1073741824) while the input accepts a unit-suffixed string, so the configured spec is not round-tripped from the server. - target
Size NumberRatio - Estimated target ratio for the PG autoscaler. Write-only: kept symmetric with
targetSize(which cannot be round-tripped), so the configured value is not refreshed from the server.
Outputs
All input properties are implicitly available as output properties. Additionally, the Pool resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing Pool Resource
Get an existing Pool resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: PoolState, opts?: CustomResourceOptions): Pool@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
add_storages: Optional[bool] = None,
application: Optional[str] = None,
crush_rule: Optional[str] = None,
erasure_coding: Optional[str] = None,
force_destroy: Optional[bool] = None,
min_size: Optional[int] = None,
name: Optional[str] = None,
node_name: Optional[str] = None,
pg_autoscale_mode: Optional[str] = None,
pg_num: Optional[int] = None,
pg_num_min: Optional[int] = None,
remove_ecprofile: Optional[bool] = None,
remove_storages: Optional[bool] = None,
size: Optional[int] = None,
target_size: Optional[str] = None,
target_size_ratio: Optional[float] = None) -> Poolfunc GetPool(ctx *Context, name string, id IDInput, state *PoolState, opts ...ResourceOption) (*Pool, error)public static Pool Get(string name, Input<string> id, PoolState? state, CustomResourceOptions? opts = null)public static Pool get(String name, Output<String> id, PoolState state, CustomResourceOptions options)resources: _: type: proxmoxve:ceph:Pool get: id: ${id}import {
to = proxmoxve_ceph_pool.example
id = "${id}"
}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Add
Storages bool - Configure VM and CT storage entries using the new pool. Applied at create time only; changing this value forces replacement.
- Application string
- The application using the pool. One of
rbd,cephfs,rgw. Defaults torbdserver-side. - Crush
Rule string - The CRUSH rule name used for object placement.
- Erasure
Coding string - Create an erasure coded pool. Specified as
k=<int>,m=<int>[,profile=name][,device-class=class][,failure-domain=domain](e.g.k=4,m=2). Cannot be changed after creation. - Force
Destroy bool - If true, destroy the pool even when in use. Passed as
force=1on delete. - Min
Size int - Minimum number of replicas per object.
- Name string
- The pool name. Must be unique within the Ceph cluster.
- Node
Name string - The cluster node used to dispatch the API call. Any node running Ceph is acceptable; the pool itself is cluster-wide.
- Pg
Autoscale stringMode - PG autoscaler mode. One of
on,off,warn. - Pg
Num int - Number of placement groups.
- Pg
Num intMin - Minimum number of placement groups (used by the autoscaler).
- Remove
Ecprofile bool - If true, remove the erasure code profile on destroy. Defaults to true. Only relevant for EC pools.
- Remove
Storages bool - If true, remove all pveceph-managed storages configured for this pool on destroy.
- Size int
- Number of replicas per object.
- Target
Size string - Estimated target size for the PG autoscaler (e.g.
100G). Write-only: PVE returns this as a bytes integer (e.g.1073741824) while the input accepts a unit-suffixed string, so the configured spec is not round-tripped from the server. - Target
Size doubleRatio - Estimated target ratio for the PG autoscaler. Write-only: kept symmetric with
targetSize(which cannot be round-tripped), so the configured value is not refreshed from the server.
- Add
Storages bool - Configure VM and CT storage entries using the new pool. Applied at create time only; changing this value forces replacement.
- Application string
- The application using the pool. One of
rbd,cephfs,rgw. Defaults torbdserver-side. - Crush
Rule string - The CRUSH rule name used for object placement.
- Erasure
Coding string - Create an erasure coded pool. Specified as
k=<int>,m=<int>[,profile=name][,device-class=class][,failure-domain=domain](e.g.k=4,m=2). Cannot be changed after creation. - Force
Destroy bool - If true, destroy the pool even when in use. Passed as
force=1on delete. - Min
Size int - Minimum number of replicas per object.
- Name string
- The pool name. Must be unique within the Ceph cluster.
- Node
Name string - The cluster node used to dispatch the API call. Any node running Ceph is acceptable; the pool itself is cluster-wide.
- Pg
Autoscale stringMode - PG autoscaler mode. One of
on,off,warn. - Pg
Num int - Number of placement groups.
- Pg
Num intMin - Minimum number of placement groups (used by the autoscaler).
- Remove
Ecprofile bool - If true, remove the erasure code profile on destroy. Defaults to true. Only relevant for EC pools.
- Remove
Storages bool - If true, remove all pveceph-managed storages configured for this pool on destroy.
- Size int
- Number of replicas per object.
- Target
Size string - Estimated target size for the PG autoscaler (e.g.
100G). Write-only: PVE returns this as a bytes integer (e.g.1073741824) while the input accepts a unit-suffixed string, so the configured spec is not round-tripped from the server. - Target
Size float64Ratio - Estimated target ratio for the PG autoscaler. Write-only: kept symmetric with
targetSize(which cannot be round-tripped), so the configured value is not refreshed from the server.
- add_
storages bool - Configure VM and CT storage entries using the new pool. Applied at create time only; changing this value forces replacement.
- application string
- The application using the pool. One of
rbd,cephfs,rgw. Defaults torbdserver-side. - crush_
rule string - The CRUSH rule name used for object placement.
- erasure_
coding string - Create an erasure coded pool. Specified as
k=<int>,m=<int>[,profile=name][,device-class=class][,failure-domain=domain](e.g.k=4,m=2). Cannot be changed after creation. - force_
destroy bool - If true, destroy the pool even when in use. Passed as
force=1on delete. - min_
size number - Minimum number of replicas per object.
- name string
- The pool name. Must be unique within the Ceph cluster.
- node_
name string - The cluster node used to dispatch the API call. Any node running Ceph is acceptable; the pool itself is cluster-wide.
- pg_
autoscale_ stringmode - PG autoscaler mode. One of
on,off,warn. - pg_
num number - Number of placement groups.
- pg_
num_ numbermin - Minimum number of placement groups (used by the autoscaler).
- remove_
ecprofile bool - If true, remove the erasure code profile on destroy. Defaults to true. Only relevant for EC pools.
- remove_
storages bool - If true, remove all pveceph-managed storages configured for this pool on destroy.
- size number
- Number of replicas per object.
- target_
size string - Estimated target size for the PG autoscaler (e.g.
100G). Write-only: PVE returns this as a bytes integer (e.g.1073741824) while the input accepts a unit-suffixed string, so the configured spec is not round-tripped from the server. - target_
size_ numberratio - Estimated target ratio for the PG autoscaler. Write-only: kept symmetric with
targetSize(which cannot be round-tripped), so the configured value is not refreshed from the server.
- add
Storages Boolean - Configure VM and CT storage entries using the new pool. Applied at create time only; changing this value forces replacement.
- application String
- The application using the pool. One of
rbd,cephfs,rgw. Defaults torbdserver-side. - crush
Rule String - The CRUSH rule name used for object placement.
- erasure
Coding String - Create an erasure coded pool. Specified as
k=<int>,m=<int>[,profile=name][,device-class=class][,failure-domain=domain](e.g.k=4,m=2). Cannot be changed after creation. - force
Destroy Boolean - If true, destroy the pool even when in use. Passed as
force=1on delete. - min
Size Integer - Minimum number of replicas per object.
- name String
- The pool name. Must be unique within the Ceph cluster.
- node
Name String - The cluster node used to dispatch the API call. Any node running Ceph is acceptable; the pool itself is cluster-wide.
- pg
Autoscale StringMode - PG autoscaler mode. One of
on,off,warn. - pg
Num Integer - Number of placement groups.
- pg
Num IntegerMin - Minimum number of placement groups (used by the autoscaler).
- remove
Ecprofile Boolean - If true, remove the erasure code profile on destroy. Defaults to true. Only relevant for EC pools.
- remove
Storages Boolean - If true, remove all pveceph-managed storages configured for this pool on destroy.
- size Integer
- Number of replicas per object.
- target
Size String - Estimated target size for the PG autoscaler (e.g.
100G). Write-only: PVE returns this as a bytes integer (e.g.1073741824) while the input accepts a unit-suffixed string, so the configured spec is not round-tripped from the server. - target
Size DoubleRatio - Estimated target ratio for the PG autoscaler. Write-only: kept symmetric with
targetSize(which cannot be round-tripped), so the configured value is not refreshed from the server.
- add
Storages boolean - Configure VM and CT storage entries using the new pool. Applied at create time only; changing this value forces replacement.
- application string
- The application using the pool. One of
rbd,cephfs,rgw. Defaults torbdserver-side. - crush
Rule string - The CRUSH rule name used for object placement.
- erasure
Coding string - Create an erasure coded pool. Specified as
k=<int>,m=<int>[,profile=name][,device-class=class][,failure-domain=domain](e.g.k=4,m=2). Cannot be changed after creation. - force
Destroy boolean - If true, destroy the pool even when in use. Passed as
force=1on delete. - min
Size number - Minimum number of replicas per object.
- name string
- The pool name. Must be unique within the Ceph cluster.
- node
Name string - The cluster node used to dispatch the API call. Any node running Ceph is acceptable; the pool itself is cluster-wide.
- pg
Autoscale stringMode - PG autoscaler mode. One of
on,off,warn. - pg
Num number - Number of placement groups.
- pg
Num numberMin - Minimum number of placement groups (used by the autoscaler).
- remove
Ecprofile boolean - If true, remove the erasure code profile on destroy. Defaults to true. Only relevant for EC pools.
- remove
Storages boolean - If true, remove all pveceph-managed storages configured for this pool on destroy.
- size number
- Number of replicas per object.
- target
Size string - Estimated target size for the PG autoscaler (e.g.
100G). Write-only: PVE returns this as a bytes integer (e.g.1073741824) while the input accepts a unit-suffixed string, so the configured spec is not round-tripped from the server. - target
Size numberRatio - Estimated target ratio for the PG autoscaler. Write-only: kept symmetric with
targetSize(which cannot be round-tripped), so the configured value is not refreshed from the server.
- add_
storages bool - Configure VM and CT storage entries using the new pool. Applied at create time only; changing this value forces replacement.
- application str
- The application using the pool. One of
rbd,cephfs,rgw. Defaults torbdserver-side. - crush_
rule str - The CRUSH rule name used for object placement.
- erasure_
coding str - Create an erasure coded pool. Specified as
k=<int>,m=<int>[,profile=name][,device-class=class][,failure-domain=domain](e.g.k=4,m=2). Cannot be changed after creation. - force_
destroy bool - If true, destroy the pool even when in use. Passed as
force=1on delete. - min_
size int - Minimum number of replicas per object.
- name str
- The pool name. Must be unique within the Ceph cluster.
- node_
name str - The cluster node used to dispatch the API call. Any node running Ceph is acceptable; the pool itself is cluster-wide.
- pg_
autoscale_ strmode - PG autoscaler mode. One of
on,off,warn. - pg_
num int - Number of placement groups.
- pg_
num_ intmin - Minimum number of placement groups (used by the autoscaler).
- remove_
ecprofile bool - If true, remove the erasure code profile on destroy. Defaults to true. Only relevant for EC pools.
- remove_
storages bool - If true, remove all pveceph-managed storages configured for this pool on destroy.
- size int
- Number of replicas per object.
- target_
size str - Estimated target size for the PG autoscaler (e.g.
100G). Write-only: PVE returns this as a bytes integer (e.g.1073741824) while the input accepts a unit-suffixed string, so the configured spec is not round-tripped from the server. - target_
size_ floatratio - Estimated target ratio for the PG autoscaler. Write-only: kept symmetric with
targetSize(which cannot be round-tripped), so the configured value is not refreshed from the server.
- add
Storages Boolean - Configure VM and CT storage entries using the new pool. Applied at create time only; changing this value forces replacement.
- application String
- The application using the pool. One of
rbd,cephfs,rgw. Defaults torbdserver-side. - crush
Rule String - The CRUSH rule name used for object placement.
- erasure
Coding String - Create an erasure coded pool. Specified as
k=<int>,m=<int>[,profile=name][,device-class=class][,failure-domain=domain](e.g.k=4,m=2). Cannot be changed after creation. - force
Destroy Boolean - If true, destroy the pool even when in use. Passed as
force=1on delete. - min
Size Number - Minimum number of replicas per object.
- name String
- The pool name. Must be unique within the Ceph cluster.
- node
Name String - The cluster node used to dispatch the API call. Any node running Ceph is acceptable; the pool itself is cluster-wide.
- pg
Autoscale StringMode - PG autoscaler mode. One of
on,off,warn. - pg
Num Number - Number of placement groups.
- pg
Num NumberMin - Minimum number of placement groups (used by the autoscaler).
- remove
Ecprofile Boolean - If true, remove the erasure code profile on destroy. Defaults to true. Only relevant for EC pools.
- remove
Storages Boolean - If true, remove all pveceph-managed storages configured for this pool on destroy.
- size Number
- Number of replicas per object.
- target
Size String - Estimated target size for the PG autoscaler (e.g.
100G). Write-only: PVE returns this as a bytes integer (e.g.1073741824) while the input accepts a unit-suffixed string, so the configured spec is not round-tripped from the server. - target
Size NumberRatio - Estimated target ratio for the PG autoscaler. Write-only: kept symmetric with
targetSize(which cannot be round-tripped), so the configured value is not refreshed from the server.
Import
!/usr/bin/env sh
Ceph pools can be imported using the format node_name/pool_name, e.g.:
$ pulumi import proxmoxve:ceph/pool:Pool example pve/tank
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- proxmoxve muhlba91/pulumi-proxmoxve
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
proxmoxTerraform Provider.
published on Sunday, Jul 5, 2026 by Daniel Muehlbachler-Pietrzykowski