1
10 Comments

Are there interest in a Kubernetes product for small/medium size businesses?

I am a DevOps consultant mainly helping people run AWS/GCP infrastructure with Kubernetes. I have a set of open source software (which i can link to if anyone wants to take a look) that shows you how to create a Kubernetes cluster which is maintainable and secure. All of the items comes from my consulting work on what my clients wanted out of their infrastructure and Kubernetes. I tend to repeat a lot of the work from client to client so I just have this open Github repository with all of the common items in it. I use this kinda as a sales tool showing them what I do and what I would give them and if they wanted to run the stuff them self, they can.

I have some questions around if I can monetize on this?

  • Is this something that small/medium size business want or need?
  • Does anyone else struggle to create infrastructure?
posted to Icon for group Ideas and Validation
Ideas and Validation
on March 4, 2020
  1. 1

    What do you offer that Fargate, EKS, and kops don't?

    At $dayjob we kops along with a bootstrap script that can launch a dev or production cluster. We do upgrading by launching a cluster in parallel then changeling external DNS to point to the new cluster. That bootstrap script is proprietary, however.

    That being said, Kubernetes is in very high demand. Many businesses would benefit from the rapid deployment it offers but can't find or afford the right people. There is a lack of a good integrated ci/cd pipeline (Jenkins X Is a toy) along with terraform for outside-the-cluster resources. I think providing a supported turnkey solution for all that would bring a lot of value to the table. The open source world will always eat away at the non-support related aspects though.

    1. 1

      Ah cool...sounds like you have a good setup there. You mention you are using external DNS and wanted to ask you a question about it. Part of my work is to get all the "basic" infra apps as I call them working on a cluster. This would mean apps like external-dns, cert-manager, nginx-ingress, prometheus-operator, ELK/logging, etc all working and when there is an update, go and update them.

      Questions are, are you using all of these items? How much time per month do you spend a month "maintaining" these items? How do you deploy these items out to your clusters?

      Im asking because I think I can create a service to maintain all of these items (and more) for people so they don't have to spend time on these common and not core services to their application.

      What do you think?

      1. 1

        So we don't use cert-manager (we use the AWS certs) and for logging we use DataDog. Once set up, we don't spend much time messing with external-dns, nginx-ingress, or prometheus-operator. We deploy them with helm. We do spend time on the version upgrades, trying to do better with charts (moving to helm3 currently), debugging high connection load issues (we have hundreds of thousands of concurrent connections and billions of API calls per month). In total, we probably spend about 50% of a person on kubernetes.

        1. 1

          Ah, makes sense. Thanks for the info.

  2. 1

    I inherited a k8s setup on Azure and man it was a learning curve! This one used Terraform which does a good job of deploying so that’s not an issue. But troubleshooting incidents and working out where in the layers something had actually gone wrong when there is downtime is quite hard.

    1. 1

      I feel your pain there. Kubernetes is a beast. I tried to make a Slack bot to help people troubleshoot kubernetes but that didnt really take off. It was hard to get people to use a new tool. People were use to googling around for answers (or most probably my tool wasnt all that good).

      @mcapodici Just wondering if you are using nginx-ingress, external-dns, cert-manager, cluster-autoscaler, prometheus-operator, etc, etc to help you run and monitor your cluster?

      In my consultancy, I help clients do this and it is very repetitive work. It is basically the same setup over and over again. The complexity is in all of these items wiring up together and as new versions of each comes by, it might break that wiring up and needs to be fixed.

      I was thinking of offering a service where I would maintain these items (and more) for a smaller fee than a consulting fee. The value to the customer is that they get all of these items maintained and integrated together without having to spend their own time on it.

      What do you think about that?

      1. 1

        I am not using those things (at least I don't think so).

        As for having those wired for a fee - I'd say maybe. I'd need to know it helps solve the problem of diagnosing and preventing downtime, and I would need to know how to use those things. What do I look at.

        Being an engineering team I think we'd expect to understand it ourselves rather than let a 3rd party do it, unless the 3rd party is doing the whole shebang (e.g. we let Azure be our cloud host).

        Bear in mind we are a weird case in that we could have easily not used k8s, but someone else was quite dev-opys and set it up. We have a very small cluster I imagine by most standards.

        1. 1

          That is fair. Let me give you some examples. Im not sure how you are using your cluster so you might not need this stuff at all.

          • Nginx ingress is just an L7 HTTP routing:
            Web client <--> Internet <--> Cloud Load Balancer <--pointing to Kubernetes-> Nginx ingress <----> Your various pods

          This is just a way to get internet traffic into your cluster

          ----

          • external-dns

          If you have externally facing domain names for your services like my-api.example.com, you need to set that up to point to the Kubernetes Load balancer from the previous bullet point. This looks at what you have configured on the kube cluster and it goes and sets it up in your DNS. If it ever changes in Kubernetes it will sync it up with the proper settings.

          • cert-manager

          If you were to expose external HTTP applications then you probably want HTTPS/TLS. Cert-manager talks to Let's Encrypt to get you some free certs and it keeps that cert updated and renewed.

          This interact with DNS and HTTP to get and verify the cert.

          • Prometheus operator

          Is a metrics collection and visualization with Grafana. Gets you CPU/Memory/Disk/Network, broken out by node, pods, deployments, namespace, etc and it gives you a whole slew of default dashboards that are very useful for looking at information about your cluster and the pods that are running in it.

          ---

          I guess the list goes on with a lot of useful tools to help make your cluster more automated and useful. You absolutely don't need any of these items but it feels like every client I have worked with over the years basically ends up with a common set of open source tools that they add to their cluster and I am always on this update/troubleshoot/fix cycle.

          1. 1

            One possible thing you could so is release a book or course about how to set up a well tuned well monitored cluster on Azure (or choosing AWS might give you a bigger audience!). I'm not sure how big that market is but it's kinds of people who are devs not devops but nonetheless have a k8s cluster as a pet.

            1. 1

              That is an interesting idea. I am so far going down the route of publishing a Github repo with Terraform to create and run Kubernetes clusters (GCP/AWS so far only) and managing the applications I mentioned above: https://github.com/ManagedKube/kubernetes-ops

              I havent had any clients on Azure yet and I am interested in getting some experience on that platform. Would you be interested in any free help?

Trending on Indie Hackers
I got my first $159 in sales after realizing I was building in silence User Avatar 53 comments Three Days Before Launch, I Let My Own Tool Tear Me Apart User Avatar 37 comments I thought I was building a news visualization tool. Users thought it was a catch-up tool. User Avatar 31 comments I got tired of rewriting the same content for 9 different platforms. So I built Repostify. User Avatar 30 comments A pattern I keep seeing in EdTech: traffic isn't usually the problem. User Avatar 23 comments I Rejected a $15K Acquisition Offer for My Multi-Agent IDE — Here's the Full Breakdown User Avatar 18 comments