GithubHelp home page GithubHelp logo

rahul1804 / flippy Goto Github PK

View Code? Open in Web Editor NEW

This project forked from keikoproj/flippy

0.0 1.0 0.0 48.84 MB

Flippy provides automatic restart capability to pods based on configuration

License: Apache License 2.0

Shell 0.82% Go 93.66% Makefile 4.59% Dockerfile 0.93%

flippy's Introduction

Flippy

Go Report Card codecov

Flippy is a kubernetes operator which restarts deployments that are Service Mesh enabled if the sidecar container’s docker image doesn’t match the expected docker image. This is useful for forcing Istio data plane upgrades after a control plane upgrade if required.

Why Flippy?

There are two parts for mesh, the control plane and the data plane. The control plane changes are rolled out as a part of the IKS2 Istio add-on, but data plane changes occur with pod restarts. New sidecar containers are installed at the time pods are created. The control plane dictates which docker image gets installed as a sidecar container, but the Istio control plane does not rotate data plane pods.

How Flippy works?

Flippy provides automatic restart capability to pods based on configuration like image name change

Flippy monitors a CRD which stores the desired container image. As configmap value changes flippy operators get triggered. Flippy operators examine deployments which are mesh enabled. It restarts the mesh-injected deployments one by one asynchronously, which doesn’t block the kubernetes cluster upgrade process.
CRD have more wider filtering which can be used to solve more generic solutions instead of just istio/mesh targeted solutions.

Block Diagram

Demo

Flippy demoed in Service Mesh end-user community. Please feel free to watch the demo.

We demoed the old version which was based upon Kubernetes ConfigMap. We have improved over time and provided more advanced filters and support with Kubernetes CRD-based approach.

Who uses Flippy?

Organizations below are officially using Flippy. Please send a PR with your organization name if you are using Flippy.

Contributing

Refer to Contributing doc

flippy's People

Contributors

virajrk avatar vrushalijoshi avatar eytan-avisror avatar

Watchers

 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.