Documentation ¶
Overview ¶
Package v1beta1 contains API Schema definitions for the zookeeper v1beta1 API group +k8s:deepcopy-gen=package,register +groupName=zookeeper.pravega.io
Package v1beta1 contains API Schema definitions for the zookeeper v1beta1 API group +k8s:deepcopy-gen=package,register +groupName=zookeeper.pravega.io
Index ¶
- Constants
- Variables
- type ContainerImage
- type MembersStatus
- type Persistence
- type PodPolicy
- type Ports
- type VolumeReclaimPolicy
- type ZookeeperCluster
- func (z *ZookeeperCluster) ConfigMapName() string
- func (in *ZookeeperCluster) DeepCopy() *ZookeeperCluster
- func (in *ZookeeperCluster) DeepCopyInto(out *ZookeeperCluster)
- func (in *ZookeeperCluster) DeepCopyObject() runtime.Object
- func (z *ZookeeperCluster) GetClientServiceName() string
- func (z *ZookeeperCluster) WithDefaults() bool
- func (z *ZookeeperCluster) ZookeeperPorts() Ports
- type ZookeeperClusterList
- type ZookeeperClusterSpec
- type ZookeeperClusterStatus
- type ZookeeperConfig
Constants ¶
const ( // DefaultZkContainerRepository is the default docker repo for the zookeeper // container DefaultZkContainerRepository = "pravega/zookeeper" // DefaultZkContainerVersion is the default tag used for for the zookeeper // container DefaultZkContainerVersion = "latest" // DefaultZkContainerPolicy is the default container pull policy used DefaultZkContainerPolicy = "Always" // DefaultTerminationGracePeriod is the default time given before the // container is stopped. This gives clients time to disconnect from a // specific node gracefully. DefaultTerminationGracePeriod = 30 )
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: "zookeeper.pravega.io", Version: "v1beta1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} )
Functions ¶
This section is empty.
Types ¶
type ContainerImage ¶
type ContainerImage struct { Repository string `json:"repository"` Tag string `json:"tag"` PullPolicy v1.PullPolicy `json:"pullPolicy"` }
ContainerImage defines the fields needed for a Docker repository image. The format here matches the predominant format used in Helm charts.
func (*ContainerImage) DeepCopy ¶
func (in *ContainerImage) DeepCopy() *ContainerImage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerImage.
func (*ContainerImage) DeepCopyInto ¶
func (in *ContainerImage) DeepCopyInto(out *ContainerImage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ContainerImage) ToString ¶
func (c *ContainerImage) ToString() string
ToString formats a container image struct as a docker compatible repository string.
type MembersStatus ¶
MembersStatus is the status of the members of the cluster with both ready and unready node membership lists
func (*MembersStatus) DeepCopy ¶
func (in *MembersStatus) DeepCopy() *MembersStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MembersStatus.
func (*MembersStatus) DeepCopyInto ¶
func (in *MembersStatus) DeepCopyInto(out *MembersStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Persistence ¶
type Persistence struct { // VolumeReclaimPolicy is a zookeeper operator configuration. If it's set to Delete, // the corresponding PVCs will be deleted by the operator when zookeeper cluster is deleted. // The default value is Retain. VolumeReclaimPolicy VolumeReclaimPolicy `json:"reclaimPolicy,omitempty"` // PersistentVolumeClaimSpec is the spec to describe PVC for the container // This field is optional. If no PVC spec, stateful containers will use // emptyDir as volume. PersistentVolumeClaimSpec v1.PersistentVolumeClaimSpec `json:"spec,omitempty"` }
func (*Persistence) DeepCopy ¶
func (in *Persistence) DeepCopy() *Persistence
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Persistence.
func (*Persistence) DeepCopyInto ¶
func (in *Persistence) DeepCopyInto(out *Persistence)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodPolicy ¶
type PodPolicy struct { // Labels specifies the labels to attach to pods the operator creates for // the zookeeper cluster. Labels map[string]string `json:"labels,omitempty"` // NodeSelector specifies a map of key-value pairs. For the pod to be // eligible to run on a node, the node must have each of the indicated // key-value pairs as labels. NodeSelector map[string]string `json:"nodeSelector,omitempty"` // The scheduling constraints on pods. Affinity *v1.Affinity `json:"affinity,omitempty"` // Resources is the resource requirements for the container. // This field cannot be updated once the cluster is created. Resources v1.ResourceRequirements `json:"resources,omitempty"` // Tolerations specifies the pod's tolerations. Tolerations []v1.Toleration `json:"tolerations,omitempty"` // List of environment variables to set in the container. // This field cannot be updated. Env []v1.EnvVar `json:"env,omitempty"` // Annotations specifies the annotations to attach to pods the operator // creates. Annotations map[string]string `json:"annotations,omitempty"` // SecurityContext specifies the security context for the entire pod // More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context SecurityContext *v1.PodSecurityContext `json:"securityContext,omitempty"` // TerminationGracePeriodSeconds is the amount of time that kubernetes will // give for a pod instance to shutdown normally. // The default value is 1800. TerminationGracePeriodSeconds int64 `json:"terminationGracePeriodSeconds"` }
PodPolicy defines the common pod configuration for Pods, including when used in deployments, stateful-sets, etc.
func (*PodPolicy) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodPolicy.
func (*PodPolicy) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Ports ¶
Ports groups the ports for a zookeeper cluster node for easy access
func (*Ports) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ports.
func (*Ports) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeReclaimPolicy ¶
type VolumeReclaimPolicy string
const ( VolumeReclaimPolicyRetain VolumeReclaimPolicy = "Retain" VolumeReclaimPolicyDelete VolumeReclaimPolicy = "Delete" )
type ZookeeperCluster ¶
type ZookeeperCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ZookeeperClusterSpec `json:"spec,omitempty"` Status ZookeeperClusterStatus `json:"status,omitempty"` }
ZookeeperCluster is the Schema for the zookeeperclusters API +k8s:openapi-gen=true
func (*ZookeeperCluster) ConfigMapName ¶
func (z *ZookeeperCluster) ConfigMapName() string
ConfigMapName returns the name of the cluster config-map
func (*ZookeeperCluster) DeepCopy ¶
func (in *ZookeeperCluster) DeepCopy() *ZookeeperCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZookeeperCluster.
func (*ZookeeperCluster) DeepCopyInto ¶
func (in *ZookeeperCluster) DeepCopyInto(out *ZookeeperCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ZookeeperCluster) DeepCopyObject ¶
func (in *ZookeeperCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ZookeeperCluster) GetClientServiceName ¶
func (z *ZookeeperCluster) GetClientServiceName() string
GetClientServiceName returns the name of the client service for the cluster
func (*ZookeeperCluster) WithDefaults ¶
func (z *ZookeeperCluster) WithDefaults() bool
WithDefaults set default values when not defined in the spec.
func (*ZookeeperCluster) ZookeeperPorts ¶
func (z *ZookeeperCluster) ZookeeperPorts() Ports
ZookeeperPorts returns a struct of ports
type ZookeeperClusterList ¶
type ZookeeperClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ZookeeperCluster `json:"items"` }
ZookeeperClusterList contains a list of ZookeeperCluster
func (*ZookeeperClusterList) DeepCopy ¶
func (in *ZookeeperClusterList) DeepCopy() *ZookeeperClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZookeeperClusterList.
func (*ZookeeperClusterList) DeepCopyInto ¶
func (in *ZookeeperClusterList) DeepCopyInto(out *ZookeeperClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ZookeeperClusterList) DeepCopyObject ¶
func (in *ZookeeperClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ZookeeperClusterSpec ¶
type ZookeeperClusterSpec struct { // Image is the container image. default is zookeeper:latest Image ContainerImage `json:"image,omitempty"` // Labels specifies the labels to attach to pods the operator creates for // the zookeeper cluster. Labels map[string]string `json:"labels,omitempty"` // Size (DEPRECATED) is the expected size of the zookeeper cluster. This // has been replaced with "Replicas" // // The valid range of size is from 1 to 7. Size int32 `json:"size,omitempty"` // Replicas is the expected size of the zookeeper cluster. // The pravega-operator will eventually make the size of the running cluster // equal to the expected size. // // The valid range of size is from 1 to 7. Replicas int32 `json:"replicas"` Ports []v1.ContainerPort `json:"ports,omitempty"` // Pod defines the policy to create pod for the zookeeper cluster. // // Updating the Pod does not take effect on any existing pods. Pod PodPolicy `json:"pod,omitempty"` // Persistence is the configuration for zookeeper persistent layer. // PersistentVolumeClaimSpec and VolumeReclaimPolicy can be specified in here. Persistence *Persistence `json:"persistence,omitempty"` // Conf is the zookeeper configuration, which will be used to generate the // static zookeeper configuration. If no configuration is provided required // default values will be provided, and optional values will be excluded. Conf ZookeeperConfig `json:"config,omitempty"` }
ZookeeperClusterSpec defines the desired state of ZookeeperCluster
func (*ZookeeperClusterSpec) DeepCopy ¶
func (in *ZookeeperClusterSpec) DeepCopy() *ZookeeperClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZookeeperClusterSpec.
func (*ZookeeperClusterSpec) DeepCopyInto ¶
func (in *ZookeeperClusterSpec) DeepCopyInto(out *ZookeeperClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ZookeeperClusterStatus ¶
type ZookeeperClusterStatus struct { // Members is the zookeeper members in the cluster Members MembersStatus `json:"members"` // Replicas is the number of number of desired replicas in the cluster Replicas int32 `json:"replicas"` // ReadyReplicas is the number of number of ready replicas in the cluster ReadyReplicas int32 `json:"readyReplicas"` // InternalClientEndpoint is the internal client IP and port InternalClientEndpoint string `json:"internalClientEndpoint"` // ExternalClientEndpoint is the internal client IP and port ExternalClientEndpoint string `json:"externalClientEndpoint"` }
ZookeeperClusterStatus defines the observed state of ZookeeperCluster
func (*ZookeeperClusterStatus) DeepCopy ¶
func (in *ZookeeperClusterStatus) DeepCopy() *ZookeeperClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZookeeperClusterStatus.
func (*ZookeeperClusterStatus) DeepCopyInto ¶
func (in *ZookeeperClusterStatus) DeepCopyInto(out *ZookeeperClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ZookeeperConfig ¶
type ZookeeperConfig struct { // InitLimit is the amount of time, in ticks, to allow followers to connect // and sync to a leader. // // Default value is 10. InitLimit int `json:"initLimit"` // TickTime is the length of a single tick, which is the basic time unit used // by Zookeeper, as measured in milliseconds // // The default value is 2000. TickTime int `json:"tickTime"` // SyncLimit is the amount of time, in ticks, to allow followers to sync with // Zookeeper. // // The default value is 2. SyncLimit int `json:"syncLimit"` }
ZookeeperConfig is the current configuration of each Zookeeper node, which sets these values in the config-map
func (*ZookeeperConfig) DeepCopy ¶
func (in *ZookeeperConfig) DeepCopy() *ZookeeperConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZookeeperConfig.
func (*ZookeeperConfig) DeepCopyInto ¶
func (in *ZookeeperConfig) DeepCopyInto(out *ZookeeperConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.