Kubernetes Support and Setup

I support Kubernetes clusters for small IT teams, in the cloud and on-premise: managed Kubernetes such as AWS EKS, and K3s or kubeadm on your own servers, including isolated networks.

I make sure the cluster is upgraded on time, pods don't crash, resources don't sit idle and releases go out from Git. And I'll tell you honestly if your project doesn't need Kubernetes and Docker Compose on a single server is enough.

  • Cloud and on-premise
  • Managed K8s, K3s, kubeadm
  • Helm, ArgoCD

What Kubernetes support includes

You can take a single item, for example just a version upgrade, or hand over the whole cluster.

Cluster deployment

I build a cluster that is described in code and can be recreated from scratch.

  • ✓managed Kubernetes in the cloud
  • ✓on-premise: K3s or kubeadm on your servers
  • ✓ingress, certificates, storage
  • ✓Terraform and Helm instead of manual commands

Version upgrades

Kubernetes ships a new minor version roughly every 4 months. I upgrade on a plan, not when the provider forces it.

  • ✓deprecated API checks before upgrading
  • ✓control plane, nodes and add-ons
  • ✓one node at a time, no downtime
  • ✓a rollback plan

Resources and stability

Most pod crashes come from wrong limits and missing health checks.

  • ✓requests and limits based on real usage
  • ✓liveness and readiness probes
  • ✓pod and node autoscaling
  • ✓PodDisruptionBudget for safe upgrades

Monitoring and logs

You see not only what broke but why.

  • ✓cluster, node and application metrics
  • ✓logs from all pods in one place
  • ✓Telegram alerts
  • ✓dashboards for the team

CI/CD and GitOps

A release should come from Git and roll back with one command, not go out via kubectl from a laptop.

  • ✓Helm charts for services
  • ✓GitLab CI or GitHub Actions pipelines
  • ✓GitOps with ArgoCD
  • ✓development and production environments

Security

I close the typical holes left in clusters after a quick start.

  • ✓RBAC and separate access for people and CI
  • ✓network policies between services
  • ✓secrets kept out of Git
  • ✓image vulnerability scanning

Backups

The cluster can be recreated from code, the data can't. So backups and restore tests are a must.

  • ✓manifests and persistent volumes
  • ✓databases backed up outside the cluster
  • ✓storage in S3
  • ✓scheduled restore tests

Cluster audit

I review a cluster inherited from a previous team and write a plan.

  • ✓versions and support dates
  • ✓resources and node costs
  • ✓access, secrets, network policies
  • ✓an answer to whether you need Kubernetes at all

Kubernetes support pricing

Fixed rates. Work outside the support plan is estimated and agreed in advance.

FormatPriceWhat's included
Cluster auditfrom $230versions, resources, access, deployment, monitoring, backups; a report with a plan
Support$250/monthwatching alerts and nodes, planning upgrades, incident response
One-off tasks$35/hourversion upgrades, monitoring, moving services into the cluster

Example estimates

TaskEstimate
Upgrade the cluster by one minor version2-6 hours
Monitoring and alerts for the cluster and applications4-8 hours
Move services from Docker Compose into the clusterfrom 10 hours
Set up deployment with ArgoCD4-8 hours

How we work

  1. 1

    Read-only access

    I start with a read-only kubeconfig: I can look at the cluster without breaking anything.

  2. 2

    Cluster map

    Versions, nodes, load, what is deployed and how, where secrets and data are kept.

  3. 3

    Risks

    I note what will break first: deprecated APIs, pods without limits, missing backups.

  4. 4

    Work plan

    I propose the order of work. Sometimes that means moving to K3s or Docker Compose instead of fixing the cluster.

  5. 5

    Support

    If needed, I stay on support: scheduled upgrades, alerts, helping the team with deployments.

Common problems

The cluster was inherited from a previous DevOps

No documentation, the version is long out of support, and nobody knows what an upgrade will break.

Pods restart and nobody looks into it

OOMKilled, CrashLoopBackOff, overloaded nodes. Usually it's limits and probes, not "Kubernetes being flaky".

The cluster costs more than it should

Nodes at 15% utilization, test environments running around the clock, more load balancers than services.

Manual releases

Releases go out via kubectl apply from a laptop, and nobody can repeat yesterday's deployment.

Do you need Kubernetes?

Kubernetes solves real problems, but it costs money and time to run. A quick check:

It fits ifProbably not needed if
more than 5-10 services and several environments1-3 services on one or two servers
the load varies and you need autoscalingthe load is steady and predictable
zero-downtime releases mattera short outage during a release is fine
someone on the team will work with itnobody can look after a cluster

At MomsLab, moving from full K8s to K3s cut the infrastructure budget by 40%.

Kubernetes, K3s or Docker Compose

Three options small teams usually choose between:

KubernetesK3sDocker Compose
Formany services, growth, cloudthe same on 1-5 nodes with fewer resourcesa few services on one server
Complexityhighmediumlow
Compatibilitythe standardsame API, same Helm chartsits own format, no cluster
Ecosystemeverythingalmost everythingDocker only

Moving between Kubernetes and K3s is nearly seamless: the manifests and charts stay the same. Going from Compose to Kubernetes means describing the services again as manifests or Helm charts.

Technologies

Clusters
Managed KubernetesK3skubeadmAWS EKS
Tools
kubectlk9s
Deployment
HelmArgoCDGitLab CIGitHub Actions
Monitoring
PrometheusGrafanaLokiVictoriaMetrics
Security
RBACNetworkPolicyTrivyVault
Infrastructure
TerraformAnsibleAWSHetzner

Case studies

App for moms: from K8s to K3s

A small project ran on full Kubernetes, and the infrastructure cost more than its scale required.

Moved the services to K3s with the same Helm charts and GitLab pipelines, set up a fault-tolerant entry point with DNS failover, added metrics, logs and backups with restore tests.

−40%infrastructure costs

Autonomous tractors: a cluster for IoT

An autonomous tractor fleet needed a control platform, real-time video from the machines over GSM and a secure network in the field.

Deployed an AWS EKS cluster with ArgoCD releases and isolated the tractor network with WireGuard and mutual TLS authentication.

100+machines managed by the platform

Why work with me

Certified administrator

CKA from The Linux Foundation: the exam is taken on a live cluster, not as a quiz.

I don't sell Kubernetes

If K3s or Docker Compose is enough for your project, I'll say so in the audit.

Pay for work, not for headcount

Supporting one cluster shouldn't cost as much as an engineer's salary.

Everything in Git

The cluster and service configuration lives in your code. Any engineer can pick it up.

Frequently asked questions

How is Kubernetes different from Docker? +

Docker packages an application into a container and runs it on one server. Kubernetes manages containers across many servers: restarts failed ones, spreads the load, updates without downtime. The images stay the same.

Managed Kubernetes or on-premise? +

Small teams are usually better off with a managed service: the provider runs the control plane. An on-premise cluster on K3s or kubeadm is cheaper on dedicated servers and needed when data must stay inside your network, but it takes more care.

How often does Kubernetes need upgrading? +

A new minor version comes out roughly every 4 months, and each is supported for about 14 months. Without upgrades a cluster falls out of support within a year, and cloud providers start upgrading it forcibly.

How much does Kubernetes support cost? +

Support is $250 a month: alerts, node health, upgrade planning and incident response. Work beyond that is billed at $35/hour. A cluster audit starts at $230.

What is K3s and will it work for us? +

K3s is a lightweight Kubernetes with the same API: the same manifests and Helm charts, but lower resource requirements and simpler upkeep. It fits 1-5 nodes and a limited budget well.

What access do you need? +

A read-only kubeconfig is enough for an audit. For actual work I need cluster admin access, which can be granted temporarily and revoked.

Send a request

Tell me where the cluster runs, how many nodes and services it has and what worries you. I'll say where to start and whether you need Kubernetes at all.

See also