I want to deploy know where to deploy backend and one system where i am using ffmpeg ? which one can help me aks or vmss

nikhilbrandnew 0 Reputation points
2026-08-28T16:02:48.1433333+00:00

I want to deploy my backend on Azure. I am currently considering Azure VMSS to run Docker/Podman container images.

Additionally, I have a video transcoding workload that requires dynamic scaling (for example, scaling up to 10 instances when processing 100 videos).

Should I choose Kubernetes (AKS) or Azure VMSS, and what are the cost implications of both approaches?

Azure Kubernetes Service
Azure Kubernetes Service

An Azure service that provides serverless Kubernetes, an integrated continuous integration and continuous delivery experience, and enterprise-grade security and governance.


2 answers

Sort by: Newest
  1. Vinodh247-1375 44,556 Reputation points Volunteer Moderator
    2026-08-31T16:11:13.37+00:00

    For your scenario, I would generally recommend Azure VM Scale Sets (VMSS) over AKS unless you already have a requirement for Kubernetes or expect to manage a large number of microservices.

    You have two distinct workloads:

    1. Backend APIs/web services
      • Run your Docker/Podman containers on a VMSS.
      • Lower operational overhead than managing a Kubernetes cluster.
      • Supports autoscaling based on metrics or schedules.
    2. FFmpeg video transcoding
      • Deploy on a separate VMSS.
      • Video processing is typically CPU-intensive and scales horizontally very well.
      • Keeping transcoding workers separate from your API layer allows independent scaling.

    Recommended architecture:

    Internet -> Azure Front Door / Load Balancer -> Backend VMSS -> Docker/Podman) -> Azure Service Bus Queue -> FFmpeg Worker VMSS -> Azure Blob Storage

    For the transcoding workload, it is usually better to scale based on queue depth (number of videos waiting to be processed) rather than CPU utilisation.

    Example: 100 videos in queue -> Scale workers to 10 instances -> Process videos -> Queue decreases -> Scale back down

    This approach ensures that scaling directly reflects business demand instead of infrastructure metrics.

    When AKS is best option:

    AKS is worth considering if your application is evolving into a platform composed of multiple services, for example:

    API

    ├─ Auth service

    ├─ Video service

    ├─ Notification service

    ├─ Metadata service

    └─ Background workers

    In that case, AKS with KEDA provides event-driven autoscaling based on queue depth and supports scale-to-zero scenarios. However, it also introduces Kubernetes-related operational responsibilities such as cluster management, upgrades, networking, ingress, RBAC, and observability.

    Cost consideration:

    A common misconception is that AKS is automatically cheaper than VMSS.

    • VMSS has no separate service charge. You primarily pay for the VMs, storage, networking, and any connected Azure services.
    • AKS still requires you to pay for the worker node VMs and associated resources. Depending on the selected AKS tier, additional cluster-management costs may apply.

    For a relatively straightforward backend and FFmpeg processing solution, VMSS is typically the simpler and often more cost-effective option.

    Recommendation:

    I would use:

    Backend VMSS

    • Minimum: 2 instances
      • Maximum: 2-5 instances
        • Stateless API containers
        FFmpeg Worker VMSS
        - Minimum: 0-1 instances
        
           - Maximum: 10 instances (or higher as required)
        
              - Scale based on Service Bus queue depth
        

    This provides independent scaling for your APIs and video-processing workers and avoids introducing Kubernetes complexity before it is needed.

    For your current requirements, VMSS is the simpler and more practical choice. Consider AKS + KEDA only if you expect significant growth in microservices, container orchestration needs, or Kubernetes specific capabilities.

    Help make this community better for everyone: if this answer resolved your issue, please accept it or leave an upvote. If not, share more details in a comment so we can continue the discussion and find the right solution.

    Was this answer helpful?

    0 comments No comments

  2. SUNOJ KUMAR YELURU 18,736 Reputation points MVP Volunteer Moderator
    2026-08-31T15:22:41.98+00:00

    Hello @nikhilbrandnew

    • VMSS — if you want simplicity, lower cost, and your workloads are straightforward
    • AKS — if you need fine-grained scaling per workload, job queues, and are comfortable with Kubernetes overhead

    For your specific case (backend API + ffmpeg transcoding), AKS is the better fit long-term, but VMSS is a valid starting point if Kubernetes feels like too much right now.

    Choose VMSS if:

    • Your team has no Kubernetes experience and no time to learn it
    • Your transcoding volume is predictable and low (e.g., under 20 videos/day)
    • You want to get something running in a day and optimize later

    VMSS is not wrong — it's just a ceiling you'll hit sooner if your workload grows or becomes more complex.


    Bottom Line

    Start with AKS if you can absorb the initial setup complexity. The combination of separate node pools + KEDA + spot instances is purpose-built for exactly your workload pattern and will save meaningful money at scale compared to VMSS. If Kubernetes feels like too much right now, VMSS works — but plan to migrate when the ffmpeg scaling logic becomes painful to manage manually.


    If this answers your query, do click Accept Answer and Up-Vote for the same. And, if you have any further query do let us know.

    Was this answer helpful?

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.