Git Product home page Git Product logo

extension-kubernetes's Introduction

Kubernetes logo depicting a helm next to text 'Kubernetes'

Steadybit extension-kubernetes

A Steadybit extension implementation for Kubernetes.

Learn about the capabilities of this extension in our Reliability Hub.

Configuration

Environment Variable Helm value Meaning required default
STEADYBIT_EXTENSION_KUBERNETES_CLUSTER_NAME kubernetes.clusterName The name of the kubernetes cluster yes
STEADYBIT_EXTENSION_DISABLE_DISCOVERY_EXCLUDES discovery.disableExcludes Ignore discovery excludes specified by steadybit.com/discovery-disabled false false
STEADYBIT_EXTENSION_LABEL_FILTER These labels will be ignored and not added to the discovered targets false controller-revision-hash,pod-template-generation,pod-template-hash
STEADYBIT_EXTENSION_ACTIVE_ADVICE_LIST List of active advice definitions, default is all (*). You can define a list of active adviceDefinitionId. See UI -> Settings -> Extension -> Advice -> Column: ID false *
STEADYBIT_EXTENSION_DISCOVERY_ATTRIBUTES_EXCLUDES_CONTAINER discovery.attributes.excludes.container List of Target Attributes which will be excluded during container discovery. Checked by key equality and supporting trailing "*" false
STEADYBIT_EXTENSION_DISCOVERY_ATTRIBUTES_EXCLUDES_DEPLOYMENT discovery.attributes.excludes.deployment List of Target Attributes which will be excluded during deployment discovery. Checked by key equality and supporting trailing "*" false
STEADYBIT_EXTENSION_DISCOVERY_ATTRIBUTES_EXCLUDES_DAEMON_SET discovery.attributes.excludes.daemonSet List of Target Attributes which will be excluded during daemonSet discovery. Checked by key equality and supporting trailing "*" false
STEADYBIT_EXTENSION_DISCOVERY_ATTRIBUTES_EXCLUDES_STATEFUL_SET discovery.attributes.excludes.statefulSet List of Target Attributes which will be excluded during statefulSet discovery. Checked by key equality and supporting trailing "*" false
STEADYBIT_EXTENSION_DISCOVERY_ATTRIBUTES_EXCLUDES_POD discovery.attributes.excludes.pod List of Target Attributes which will be excluded during pod discovery. Checked by key equality and supporting trailing "*" false
STEADYBIT_EXTENSION_DISCOVERY_MAX_POD_COUNT discovery.maxPodCount Skip listing pods, containers and hosts for deployments, statefulsets, etc. if there are more then the given pods. false 50

The extension supports all environment variables provided by steadybit/extension-kit.

The process requires access rights to interact with the Kubernetes API.

Please have a look at /charts/steadybit-extension-kubernetes/templates/clusterrole.yaml for a recent list of required permission

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: extension-kubernetes
rules:
  - apiGroups:
    - ...
---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: extension-kubernetes
  namespace: steadybit-extension
automountServiceAccountToken: true
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: extension-kubernetes
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: extension-kubernetes
subjects:
  - kind: ServiceAccount
    name: extension-kubernetes
    namespace: steadybit-extension

Installation

We recommend that you deploy the extension with our official Helm chart.

Helm

helm repo add steadybit-extension-kubernetes https://steadybit.github.io/extension-kubernetes
helm repo update

helm upgrade steadybit-extension-kubernetes \
  --install \
  --wait \
  --timeout 5m0s \
  --create-namespace \
  --namespace steadybit-extension \
  --set kubernetes.clusterName=<NAME_OF_YOUR_CLUSTER> \
  steadybit-extension-kubernetes/steadybit-extension-kubernetes

Docker

You may alternatively start the Docker container manually.

docker run \
  --env STEADYBIT_LOG_LEVEL=info \
  --expose 8088 \
  --env STEADYBIT_EXTENSION_KUBERNETES_CLUSTER_NAME=<NAME_OF_YOUR_CLUSTER> \
  ghcr.io/steadybit/extension-kubernetes:latest

Register the extension

Make sure to register the extension at the steadybit platform. Please refer to the documentation for more information.

mark resources as "do not discover"

to exclude a deployment / namespace / pod from discovery you can add the label "steadybit.com/discovery-disabled": "true" to the resource labels

extension-kubernetes's People

Contributors

ansgarschulte avatar dependabot[bot] avatar github-actions[bot] avatar joeyb avatar joshiste avatar manuelgerding avatar reuda avatar simonthiele avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.