Documentation ¶
Index ¶
Constants ¶
View Source
const ( StorageTypeUnset = "" StorageTypeETCD2 = "etcd2" StorageTypeETCD3 = "etcd3" StorageTypeMysql = "mysql" StorageTypeMongoDB = "mongo" StorageTypeAWSDynamodb = "awsdynamodb" StorageTypeSqlite = "sqlite" DefaultCompactInterval = 5 * time.Minute DefaultDBMetricPollInterval = 30 * time.Second DefaultHealthcheckTimeout = 2 * time.Second )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AWSDynamoDBConfig ¶
type Config ¶
type Config struct { // Type defines the type of storage backend. Default ("") is "etcd3". Type string // Prefix is the prefix to all keys passed to storage.Interface methods. Prefix string // Transport holds all connection related info, i.e. equal TransportConfig means equal servers we talk to. Transport TransportConfig // Paging indicates whether the server implementation should allow paging (if it is // supported). This is generally configured by feature gating, or by a specific // resource type not wishing to allow paging, and is not intended for end users to // set. Paging bool Codec runtime.Codec // EncodeVersioner is the same groupVersioner used to build the // storage encoder. Given a list of kinds the input object might belong // to, the EncodeVersioner outputs the gvk the object will be // converted to before persisted in etcd. EncodeVersioner runtime.GroupVersioner // Transformer allows the value to be transformed prior to persisting into etcd. Transformer value.Transformer // CompactionInterval is an interval of requesting compaction from apiserver. // If the value is 0, no compaction will be issued. CompactionInterval time.Duration // CountMetricPollPeriod specifies how often should count metric be updated CountMetricPollPeriod time.Duration // DBMetricPollInterval specifies how often should storage backend metric be updated. DBMetricPollInterval time.Duration // HealthcheckTimeout specifies the timeout used when checking health HealthcheckTimeout time.Duration LeaseManagerConfig etcd3.LeaseManagerConfig // StorageObjectCountTracker is used to keep track of the total // number of objects in the storage per resource. StorageObjectCountTracker flowcontrolrequest.StorageObjectCountTracker //append backend config. //mongodb extend config Mongodb MongoExtendConfig //aws dynamodb config AWSDynamoDB AWSDynamoDBConfig //mysql config Mysql MysqlConfig //Sqlite sqlite config Sqlite SqliteConfig }
Config is configuration for creating a storage backend.
func (*Config) ForResource ¶
func (config *Config) ForResource(resource schema.GroupResource) *ConfigForResource
ForResource specializes to the given resource
type ConfigForResource ¶
type ConfigForResource struct { // Config is the resource-independent configuration Config // GroupResource is the relevant one GroupResource schema.GroupResource }
ConfigForResource is a Config specialized to a particular `schema.GroupResource`
type MongoExtendConfig ¶
type MysqlConfig ¶
type SqliteConfig ¶
type SqliteConfig struct { //DSN a dsn that a sqlite database file with path. //like file:test.db?cache=share&mode=memory we use https://github.com/mattn/go-sqlite3 DSN string Debug bool //ListDefaultLimit limit list default value ListDefaultLimit int }
SqliteConfig sqlite config
type TransportConfig ¶
type TransportConfig struct { // ServerList is the list of storage servers to connect with. ServerList []string // TLS credentials KeyFile string CertFile string TrustedCAFile string // function to determine the egress dialer. (i.e. konnectivity server dialer) EgressLookup egressselector.Lookup // The TracerProvider can add tracing the connection TracerProvider *trace.TracerProvider }
TransportConfig holds all connection related info, i.e. equal TransportConfig means equal servers we talk to.
Click to show internal directories.
Click to hide internal directories.