Documentation
¶
Overview ¶
Package etcd provides a component for managing an etcd server using containerd. The component uses host networking with non-default ports (12379 for client, 12380 for peer) to avoid conflicts with existing etcd installations.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type EtcdComponent ¶
type EtcdComponent struct {
*base.BaseComponent
// contains filtered or unexported fields
}
func NewEtcdComponent ¶
func NewEtcdComponent(log *slog.Logger, cc *containerd.Client, namespace, dataPath string) *EtcdComponent
func (*EtcdComponent) ClientEndpoint ¶
func (e *EtcdComponent) ClientEndpoint() string
func (*EtcdComponent) PeerEndpoint ¶
func (e *EtcdComponent) PeerEndpoint() string
func (*EtcdComponent) Start ¶
func (e *EtcdComponent) Start(ctx context.Context, config EtcdConfig) error
func (*EtcdComponent) StartMaintenanceLoop ¶ added in v0.7.0
func (e *EtcdComponent) StartMaintenanceLoop(ctx context.Context)
StartMaintenanceLoop runs a background goroutine that periodically checks etcd database health and triggers defragmentation when the BoltDB file has grown significantly larger than its live data. Compaction (already configured as periodic/1h) marks old revisions as deleted, but BoltDB never releases pages without an explicit defrag.
func (*EtcdComponent) TLSEnabled ¶ added in v0.4.0
func (e *EtcdComponent) TLSEnabled() bool
TLSEnabled returns whether TLS is enabled for client connections.
type EtcdConfig ¶
Click to show internal directories.
Click to hide internal directories.