clickhouse

package
v0.0.7 Latest Latest
Warning

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

Go to latest
Published: Jul 20, 2026 License: Apache-2.0 Imports: 45 Imported by: 0

Documentation

Index

Constants

View Source
const (
	OperatorNamedCollectionName     = "__operator"
	OperatorConfigRevisionField     = "config_revision"
	OperatorSettingsProfileName     = "__operator"
	OperatorReloadMarkerSettingName = "custom_operator_reload_revision"
)
View Source
const (
	PortManagement     = 9001
	PortManagementHTTP = 9002
	PortNative         = 9000
	PortNativeSecure   = 9440
	PortHTTP           = 8123
	PortHTTPSecure     = 8443

	PortPrometheusScrape = 9363
	PortInterserver      = 9009

	ConfigPath               = "/etc/clickhouse-server/"
	ConfigDPath              = "config.d"
	ConfigFileName           = "config.yaml"
	UsersDPath               = "users.d"
	UsersFileName            = "users.yaml"
	ExtraConfigFileName      = "99-extra-config.yaml"
	ExtraUsersConfigFileName = "99-extra-users-config.yaml"
	ClientConfigPath         = "/etc/clickhouse-client/"
	ClientConfigFileName     = "config.yaml"
	AdditionalDiskBasePath   = internal.ClickHouseDataPath + "/disks/"

	// DefaultDiskName is the built-in ClickHouse disk; at-rest encryption wraps it and each JBOD disk with an encrypted disk.
	DefaultDiskName         = "default"
	EncryptedDiskNameSuffix = "_encrypted"
	EncryptedDiskSubPath    = "encrypted/"
	DiskEncryptionAlgorithm = "AES_128_CTR"

	TLSConfigPath       = "/etc/clickhouse-server/tls/"
	CertificateFilename = "clickhouse-server.crt"
	KeyFilename         = "clickhouse-server.key"
	CustomCAFilename    = "custom-ca.crt"

	LogPath = "/var/log/clickhouse-server/"

	DefaultClusterName         = "default"
	KeeperPathUsers            = "/clickhouse/access"
	KeeperPathUDF              = "/clickhouse/user_defined"
	KeeperPathDistributedDDL   = "/clickhouse/task_queue/ddl"
	KeeperPathNamedCollections = "/clickhouse/named_collections"

	ContainerName          = "clickhouse-server"
	DefaultRevisionHistory = 10
	MaximalAffinityWeight  = 100

	InterserverUserName        = "interserver"
	OperatorManagementUsername = "operator"
	DefaultProfileName         = "default"

	EnvInterserverPassword = "CLICKHOUSE_INTERSERVER_PASSWORD"
	EnvDefaultUserPassword = "CLICKHOUSE_DEFAULT_USER_PASSWORD"
	EnvKeeperIdentity      = "CLICKHOUSE_KEEPER_IDENTITY"
	EnvClusterSecret       = "CLICKHOUSE_CLUSTER_SECRET"
	EnvNamedCollectionsKey = "CLICKHOUSE_NAMED_COLLECTIONS_KEY"
	EnvDiskEncryptionKey   = "CLICKHOUSE_DISK_ENCRYPTION_KEY"

	SecretKeyInterserverPassword = "interserver-password"
	SecretKeyManagementPassword  = "management-password"
	SecretKeyKeeperIdentity      = "keeper-identity"
	SecretKeyClusterSecret       = "cluster-secret"
	SecretKeyNamedCollectionsKey = "named-collections-key"
	SecretKeyDiskEncryptionKey   = "disk-encryption-key"

	// NamedCollectionsKeyByteLen and DiskEncryptionKeyByteLen are AES-128 key sizes in bytes (16 bytes = 32 hex chars).
	NamedCollectionsKeyByteLen = 16
	DiskEncryptionKeyByteLen   = 16
)

Variables

This section is empty.

Functions

func SetupWithManager

func SetupWithManager(mgr ctrl.Manager, log controllerutil.Logger, checker *upgrade.Checker, dialer controllerutil.DialContextFunc, enablePDB bool) error

SetupWithManager sets up the controller with the Manager.

Types

type ClusterController

type ClusterController struct {
	client.Client

	Scheme    *runtime.Scheme
	Recorder  events.EventRecorder
	Logger    controllerutil.Logger
	Webhook   webhookv1.ClickHouseClusterWebhook
	Checker   *upgrade.Checker
	Dialer    controllerutil.DialContextFunc
	EnablePDB bool
	// contains filtered or unexported fields
}

ClusterController reconciles a ClickHouseCluster object.

func (*ClusterController) GetClient

func (cc *ClusterController) GetClient() client.Client

GetClient returns the K8S Client.

func (*ClusterController) GetDialer added in v0.0.4

GetDialer returns the custom dialer, or nil.

func (*ClusterController) GetRecorder

func (cc *ClusterController) GetRecorder() events.EventRecorder

GetRecorder returns the ClickHouseCluster EventRecorder.

func (*ClusterController) GetScheme

func (cc *ClusterController) GetScheme() *runtime.Scheme

GetScheme returns initialized with the Cluster Scheme.

func (*ClusterController) GetVersionChecker added in v0.0.3

func (cc *ClusterController) GetVersionChecker() *upgrade.Checker

GetVersionChecker returns the version upgrade Checker.

func (*ClusterController) Reconcile

func (cc *ClusterController) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

Jump to

Keyboard shortcuts

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