Documentation ¶
Overview ¶
Copyright The KubeDB Authors.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright The KubeDB Authors.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright The KubeDB Authors.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright The KubeDB Authors.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright The KubeDB Authors.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright The KubeDB Authors.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright The KubeDB Authors.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright The KubeDB Authors.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright The KubeDB Authors.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright The KubeDB Authors.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright The KubeDB Authors.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright The KubeDB Authors.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright The KubeDB Authors.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Index ¶
- Constants
- func NewSignedCert(cfg cert.Config, key *rsa.PrivateKey, caCert *x509.Certificate, ...) (*x509.Certificate, error)
- type Controller
- func (c *Controller) CheckStatefulSetPodStatus(statefulSet *apps.StatefulSet) error
- func (c *Controller) EnsureCustomResourceDefinitions() error
- func (c *Controller) GetDatabase(meta metav1.ObjectMeta) (runtime.Object, error)
- func (c *Controller) Init() error
- func (c *Controller) Run(stopCh <-chan struct{})
- func (c *Controller) RunControllers(stopCh <-chan struct{})
- func (c *Controller) SetDatabaseStatus(meta metav1.ObjectMeta, phase api.DatabasePhase, reason string) error
- func (c *Controller) StartAndRunControllers(stopCh <-chan struct{})
- func (c *Controller) UpsertDatabaseAnnotation(meta metav1.ObjectMeta, annotation map[string]string) error
- type OperatorConfig
Constants ¶
const ( ConfigFileName = "elasticsearch.yml" ConfigFileMountPathSG = "/elasticsearch/config" ConfigFileMountPath = "/usr/share/elasticsearch/config" TempConfigFileMountPath = "/elasticsearch/temp-config" DatabaseConfigMapSuffix = `config` )
const ( AdminUser = "admin" ElasticUser = "elastic" KeyAdminUserName = "ADMIN_USERNAME" KeyAdminPassword = "ADMIN_PASSWORD" ReadAllUser = "readall" KeyReadAllUserName = "READALL_USERNAME" KeyReadAllPassword = "READALL_PASSWORD" ExporterSecretPath = "/var/run/secrets/kubedb.com/" )
const ( NodeRoleMaster = "node.role.master" NodeRoleClient = "node.role.client" NodeRoleData = "node.role.data" NodeRoleSet = "set" )
const ( CustomConfigMountPath = "/elasticsearch/custom-config" ExporterCertDir = "/usr/config/certs" ConfigMergerInitContainerName = "config-merger" )
Variables ¶
This section is empty.
Functions ¶
func NewSignedCert ¶
func NewSignedCert(cfg cert.Config, key *rsa.PrivateKey, caCert *x509.Certificate, caKey *rsa.PrivateKey) (*x509.Certificate, error)
NewSignedCert creates a signed certificate using the given CA certificate and key
Types ¶
type Controller ¶
type Controller struct { amc.Config *amc.Controller // contains filtered or unexported fields }
func New ¶
func New( restConfig *restclient.Config, client kubernetes.Interface, crdClient crd_cs.Interface, extClient cs.Interface, stashClient scs.Interface, dc dynamic.Interface, appCatalogClient appcat_cs.Interface, promClient pcm.MonitoringV1Interface, opt amc.Config, topology *core_util.Topology, recorder record.EventRecorder, ) *Controller
func (*Controller) CheckStatefulSetPodStatus ¶
func (c *Controller) CheckStatefulSetPodStatus(statefulSet *apps.StatefulSet) error
func (*Controller) EnsureCustomResourceDefinitions ¶
func (c *Controller) EnsureCustomResourceDefinitions() error
Ensuring Custom Resources Definitions
func (*Controller) GetDatabase ¶
func (c *Controller) GetDatabase(meta metav1.ObjectMeta) (runtime.Object, error)
func (*Controller) Init ¶
func (c *Controller) Init() error
InitInformer initializes Elasticsearch, DormantDB amd Snapshot watcher
func (*Controller) Run ¶
func (c *Controller) Run(stopCh <-chan struct{})
Blocks caller. Intended to be called as a Go routine.
func (*Controller) RunControllers ¶
func (c *Controller) RunControllers(stopCh <-chan struct{})
RunControllers runs queue.worker
func (*Controller) SetDatabaseStatus ¶
func (c *Controller) SetDatabaseStatus(meta metav1.ObjectMeta, phase api.DatabasePhase, reason string) error
func (*Controller) StartAndRunControllers ¶
func (c *Controller) StartAndRunControllers(stopCh <-chan struct{})
StartAndRunControllers starts InformetFactory and runs queue.worker
func (*Controller) UpsertDatabaseAnnotation ¶
func (c *Controller) UpsertDatabaseAnnotation(meta metav1.ObjectMeta, annotation map[string]string) error
type OperatorConfig ¶
type OperatorConfig struct { amc.Config ClientConfig *rest.Config KubeClient kubernetes.Interface CRDClient crd_cs.Interface DBClient cs.Interface DynamicClient dynamic.Interface StashClient scs.Interface AppCatalogClient appcat_cs.Interface PromClient pcm.MonitoringV1Interface }
func NewOperatorConfig ¶
func NewOperatorConfig(clientConfig *rest.Config) *OperatorConfig
func (*OperatorConfig) New ¶
func (c *OperatorConfig) New() (*Controller, error)