Documentation ¶
Index ¶
Constants ¶
View Source
const ( // Deprecated DatabaseNamePrefix = "kubedb" KubeDBOrganization = "kubedb" LabelRole = GroupName + "/role" LabelPetSet = GroupName + "/petset" ReplicationModeDetectorContainerName = "replication-mode-detector" DatabasePodPrimary = "primary" DatabasePodStandby = "standby" ComponentDatabase = "database" ComponentConnectionPooler = "connection-pooler" RoleStats = "stats" DefaultStatsPath = "/metrics" DefaultPasswordLength = 16 HealthCheckInterval = 10 * time.Second ContainerExporterName = "exporter" LocalHost = "localhost" LocalHostIP = "127.0.0.1" DBCustomConfigName = "custom-config" DefaultVolumeClaimTemplateName = "data" DBTLSVolume = "tls-volume" DBExporterTLSVolume = "exporter-tls-volume" CACert = "ca.crt" // =========================== Database key Constants ============================ PostgresKey = "postgres" + "." + GroupName ElasticsearchKey = "elasticsearch" + "." + GroupName MySQLKey = "mysql" + "." + GroupName MariaDBKey = "mariadb" + "." + GroupName PerconaXtraDBKey = "perconaxtradb" + "." + GroupName MongoDBKey = "mongodb" + "." + GroupName RedisKey = "redis" + "." + GroupName MemcachedKey = "memcached" + "." + GroupName EtcdKey = "etcd" + "." + GroupName ProxySQLKey = "proxysql" + "." + GroupName // =========================== Elasticsearch Constants ============================ ElasticsearchRestPort = 9200 ElasticsearchRestPortName = "http" ElasticsearchTransportPort = 9300 ElasticsearchTransportPortName = "transport" ElasticsearchPerformanceAnalyzerPort = 9600 ElasticsearchPerformanceAnalyzerPortName = "analyzer" ElasticsearchNodeRoleSet = "set" ElasticsearchConfigDir = "/usr/share/elasticsearch/config" ElasticsearchOpenSearchConfigDir = "/usr/share/opensearch/config" ElasticsearchSecureSettingsDir = "/elasticsearch/secure-settings" ElasticsearchTempConfigDir = "/elasticsearch/temp-config" ElasticsearchCustomConfigDir = "/elasticsearch/custom-config" ElasticsearchDataDir = "/usr/share/elasticsearch/data" ElasticsearchOpenSearchDataDir = "/usr/share/opensearch/data" ElasticsearchTempDir = "/tmp" ElasticsearchOpendistroSecurityConfigDir = "/usr/share/elasticsearch/plugins/opendistro_security/securityconfig" ElasticsearchOpenSearchSecurityConfigDir = "/usr/share/opensearch/plugins/opensearch-security/securityconfig" ElasticsearchOpenSearchSecurityConfigDirV2 = "/usr/share/opensearch/config/opensearch-security" ElasticsearchSearchGuardSecurityConfigDir = "/usr/share/elasticsearch/plugins/search-guard-%v/sgconfig" ElasticsearchOpendistroReadallMonitorRole = "readall_and_monitor" ElasticsearchOpenSearchReadallMonitorRole = "readall_and_monitor" ElasticsearchSearchGuardReadallMonitorRoleV7 = "SGS_READALL_AND_MONITOR" ElasticsearchSearchGuardReadallMonitorRoleV6 = "sg_readall_and_monitor" ElasticsearchStatusGreen = "green" ElasticsearchStatusYellow = "yellow" ElasticsearchStatusRed = "red" ElasticsearchInitSysctlContainerName = "init-sysctl" ElasticsearchInitConfigMergerContainerName = "config-merger" ElasticsearchContainerName = "elasticsearch" ElasticsearchExporterContainerName = "exporter" ElasticsearchSearchGuardRolesMappingFileName = "sg_roles_mapping.yml" ElasticsearchSearchGuardInternalUserFileName = "sg_internal_users.yml" ElasticsearchOpendistroRolesMappingFileName = "roles_mapping.yml" ElasticsearchOpendistroInternalUserFileName = "internal_users.yml" ElasticsearchJavaOptsEnv = "ES_JAVA_OPTS" ElasticsearchOpenSearchJavaOptsEnv = "OPENSEARCH_JAVA_OPTS" ElasticsearchVolumeConfig = "esconfig" ElasticsearchVolumeTempConfig = "temp-config" ElasticsearchVolumeSecurityConfig = "security-config" ElasticsearchVolumeSecureSettings = "secure-settings" ElasticsearchVolumeCustomConfig = "custom-config" ElasticsearchVolumeData = "data" ElasticsearchVolumeTemp = "temp" // Ref: // - https://www.elastic.co/guide/en/elasticsearch/reference/7.6/heap-size.html#heap-size // - no more than 50% of your physical RAM // - no more than 32GB that the JVM uses for compressed object pointers (compressed oops) // - no more than 26GB for zero-based compressed oops; // 26 GB is safe on most systems ElasticsearchMaxHeapSize = 26 * 1024 * 1024 * 1024 // 128MB ElasticsearchMinHeapSize = 128 * 1024 * 1024 // =========================== Memcached Constants ============================ MemcachedConfigKey = "memcached.conf" // MemcachedConfigKey is going to create for the customize redis configuration MemcachedDatabasePortName = "db" MemcachedPrimaryServicePortName = "primary" MemcachedDatabasePort = 11211 MemcachedShardKey = MemcachedKey + "/shard" MemcachedContainerName = "memcached" MemcachedConfigVolumeName = "memcached-config" MemcachedConfigVolumePath = "/etc/memcached/" MemcachedDataVolumeName = "data" MemcachedDataVolumePath = "/data" MongoDBDatabasePortName = "db" MongoDBPrimaryServicePortName = "primary" MongoDBDatabasePort = 27017 MongoDBKeyFileSecretSuffix = "-key" MongoDBRootUsername = "root" MongoDBCustomConfigFile = "mongod.conf" MongoDBReplicaSetConfig = "replicaset.json" MongoDBConfigurationJSFile = "configuration.js" NodeTypeMongos = "mongos" NodeTypeShard = "shard" NodeTypeConfig = "configsvr" NodeTypeArbiter = "arbiter" NodeTypeHidden = "hidden" NodeTypeReplica = "replica" NodeTypeStandalone = "standalone" MongoDBWorkDirectoryName = "workdir" MongoDBWorkDirectoryPath = "/work-dir" MongoDBCertDirectoryName = "certdir" MongoDBDataDirectoryName = "datadir" MongoDBDataDirectoryPath = "/data/db" MongoDBInitInstallContainerName = "copy-config" MongoDBInitBootstrapContainerName = "bootstrap" MongoDBConfigDirectoryName = "config" MongoDBConfigDirectoryPath = "/data/configdb" MongoDBInitialConfigDirectoryName = "configdir" MongoDBInitialConfigDirectoryPath = "/configdb-readonly" MongoDBInitScriptDirectoryName = "init-scripts" MongoDBInitScriptDirectoryPath = "/init-scripts" MongoDBInitialDirectoryName = "initial-script" MongoDBInitialDirectoryPath = "/docker-entrypoint-initdb.d" MongoDBClientCertDirectoryName = "client-cert" MongoDBClientCertDirectoryPath = "/client-cert" MongoDBServerCertDirectoryName = "server-cert" MongoDBServerCertDirectoryPath = "/server-cert" MongoDBInitialKeyDirectoryName = "keydir" MongoDBInitialKeyDirectoryPath = "/keydir-readonly" MongoDBContainerName = "mongodb" MongoDBDefaultVolumeClaimTemplateName = MongoDBDataDirectoryName MongodbUser = "root" MongoDBKeyForKeyFile = "key.txt" MongoDBAuthSecretSuffix = "-auth" // =========================== MySQL Constants ============================ MySQLMetricsExporterConfigSecretSuffix = "metrics-exporter-config" MySQLDatabasePortName = "db" MySQLRouterReadWritePortName = "rw" MySQLRouterReadOnlyPortName = "ro" MySQLPrimaryServicePortName = "primary" MySQLStandbyServicePortName = "standby" MySQLDatabasePort = 3306 MySQLRouterReadWritePort = 6446 MySQLRouterReadOnlyPort = 6447 MySQLCoordinatorClientPort = 2379 MySQLCoordinatorPort = 2380 MySQLCoordinatorStatus = "Coordinator/Status" MySQLGroupComPort = 33060 MySQLMaxGroupMembers = 9 // The recommended MySQL server version for group replication (GR) MySQLGRRecommendedVersion = "8.0.23" MySQLDefaultGroupSize = 3 MySQLRootUserName = "MYSQL_ROOT_USERNAME" MySQLRootPassword = "MYSQL_ROOT_PASSWORD" MySQLName = "MYSQL_NAME" MySQLRootUser = "root" MySQLTLSConfigCustom = "custom" MySQLTLSConfigSkipVerify = "skip-verify" MySQLTLSConfigTrue = "true" MySQLTLSConfigFalse = "false" MySQLTLSConfigPreferred = "preferred" MySQLContainerName = "mysql" MySQLRouterContainerName = "mysql-router" MySQLRouterInitContainerName = "mysql-router-init" MySQLCoordinatorContainerName = "mysql-coordinator" MySQLInitContainerName = "mysql-init" MySQLRouterInitScriptDirectoryName = "init-scripts" MySQLRouterInitScriptDirectoryPath = "/scripts" MySQLRouterConfigDirectoryName = "router-config-secret" MySQLRouterConfigDirectoryPath = "/etc/mysqlrouter" MySQLRouterTLSDirectoryName = "router-tls-volume" MySQLRouterTLSDirectoryPath = "/etc/mysql/certs" MySQLReplicationUser = "repl" MySQLComponentKey = MySQLKey + "/component" MySQLComponentDB = "database" MySQLComponentRouter = "router" MySQLCustomConfigFile = "my-inline.cnf" MySQLVolumeNameTemp = "tmp" MySQLVolumeMountPathTemp = "/tmp" MySQLVolumeNameData = "data" MySQLVolumeMountPathData = "/var/lib/mysql" MySQLVolumeNameUserInitScript = "initial-script" MySQLVolumeMountPathUserInitScript = "/docker-entrypoint-initdb.d" MySQLVolumeNameInitScript = "init-scripts" MySQLVolumeMountPathInitScript = "/scripts" MySQLVolumeNameCustomConfig = "custom-config" MySQLVolumeMountPathCustomConfig = "/etc/mysql/conf.d" MySQLVolumeNameTLS = "tls-volume" MySQLVolumeMountPathTLS = "/etc/mysql/certs" MySQLVolumeNameExporterTLS = "exporter-tls-volume" MySQLVolumeMountPathExporterTLS = "/etc/mysql/certs" MySQLVolumeNameSourceCA = "source-ca" MySQLVolumeMountPathSourceCA = "/etc/mysql/server/certs" // =========================== PerconaXtraDB Constants ============================ PerconaXtraDBClusterRecommendedVersion = "5.7" PerconaXtraDBMaxClusterNameLength = 32 PerconaXtraDBStandaloneReplicas = 1 PerconaXtraDBDefaultClusterSize = 3 PerconaXtraDBDataMountPath = "/var/lib/mysql" PerconaXtraDBDataLostFoundPath = PerconaXtraDBDataMountPath + "/lost+found" PerconaXtraDBInitDBVolumeName = "initial-script" PerconaXtraDBInitDBMountPath = "/docker-entrypoint-initdb.d" PerconaXtraDBCustomConfigMountPath = "/etc/percona-server.conf.d/" PerconaXtraDBClusterCustomConfigMountPath = "/etc/mysql/custom.conf.d/" PerconaXtraDBCustomConfigVolumeName = "custom-config" PerconaXtraDBTLSConfigCustom = "custom" PerconaXtraDBInitContainerName = "px-init" PerconaXtraDBCoordinatorContainerName = "px-coordinator" PerconaXtraDBRunScriptVolumeName = "run-script" PerconaXtraDBRunScriptVolumeMountPath = "/run-script" PerconaXtraDBInitScriptVolumeName = "init-scripts" PerconaXtraDBInitScriptVolumeMountPath = "/scripts" PerconaXtraDBContainerName = "perconaxtradb" PerconaXtraDBCertMountPath = "/etc/mysql/certs" PerconaXtraDBExporterConfigFileName = "exporter.cnf" PerconaXtraDBGaleraClusterPrimaryComponent = "Primary" PerconaXtraDBServerTLSVolumeName = "tls-server-config" PerconaXtraDBClientTLSVolumeName = "tls-client-config" PerconaXtraDBExporterTLSVolumeName = "tls-metrics-exporter-config" PerconaXtraDBMetricsExporterTLSVolumeName = "metrics-exporter-config" PerconaXtraDBMetricsExporterConfigPath = "/etc/mysql/config/exporter" PerconaXtraDBDataVolumeName = "data" PerconaXtraDBMySQLUserGroupID = 1001 // =========================== MariaDB Constants ============================ MariaDBMaxClusterNameLength = 32 MariaDBStandaloneReplicas = 1 MariaDBDefaultClusterSize = 3 MariaDBDataMountPath = "/var/lib/mysql" MariaDBDataLostFoundPath = MariaDBDataMountPath + "/lost+found" MariaDBInitDBVolumeName = "initial-script" MariaDBInitDBMountPath = "/docker-entrypoint-initdb.d" MariaDBCustomConfigMountPath = "/etc/mysql/conf.d/" MariaDBClusterCustomConfigMountPath = "/etc/mysql/custom.conf.d/" MariaDBCustomConfigVolumeName = "custom-config" MariaDBTLSConfigCustom = "custom" MariaDBInitContainerName = "mariadb-init" MariaDBCoordinatorContainerName = "md-coordinator" MariaDBRunScriptVolumeName = "run-script" MariaDBRunScriptVolumeMountPath = "/run-script" MariaDBInitScriptVolumeName = "init-scripts" MariaDBInitScriptVolumeMountPath = "/scripts" MariaDBContainerName = "mariadb" MariaDBCertMountPath = "/etc/mysql/certs" MariaDBExporterConfigFileName = "exporter.cnf" MariaDBGaleraClusterPrimaryComponent = "Primary" MariaDBServerTLSVolumeName = "tls-server-config" MariaDBClientTLSVolumeName = "tls-client-config" MariaDBExporterTLSVolumeName = "tls-metrics-exporter-config" MariaDBMetricsExporterTLSVolumeName = "metrics-exporter-config" MariaDBMetricsExporterConfigPath = "/etc/mysql/config/exporter" MariaDBDataVolumeName = "data" // =========================== SingleStore Constants ============================ SinglestoreDatabasePortName = "db" SinglestorePrimaryServicePortName = "primary" SinglestoreStudioPortName = "studio" SinglestoreDatabasePort = 3306 SinglestoreStudioPort = 8081 SinglestoreExporterPort = 9104 SinglestoreRootUserName = "ROOT_USERNAME" SinglestoreRootPassword = "ROOT_PASSWORD" SinglestoreRootUser = "root" DatabasePodMaster = "Master" DatabasePodAggregator = "Aggregator" DatabasePodLeaf = "Leaf" PetSetTypeAggregator = "aggregator" PetSetTypeLeaf = "leaf" PetSetTypeStandalone = "standalone" SinglestoreDatabaseHealth = "singlestore_health" SinglestoreTableHealth = "singlestore_health_table" SinglestoreCoordinatorContainerName = "singlestore-coordinator" SinglestoreContainerName = "singlestore" SinglestoreInitContainerName = "singlestore-init" SinglestoreVolumeNameUserInitScript = "initial-script" SinglestoreVolumeMountPathUserInitScript = "/docker-entrypoint-initdb.d" SinglestoreVolumeNameCustomConfig = "custom-config" SinglestoreVolumeMountPathCustomConfig = "/etc/memsql/conf.d" SinglestoreVolmeNameInitScript = "init-scripts" SinglestoreVolumeMountPathInitScript = "/scripts" SinglestoreVolumeNameData = "data" SinglestoreVolumeMountPathData = "/var/lib/memsql" SinglestoreVolumeNameTLS = "tls-volume" SinglestoreVolumeMountPathTLS = "/etc/memsql/certs" SinglestoreTLSConfigCustom = "custom" SinglestoreTLSConfigSkipVerify = "skip-verify" SinglestoreTLSConfigTrue = "true" SinglestoreTLSConfigFalse = "false" SinglestoreTLSConfigPreferred = "preferred" // =========================== MSSQLServer Constants ============================ MSSQLSAUser = "sa" AGPrimaryReplicaReadyCondition = "AGPrimaryReplicaReady" MSSQLDatabasePodPrimary = "primary" MSSQLDatabasePodSecondary = "secondary" MSSQLSecondaryServiceAlias = "secondary" MSSQLSecondaryServicePortName = "secondary" // port related MSSQLDatabasePortName = "db" MSSQLPrimaryServicePortName = "primary" MSSQLDatabasePort = 1433 MSSQLDatabaseMirroringEndpointPort = 5022 MSSQLCoordinatorPort = 2381 // environment variables EnvAcceptEula = "ACCEPT_EULA" EnvMSSQLEnableHADR = "MSSQL_ENABLE_HADR" EnvMSSQLAgentEnabled = "MSSQL_AGENT_ENABLED" EnvMSSQLSAUsername = "MSSQL_SA_USERNAME" EnvMSSQLSAPassword = "MSSQL_SA_PASSWORD" // container related MSSQLContainerName = "mssql" MSSQLCoordinatorContainerName = "mssql-coordinator" MSSQLInitContainerName = "mssql-init" // volume related MSSQLVolumeNameData = "data" MSSQLVolumeMountPathData = "/var/opt/mssql" MSSQLVolumeNameInitScript = "init-scripts" MSSQLVolumeMountPathInitScript = "/scripts" MSSQLVolumeNameEndpointCert = "endpoint-cert" MSSQLVolumeMountPathEndpointCert = "/var/opt/mssql/endpoint-cert" MSSQLVolumeNameCerts = "certs" MSSQLVolumeMountPathCerts = "/var/opt/mssql/certs" MSSQLVolumeNameTLS = "tls" MSSQLVolumeMountPathTLS = "/var/opt/mssql/tls" MSSQLVolumeNameSecurityCACertificates = "security-ca-certificates" MSSQLVolumeMountPathSecurityCACertificates = "/var/opt/mssql/security/ca-certificates" MSSQLVolumeNameCACerts = "cacerts" MSSQLVolumeMountPathCACerts = "/etc/ssl/certs" // tls related MSSQLInternalTLSCrt = "tls.crt" MSSQLInternalTLSKey = "tls.key" // =========================== PostgreSQL Constants ============================ PostgresDatabasePortName = "db" PostgresPrimaryServicePortName = "primary" PostgresStandbyServicePortName = "standby" PostgresDatabasePort = 5432 PostgresPodPrimary = "primary" PostgresPodStandby = "standby" EnvPostgresUser = "POSTGRES_USER" EnvPostgresPassword = "POSTGRES_PASSWORD" PostgresRootUser = "postgres" PostgresCoordinatorContainerName = "pg-coordinator" PostgresCoordinatorPort = 2380 PostgresCoordinatorPortName = "coordinator" PostgresContainerName = "postgres" PostgresInitContainerName = "postgres-init-container" PostgresCoordinatorClientPort = 2379 PostgresCoordinatorClientPortName = "coordinatclient" RaftMetricsExporterPort = 23790 RaftMetricsExporterPortName = "raft-metrics" PostgresInitVolumeName = "initial-script" PostgresInitDir = "/var/initdb" PostgresDataVolumeName = "data" PostgresDataDir = "/var/pv" PostgresCustomConfigVolumeName = "custom-config" PostgresCustomConfigDir = "/etc/config" PostgresRunScriptsVolumeName = "run-scripts" PostgresRunScriptsDir = "/run_scripts" PostgresRoleScriptsVolumeName = "role-scripts" PostgresRoleScriptsDir = "/role_scripts" PostgresCustomConfigFile = "user.conf" PostgresKeyFileSecretSuffix = "key" PostgresPEMSecretSuffix = "pem" PostgresDefaultUsername = "postgres" PostgresPgCoordinatorStatus = "Coordinator/Status" // to pause the failover for postgres. this is helpful for ops request PostgresPgCoordinatorStatusPause = "Pause" // to resume the failover for postgres. this is helpful for ops request PostgresPgCoordinatorStatusResume = "Resume" // when we need to resume pg-coordinator as non transferable we are going to set this state. // this is useful when we have set a node as primary and you don't want other node rather then this node to become primary. PostgresPgCoordinatorStatusResumeNonTransferable = "NonTransferableResume" IPS_LOCK = "IPC_LOCK" SYS_RESOURCE = "SYS_RESOURCE" DropCapabilityALL = "ALL" // =========================== ProxySQL Constants ============================ LabelProxySQLName = ProxySQLKey + "/name" LabelProxySQLLoadBalance = ProxySQLKey + "/load-balance" LabelProxySQLLoadBalanceStandalone = "Standalone" ProxySQLContainerName = "proxysql" ProxySQLDatabasePort = 6033 ProxySQLDatabasePortName = "db" ProxySQLPrimaryServicePortName = "db" ProxySQLAdminPort = 6032 ProxySQLAdminPortName = "admin" ProxySQLDataMountPath = "/var/lib/proxysql" ProxySQLCustomConfigMountPath = "/etc/custom-config" ProxySQLBackendSSLMountPath = "/var/lib/certs" ProxySQLFrontendSSLMountPath = "/var/lib/frontend" ProxySQLClusterAdmin = "cluster" ProxySQLClusterPasswordField = "cluster_password" ProxySQLTLSConfigCustom = "custom" ProxySQLTLSConfigSkipVerify = "skip-verify" ProxySQLMonitorUsername = "proxysql" ProxySQLAuthUsername = "cluster" ProxySQLConfigSecretKey = "proxysql.cnf" // =========================== Redis Constants ============================ RedisConfigKey = "redis.conf" // RedisConfigKey is going to create for the customize redis configuration // DefaultConfigKey is going to create for the default redis configuration RedisContainerName = "redis" RedisSentinelContainerName = "redissentinel" DefaultConfigKey = "default.conf" RedisShardKey = RedisKey + "/shard" RedisDatabasePortName = "db" RedisPrimaryServicePortName = "primary" RedisDatabasePort = 6379 RedisSentinelPort = 26379 RedisGossipPortName = "gossip" RedisGossipPort = 16379 RedisSentinelPortName = "sentinel" RedisInitContainerName = "redis-init" RedisCoordinatorContainerName = "rd-coordinator" RedisSentinelInitContainerName = "sentinel-init" RedisScriptVolumeName = "script-vol" RedisScriptVolumePath = "/scripts" RedisDataVolumeName = "data" RedisDataVolumePath = "/data" RedisTLSVolumeName = "tls-volume" RedisExporterTLSVolumeName = "exporter-tls-volume" RedisTLSVolumePath = "/certs" RedisSentinelTLSVolumeName = "sentinel-tls-volume" RedisSentinelTLSVolumePath = "/sentinel-certs" RedisConfigVolumeName = "redis-config" RedisConfigVolumePath = "/usr/local/etc/redis/" RedisInitVolumeName = "init-volume" RedisInitVolumePath = "/init" RedisNodeFlagMaster = "master" RedisNodeFlagNoAddr = "noaddr" RedisNodeFlagSlave = "slave" RedisKeyFileSecretSuffix = "key" RedisPEMSecretSuffix = "pem" RedisRootUsername = "default" EnvRedisUser = "USERNAME" EnvRedisPassword = "REDISCLI_AUTH" EnvRedisMode = "REDIS_MODE" EnvRedisMajorRedisVersion = "MAJOR_REDIS_VERSION" // =========================== PgBouncer Constants ============================ PgBouncerUpstreamServerCA = "upstream-server-ca.crt" PgBouncerUpstreamServerClientCert = "upstream-server-client.crt" PgBouncerUpstreamServerClientKey = "upstream-server-client.key" PgBouncerClientCrt = "client.crt" PgBouncerClientKey = "client.key" PgBouncerCACrt = "ca.crt" PgBouncerTLSCrt = "tls.crt" PgBouncerTLSKey = "tls.key" PgBouncerDatabasePortName = "db" PgBouncerPrimaryServicePortName = "primary" PgBouncerDatabasePort = 5432 PgBouncerConfigFile = "pgbouncer.ini" PgBouncerAdminUsername = "pgbouncer" PgBouncerContainerName = "pgbouncer" PgBouncerDefaultPoolMode = "session" PgBouncerDefaultIgnoreStartupParameters = "empty" BackendSecretResourceVersion = "backend-secret-resource-version" PgBouncerAdminDatabase = "pgbouncer" PgBouncerUserDataKey = "userlist" PgBouncerAuthSecretVolume = "user-secret" PgBouncerConfigMountPath = "/etc/config" PgBouncerSecretMountPath = "/var/run/pgbouncer/secret" PgBouncerServingCertMountPath = "/var/run/pgbouncer/tls/serving" // =========================== Pgpool Constants ============================ EnvPostgresUsername = "POSTGRES_USERNAME" EnvPgpoolPcpUser = "PGPOOL_PCP_USER" EnvPgpoolPcpPassword = "PGPOOL_PCP_PASSWORD" EnvPgpoolPasswordEncryptionMethod = "PGPOOL_PASSWORD_ENCRYPTION_METHOD" EnvEnablePoolPasswd = "PGPOOL_ENABLE_POOL_PASSWD" EnvSkipPasswdEncryption = "PGPOOL_SKIP_PASSWORD_ENCRYPTION" PgpoolConfigSecretMountPath = "/config" PgpoolConfigVolumeName = "pgpool-config" PgpoolContainerName = "pgpool" PgpoolDefaultServicePort = 9999 PgpoolMonitoringDefaultServicePort = 9719 PgpoolPcpPort = 9595 PgpoolExporterDatabase = "postgres" EnvPgpoolExporterDatabase = "POSTGRES_DATABASE" EnvPgpoolService = "PGPOOL_SERVICE" EnvPgpoolServicePort = "PGPOOL_SERVICE_PORT" EnvPgpoolSSLMode = "SSLMODE" EnvPgpoolExporterConnectionString = "DATA_SOURCE_NAME" PgpoolDefaultSSLMode = "disable" PgpoolExporterContainerName = "exporter" PgpoolAuthUsername = "pcp" SyncPeriod = 10 PgpoolTlsVolumeName = "certs" PgpoolTlsVolumeMountPath = "/config/tls" PgpoolExporterTlsVolumeName = "exporter-certs" PgpoolExporterTlsVolumeMountPath = "/tls/certs" PgpoolRootUser = "postgres" PgpoolPrimaryServicePortName = "primary" PgpoolDatabasePortName = "db" PgpoolPcpPortName = "pcp" PgpoolCustomConfigFile = "pgpool.conf" KubeDBZooKeeperRoleName = "kubedb:zookeeper-version-reader" KubeDBZooKeeperRoleBindingName = "kubedb:zookeeper-version-reader" ZooKeeperClientPortName = "client" ZooKeeperClientPort = 2181 ZooKeeperQuorumPortName = "quorum" ZooKeeperQuorumPort = 2888 ZooKeeperLeaderElectionPortName = "leader-election" ZooKeeperLeaderElectionPort = 3888 ZooKeeperMetricsPortName = "metrics" ZooKeeperMetricsPort = 7000 ZooKeeperAdminServerPortName = "admin-server" ZooKeeperAdminServerPort = 8080 ZooKeeperNode = "/kubedb_health_checker_node" ZooKeeperData = "kubedb_health_checker_data" ZooKeeperConfigVolumeName = "zookeeper-config" ZooKeeperConfigVolumePath = "/conf" ZooKeeperDataVolumeName = "data" ZooKeeperDataVolumePath = "/data" ZooKeeperScriptVolumeName = "script-vol" ZooKeeperScriptVolumePath = "/scripts" ZooKeeperContainerName = "zookeeper" ZooKeeperInitContainerName = "zookeeper" + "-init" ZooKeeperConfigFileName = "zoo.cfg" ZooKeeperLog4jPropertiesFileName = "log4j.properties" ZooKeeperLog4jQuietPropertiesFileName = "log4j-quiet.properties" EnvZooKeeperDomain = "DOMAIN" EnvZooKeeperQuorumPort = "QUORUM_PORT" EnvZooKeeperLeaderPort = "LEADER_PORT" EnvZooKeeperClientHost = "CLIENT_HOST" EnvZooKeeperClientPort = "CLIENT_PORT" EnvZooKeeperAdminServerHost = "ADMIN_SERVER_HOST" EnvZooKeeperAdminServerPort = "ADMIN_SERVER_PORT" EnvZooKeeperClusterName = "CLUSTER_NAME" EnvZooKeeperClusterSize = "CLUSTER_SIZE" EnvZooKeeperUser = "ZK_USER" EnvZooKeeperPassword = "ZK_PASSWORD" EnvZooKeeperJaasFilePath = "ZK_JAAS_FILE_PATH" EnvZooKeeperJVMFLags = "JVMFLAGS" ZooKeeperSuperUsername = "super" ZooKeeperSASLAuthLoginConfig = "-Djava.security.auth.login.config" ZooKeeperJaasFilePath = "/data/jaas.conf" )
View Source
const ( // used for Databases that have started provisioning DatabaseProvisioningStarted = "ProvisioningStarted" // used for Databases which completed provisioning DatabaseProvisioned = "Provisioned" // used for Databases that are currently being initialized using stash DatabaseDataRestoreStarted = "DataRestoreStarted" // used for Databases that have been initialized using stash DatabaseDataRestored = "DataRestored" // used for Databases whose pods are ready DatabaseReplicaReady = "ReplicaReady" // used for Databases that are currently accepting connection DatabaseAcceptingConnection = "AcceptingConnection" // used for Databases that report status OK (also implies that we can connect to it) DatabaseReady = "Ready" // used for database that reports ok when all the instances are available ServerReady = "ServerReady" // used for Databases that are paused DatabasePaused = "Paused" // used for Databases that are halted DatabaseHalted = "Halted" // used for pausing health check of a Database DatabaseHealthCheckPaused = "HealthCheckPaused" // used for Databases whose internal user credentials are synced InternalUsersSynced = "InternalUsersSynced" // user for databases that have read access DatabaseReadAccess = "DatabaseReadAccess" // user for databases that have write access DatabaseWriteAccess = "DatabaseWriteAccess" // check dependencies are ready DatabaseDependencyReady = "DatabaseDependencyReady" // update config secret for backup in solr PatchConfigSecretUpdateForBackup = "PatchConfigSecretUpdatesForBackup" // sync db to update configuration SyncDatabaseForConfigurationUpdate = "SyncDatabaseForConfigurationUpdate" // Condition reasons DataRestoreStartedByExternalInitializer = "DataRestoreStartedByExternalInitializer" DataRestoreInterrupted = "DataRestoreInterrupted" DatabaseSuccessfullyRestored = "SuccessfullyDataRestored" FailedToRestoreData = "FailedToRestoreData" AllReplicasAreReady = "AllReplicasReady" SomeReplicasAreNotReady = "SomeReplicasNotReady" DatabaseAcceptingConnectionRequest = "DatabaseAcceptingConnectionRequest" DatabaseNotAcceptingConnectionRequest = "DatabaseNotAcceptingConnectionRequest" ReadinessCheckSucceeded = "ReadinessCheckSucceeded" ReadinessCheckFailed = "ReadinessCheckFailed" DatabaseProvisioningStartedSuccessfully = "DatabaseProvisioningStartedSuccessfully" DatabaseSuccessfullyProvisioned = "DatabaseSuccessfullyProvisioned" DatabaseHaltedSuccessfully = "DatabaseHaltedSuccessfully" DatabaseReadAccessCheckSucceeded = "DatabaseReadAccessCheckSucceeded" DatabaseWriteAccessCheckSucceeded = "DatabaseWriteAccessCheckSucceeded" DatabaseReadAccessCheckFailed = "DatabaseReadAccessCheckFailed" DatabaseWriteAccessCheckFailed = "DatabaseWriteAccessCheckFailed" InternalUsersCredentialSyncFailed = "InternalUsersCredentialsSyncFailed" InternalUsersCredentialsSyncedSuccessfully = "InternalUsersCredentialsSyncedSuccessfully" FailedToEnsureDependency = "FailedToEnsureDependency" )
List of possible condition types for a KubeDB object
View Source
const ( KafkaPortNameREST = "http" KafkaPortNameController = "controller" KafkaPortNameCruiseControlListener = "cc-listener" KafkaPortNameCruiseControlREST = "cc-rest" KafkaBrokerClientPortName = "broker" KafkaControllerClientPortName = "controller" KafkaPortNameLocal = "local" KafkaTopicNameHealth = "kafka-health" KafkaTopicDeletionThresholdOffset = 1000 KafkaBrokerMaxID = 1000 KafkaRESTPort = 9092 KafkaControllerRESTPort = 9093 KafkaLocalRESTPort = 29092 KafkaCruiseControlRESTPort = 9090 KafkaCruiseControlListenerPort = 9094 KafkaCCDefaultInNetwork = 500000 KafkaCCDefaultOutNetwork = 500000 KafkaContainerName = "kafka" KafkaUserAdmin = "admin" KafkaNodeRoleSet = "set" KafkaNodeRolesCombined = "controller,broker" KafkaNodeRolesController = "controller" KafkaNodeRolesBrokers = "broker" KafkaNodeRolesCruiseControl = "cruise-control" KafkaStandbyServiceSuffix = "standby" KafkaBrokerListener = "KafkaBrokerListener" KafkaControllerListener = "KafkaControllerListener" KafkaDataDir = "/var/log/kafka" KafkaMetaDataDir = "/var/log/kafka/metadata" KafkaCertDir = "/var/private/ssl" KafkaConfigDir = "/opt/kafka/config/kafkaconfig" KafkaTempConfigDir = "/opt/kafka/config/temp-config" KafkaCustomConfigDir = "/opt/kafka/config/custom-config" KafkaCCTempConfigDir = "/opt/cruise-control/temp-config" KafkaCCCustomConfigDir = "/opt/cruise-control/custom-config" KafkaCapacityConfigPath = "config/capacity.json" KafkaConfigFileName = "config.properties" KafkaServerCustomConfigFileName = "server.properties" KafkaBrokerCustomConfigFileName = "broker.properties" KafkaControllerCustomConfigFileName = "controller.properties" KafkaSSLPropertiesFileName = "ssl.properties" KafkaClientAuthConfigFileName = "clientauth.properties" KafkaCruiseControlConfigFileName = "cruisecontrol.properties" KafkaCruiseControlCapacityConfigFileName = "capacity.json" KafkaCruiseControlBrokerSetConfigFileName = "brokerSets.json" KafkaCruiseControlClusterConfigFileName = "clusterConfigs.json" KafkaCruiseControlLog4jConfigFileName = "log4j.properties" KafkaCruiseControlUIConfigFileName = "config.csv" KafkaListeners = "listeners" KafkaAdvertisedListeners = "advertised.listeners" KafkaBootstrapServers = "bootstrap.servers" KafkaListenerSecurityProtocolMap = "listener.security.protocol.map" KafkaControllerNodeCount = "controller.count" KafkaControllerQuorumVoters = "controller.quorum.voters" KafkaControllerListenersName = "controller.listener.names" KafkaInterBrokerListener = "inter.broker.listener.name" KafkaNodeRole = "process.roles" KafkaClusterID = "cluster.id" KafkaClientID = "client.id" KafkaDataDirName = "log.dirs" KafkaMetadataDirName = "metadata.log.dir" KafkaKeystorePasswordKey = "keystore_password" KafkaTruststorePasswordKey = "truststore_password" KafkaServerKeystoreKey = "server.keystore.jks" KafkaServerTruststoreKey = "server.truststore.jks" KafkaSecurityProtocol = "security.protocol" KafkaGracefulShutdownTimeout = "task.shutdown.graceful.timeout.ms" KafkaTopicConfigProviderClass = "topic.config.provider.class" KafkaCapacityConfigFile = "capacity.config.file" KafkaTwoStepVerification = "two.step.verification.enabled" KafkaBrokerFailureDetection = "kafka.broker.failure.detection.enable" KafkaMetricSamplingInterval = "metric.sampling.interval.ms" KafkaPartitionMetricsWindow = "partition.metrics.window.ms" KafkaPartitionMetricsWindowNum = "num.partition.metrics.windows" KafkaSampleStoreTopicReplicationFactor = "sample.store.topic.replication.factor" KafkaEndpointVerifyAlgo = "ssl.endpoint.identification.algorithm" KafkaKeystoreLocation = "ssl.keystore.location" KafkaTruststoreLocation = "ssl.truststore.location" KafkaKeystorePassword = "ssl.keystore.password" KafkaTruststorePassword = "ssl.truststore.password" KafkaKeyPassword = "ssl.key.password" KafkaTruststoreType = "ssl.truststore.type" KafkaKeystoreType = "ssl.keystore.type" KafkaTruststoreTypeJKS = "JKS" KafkaKeystoreDefaultPass = "changeit" KafkaMetricReporters = "metric.reporters" KafkaAutoCreateTopicEnable = "auto.create.topics.enable" KafkaEnabledSASLMechanisms = "sasl.enabled.mechanisms" KafkaSASLMechanism = "sasl.mechanism" KafkaMechanismControllerProtocol = "sasl.mechanism.controller.protocol" KafkaSASLInterBrokerProtocol = "sasl.mechanism.inter.broker.protocol" KafkaSASLPLAINConfigKey = "listener.name.SASL_PLAINTEXT.plain.sasl.jaas.config" KafkaSASLSSLConfigKey = "listener.name.SASL_SSL.plain.sasl.jaas.config" KafkaSASLJAASConfig = "sasl.jaas.config" KafkaServiceName = "serviceName" KafkaSASLPlainMechanism = "PLAIN" KafkaCCMetricSamplerClass = "metric.sampler.class" KafkaCCCapacityConfig = "capacity.config.file" KafkaCCTwoStepVerificationEnabled = "two.step.verification.enabled" KafkaCCBrokerFailureDetectionEnabled = "kafka.broker.failure.detection.enable" KafkaOffSetTopicReplica = "offsets.topic.replication.factor" KafkaTransactionStateLogReplica = "transaction.state.log.replication.factor" KafkaTransactionSateLogMinISR = "transaction.state.log.min.isr" KafkaLogCleanerMinLagSec = "log.cleaner.min.compaction.lag.ms" KafkaLogCleanerBackoffMS = "log.cleaner.backoff.ms" KafkaCCKubernetesMode = "cruise.control.metrics.reporter.kubernetes.mode" KafkaCCBootstrapServers = "cruise.control.metrics.reporter.bootstrap.servers" KafkaCCMetricTopicAutoCreate = "cruise.control.metrics.topic.auto.create" KafkaCCMetricTopicNumPartition = "cruise.control.metrics.topic.num.partitions" KafkaCCMetricTopicReplica = "cruise.control.metrics.topic.replication.factor" KafkaCCMetricReporterSecurityProtocol = "cruise.control.metrics.reporter.security.protocol" KafkaCCMetricReporterSaslMechanism = "cruise.control.metrics.reporter.sasl.mechanism" KafkaCCSampleLoadingThreadsNum = "num.sample.loading.threads" KafkaCCMinSamplesPerBrokerWindow = "min.samples.per.broker.metrics.window" KafkaVolumeData = "data" KafkaVolumeConfig = "kafkaconfig" KafkaVolumeTempConfig = "temp-config" KafkaVolumeCustomConfig = "custom-config" EnvKafkaUser = "KAFKA_USER" EnvKafkaPassword = "KAFKA_PASSWORD" KafkaListenerPLAINTEXTProtocol = "PLAINTEXT" KafkaListenerSASLProtocol = "SASL_PLAINTEXT" KafkaListenerSASLSSLProtocol = "SASL_SSL" KafkaCCMetricsSampler = "com.linkedin.kafka.cruisecontrol.monitor.sampling.CruiseControlMetricsReporterSampler" KafkaAdminTopicConfigProvider = "com.linkedin.kafka.cruisecontrol.config.KafkaAdminTopicConfigProvider" KafkaCCMetricReporter = "com.linkedin.kafka.cruisecontrol.metricsreporter.CruiseControlMetricsReporter" KafkaJMXMetricReporter = "org.apache.kafka.common.metrics.JmxReporter" // =========================== Solr Constants ============================ SolrPortName = "http" SolrRestPort = 8983 SolrExporterPort = 9854 SolrSecretKey = "solr.xml" SolrContainerName = "solr" SolrInitContainerName = "init-solr" SolrAdmin = "admin" SecurityJSON = "security.json" SolrZkDigest = "zk-digest" SolrZkReadonlyDigest = "zk-digest-readonly" SolrVolumeDefaultConfig = "default-config" SolrVolumeCustomConfig = "custom-config" SolrVolumeAuthConfig = "auth-config" SolrVolumeData = "data" SolrVolumeConfig = "slconfig" DistLibs = "/opt/solr/dist" ContribLibs = "/opt/solr/contrib/%s/lib" SysPropLibPlaceholder = "${solr.sharedLib:}" SolrHomeDir = "/var/solr" SolrDataDir = "/var/solr/data" SolrTempConfigDir = "/temp-config" SolrCustomConfigDir = "/custom-config" SolrSecurityConfigDir = "/var/security" SolrCloudHostKey = "host" SolrCloudHostValue = "" SolrCloudHostPortKey = "hostPort" SolrCloudHostPortValue = 80 SolrCloudHostContextKey = "hostContext" SolrCloudHostContextValue = "solr" SolrCloudGenericCoreNodeNamesKey = "genericCoreNodeNames" SolrCloudGenericCoreNodeNamesValue = true SolrCloudZKClientTimeoutKey = "zkClientTimeout" SolrCloudZKClientTimeoutValue = 30000 SolrCloudDistribUpdateSoTimeoutKey = "distribUpdateSoTimeout" SolrCloudDistribUpdateSoTimeoutValue = 600000 SolrCloudDistribUpdateConnTimeoutKey = "distribUpdateConnTimeout" SolrCloudDistribUpdateConnTimeoutValue = 60000 SolrCloudZKCredentialProviderKey = "zkCredentialsProvider" SolrCloudZKCredentialProviderValue = "org.apache.solr.common.cloud.DigestZkCredentialsProvider" SolrCloudZKAclProviderKey = "zkACLProvider" SolrCloudZKAclProviderValue = "org.apache.solr.common.cloud.DigestZkACLProvider" SolrCloudZKCredentialsInjectorKey = "zkCredentialsInjector" SolrCloudZKCredentialsInjectorValue = "org.apache.solr.common.cloud.VMParamsZkCredentialsInjector" ShardHandlerFactorySocketTimeoutKey = "socketTimeout" ShardHandlerFactorySocketTimeoutValue = 600000 ShardHandlerFactoryConnTimeoutKey = "connTimeout" ShardHandlerFactoryConnTimeoutValue = 60000 SolrKeysMaxBooleanClausesKey = "maxBooleanClauses" SolrKeysMaxBooleanClausesValue = "solr.max.booleanClauses" SolrKeysShardLibValue = "solr.sharedLib" SolrKeysHostPortKey = "hostPort" SolrKeysHostPortValue = "solr.port.advertise" SolrKeysAllowPathsKey = "allowPaths" SolrKeysAllowPathsValue = "solr.allowPaths" SolrConfMaxBooleanClausesKey = "maxBooleanClauses" SolrConfMaxBooleanClausesValue = 1024 SolrConfAllowPathsKey = "allowPaths" SolrConfAllowPathsValue = "" SolrConfSolrCloudKey = "solrcloud" SolrConfShardHandlerFactoryKey = "shardHandlerFactory" ProxyDeploymentName = "s3proxy" ProxyServiceName = "proxy-svc" ProxySecretName = "proxy-env" ProxyImage = "andrewgaul/s3proxy" ProxyPortName = "http" ProxyPortNumber = 80 ProxyContainerName = "proxy" ProxyLabelsApp = "app" )
View Source
const ( DruidConfigDirCommon = "/opt/druid/conf/druid/cluster/_common" DruidConfigDirCoordinatorOverlord = "/opt/druid/conf/druid/cluster/master/coordinator-overlord" DruidConfigDirHistoricals = "/opt/druid/conf/druid/cluster/data/historical" DruidConfigDirMiddleManagers = "/opt/druid/conf/druid/cluster/data/middleManager" DruidConfigDirBrokers = "/opt/druid/conf/druid/cluster/query/broker" DruidConfigDirRouters = "/opt/druid/conf/druid/cluster/query/router" DruidCConfigDirMySQLMetadata = "/opt/druid/extensions/mysql-metadata-storage" DruidVolumeOperatorConfig = "operator-config-volume" DruidVolumeMainConfig = "main-config-volume" DruidVolumeCustomConfig = "custom-config" DruidMetadataTLSVolume = "metadata-tls-volume" DruidOperatorConfigDir = "/tmp/config/operator-config" DruidMainConfigDir = "/opt/druid/conf" DruidCustomConfigDir = "/tmp/config/custom-config" DruidMetadataTLSConfigDir = "/tmp/metadata-tls" DruidVolumeCommonConfig = "common-config-volume" DruidCommonConfigFile = "common.runtime.properties" DruidCoordinatorsJVMConfigFile = "coordinators.jvm.config" DruidHistoricalsJVMConfigFile = "historicals.jvm.config" DruidBrokersJVMConfigFile = "brokers.jvm.config" DruidMiddleManagersJVMConfigFile = "middleManagers.jvm.config" DruidRoutersJVMConfigFile = "routers.jvm.config" DruidCoordinatorsConfigFile = "coordinators.properties" DruidHistoricalsConfigFile = "historicals.properties" DruidMiddleManagersConfigFile = "middleManagers.properties" DruidBrokersConfigFile = "brokers.properties" DruidRoutersConfigFile = "routers.properties" DruidVolumeMySQLMetadataStorage = "mysql-metadata-storage" DruidContainerName = "druid" DruidInitContainerName = "init-druid" DruidUserAdmin = "admin" EnvDruidAdminPassword = "DRUID_ADMIN_PASSWORD" EnvDruidMetdataStoragePassword = "DRUID_METADATA_STORAGE_PASSWORD" EnvDruidZKServicePassword = "DRUID_ZK_SERVICE_PASSWORD" EnvDruidCoordinatorAsOverlord = "DRUID_COORDINATOR_AS_OVERLORD" EnvDruidMetadataTLSEnable = "DRUID_METADATA_TLS_ENABLE" EnvDruidMetadataStorageType = "DRUID_METADATA_STORAGE_TYPE" DruidPortCoordinators = 8081 DruidPortOverlords = 8090 DruidPortHistoricals = 8083 DruidPortMiddleManagers = 8091 DruidPortBrokers = 8082 DruidPortRouters = 8888 DruidExporterPort = 9104 DruidMetadataStorageTypePostgres = "Postgres" // Common Runtime Configurations Properties // ZooKeeper DruidZKServiceHost = "druid.zk.service.host" DruidZKPathsBase = "druid.zk.paths.base" DruidZKServiceCompress = "druid.zk.service.compress" DruidZKServiceUserKey = "druid.zk.service.user" DruidZKServicePasswordKey = "druid.zk.service.pwd" DruidZKServicePasswordEnvConfig = "{\"type\": \"environment\", \"variable\": \"DRUID_ZK_SERVICE_PASSWORD\"}" // Metadata Storage DruidMetadataStorageTypeKey = "druid.metadata.storage.type" DruidMetadataStorageConnectorConnectURI = "druid.metadata.storage.connector.connectURI" DruidMetadataStorageConnectURIPrefixMySQL = "jdbc:mysql://" DruidMetadataStorageConnectURIPrefixPostgreSQL = "jdbc:postgresql://" DruidMetadataStorageConnectorUser = "druid.metadata.storage.connector.user" DruidMetadataStorageConnectorPassword = "druid.metadata.storage.connector.password" DruidMetadataStorageConnectorPasswordEnvConfig = "{\"type\": \"environment\", \"variable\": \"DRUID_METADATA_STORAGE_PASSWORD\"}" DruidMetadataStorageCreateTables = "druid.metadata.storage.connector.createTables" // MySQL TLS DruidMetadataMySQLUseSSL = "druid.metadata.mysql.ssl.useSSL" DruidMetadataMySQLClientCertKeyStoreURL = "druid.metadata.mysql.ssl.clientCertificateKeyStoreUrl" DruidMetadataMySQLClientCertKeyStorePath = "/opt/druid/conf/tls/metadatakeystore.jks" DruidMetadataMySQLClientCertKeyStoreType = "druid.metadata.mysql.ssl.clientCertificateKeyStoreType" DruidMetadataMySQLClientCertKeyStoreTypeJKS = "JKS" DruidMetadataMySQLClientCertKeyStorePassword = "druid.metadata.mysql.ssl.clientCertificateKeyStorePassword" DruidMetadataMySQLClientCertKeyStorePasswordValue = "password" // Postgres TLS DruidMetadataPostgresUseSSL = "druid.metadata.postgres.ssl.useSSL" DruidMetadataPGUseSSLMode = "druid.metadata.postgres.ssl.sslMode" DruidMetadataPGSSLCert = "druid.metadata.postgres.ssl.sslCert" DruidMetadataPGSSLCertPath = "/opt/druid/conf/tls/tls.crt" DruidMetadataPGSSLKey = "druid.metadata.postgres.ssl.sslKey" DruidMetadataPGSSLKeyPath = "/opt/druid/conf/tls/tls.key" DruidMetadataPGSSLRootCert = "druid.metadata.postgres.ssl.sslRootCert" DruidMetadataPGSSLRootCertPath = "/opt/druid/conf/tls/ca.cert" // Deep Storage DruidDeepStorageTypeKey = "druid.storage.type" DruidDeepStorageTypeS3 = "s3" DruidDeepStorageBaseKey = "druid.storage.baseKey" DruidDeepStorageBucket = "druid.storage.bucket" DruidS3AccessKey = "druid.s3.accessKey" DruidS3SecretKey = "druid.s3.secretKey" DruidS3EndpointSigningRegion = "druid.s3.endpoint.signingRegion" DruidS3EnablePathStyleAccess = "druid.s3.enablePathStyleAccess" DruidS3EndpointURL = "druid.s3.endpoint.url" // Indexing service logs DruidIndexerLogsType = "druid.indexer.logs.type" DruidIndexerLogsS3Bucket = "druid.indexer.logs.s3Bucket" DruidIndexerLogsS3Prefix = "druid.indexer.logs.s3Prefix" DruidEnableLookupSyncOnStartup = "druid.lookup.enableLookupSyncOnStartup" // Authentication DruidAuthAuthenticationChain = "druid.auth.authenticatorChain" DruidAuthAuthenticationChainValueBasic = "[\"basic\"]" DruidAuthAuthenticatorBasicType = "druid.auth.authenticator.basic.type" DruidAuthAuthenticatorBasicTypeValue = "basic" DruidAuthAuthenticatorBasicInitialAdminPassword = "druid.auth.authenticator.basic.initialAdminPassword" DruidAuthAuthenticatorBasicInitialAdminPasswordEnvConfig = "{\"type\": \"environment\", \"variable\": \"DRUID_ADMIN_PASSWORD\"}" DruidAuthAuthenticatorBasicInitialInternalClientPassword = "druid.auth.authenticator.basic.initialInternalClientPassword" DruidAuthAuthenticatorBasicCredentialsValidatorType = "druid.auth.authenticator.basic.credentialsValidator.type" DruidAuthAuthenticatorBasicSkipOnFailure = "druid.auth.authenticator.basic.skipOnFailure" DruidAuthAuthenticatorBasicAuthorizerName = "druid.auth.authenticator.basic.authorizerName" // Escalator DruidAuthEscalatorType = "druid.escalator.type" DruidAuthEscalatorInternalClientUsername = "druid.escalator.internalClientUsername" DruidAuthEscalatorInternalClientPassword = "druid.escalator.internalClientPassword" DruidAuthEscalatorAuthorizerName = "druid.escalator.authorizerName" DruidAuthAuthorizers = "druid.auth.authorizers" DruidAuthAuthorizerBasicType = "druid.auth.authorizer.basic.type" // Extension Load List DruidExtensionLoadListKey = "druid.extensions.loadList" DruidExtensionLoadList = "" /* 217-byte string literal not displayed */ DruidExtensionAvro = "druid-avro-extensions" DruidExtensionS3 = "druid-s3-extensions" DruidExtensionHDFS = "druid-hdfs-storage" DruidExtensionGoogle = "druid-google-extensions" DruidExtensionAzure = "druid-azure-extensions" DruidExtensionKafkaIndexingService = "druid-kafka-indexing-service" DruidExtensionDataSketches = "druid-datasketches" DruidExtensionKubernetes = "druid-kubernetes-extensions" DruidExtensionMySQLMetadataStorage = "mysql-metadata-storage" DruidExtensionPostgreSQLMetadataStorage = "postgresql-metadata-storage" DruidExtensionBasicSecurity = "druid-basic-security" DruidExtensionMultiStageQuery = "druid-multi-stage-query" DruidExtensionPrometheusEmitter = "prometheus-emitter" DruidService = "druid.service" // Monitoring Configurations DruidEmitter = "druid.emitter" DruidEmitterPrometheus = "prometheus" DruidEmitterPrometheusPortKey = "druid.emitter.prometheus.port" DruidEmitterPrometheusPortVal = 9104 DruidMonitoringMonitorsKey = "druid.monitoring.monitors" DruidEmitterPrometheusDimensionMapPath = "druid.emitter.prometheus.dimensionMapPath" DruidEmitterPrometheusStrategy = "druid.emitter.prometheus.strategy" DruidMetricsJVMMonitor = "org.apache.druid.java.util.metrics.JvmMonitor" DruidMetricsServiceStatusMonitor = "org.apache.druid.server.metrics.ServiceStatusMonitor" DruidMetricsQueryCountStatsMonitor = "org.apache.druid.server.metrics.QueryCountStatsMonitor" DruidMonitoringHistoricalMetricsMonitor = "org.apache.druid.server.metrics.HistoricalMetricsMonitor" DruidMonitoringSegmentsStatsMonitor = "org.apache.druid.server.metrics.SegmentStatsMonitor" DruidMonitoringWorkerTaskCountsStatsMonitor = "org.apache.druid.server.metrics.WorkerTaskCountStatsMonitor" DruidMonitoringQueryCountStatsMonitor = "org.apache.druid.server.metrics.QueryCountStatsMonitor" DruidMonitoringTaskCountStatsMonitor = "org.apache.druid.server.metrics.TaskCountStatsMonitor" DruidMonitoringSysMonitor = "org.apache.druid.java.util.metrics.SysMonitor" /// Coordinators Configurations DruidCoordinatorStartDelay = "druid.coordinator.startDelay" DruidCoordinatorPeriod = "druid.coordinator.period" DruidIndexerQueueStartDelay = "druid.indexer.queue.startDelay" DruidManagerSegmentsPollDuration = "druid.manager.segments.pollDuration" DruidCoordinatorKillAuditLogOn = "druid.coordinator.kill.audit.on" DruidMillisToWaitBeforeDeleting = "millisToWaitBeforeDeleting" DruidCoordinatorAsOverlord = "druid.coordinator.asOverlord.enabled" DruidCoordinatorAsOverlordOverlordService = "druid.coordinator.asOverlord.overlordService" /// Overlords Configurations DruidServiceNameOverlords = "druid/overlord" DruidIndexerStorageType = "druid.indexer.storage.type" DruidIndexerAuditLogEnabled = "druid.indexer.auditLog.enabled" DruidIndexerLogsKillEnables = "druid.indexer.logs.kill.enabled" DruidIndexerLogsKillDurationToRetain = "druid.indexer.logs.kill.durationToRetain" DruidIndexerLogsKillInitialDelay = "druid.indexer.logs.kill.initialDelay" DruidIndexerLogsKillDelay = "druid.indexer.logs.kill.delay" DruidEmitterLoggingLogLevel = "druid.emitter.logging.logLevel" /// Historicals Configurations // Properties DruidProcessingNumOfThreads = "druid.processing.numThreads" // Segment Cache DruidHistoricalsSegmentCacheLocations = "druid.segmentCache.locations" DruidHistoricalsSegmentCacheDropSegmentDelayMillis = "druid.segmentCache.dropSegmentDelayMillis" DruidHistoricalsSegmentCacheDir = "/druid/data/segments" DruidVolumeHistoricalsSegmentCache = "segment-cache" // Query Cache DruidHistoricalCacheUseCache = "druid.historical.cache.useCache" DruidHistoricalCachePopulateCache = "druid.historical.cache.populateCache" DruidCacheSizeInBytes = "druid.cache.sizeInBytes" // Values DruidSegmentCacheLocationsDefaultValue = "[{\"path\":\"/druid/data/segments\",\"maxSize\":10737418240}]" /// MiddleManagers Configurations // Properties DruidWorkerCapacity = "druid.worker.capacity" DruidIndexerTaskBaseTaskDir = "druid.indexer.task.baseTaskDir" DruidWorkerTaskBaseTaskDirKey = "druid.worker.task.baseTaskDir" DruidWorkerTaskBaseTaskDir = "/var/druid/task" DruidWorkerBaseTaskDirSize = "druid.worker.baseTaskDirSize" DruidIndexerForkPropertyDruidProcessingBufferSizeBytes = "druid.indexer.fork.property.druid.processing.buffer.sizeBytes" DruidMiddleManagersVolumeBaseTaskDir = "base-task-dir" DruidVolumeMiddleManagersBaseTaskDir = "base-task-dir" // Values DruidIndexerTaskBaseTaskDirValue = "/druid/data/baseTaskDir" /// Brokers Configurations DruidBrokerHTTPNumOfConnections = "druid.broker.http.numConnections" DruidSQLEnable = "druid.sql.enable" /// Routers Configurations DruidRouterHTTPNumOfConnections = "druid.router.http.numConnections" DruidRouterHTTPNumOfMaxThreads = "druid.router.http.numMaxThreads" // Common Nodes Configurations // Properties DruidPlaintextPort = "druid.plaintextPort" DruidProcessingBufferSizeBytes = "druid.processing.buffer.sizeBytes" DruidProcessingNumOfMergeBuffers = "druid.processing.numMergeBuffers" DruidServerHTTPNumOfThreads = "druid.server.http.numThreads" // Health Check DruidHealthDataZero = "0" DruidHealthDataOne = "1" )
=========================== Druid Constants ============================
View Source
const ( RabbitMQAMQPPort = 5672 RabbitMQAMQPSPort = 5671 RabbitMQMQTTPort = 1883 RabbitMQMQTTPortWithSSL = 8883 RabbitMQSTOMPPort = 61613 RabbitMQSTOMPPortWithSSL = 61614 RabbitMQWebSTOMPPort = 15674 RabbitMQWebSTOMPPortWithSSL = 15673 RabbitMQWebMQTTPort = 15675 RabbitMQWebMQTTPortWithSSL = 15676 RabbitMQExporterPort = 15692 RabbitMQExporterPortWithSSL = 15691 RabbitMQManagementUIPort = 15672 RabbitMQManagementUIPortWithSSL = 15671 RabbitMQInterNodePort = 25672 RabbitMQPeerDiscoveryPort = 4369 RabbitMQVolumeData = "data" RabbitMQVolumeConfig = "rabbitmqconfig" RabbitMQVolumeTempConfig = "temp-config" RabbitMQVolumeCustomConfig = "custom-config" RabbitMQDataDir = "/var/lib/rabbitmq/mnesia" RabbitMQConfigDir = "/config/" RabbitMQPluginsDir = "/etc/rabbitmq/" RabbitMQCertDir = "/var/private/ssl" RabbitMQTempConfigDir = "/tmp/config/" RabbitMQCustomConfigDir = "/tmp/config/custom_config/" RabbitMQConfigVolName = "rabbitmq-config" RabbitMQPluginsVolName = "rabbitmq-plugins" RabbitMQTempConfigVolName = "temp-config" RabbitMQContainerName = "rabbitmq" RabbitMQInitContainerName = "rabbitmq-init" RabbitMQManagementPlugin = "rabbitmq_management" RabbitMQPeerdiscoveryPlugin = "rabbitmq_peer_discovery_k8s" RabbitMQFederationPlugin = "rabbitmq_federation" RabbitMQFederationManagementPlugin = "rabbitmq_federation_management" RabbitMQShovelPlugin = "rabbitmq_shovel" RabbitMQShovelManagementPlugin = "rabbitmq_shovel_management" RabbitMQWebDispatchPlugin = "rabbitmq_web_dispatch" RabbitMQMQTTPlugin = "rabbitmq_mqtt" RabbitMQWebMQTTPlugin = "rabbitmq_stomp" RabbitMQSTOMPPlugin = "rabbitmq_web_mqtt" RabbitMQWebSTOMPPlugin = "rabbitmq_web_stomp" RabbitMQPrometheusPlugin = "rabbitmq_prometheus" RabbitMQLoopBackUserKey = "loopback_users" RabbitMQLoopBackUserVal = "none" RabbitMQDefaultTCPListenerKey = "listeners.tcp.default" RabbitMQDefaultSSLListenerKey = "listeners.ssl.default" RabbitMQDefaultSSLListener1Key = "listeners.ssl.1" RabbitMQDefaultTCPListenerVal = "5672" RabbitMQDefaultTLSListenerVal = "5671" RabbitMQQueueMasterLocatorKey = "queue_master_locator" RabbitMQQueueMasterLocatorVal = "min-masters" RabbitMQDiskFreeLimitKey = "disk_free_limit.absolute" RabbitMQDiskFreeLimitVal = "2GB" RabbitMQPartitionHandingKey = "cluster_partition_handling" RabbitMQPartitionHandingVal = "pause_minority" RabbitMQPeerDiscoveryKey = "cluster_formation.peer_discovery_backend" RabbitMQPeerDiscoveryVal = "rabbit_peer_discovery_k8s" RabbitMQK8sHostKey = "cluster_formation.k8s.host" RabbitMQK8sHostVal = "kubernetes.default.svc.cluster.local" RabbitMQK8sAddressTypeKey = "cluster_formation.k8s.address_type" RabbitMQK8sAddressTypeVal = "hostname" RabbitMQNodeCleanupWarningKey = "cluster_formation.node_cleanup.only_log_warning" RabbitMQNodeCleanupWarningVal = "true" RabbitMQLogFileLevelKey = "log.file.level" RabbitMQLogFileLevelVal = "info" RabbitMQLogConsoleKey = "log.console" RabbitMQLogConsoleVal = "true" RabbitMQLogConsoleLevelKey = "log.console.level" RabbitMQLogConsoleLevelVal = "info" RabbitMQDefaultUserKey = "default_user" RabbitMQDefaultUserVal = "$(RABBITMQ_DEFAULT_USER)" RabbitMQDefaultPasswordKey = "default_pass" RabbitMQDefaultPasswordVal = "$(RABBITMQ_DEFAULT_PASS)" RabbitMQClusterNameKey = "cluster_name" RabbitMQK8sSvcNameKey = "cluster_formation.k8s.service_name" RabbitMQSSLOptionsCAKey = "ssl_options.cacertfile" RabbitMQSSLOptionsCertKey = "ssl_options.certfile" RabbitMQSSLOptionsPrivateKey = "ssl_options.keyfile" RabbitMQSSLOptionsVerifyKey = "ssl_options.verify" RabbitMQSSLOptionsFailIfNoPeerKey = "ssl_options.fail_if_no_peer_cert" RabbitMQSSLPortKey = "ssl.port" RabbitMQSSLCAKey = "ssl.cacertfile" RabbitMQSSLCertKey = "ssl.certfile" RabbitMQSSLPrivateKey = "ssl.keyfile" RabbitMQSSLVerifyKey = "ssl.verify" RabbitMQSSLFailIfNoPeerKey = "ssl.fail_if_no_peer_cert" RabbitMQConfigFileName = "rabbitmq.conf" RabbitMQEnabledPluginsFileName = "enabled_plugins" RabbitMQHealthCheckerQueueName = "kubedb-system" )
View Source
const ( // envs EnvFerretDBUser = "FERRETDB_PG_USER" EnvFerretDBPassword = "FERRETDB_PG_PASSWORD" EnvFerretDBHandler = "FERRETDB_HANDLER" EnvFerretDBPgURL = "FERRETDB_POSTGRESQL_URL" EnvFerretDBTLSPort = "FERRETDB_LISTEN_TLS" EnvFerretDBCAPath = "FERRETDB_LISTEN_TLS_CA_FILE" EnvFerretDBCertPath = "FERRETDB_LISTEN_TLS_CERT_FILE" EnvFerretDBKeyPath = "FERRETDB_LISTEN_TLS_KEY_FILE" FerretDBContainerName = "ferretdb" FerretDBMainImage = "ghcr.io/ferretdb/ferretdb" FerretDBUser = "postgres" FerretDBServerPath = "/etc/certs/server" FerretDBExternalClientPath = "/etc/certs/ext" FerretDBDefaultPort = 27017 FerretDBMetricsPort = 8080 FerretDBTLSPort = 27018 FerretDBMetricsPath = "/debug/metrics" FerretDBMetricsPortName = "metrics" )
=========================== FerretDB Constants ============================
View Source
const ( ClickHouseKeeperPort = 9181 ClickHouseDefaultHTTP = 8123 ClickHouseDefaultTLS = 8443 ClickHouseNativeTCP = 9000 ClickHouseNativeTLS = 9440 ClickhousePromethues = 9363 ClickHouseVolumeData = "data" ClickHouseDataDir = "/var/lib/clickhouse" ClickHouseConfigVolName = "clickhouse-config" ClickHouseConfigDir = "/etc/clickhouse-server/config.d" ClickHouseDefaultStorageSize = "2Gi" ClickHouseClusterConfigVolName = "cluster-config" ClickHouseClusterConfigDir = "/etc/clickhouse-server/conf.d" ClickHouseTempClusterConfigVolName = "temp-cluster-config" ClickHouseContainerName = "clickhouse" ClickHouseInitContainerName = "clickhouse-init" ClickHouseClusterConfigFile = "cluster-config.yaml" ClickHouseTempConfigDir = "/ch-tmp/config" ClickHouseTempDir = "/ch-tmp" ClickHouseUserConfigDir = "/etc/clickhouse-server/user.d" ClickHouseMacrosFileName = "macros.yaml" ClickHouseStandalone = "standalone" ClickHouseCluster = "cluster" ClickHouseHealthCheckerDatabase = "kubedb_system_db" ClickHouseHealthCheckerTable = "kubedb_system_table" ClickHouseServerConfigFile = "server-config.yaml" ClickHouseKeeperFileConfig = "keeper-config.yaml" )
View Source
const ( ResourceKindStatefulSet = "StatefulSet" ResourceKindPetSet = "PetSet" )
Resource kind related constants
View Source
const ( InitFromGit = "init-from-git" InitFromGitMountPath = "/git" GitSecretVolume = "git-secret" GitSecretMountPath = "/etc/git-secret" GitSyncContainerName = "git-sync" )
View Source
const ( // GroupName is the group name use in this package GroupName = "kubedb.com" // MutatorGroupName is the group name used to implement mutating webhooks for types in this package MutatorGroupName = "mutators." + GroupName // ValidatorGroupName is the group name used to implement validating webhooks for types in this package ValidatorGroupName = "validators." + GroupName )
Variables ¶
View Source
var ( DefaultInitContainerResource = core.ResourceRequirements{ Requests: core.ResourceList{ core.ResourceCPU: resource.MustParse(".200"), core.ResourceMemory: resource.MustParse("256Mi"), }, Limits: core.ResourceList{ core.ResourceMemory: resource.MustParse("512Mi"), }, } DefaultResources = core.ResourceRequirements{ Requests: core.ResourceList{ core.ResourceCPU: resource.MustParse(".500"), core.ResourceMemory: resource.MustParse("1024Mi"), }, Limits: core.ResourceList{ core.ResourceMemory: resource.MustParse("1024Mi"), }, } // CoordinatorDefaultResources must be used for raft backed coordinators to avoid unintended leader switches CoordinatorDefaultResources = core.ResourceRequirements{ Requests: core.ResourceList{ core.ResourceCPU: resource.MustParse(".200"), core.ResourceMemory: resource.MustParse("256Mi"), }, Limits: core.ResourceList{ core.ResourceMemory: resource.MustParse("256Mi"), }, } // DefaultResourcesCPUIntensive is for MongoDB versions >= 6 DefaultResourcesCPUIntensive = core.ResourceRequirements{ Requests: core.ResourceList{ core.ResourceCPU: resource.MustParse(".800"), core.ResourceMemory: resource.MustParse("1024Mi"), }, Limits: core.ResourceList{ core.ResourceMemory: resource.MustParse("1024Mi"), }, } // DefaultResourcesMemoryIntensive must be used for elasticsearch // to avoid OOMKILLED while deploying ES V8 DefaultResourcesMemoryIntensive = core.ResourceRequirements{ Requests: core.ResourceList{ core.ResourceCPU: resource.MustParse(".500"), core.ResourceMemory: resource.MustParse("1.5Gi"), }, Limits: core.ResourceList{ core.ResourceMemory: resource.MustParse("1.5Gi"), }, } // DefaultResourcesCoreAndMemoryIntensive must be used for Solr DefaultResourcesCoreAndMemoryIntensiveSolr = core.ResourceRequirements{ Requests: core.ResourceList{ core.ResourceCPU: resource.MustParse(".900"), core.ResourceMemory: resource.MustParse("2Gi"), }, Limits: core.ResourceList{ core.ResourceMemory: resource.MustParse("2Gi"), }, } // DefaultResourcesMemoryIntensiveSDB must be used for Singlestore when enabled monitoring or version >= 8.5.x DefaultResourcesMemoryIntensiveSDB = core.ResourceRequirements{ Requests: core.ResourceList{ core.ResourceCPU: resource.MustParse(".500"), core.ResourceMemory: resource.MustParse("2Gi"), }, Limits: core.ResourceList{ core.ResourceMemory: resource.MustParse("2Gi"), }, } // DefaultResourcesMemoryIntensive must be used for Druid MiddleManagers DefaultResourcesMemoryIntensiveDruid = core.ResourceRequirements{ Requests: core.ResourceList{ core.ResourceCPU: resource.MustParse(".500"), core.ResourceMemory: resource.MustParse("2.5Gi"), }, Limits: core.ResourceList{ core.ResourceMemory: resource.MustParse("2.5Gi"), }, } )
Functions ¶
func DefaultArbiter ¶ added in v0.47.0
func DefaultArbiter(computeOnly bool) core.ResourceRequirements
Types ¶
This section is empty.
Directories ¶
Path | Synopsis |
---|---|
+k8s:deepcopy-gen=package,register +k8s:openapi-gen=true +k8s:defaulter-gen=TypeMeta +groupName=kubedb.com
|
+k8s:deepcopy-gen=package,register +k8s:openapi-gen=true +k8s:defaulter-gen=TypeMeta +groupName=kubedb.com |
nolint:goconst
|
nolint:goconst |
+k8s:deepcopy-gen=package,register +k8s:conversion-gen=kubedb.dev/apimachinery/apis/kubedb/v1 +k8s:openapi-gen=true +k8s:defaulter-gen=TypeMeta +groupName=kubedb.com
|
+k8s:deepcopy-gen=package,register +k8s:conversion-gen=kubedb.dev/apimachinery/apis/kubedb/v1 +k8s:openapi-gen=true +k8s:defaulter-gen=TypeMeta +groupName=kubedb.com |
Click to show internal directories.
Click to hide internal directories.