storageconfig

package
v0.1.17 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 19, 2026 License: MIT Imports: 5 Imported by: 0

Documentation

Overview

Package storageconfig holds the Go bindings for the unbounded-storage daemon configuration schema. The schema source of truth is config.proto in this directory; both these Go bindings and the daemon's Rust (prost) bindings are generated from it, so the on-disk protobuf wire format is shared across the supervisor (writer) and the daemon (reader).

Index

Constants

This section is empty.

Variables

View Source
var (
	DiskKind_name = map[int32]string{
		0: "DISK_KIND_NVME",
		1: "DISK_KIND_BLOCK",
		2: "DISK_KIND_FILE",
	}
	DiskKind_value = map[string]int32{
		"DISK_KIND_NVME":  0,
		"DISK_KIND_BLOCK": 1,
		"DISK_KIND_FILE":  2,
	}
)

Enum value maps for DiskKind.

View Source
var (
	BackendKind_name = map[int32]string{
		0: "BACKEND_KIND_HTTP",
		1: "BACKEND_KIND_S3",
		2: "BACKEND_KIND_AZURE",
	}
	BackendKind_value = map[string]int32{
		"BACKEND_KIND_HTTP":  0,
		"BACKEND_KIND_S3":    1,
		"BACKEND_KIND_AZURE": 2,
	}
)

Enum value maps for BackendKind.

View Source
var (
	FrontendKind_name = map[int32]string{
		0: "FRONTEND_KIND_HTTP",
		1: "FRONTEND_KIND_S3",
	}
	FrontendKind_value = map[string]int32{
		"FRONTEND_KIND_HTTP": 0,
		"FRONTEND_KIND_S3":   1,
	}
)

Enum value maps for FrontendKind.

View Source
var File_config_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type BackendKind

type BackendKind int32
const (
	BackendKind_BACKEND_KIND_HTTP  BackendKind = 0
	BackendKind_BACKEND_KIND_S3    BackendKind = 1
	BackendKind_BACKEND_KIND_AZURE BackendKind = 2
)

func (BackendKind) Descriptor

func (BackendKind) Enum

func (x BackendKind) Enum() *BackendKind

func (BackendKind) EnumDescriptor deprecated

func (BackendKind) EnumDescriptor() ([]byte, []int)

Deprecated: Use BackendKind.Descriptor instead.

func (BackendKind) Number

func (x BackendKind) Number() protoreflect.EnumNumber

func (BackendKind) String

func (x BackendKind) String() string

func (BackendKind) Type

type BackendSpec

type BackendSpec struct {
	Id              string      `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Kind            BackendKind `protobuf:"varint,2,opt,name=kind,proto3,enum=unbounded.storage.config.BackendKind" json:"kind,omitempty"`
	Endpoint        string      `protobuf:"bytes,3,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
	StripeSizeBytes uint64      `protobuf:"varint,4,opt,name=stripe_size_bytes,json=stripeSizeBytes,proto3" json:"stripe_size_bytes,omitempty"`
	HttpConcurrency uint32      `protobuf:"varint,5,opt,name=http_concurrency,json=httpConcurrency,proto3" json:"http_concurrency,omitempty"`
	Bucket          *string     `protobuf:"bytes,6,opt,name=bucket,proto3,oneof" json:"bucket,omitempty"`
	// contains filtered or unexported fields
}

func (*BackendSpec) Descriptor deprecated

func (*BackendSpec) Descriptor() ([]byte, []int)

Deprecated: Use BackendSpec.ProtoReflect.Descriptor instead.

func (*BackendSpec) GetBucket

func (x *BackendSpec) GetBucket() string

func (*BackendSpec) GetEndpoint

func (x *BackendSpec) GetEndpoint() string

func (*BackendSpec) GetHttpConcurrency

func (x *BackendSpec) GetHttpConcurrency() uint32

func (*BackendSpec) GetId

func (x *BackendSpec) GetId() string

func (*BackendSpec) GetKind

func (x *BackendSpec) GetKind() BackendKind

func (*BackendSpec) GetStripeSizeBytes

func (x *BackendSpec) GetStripeSizeBytes() uint64

func (*BackendSpec) ProtoMessage

func (*BackendSpec) ProtoMessage()

func (*BackendSpec) ProtoReflect

func (x *BackendSpec) ProtoReflect() protoreflect.Message

func (*BackendSpec) Reset

func (x *BackendSpec) Reset()

func (*BackendSpec) String

func (x *BackendSpec) String() string

type Config

type Config struct {

	// Operator-assigned configuration version. The daemon treats it as an
	// opaque counter: it never drives behavior, but it is tracked as the
	// latest-known and latest-applied config versions so operators can
	// confirm a pushed config has been realized across the process. The
	// proto3 zero value (0) means "unversioned".
	Version   uint64          `protobuf:"varint,6,opt,name=version,proto3" json:"version,omitempty"`
	P2P       *P2PCfg         `protobuf:"bytes,1,opt,name=p2p,proto3" json:"p2p,omitempty"`
	Peers     []*PeerSpec     `protobuf:"bytes,2,rep,name=peers,proto3" json:"peers,omitempty"`
	Disks     []*DiskSpec     `protobuf:"bytes,3,rep,name=disks,proto3" json:"disks,omitempty"`
	Backends  []*BackendSpec  `protobuf:"bytes,4,rep,name=backends,proto3" json:"backends,omitempty"`
	Frontends []*FrontendSpec `protobuf:"bytes,5,rep,name=frontends,proto3" json:"frontends,omitempty"`
	// Startup-fixed settings (memory backing, fabric endpoint/threads, CPU
	// topology placement). Unlike the rest of the config these cannot be
	// hot-reloaded: they are read exactly once when the process starts and
	// changing them requires a restart. They are deliberately excluded from
	// ConfigDiff; operators observe which config version's startup settings
	// are realized via the separately tracked "startup" config version.
	Startup *StartupCfg `protobuf:"bytes,7,opt,name=startup,proto3" json:"startup,omitempty"`
	// contains filtered or unexported fields
}

func (*Config) Descriptor deprecated

func (*Config) Descriptor() ([]byte, []int)

Deprecated: Use Config.ProtoReflect.Descriptor instead.

func (*Config) GetBackends

func (x *Config) GetBackends() []*BackendSpec

func (*Config) GetDisks

func (x *Config) GetDisks() []*DiskSpec

func (*Config) GetFrontends

func (x *Config) GetFrontends() []*FrontendSpec

func (*Config) GetP2P

func (x *Config) GetP2P() *P2PCfg

func (*Config) GetPeers

func (x *Config) GetPeers() []*PeerSpec

func (*Config) GetStartup

func (x *Config) GetStartup() *StartupCfg

func (*Config) GetVersion

func (x *Config) GetVersion() uint64

func (*Config) ProtoMessage

func (*Config) ProtoMessage()

func (*Config) ProtoReflect

func (x *Config) ProtoReflect() protoreflect.Message

func (*Config) Reset

func (x *Config) Reset()

func (*Config) String

func (x *Config) String() string

type DiskKind

type DiskKind int32
const (
	DiskKind_DISK_KIND_NVME  DiskKind = 0
	DiskKind_DISK_KIND_BLOCK DiskKind = 1
	DiskKind_DISK_KIND_FILE  DiskKind = 2
)

func (DiskKind) Descriptor

func (DiskKind) Descriptor() protoreflect.EnumDescriptor

func (DiskKind) Enum

func (x DiskKind) Enum() *DiskKind

func (DiskKind) EnumDescriptor deprecated

func (DiskKind) EnumDescriptor() ([]byte, []int)

Deprecated: Use DiskKind.Descriptor instead.

func (DiskKind) Number

func (x DiskKind) Number() protoreflect.EnumNumber

func (DiskKind) String

func (x DiskKind) String() string

func (DiskKind) Type

type DiskSpec

type DiskSpec struct {
	Path                     string   `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	Kind                     DiskKind `protobuf:"varint,2,opt,name=kind,proto3,enum=unbounded.storage.config.DiskKind" json:"kind,omitempty"`
	Size                     *uint64  `protobuf:"varint,3,opt,name=size,proto3,oneof" json:"size,omitempty"`
	Numa                     *uint32  `protobuf:"varint,4,opt,name=numa,proto3,oneof" json:"numa,omitempty"`
	QueueDepth               *uint32  `protobuf:"varint,5,opt,name=queue_depth,json=queueDepth,proto3,oneof" json:"queue_depth,omitempty"`
	PageSizeBytes            *uint64  `protobuf:"varint,6,opt,name=page_size_bytes,json=pageSizeBytes,proto3,oneof" json:"page_size_bytes,omitempty"`
	BypassAdmission          bool     `protobuf:"varint,7,opt,name=bypass_admission,json=bypassAdmission,proto3" json:"bypass_admission,omitempty"`
	SkipRecoveryScanIfNoMeta bool     `` /* 142-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*DiskSpec) Descriptor deprecated

func (*DiskSpec) Descriptor() ([]byte, []int)

Deprecated: Use DiskSpec.ProtoReflect.Descriptor instead.

func (*DiskSpec) GetBypassAdmission

func (x *DiskSpec) GetBypassAdmission() bool

func (*DiskSpec) GetKind

func (x *DiskSpec) GetKind() DiskKind

func (*DiskSpec) GetNuma

func (x *DiskSpec) GetNuma() uint32

func (*DiskSpec) GetPageSizeBytes

func (x *DiskSpec) GetPageSizeBytes() uint64

func (*DiskSpec) GetPath

func (x *DiskSpec) GetPath() string

func (*DiskSpec) GetQueueDepth

func (x *DiskSpec) GetQueueDepth() uint32

func (*DiskSpec) GetSize

func (x *DiskSpec) GetSize() uint64

func (*DiskSpec) GetSkipRecoveryScanIfNoMeta

func (x *DiskSpec) GetSkipRecoveryScanIfNoMeta() bool

func (*DiskSpec) ProtoMessage

func (*DiskSpec) ProtoMessage()

func (*DiskSpec) ProtoReflect

func (x *DiskSpec) ProtoReflect() protoreflect.Message

func (*DiskSpec) Reset

func (x *DiskSpec) Reset()

func (*DiskSpec) String

func (x *DiskSpec) String() string

type FabricAddress

type FabricAddress struct {

	// Numeric IP socket address usable by libfabric/RDMA CM, e.g.
	// "10.0.0.1:9000". On InfiniBand this is usually an IPoIB address;
	// on tcp fallback it is a normal TCP socket address.
	Socket string `protobuf:"bytes,1,opt,name=socket,proto3" json:"socket,omitempty"`
	// Provider-native escape hatch for RDMA deployments without socket
	// addressing. Currently encoded as "hex:<fi_getname-bytes>" so a
	// controller can publish the raw provider address when needed.
	Native string `protobuf:"bytes,2,opt,name=native,proto3" json:"native,omitempty"`
	// contains filtered or unexported fields
}

func (*FabricAddress) Descriptor deprecated

func (*FabricAddress) Descriptor() ([]byte, []int)

Deprecated: Use FabricAddress.ProtoReflect.Descriptor instead.

func (*FabricAddress) GetNative

func (x *FabricAddress) GetNative() string

func (*FabricAddress) GetSocket

func (x *FabricAddress) GetSocket() string

func (*FabricAddress) ProtoMessage

func (*FabricAddress) ProtoMessage()

func (*FabricAddress) ProtoReflect

func (x *FabricAddress) ProtoReflect() protoreflect.Message

func (*FabricAddress) Reset

func (x *FabricAddress) Reset()

func (*FabricAddress) String

func (x *FabricAddress) String() string

type FabricCfg

type FabricCfg struct {

	// Per-shard fabric listen address. "" -> "0.0.0.0:0" (":0" picks a free
	// port).
	ListenAddr string `protobuf:"bytes,1,opt,name=listen_addr,json=listenAddr,proto3" json:"listen_addr,omitempty"`
	// libfabric progress threads per shard. 0 -> 2.
	ProgressThreads uint32 `protobuf:"varint,2,opt,name=progress_threads,json=progressThreads,proto3" json:"progress_threads,omitempty"`
	// Progress-thread busy-poll budget in microseconds. 0 -> 10.
	ProgressPollUs uint32 `protobuf:"varint,3,opt,name=progress_poll_us,json=progressPollUs,proto3" json:"progress_poll_us,omitempty"`
	// Fabric RPC worker threads per shard. 0 -> 4.
	RpcWorkerThreads uint32 `protobuf:"varint,4,opt,name=rpc_worker_threads,json=rpcWorkerThreads,proto3" json:"rpc_worker_threads,omitempty"`
	// Max in-flight fabric operations per shard (back-pressure limit that
	// sizes the completion registry and server-side request cap). 0 -> 1024.
	MaxInflight uint32 `protobuf:"varint,5,opt,name=max_inflight,json=maxInflight,proto3" json:"max_inflight,omitempty"`
	// contains filtered or unexported fields
}

func (*FabricCfg) Descriptor deprecated

func (*FabricCfg) Descriptor() ([]byte, []int)

Deprecated: Use FabricCfg.ProtoReflect.Descriptor instead.

func (*FabricCfg) GetListenAddr

func (x *FabricCfg) GetListenAddr() string

func (*FabricCfg) GetMaxInflight

func (x *FabricCfg) GetMaxInflight() uint32

func (*FabricCfg) GetProgressPollUs

func (x *FabricCfg) GetProgressPollUs() uint32

func (*FabricCfg) GetProgressThreads

func (x *FabricCfg) GetProgressThreads() uint32

func (*FabricCfg) GetRpcWorkerThreads

func (x *FabricCfg) GetRpcWorkerThreads() uint32

func (*FabricCfg) ProtoMessage

func (*FabricCfg) ProtoMessage()

func (*FabricCfg) ProtoReflect

func (x *FabricCfg) ProtoReflect() protoreflect.Message

func (*FabricCfg) Reset

func (x *FabricCfg) Reset()

func (*FabricCfg) String

func (x *FabricCfg) String() string

type FrontendKind

type FrontendKind int32
const (
	FrontendKind_FRONTEND_KIND_HTTP FrontendKind = 0
	FrontendKind_FRONTEND_KIND_S3   FrontendKind = 1
)

func (FrontendKind) Descriptor

func (FrontendKind) Enum

func (x FrontendKind) Enum() *FrontendKind

func (FrontendKind) EnumDescriptor deprecated

func (FrontendKind) EnumDescriptor() ([]byte, []int)

Deprecated: Use FrontendKind.Descriptor instead.

func (FrontendKind) Number

func (FrontendKind) String

func (x FrontendKind) String() string

func (FrontendKind) Type

type FrontendSpec

type FrontendSpec struct {
	Id      string       `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Kind    FrontendKind `protobuf:"varint,2,opt,name=kind,proto3,enum=unbounded.storage.config.FrontendKind" json:"kind,omitempty"`
	Bind    string       `protobuf:"bytes,3,opt,name=bind,proto3" json:"bind,omitempty"`
	Backend string       `protobuf:"bytes,4,opt,name=backend,proto3" json:"backend,omitempty"`
	// contains filtered or unexported fields
}

func (*FrontendSpec) Descriptor deprecated

func (*FrontendSpec) Descriptor() ([]byte, []int)

Deprecated: Use FrontendSpec.ProtoReflect.Descriptor instead.

func (*FrontendSpec) GetBackend

func (x *FrontendSpec) GetBackend() string

func (*FrontendSpec) GetBind

func (x *FrontendSpec) GetBind() string

func (*FrontendSpec) GetId

func (x *FrontendSpec) GetId() string

func (*FrontendSpec) GetKind

func (x *FrontendSpec) GetKind() FrontendKind

func (*FrontendSpec) ProtoMessage

func (*FrontendSpec) ProtoMessage()

func (*FrontendSpec) ProtoReflect

func (x *FrontendSpec) ProtoReflect() protoreflect.Message

func (*FrontendSpec) Reset

func (x *FrontendSpec) Reset()

func (*FrontendSpec) String

func (x *FrontendSpec) String() string

type MemoryCfg

type MemoryCfg struct {

	// Allocate per-shard backing from the heap instead of 2 MiB hugepages.
	NoHugepages bool `protobuf:"varint,1,opt,name=no_hugepages,json=noHugepages,proto3" json:"no_hugepages,omitempty"`
	// Total backing pool across all serving shards, in bytes. Each serving
	// shard is allocated `memory_total_bytes / serving_shard_count`,
	// NUMA-local, so the host footprint stays fixed regardless of the
	// auto-scaled serving-core count. 0 -> 128 MiB.
	MemoryTotalBytes uint64 `protobuf:"varint,2,opt,name=memory_total_bytes,json=memoryTotalBytes,proto3" json:"memory_total_bytes,omitempty"`
	// contains filtered or unexported fields
}

func (*MemoryCfg) Descriptor deprecated

func (*MemoryCfg) Descriptor() ([]byte, []int)

Deprecated: Use MemoryCfg.ProtoReflect.Descriptor instead.

func (*MemoryCfg) GetMemoryTotalBytes

func (x *MemoryCfg) GetMemoryTotalBytes() uint64

func (*MemoryCfg) GetNoHugepages

func (x *MemoryCfg) GetNoHugepages() bool

func (*MemoryCfg) ProtoMessage

func (*MemoryCfg) ProtoMessage()

func (*MemoryCfg) ProtoReflect

func (x *MemoryCfg) ProtoReflect() protoreflect.Message

func (*MemoryCfg) Reset

func (x *MemoryCfg) Reset()

func (*MemoryCfg) String

func (x *MemoryCfg) String() string

type MetricsCfg

type MetricsCfg struct {

	// Listen address for the Prometheus metrics exporter (e.g.
	// "0.0.0.0:9100"). "" -> exporter disabled.
	Bind string `protobuf:"bytes,1,opt,name=bind,proto3" json:"bind,omitempty"`
	// contains filtered or unexported fields
}

func (*MetricsCfg) Descriptor deprecated

func (*MetricsCfg) Descriptor() ([]byte, []int)

Deprecated: Use MetricsCfg.ProtoReflect.Descriptor instead.

func (*MetricsCfg) GetBind

func (x *MetricsCfg) GetBind() string

func (*MetricsCfg) ProtoMessage

func (*MetricsCfg) ProtoMessage()

func (*MetricsCfg) ProtoReflect

func (x *MetricsCfg) ProtoReflect() protoreflect.Message

func (*MetricsCfg) Reset

func (x *MetricsCfg) Reset()

func (*MetricsCfg) String

func (x *MetricsCfg) String() string

type P2PCfg

type P2PCfg struct {
	FingersPerNode uint32   `protobuf:"varint,1,opt,name=fingers_per_node,json=fingersPerNode,proto3" json:"fingers_per_node,omitempty"`
	LocalNodeId    *uint64  `protobuf:"varint,2,opt,name=local_node_id,json=localNodeId,proto3,oneof" json:"local_node_id,omitempty"`
	LocalLabels    []string `protobuf:"bytes,3,rep,name=local_labels,json=localLabels,proto3" json:"local_labels,omitempty"`
	// When set, the daemon uses this precomputed routing table verbatim
	// instead of deriving fingers from the full peer set. This is the
	// "disjoint discovery" mode: a global-view planner selects each
	// node's neighbors and ships them here, so a node only needs to know
	// (and connect to) its direct routing neighbors. When unset, the
	// daemon falls back to building the finger table from `peers` using
	// `fingers_per_node`.
	RoutingPlan *RoutingPlan `protobuf:"bytes,4,opt,name=routing_plan,json=routingPlan,proto3,oneof" json:"routing_plan,omitempty"`
	// contains filtered or unexported fields
}

func (*P2PCfg) Descriptor deprecated

func (*P2PCfg) Descriptor() ([]byte, []int)

Deprecated: Use P2PCfg.ProtoReflect.Descriptor instead.

func (*P2PCfg) GetFingersPerNode

func (x *P2PCfg) GetFingersPerNode() uint32

func (*P2PCfg) GetLocalLabels

func (x *P2PCfg) GetLocalLabels() []string

func (*P2PCfg) GetLocalNodeId

func (x *P2PCfg) GetLocalNodeId() uint64

func (*P2PCfg) GetRoutingPlan

func (x *P2PCfg) GetRoutingPlan() *RoutingPlan

func (*P2PCfg) ProtoMessage

func (*P2PCfg) ProtoMessage()

func (*P2PCfg) ProtoReflect

func (x *P2PCfg) ProtoReflect() protoreflect.Message

func (*P2PCfg) Reset

func (x *P2PCfg) Reset()

func (*P2PCfg) String

func (x *P2PCfg) String() string

type PeerSpec

type PeerSpec struct {
	Id      uint64         `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Address *FabricAddress `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"`
	HcaNuma *uint32        `protobuf:"varint,3,opt,name=hca_numa,json=hcaNuma,proto3,oneof" json:"hca_numa,omitempty"`
	Labels  []string       `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty"`
	// contains filtered or unexported fields
}

func (*PeerSpec) Descriptor deprecated

func (*PeerSpec) Descriptor() ([]byte, []int)

Deprecated: Use PeerSpec.ProtoReflect.Descriptor instead.

func (*PeerSpec) GetAddress

func (x *PeerSpec) GetAddress() *FabricAddress

func (*PeerSpec) GetHcaNuma

func (x *PeerSpec) GetHcaNuma() uint32

func (*PeerSpec) GetId

func (x *PeerSpec) GetId() uint64

func (*PeerSpec) GetLabels

func (x *PeerSpec) GetLabels() []string

func (*PeerSpec) ProtoMessage

func (*PeerSpec) ProtoMessage()

func (*PeerSpec) ProtoReflect

func (x *PeerSpec) ProtoReflect() protoreflect.Message

func (*PeerSpec) Reset

func (x *PeerSpec) Reset()

func (*PeerSpec) String

func (x *PeerSpec) String() string

type RoutingPlan

type RoutingPlan struct {

	// Peer ids selected as fingers. The local node id is excluded and
	// the order is irrelevant (routing scans all fingers regardless).
	Fingers []uint64 `protobuf:"varint,1,rep,packed,name=fingers,proto3" json:"fingers,omitempty"`
	// Peer id of the nearest-forward neighbor on the ring.
	Successor *uint64 `protobuf:"varint,2,opt,name=successor,proto3,oneof" json:"successor,omitempty"`
	// Peer id of the nearest-backward neighbor on the ring.
	Predecessor *uint64 `protobuf:"varint,3,opt,name=predecessor,proto3,oneof" json:"predecessor,omitempty"`
	// contains filtered or unexported fields
}

A precomputed routing table for a single node, produced by a global-view planner. All ids reference `PeerSpec.id` values in the `peers` list (each must be present so a fabric connection exists). Ring positions are derived from ids, and labels do not affect runtime routing, so only ids are carried here.

func (*RoutingPlan) Descriptor deprecated

func (*RoutingPlan) Descriptor() ([]byte, []int)

Deprecated: Use RoutingPlan.ProtoReflect.Descriptor instead.

func (*RoutingPlan) GetFingers

func (x *RoutingPlan) GetFingers() []uint64

func (*RoutingPlan) GetPredecessor

func (x *RoutingPlan) GetPredecessor() uint64

func (*RoutingPlan) GetSuccessor

func (x *RoutingPlan) GetSuccessor() uint64

func (*RoutingPlan) ProtoMessage

func (*RoutingPlan) ProtoMessage()

func (*RoutingPlan) ProtoReflect

func (x *RoutingPlan) ProtoReflect() protoreflect.Message

func (*RoutingPlan) Reset

func (x *RoutingPlan) Reset()

func (*RoutingPlan) String

func (x *RoutingPlan) String() string

type StartupCfg

type StartupCfg struct {
	Memory   *MemoryCfg   `protobuf:"bytes,1,opt,name=memory,proto3" json:"memory,omitempty"`
	Fabric   *FabricCfg   `protobuf:"bytes,2,opt,name=fabric,proto3" json:"fabric,omitempty"`
	Topology *TopologyCfg `protobuf:"bytes,3,opt,name=topology,proto3" json:"topology,omitempty"`
	Metrics  *MetricsCfg  `protobuf:"bytes,4,opt,name=metrics,proto3" json:"metrics,omitempty"`
	// contains filtered or unexported fields
}

Startup-fixed settings, grouped by the subsystem that consumes them. Every field's proto3 zero value means "unset" and is promoted to the documented default by Config::apply_defaults.

func (*StartupCfg) Descriptor deprecated

func (*StartupCfg) Descriptor() ([]byte, []int)

Deprecated: Use StartupCfg.ProtoReflect.Descriptor instead.

func (*StartupCfg) GetFabric

func (x *StartupCfg) GetFabric() *FabricCfg

func (*StartupCfg) GetMemory

func (x *StartupCfg) GetMemory() *MemoryCfg

func (*StartupCfg) GetMetrics

func (x *StartupCfg) GetMetrics() *MetricsCfg

func (*StartupCfg) GetTopology

func (x *StartupCfg) GetTopology() *TopologyCfg

func (*StartupCfg) ProtoMessage

func (*StartupCfg) ProtoMessage()

func (*StartupCfg) ProtoReflect

func (x *StartupCfg) ProtoReflect() protoreflect.Message

func (*StartupCfg) Reset

func (x *StartupCfg) Reset()

func (*StartupCfg) String

func (x *StartupCfg) String() string

type TopologyCfg

type TopologyCfg struct {

	// Place shards on SMT sibling CPUs as well as physical cores.
	UseSmtSiblings bool `protobuf:"varint,4,opt,name=use_smt_siblings,json=useSmtSiblings,proto3" json:"use_smt_siblings,omitempty"`
	// Schedule shards onto isolcpus-isolated CPUs too. The proto3 false
	// default preserves the historical "respect isolated CPUs" behavior.
	IgnoreIsolated bool `protobuf:"varint,5,opt,name=ignore_isolated,json=ignoreIsolated,proto3" json:"ignore_isolated,omitempty"`
	// Allow placing a shard on each NUMA node's CPU 0. The proto3 false
	// default preserves the historical "exclude node CPU 0" behavior.
	IncludeNodeCpu0 bool `protobuf:"varint,6,opt,name=include_node_cpu0,json=includeNodeCpu0,proto3" json:"include_node_cpu0,omitempty"`
	// Use HCA ports that are not in the active state. The proto3 false
	// default preserves the historical "require active port" behavior.
	AllowInactivePort bool `protobuf:"varint,7,opt,name=allow_inactive_port,json=allowInactivePort,proto3" json:"allow_inactive_port,omitempty"`
	// Disable RDMA and force the libfabric tcp provider.
	DisableRdma bool `protobuf:"varint,8,opt,name=disable_rdma,json=disableRdma,proto3" json:"disable_rdma,omitempty"`
	// Cap on the number of serving-shard CPUs to pin. 0 -> auto (claim
	// every usable core left after storage and NIC-worker reservations).
	ServingCores uint64 `protobuf:"varint,9,opt,name=serving_cores,json=servingCores,proto3" json:"serving_cores,omitempty"`
	// NIC-worker CPUs to pin per active HCA. 0 -> 4.
	NicWorkers uint64 `protobuf:"varint,10,opt,name=nic_workers,json=nicWorkers,proto3" json:"nic_workers,omitempty"`
	// Maximum number of HCAs to use per NUMA node. 0 -> 1. Raise this to
	// use additional HCAs on a NUMA node. HCAs whose NUMA node is unknown
	// are never capped.
	HcasPerNumaNode uint64 `protobuf:"varint,11,opt,name=hcas_per_numa_node,json=hcasPerNumaNode,proto3" json:"hcas_per_numa_node,omitempty"`
	// contains filtered or unexported fields
}

func (*TopologyCfg) Descriptor deprecated

func (*TopologyCfg) Descriptor() ([]byte, []int)

Deprecated: Use TopologyCfg.ProtoReflect.Descriptor instead.

func (*TopologyCfg) GetAllowInactivePort

func (x *TopologyCfg) GetAllowInactivePort() bool

func (*TopologyCfg) GetDisableRdma

func (x *TopologyCfg) GetDisableRdma() bool

func (*TopologyCfg) GetHcasPerNumaNode

func (x *TopologyCfg) GetHcasPerNumaNode() uint64

func (*TopologyCfg) GetIgnoreIsolated

func (x *TopologyCfg) GetIgnoreIsolated() bool

func (*TopologyCfg) GetIncludeNodeCpu0

func (x *TopologyCfg) GetIncludeNodeCpu0() bool

func (*TopologyCfg) GetNicWorkers

func (x *TopologyCfg) GetNicWorkers() uint64

func (*TopologyCfg) GetServingCores

func (x *TopologyCfg) GetServingCores() uint64

func (*TopologyCfg) GetUseSmtSiblings

func (x *TopologyCfg) GetUseSmtSiblings() bool

func (*TopologyCfg) ProtoMessage

func (*TopologyCfg) ProtoMessage()

func (*TopologyCfg) ProtoReflect

func (x *TopologyCfg) ProtoReflect() protoreflect.Message

func (*TopologyCfg) Reset

func (x *TopologyCfg) Reset()

func (*TopologyCfg) String

func (x *TopologyCfg) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL