kubeplus VS sample-controller

Compare kubeplus vs sample-controller and see what are their differences.

sample-controller

Repository for sample controller. Complements sample-apiserver (by kubernetes)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
kubeplus sample-controller
38 7
595 2,998
2.5% 1.6%
7.9 0.0
about 1 month ago 1 day ago
Go Go
Apache License 2.0 Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

kubeplus

Posts with mentions or reviews of kubeplus. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-04-21.
  • Traditional Shared Hosting on Kubernetes?
    2 projects | /r/kubernetes | 21 Apr 2023
  • Kubebouncer - Custom admission controller webhooks
    3 projects | /r/kubernetes | 20 Apr 2023
    We went through this migration/upgrade in our KubePlus project (https://github.com/cloud-ark/kubeplus). It has an embedded webhook in it, fyi.
  • Is it a good idea to use k8s namespace-based multitenancy for delivering managed service of an application?
    4 projects | /r/kubernetes | 18 Mar 2023
    Thanks for the pointer. As per this document, 'Multi-customer tenancy' seems to be the closest to the managed/hosted application use case. Has anyone used KubePlus solution referenced here?
    4 projects | /r/kubernetes | 18 Mar 2023
    Yeah, any pointers for the challenges you faced, or any additional case study documentation will be helpful. Do you think solution like https://github.com/cloud-ark/kubeplus can be useful to simplify automation?
    4 projects | /r/kubernetes | 18 Mar 2023
    You might want to check out - KubePlus (https://github.com/cloud-ark/kubeplus), which has already been referenced in the thread and is exactly designed for building managed application services. I am the originator and core contributor to this project. KubePlus is a Kubernetes Operator that takes an application Helm chart and represents it as a Kubernetes API (CRD) on the cluster. This API allows you to create instances of the application in separate namespaces automatically ensuring a secure perimeter around each instance using NetworkPolicy, Resource Quota, and RBAC. These soft multi-tenancy measures are already mentioned in the thread along with the namespace. KubePlus has automated all of them for you under an API. This API not only allows the creation of the application instances but also supports day-2 operations such as monitoring, troubleshooting, and upgrades to simplify the end-to-end functioning of any managed application service. We are currently seeing interest from teams that want to create managed services for different types of containerized applications, including open-source platforms such as WordPress, Moodle, Ozone/OpenMRS, AI/ML workloads, etc. KubePlus has been tested successfully with all (90+) Bitnami Helm charts. For anyone who wants to deliver a managed application with minimal / no Kubernetes access to their customers, KubePlus can help by accelerating the implementation of namespace-based multi-tenancy on Kubernetes. With the ability to set NetworkPolicy and Resource Quota per application instance, the blast radius is restricted, if something goes wrong in an application instance. KubePlus does not need admin permissions on your cluster. This makes it possible to use KubePlus to manage your application instances on your customer's cluster as well.
  • Writing a Kubernetes Operator
    11 projects | news.ycombinator.com | 9 Mar 2023
    We have an FAQ about Operators here: https://github.com/cloud-ark/kubeplus/blob/master/Operator-F...

    It should be helpful if you are new to the Operator concept.

    Operators are generally useful for handling domain-specific actions - for example, performing database backups, installing plugins on Moodle/Wordpress, etc. If you are looking for application deployment then a Helm chart should be sufficient.

  • Kubernetes for SaaS with multi-instance
    3 projects | /r/kubernetes | 22 Oct 2022
    A more commerical offering is from Cloudark who have designed a specific solution for operating your Helm application as a SaaS offering. I have never used it (ArgoCD being my poison) but you might find it fits your usecase better
  • What is your experience with operators?
    2 projects | /r/kubernetes | 22 Nov 2021
    You might also want to checkout Operator guidelines and Operator FAQ: - Operator Maturity Model guidelines: https://github.com/cloud-ark/kubeplus/blob/master/Guidelines.md
  • Does anybody need a Kubernetes Operator for auto renewing SSL certificates?
    3 projects | /r/kubernetes | 29 Sep 2021
    The project that is getting some traction recently is our KubePlus Operator that delivers Helm charts as-a-service: https://github.com/cloud-ark/kubeplus
  • Feedback wanted on pod resource metrics before GA promotion
    2 projects | /r/kubernetes | 2 Sep 2021
    When you say capacity planning, can you elaborate on some use-case(s) that are being targeted with this feature? Is the idea that knowing the actual usage directly from the scheduler can help deployers, either from outside the cluster or in-cluster via GitOps, make informed decisions such as configuring node selectors on any future Pods? The reason I ask this is - in our project (KubePlus - https://github.com/cloud-ark/kubeplus ) we support Node selector policies at Helm chart level. This enables, for example, to create a Helm release on a specific worker node. Currently KubePlus is not using any metrics data to decide whether a particular node has enough spare capacity to accommodate the incoming Helm release. If the Pod metrics are available from the scheduler then we can correlate those with the nodes on which the Pods are running and then decide whether a node has enough remaining capacity to support the resources of the Helm release.

sample-controller

Posts with mentions or reviews of sample-controller. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-11-25.
  • Is there a tutorial on how to write an Operator in Go?
    4 projects | /r/kubernetes | 25 Nov 2022
    - Sample controller: https://github.com/kubernetes/sample-controller
  • Writing an Operator from scratch
    7 projects | /r/kubernetes | 5 Nov 2022
    The most low-level approach I have seen is using the client-go package. Both kubebuilder and controller-runtime are based on this package. You can see an official example here: https://github.com/kubernetes/sample-controller/blob/master/docs/controller-client-go.md But even that sample requires some code generation on top of it https://cloud.redhat.com/blog/kubernetes-deep-dive-code-generation-customresources
  • How to get to the next Level in Kubernetes?
    3 projects | /r/kubernetes | 31 Aug 2021
    As far as Operator development goes, if you are comfortable with golang then I would recommend checking out sample-controller https://github.com/kubernetes/sample-controller It does not abstract the underlying client-go machinery and so provides a good way to understand how various parts of an Operator come together. On the other hand, if you don't want to get exposed to that much details then either Operator SDK or Kubebuilder will be good options. In case you are not into golang then there are SDKs for other languages as well (Python, Java, etc.).
  • Opensource K8s operator developed in Go to contribute
    4 projects | /r/kubernetes | 18 Jun 2021
    Cool! Given that you mention you are a beginner in K8s operator development, here is a plan that I would like to suggest. 1. Get basic understanding of Kubernetes custom controllers first. The sample controller repo is a good place to start. https://github.com/kubernetes/sample-controller
  • How to start combining kubernetes and go knowledge
    5 projects | /r/kubernetes | 17 Mar 2021
    the sample controller using client-go to learn about informers: https://github.com/kubernetes/sample-controller

What are some alternatives?

When comparing kubeplus and sample-controller you can also consider the following projects:

vcluster - vCluster - Create fully functional virtual Kubernetes clusters - Each vcluster runs inside a namespace of the underlying k8s cluster. It's cheaper than creating separate full-blown clusters and it offers better multi-tenancy and isolation than regular namespaces.

capsule - Multi-tenancy and policy-based framework for Kubernetes.

labs

kots - KOTS provides the framework, tools and integrations that enable the delivery and management of 3rd-party Kubernetes applications, a.k.a. Kubernetes Off-The-Shelf (KOTS) Software.

crossplane - The Cloud Native Control Plane

mongodb-kubernetes-operator - MongoDB Community Kubernetes Operator

sealed-secrets - A Kubernetes controller and tool for one-way encrypted Secrets

kubebuilder - Kubebuilder - SDK for building Kubernetes APIs using CRDs

porter - Porter enables you to package your application artifact, client tools, configuration and deployment logic together as an installer that you can distribute, and install with a single command.

percona-xtradb-cluster-operator - Percona Operator for MySQL based on Percona XtraDB Cluster

helm-charts - Komodor.io public helm charts

deckhouse - Kubernetes platform from Flant