DEV Community

Cover image for Zero-cost automation for Kubernetes developers - A self-hosted DevOps platform
Gayathri R
Gayathri R

Posted on • Updated on

Zero-cost automation for Kubernetes developers - A self-hosted DevOps platform

Kubernetes containerization and container orchestration are rapidly increasing, according to the Cloud Native Survey from 2020, the usage of containers in production jumped 300%. But simultaneously the challenges involved in the onboarding process all increased, as per a report by D2IQ almost all organizations (96%) face challenges and complexities during initial deployments of containerized applications (called Day 2 Operations in DevOps language) and cite Kubernetes as a source of pain. In this blog, I’m going to highlight the challenges in adopting Kubernetes & how gopaddle lite (Community Edition) resolves it.

Challenges adopting Kubernetes

  • Deployment Complexities and manual tasks

Deploying an application into Kubernetes are not effortless as it involves a lot of manual scripting. For instance, to deploy an application to Kubernetes an engineer has to write manifest files in YAML or JSON format and write kubectl commands to deploy those manifest files. For a single application, it might be an easy process but to deploy multiple applications by multiple developers across multiple environments (DEV/QA/PROD) across multiple clouds and on-premise environments - it's an arduous task.

  • Overdependent on experts and burnout

Lack of Kubernetes knowledge and expertise makes developers and application teams heavily dependent on the DevOps or the Site Reliability Engineering (SRE) teams to continuously help them create K8s manifiests and automate continuous monitoring, alerting, and remediation to keep the applications highly available. The process of follow-up and collaboration across various teams to get the changes deployed takes away a lot of time from all the stakeholders. Furthermore, with shorter deadlines and immense pressure to meet the business objectives, the teams end up spending long hours deploying their changes.

  • Dealing with security challenges

Kubernetes does not enforce security policies. Developers have to configure policies to discover vulnerabilities and security issues in their application and in their Kubernetes environments.

How gopaddle lite simplifies Kubernetes adoption?

gopaddle lite Community Edition is an easy-to-manage Kubernetes automation platform for startups, developers, and learners. It is a no-code platform to build, deploy and maintain Kubernetes workloads on Kubernetes environments on local desktops, on-premise, and on a cloud. It offers three main capabilities:

  1. Accelerate modernization  —  With its intelligent scaffolding, gopaddle can transform code into Kubernetes deployments in minutes.

  2. Increase productivity  —  With its out-of-the-box tools integration and ready-to-use templates (gopaddle marketplace), gopaddle reduces the overhead of tedious maintenance and increases productivity.

  3. Automate CI/CD —  Automates DevOps processes, like Continuous Integration and Deployments, monitoring, logging, and alerting.

Traditional Method gopaddle Lite
Base Image Manual Preparation Intelligent scaffolding discovers the application and suggests best-fit base Images based on the nature of the application
Dockerfile Manual Auto-Generated
YAML or JSON Manual Auto-Generated
vulnerability scans Third-Party Tools Native and customizable
Complexity High Low
Time duration for the entire process Months Mins to hours based on the nature of the application
Continuous Integration Requires automation effort Built-in
Monitoring/Logging Requires automation effort Built-in
Alerts and Notifications Requires automation effort Built-in & can be integrated with 3rd party tools

Installing gopaddle lite on your local desktop (or) on-premise (or) cloud-based is just a 2 step process. As a pre-requisite, you need to setup microk8s cluster v 1.24 on an environment with 32GB RAM and 8 vCPU. Once the microk8s cluster is ready, you can add the gopaddle lite repo to microk8s addon and then enable it. This brings up all the gopaddle lite services as Kubernetes services and waits for all the services to move to running state.

$ sudo microk8s addons repo add gp-lite \
 https://github.com/gopaddle-io/microk8s-community-addons-gplite.git

$ sudo microk8s enable gopaddle-lite
Enter fullscreen mode Exit fullscreen mode

For more information, you can check out https://github.com/gopaddle-io/microk8s-community-addons-gplite/tree/4.2.3.

Once the installation is complete, the gopadde lite installer displays an endpoint using which you can access the gopaddle lite dashboard from the browser.

The installation takes about 10 - 15 minutes to complete and you have the self-hosted Kubernetes solution in your local environment.

For more information regarding gopaddle lite, you can reach us at hello@gopaddle.io or join our slack channel.

Top comments (0)