m3db

package
v0.14.0 Latest Latest
Warning

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

Go to latest
Published: Aug 17, 2022 License: Apache-2.0 Imports: 28 Imported by: 0

Documentation

Overview

Package m3db is a generated GoMock package.

Index

Constants

View Source
const (
	PortM3DBNodeClient  Port = 9000
	PortM3DBNodeCluster      = 9001
	PortM3DBHTTPNode         = 9002
	PortM3DBHTTPCluster      = 9003
	PortM3DBDebug            = 9004

	PortM3Coordinator        = 7201
	PortM3CoordinatorMetrics = 7203
	PortM3CoordinatorCarbon  = 7204
)

Ports used by M3DB nodes and coordinator nodes.

Variables

This section is empty.

Functions

func CoordinatorServiceName

func CoordinatorServiceName(clusterName string) string

CoordinatorServiceName returns a name for a cluster's coordinator service.

func GenerateCoordinatorService

func GenerateCoordinatorService(cluster *myspec.M3DBCluster) (*v1.Service, error)

GenerateCoordinatorService creates a coordinator service given a cluster name.

func GenerateDefaultConfigMap

func GenerateDefaultConfigMap(cluster *myspec.M3DBCluster) (*corev1.ConfigMap, error)

GenerateDefaultConfigMap creates a ConfigMap for the clusters with the default config.

func GenerateM3DBService

func GenerateM3DBService(cluster *myspec.M3DBCluster) (*v1.Service, error)

GenerateM3DBService will generate the headless service required for an M3DB StatefulSet.

func GenerateOwnerRef

func GenerateOwnerRef(cluster *myspec.M3DBCluster) *metav1.OwnerReference

GenerateOwnerRef generates an owner reference to a given m3db cluster.

func GenerateStatefulSet

func GenerateStatefulSet(
	cluster *myspec.M3DBCluster,
	isolationGroupName string,
	instanceAmount int32,
) (*appsv1.StatefulSet, error)

GenerateStatefulSet provides a statefulset object for a m3db cluster

func GenerateStatefulSetAffinity

func GenerateStatefulSetAffinity(isoGroup myspec.IsolationGroup) (*v1.Affinity, error)

GenerateStatefulSetAffinity generates affinity settings for the statefulset.

func GenerateStatefulSetNodeAffinity added in v0.13.0

func GenerateStatefulSetNodeAffinity(isoGroup myspec.IsolationGroup) (*v1.NodeAffinity, error)

GenerateStatefulSetNodeAffinity generates a node affinity requiring a strict match for given key and values.

func GenerateStatefulSetPodAntiAffinity added in v0.13.0

func GenerateStatefulSetPodAntiAffinity(isoGroup myspec.IsolationGroup) (*v1.PodAntiAffinity, error)

GenerateStatefulSetPodAntiAffinity generates a pod anti-affinity for m3db pods, using labels.Component and labels.ComponentM3DBNode consts as matchexpression key and values, respectively.

func HeadlessServiceName

func HeadlessServiceName(clusterName string) string

HeadlessServiceName returns a name for the cluster's headless service.

func NewBaseStatefulSet

func NewBaseStatefulSet(ssName, isolationGroup string, cluster *myspec.M3DBCluster, instanceCount int32) *appsv1.StatefulSet

NewBaseStatefulSet returns a base configured stateful set.

func PlacementInstanceFromPod

func PlacementInstanceFromPod(cluster *myspec.M3DBCluster, pod *corev1.Pod, idProvider podidentity.Provider) (*placementpb.Instance, error)

PlacementInstanceFromPod creates a new m3cluster placement instance given a pod spec.

func StatefulSetName

func StatefulSetName(clusterName string, stsID int) string

StatefulSetName provides a formatted string to use for naming StatefulSets

Types

type K8sops

type K8sops interface {
	// GetService simply gets a service by name
	GetService(ctx context.Context, cluster *myspec.M3DBCluster, name string) (*v1.Service, error)

	// DeleteService simply deletes a service by name
	DeleteService(ctx context.Context, cluster *myspec.M3DBCluster, name string) error

	// EnsureService will create a service by name if it doesn't exist
	EnsureService(ctx context.Context, cluster *myspec.M3DBCluster, svc *v1.Service) error

	// Events returns an Event interface for a given namespace.
	Events(namespace string) typedcorev1.EventInterface
}

K8sops provides an interface for various Kubernetes API calls

func New

func New(opts ...Option) (K8sops, error)

New creates a new instance of k8sops

type MockK8sops

type MockK8sops struct {
	// contains filtered or unexported fields
}

MockK8sops is a mock of K8sops interface.

func NewMockK8sops

func NewMockK8sops(ctrl *gomock.Controller) *MockK8sops

NewMockK8sops creates a new mock instance.

func (*MockK8sops) DeleteService

func (m *MockK8sops) DeleteService(ctx context.Context, cluster *v1alpha1.M3DBCluster, name string) error

DeleteService mocks base method.

func (*MockK8sops) EXPECT

func (m *MockK8sops) EXPECT() *MockK8sopsMockRecorder

EXPECT returns an object that allows the caller to indicate expected use.

func (*MockK8sops) EnsureService

func (m *MockK8sops) EnsureService(ctx context.Context, cluster *v1alpha1.M3DBCluster, svc *v1.Service) error

EnsureService mocks base method.

func (*MockK8sops) Events

func (m *MockK8sops) Events(namespace string) v10.EventInterface

Events mocks base method.

func (*MockK8sops) GetService

func (m *MockK8sops) GetService(ctx context.Context, cluster *v1alpha1.M3DBCluster, name string) (*v1.Service, error)

GetService mocks base method.

type MockK8sopsMockRecorder

type MockK8sopsMockRecorder struct {
	// contains filtered or unexported fields
}

MockK8sopsMockRecorder is the mock recorder for MockK8sops.

func (*MockK8sopsMockRecorder) DeleteService

func (mr *MockK8sopsMockRecorder) DeleteService(ctx, cluster, name interface{}) *gomock.Call

DeleteService indicates an expected call of DeleteService.

func (*MockK8sopsMockRecorder) EnsureService

func (mr *MockK8sopsMockRecorder) EnsureService(ctx, cluster, svc interface{}) *gomock.Call

EnsureService indicates an expected call of EnsureService.

func (*MockK8sopsMockRecorder) Events

func (mr *MockK8sopsMockRecorder) Events(namespace interface{}) *gomock.Call

Events indicates an expected call of Events.

func (*MockK8sopsMockRecorder) GetService

func (mr *MockK8sopsMockRecorder) GetService(ctx, cluster, name interface{}) *gomock.Call

GetService indicates an expected call of GetService.

type Option

type Option interface {
	// contains filtered or unexported methods
}

Option provides an interface that can be used for setter options with the constructor

func WithCRDClient

func WithCRDClient(crdClient genclient.Interface) Option

WithCRDClient is a setter to override the default CRD client

func WithExtClient

func WithExtClient(extClient apiextensionsclient.Interface) Option

WithExtClient is a setter to override the default Extensions Client

func WithKClient

func WithKClient(kclient kubernetes.Interface) Option

WithKClient is a setter to override the default Kubernetes client

func WithLogger

func WithLogger(logger *zap.Logger) Option

WithLogger is a setter to override the default logger

type Port

type Port int32

Port represents a port number.

Jump to

Keyboard shortcuts

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