Skip to content
This repository was archived by the owner on Dec 15, 2021. It is now read-only.

Decouple httptrigger and cronjob controllers from kubeless-controller-manager #785

Closed
sayanh opened this issue May 28, 2018 · 5 comments
Closed

Comments

@sayanh
Copy link
Contributor

sayanh commented May 28, 2018

FEATURE REQUEST:
Currently, kubeless-controller-manager manages httptrigger and cronjob custom resources as well. Although kubeless supports a bunch of ingresses as httptriggers, users like us need something else. So in order to have an absolute decoupling of httptrigger and cronjobs, I propose to cut out httptrigger and cronjob from kubeless-controller-manager and have their own controllers. We can install these controllers in the out-of-box set up. But the real benefit of this will be to allow the power users to configure based on their needs and have an ala-carté experience altogether.

Additionally, it would be possible to rewrite custom controllers for these custom resources while keeping the kubeless-cli features(e.g. kubeless trigger) intact.

What happened:
If the CRDs for http-trigger and cronjobare not created(as they won't be used) then kubeless-controller-manager keeps spamming with a ton of errors:

E0528 13:35:58.382354       1 reflector.go:205] github.com/kubeless/kubeless/pkg/controller/cronjob_trigger_controller.go:133: Failed to list *v1beta1.CronJobTrigger: the server could not find the requested resource (get cronjobtriggers.kubeless.io)

Additionally, it is not possible to rewrite a custom controller for these custom resources.

Environment:

  • Kubernetes version (use kubectl version): 1.8+
  • Kubeless version (use kubeless version): v1.0.0-alpha.x
@andresmgot
Copy link
Contributor

The idea here was to avoid having more deployments than the ones needed but I understand the point of not using HTTP or Cronjob triggers. cc/ @murali-reddy what do you think?

@murali-reddy
Copy link
Contributor

I am fine to totally decouple, and install some trigger controllers (http trigger perhaps) by default so users can quickly try Kubeless.

@sayanh would you like to give a try? Should be failry easy they are already seperate components except they are rolled into same binary, deployment etc.

@sayanh
Copy link
Contributor Author

sayanh commented Jun 5, 2018

@murali-reddy sounds good

@murali-reddy
Copy link
Contributor

@sayanh may be this can rolled into #695 which i am working on it

@andresmgot
Copy link
Contributor

So with #871 HTTP and cronjob triggers have their own controller that run in an independent container in the controller pod.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants