health-operator

command module
v0.0.0-...-9fff5d5 Latest Latest
Warning

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

Go to latest
Published: Sep 25, 2020 License: Apache-2.0 Imports: 10 Imported by: 0

README

* Health Operator

Health Operator watches for changes in Kubernetes Deployments,
StatefulSets and DaemonSets and creates a summary status resource aka
health CR.

kubectl get health -o yaml -n $target_namespace

#+BEGIN_SRC text
- apiVersion: common.amadev.ru/v1
  kind: Health
  status:
    nova:
      metadata:
        generation: 2
        status: ready
      os-api:
        generation: 2
        status: ready
      scheduler:
        generation: 2
        status: ready
    octavia:
      api:
        generation: 2
        status: ready
      housekeeping:
        generation: 2
        status: ready
      worker:
        generation: 2
        status: ready
#+END_SRC

It watches for changes on a cluster level but updates health CR on per
namespace basis only if health CR is already present in the namespace.

To determine an application and a component name, an `application' and
`component` label used on Kubernetes objects. If none of these found,
Health Operator tries to parse application and component name from a
k8s object name.

The status of a component can be either "ready" or "notready".  Health
Operator never deletes any app statuses.

** Install

#+BEGIN_SRC sh
# create health custom resource definition
kubectl apply -f https://raw.githubusercontent.com/amadev/health-operator/master/config/install_crd.yaml
# create health resource for a desired namespace
export target_namespace=openstack
kubectl apply -f https://raw.githubusercontent.com/amadev/health-operator/master/config/samples/common_v1alpha1_health.yaml -n $target_namespace
# install operator
kubectl apply -f https://raw.githubusercontent.com/amadev/health-operator/master/config/install.yaml
# get summary health status
kubectl -n $target_namespace get health -o yaml
#+END_SRC

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
api
v1alpha1
Package v1alpha1 contains API Schema definitions for the common v1 API group +kubebuilder:object:generate=true +groupName=common.amadev.ru
Package v1alpha1 contains API Schema definitions for the common v1 API group +kubebuilder:object:generate=true +groupName=common.amadev.ru

Jump to

Keyboard shortcuts

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