All Projects → flant → Addon Operator

flant / Addon Operator

Licence: apache-2.0
A system to manage additional components for Kubernetes cluster in a simple, consistent and automated way.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Addon Operator

Ccodashboard
Welcome to the Continuous Cloud Optimization Power BI Dashboard GitHub Project. In this repository you will find all the guidance and files needed to deploy the Dashboard in your environment to take benefit of a single pane of glass to get insights about your Azure resources and services.
Stars: ✭ 256 (-8.24%)
Mutual labels:  devops
Foremast
Spinnaker Pipeline/Infrastructure Configuration and Templating Tool - Pipelines as Code.
Stars: ✭ 263 (-5.73%)
Mutual labels:  devops
Apisix Dashboard
Dashboard for Apache APISIX
Stars: ✭ 268 (-3.94%)
Mutual labels:  devops
Azure Devops Python Api
Azure DevOps Python API
Stars: ✭ 257 (-7.89%)
Mutual labels:  devops
Aws To Slack
Forward AWS CloudWatch Alarms and other notifications from Amazon SNS to Slack.
Stars: ✭ 261 (-6.45%)
Mutual labels:  devops
Tweek
Tweek - an open source feature manager
Stars: ✭ 268 (-3.94%)
Mutual labels:  devops
Netdata
Real-time performance monitoring, done right! https://www.netdata.cloud
Stars: ✭ 57,056 (+20350.18%)
Mutual labels:  devops
Aegis
Serverless Golang deploy tool and framework for AWS Lambda
Stars: ✭ 277 (-0.72%)
Mutual labels:  devops
Perfops Cli
A simple command line tool to interact with hundreds of servers around the world.
Stars: ✭ 263 (-5.73%)
Mutual labels:  devops
Stern
⎈ Multi pod and container log tailing for Kubernetes -- Friendly fork of https://github.com/wercker/stern
Stars: ✭ 268 (-3.94%)
Mutual labels:  devops
Devops Api
Golang + Beego 编写 提供开发/运维常用操作的HTTP API接口: 手机归属地查询、IP地址查询、工作日节假日判断、微信报警、钉钉报警、2步验证、密码存储、发送邮件、生成随机密码等功能
Stars: ✭ 258 (-7.53%)
Mutual labels:  devops
Salt Scanner
Linux vulnerability scanner based on Salt Open and Vulners audit API, with Slack notifications and JIRA integration
Stars: ✭ 261 (-6.45%)
Mutual labels:  devops
Takeoff
A rapid development environment using docker for convenience.
Stars: ✭ 271 (-2.87%)
Mutual labels:  devops
Aws Service Catalog Reference Architectures
Sample CloudFormation templates and architecture for AWS Service Catalog
Stars: ✭ 257 (-7.89%)
Mutual labels:  devops
Adminset
自动化运维平台:CMDB、CD、DevOps、资产管理、任务编排、持续交付、系统监控、运维管理、配置管理
Stars: ✭ 2,985 (+969.89%)
Mutual labels:  devops
Youtube Videos
Documentation for Techno Tim YouTube Videos
Stars: ✭ 250 (-10.39%)
Mutual labels:  devops
Infrastructure As Code Training
Materials for learning how to use infrastructure-as-code
Stars: ✭ 268 (-3.94%)
Mutual labels:  devops
Faraday
Faraday introduces a new concept - IPE (Integrated Penetration-Test Environment) a multiuser Penetration test IDE. Designed for distributing, indexing, and analyzing the data generated during a security audit.
Stars: ✭ 3,198 (+1046.24%)
Mutual labels:  devops
Vps
个人笔记汇总
Stars: ✭ 276 (-1.08%)
Mutual labels:  devops
Fms
运维故障管理系统
Stars: ✭ 270 (-3.23%)
Mutual labels:  devops

Addon-operator logo

docker pull flant/addon-operator GH Discussions Telegram chat RU

Addon-operator combines Helm charts with hooks and values storage to transform charts into smart modules that configure themselves and respond to changes in the cluster.

Contents

Features

  • Discovery of values for Helm charts — parameters can be generated, calculated or retrieved from the cluster;
  • Continuous discovery — parameters can be changed in response to cluster events;
  • Controlled Helm execution — addon-operator monitors the Helm operation to ensure the Helm chart’s successful installation. Coming soon: use kubedog to track deploy status and more;
  • Custom extra actions before and after running Helm as well as any other events via the hooks paradigm. See related shell-operator capabilities.

Additionally, addon-operator provides:

  • ease of maintenance of Kubernetes clusters: use the tools that Ops are familiar with to build your modules and hooks such as Bash, kubectl, Python, etc;
  • the execution queue of modules and hooks that ensures the launch sequence and repeated execution in case of an error, which simplifies programming of modules and ensures predictable outcome of their operation;
  • the possibility of dynamic enabling/disabling of a module (depending on detected parameters);
  • the ability to tie conditions of module activation to the activation of other modules;
  • the unified ConfigMap for the configuration of all settings;
  • the ability to run Helm only if parameters have changed. In this case, helm history would output only releases with changes;
  • global hooks for figuring out parameters and performing actions that affect several dependent modules;
  • off-the-shelf metrics for monitoring via Prometheus.

Overview

Hooks and Helm values

Hooks are triggered by Kubernetes events and in response to other stimuli.

Hooks are triggered by Kubernetes events

A hook is an executable file that can make changes to Kubernetes and set values of Helm (they are stored in the memory of addon-operator) during execution.

A hook is an executable file

Hooks are a part of the module. Also, there is a Helm chart in the module. If the hook makes changes to values, then addon-operator would upgrade the release of the Helm chart.

Hook is a part of the module

Modules

There can be many modules.

Many modules

In addition to modules, addon-operator supports global hooks and global values. They have a storage of values. Global hooks are triggered by events and when active they can:

  • Make changes to Kubernetes cluster;
  • Make changes to global values storage.

Global hooks and global values

If the global hook changes values in the global storage, then addon-operator triggers an upgrade of releases of all Helm charts.

Changes in global values cause reinstallation

Installation

You may use a prepared image flant/addon-operator to install addon-operator in a cluster. The image comprises a binary addon-operator file as well as several required tools: helm, tiller, kubectl, jq, bash.

The installation incorporates the image building process with files of modules and hooks, applying the necessary RBAC rights and deploying the image in the cluster.

To experiment with modules, hooks, and values we've prepared some examples.

What's next?

Community

Please feel free to reach developers/maintainers and users via GitHub Discussions for any questions regarding addon-operator.

You're also welcome to follow @flant_com to stay informed about all our Open Source initiatives.

License

Apache License 2.0, see LICENSE.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].