etcd: Index | Files

package controller

import ""


Package Files

appbinding.go cluster.go config.go controller.go dormant_database.go etcd.go job.go member.go monitor.go pod.go rbac.go reconcile.go secret.go service.go snapshot.go workqueue.go


const (
    // EtcdClientPort is the client port on client service and etcd nodes.
    EtcdClientPort = 2379
    EtcdPeerPort   = 2380

    ExporterSecretPath = "/var/run/secrets/"
const (
    KeyEtcdUser     = "user"
    KeyEtcdPassword = "password"
const TolerateUnreadyEndpointsAnnotation = ""


var ErrLostQuorum = errors.New("lost quorum")

type Cluster Uses

type Cluster struct {
    // contains filtered or unexported fields

func (*Cluster) Delete Uses

func (c *Cluster) Delete()

func (*Cluster) Update Uses

func (c *Cluster) Update(cl *api.Etcd)

type Controller Uses

type Controller struct {
    // contains filtered or unexported fields

func New Uses

func New(
    clientConfig *rest.Config,
    client kubernetes.Interface,
    apiExtKubeClient crd_cs.ApiextensionsV1beta1Interface,
    extClient cs.Interface,
    dc dynamic.Interface,
    appCatalogClient appcat_cs.Interface,
    promClient pcm.MonitoringV1Interface,
    cronController snapc.CronControllerInterface,
    opt amc.Config,
    recorder record.EventRecorder,
) *Controller

func (*Controller) CreateClientService Uses

func (c *Controller) CreateClientService(cl *Cluster) error

func (*Controller) CreatePeerService Uses

func (c *Controller) CreatePeerService(cl *Cluster) error

func (*Controller) EnsureCustomResourceDefinitions Uses

func (c *Controller) EnsureCustomResourceDefinitions() error

EnsureCustomResourceDefinitions ensures CRD for MySQl, DormantDatabase and Snapshot

func (*Controller) GetDatabase Uses

func (c *Controller) GetDatabase(meta metav1.ObjectMeta) (runtime.Object, error)

func (*Controller) GetSnapshotter Uses

func (c *Controller) GetSnapshotter(snapshot *api.Snapshot) (*batch.Job, error)

func (*Controller) Init Uses

func (c *Controller) Init() error

InitInformer initializes Etcd, DormantDB amd Snapshot watcher

func (Controller) NewCluster Uses

func (c Controller) NewCluster(etcd *api.Etcd)

func (*Controller) Run Uses

func (c *Controller) Run(stopCh <-chan struct{})

Blocks caller. Intended to be called as a Go routine.

func (*Controller) RunControllers Uses

func (c *Controller) RunControllers(stopCh <-chan struct{})

RunControllers runs queue.worker

func (*Controller) SetDatabaseStatus Uses

func (c *Controller) SetDatabaseStatus(meta metav1.ObjectMeta, phase api.DatabasePhase, reason string) error

func (*Controller) StartAndRunControllers Uses

func (c *Controller) StartAndRunControllers(stopCh <-chan struct{})

StartAndRunControllers starts InformetFactory and runs queue.worker

func (*Controller) UpsertDatabaseAnnotation Uses

func (c *Controller) UpsertDatabaseAnnotation(meta metav1.ObjectMeta, annotation map[string]string) error

func (*Controller) ValidateSnapshot Uses

func (c *Controller) ValidateSnapshot(snapshot *api.Snapshot) error

func (*Controller) WaitUntilPaused Uses

func (c *Controller) WaitUntilPaused(drmn *api.DormantDatabase) error

func (*Controller) WipeOutDatabase Uses

func (c *Controller) WipeOutDatabase(drmn *api.DormantDatabase) error

func (*Controller) WipeOutSnapshot Uses

func (c *Controller) WipeOutSnapshot(snapshot *api.Snapshot) error

type Event Uses

type Event struct {
    Type   kwatch.EventType
    Object *api.Etcd

type OperatorConfig Uses

type OperatorConfig struct {

    ClientConfig     *rest.Config
    KubeClient       kubernetes.Interface
    APIExtKubeClient crd_cs.ApiextensionsV1beta1Interface
    DBClient         cs.Interface
    DynamicClient    dynamic.Interface
    AppCatalogClient appcat_cs.Interface
    PromClient       pcm.MonitoringV1Interface
    CronController   snapc.CronControllerInterface

func NewOperatorConfig Uses

func NewOperatorConfig(clientConfig *rest.Config) *OperatorConfig

func (*OperatorConfig) New Uses

func (c *OperatorConfig) New() (*Controller, error)

Package controller imports 68 packages (graph) and is imported by 8 packages. Updated 2019-10-19. Refresh now. Tools for package owners.