Dapr vs Kubernetes

Need advice about which tool to choose?Ask the StackShare community!

Dapr

52
215
+ 1
8
Kubernetes

40.4K
34.3K
+ 1
628
Add tool
Decisions about Dapr and Kubernetes
Simon Reymann
Senior Fullstack Developer at QUANTUSflow Software GmbH · | 28 upvotes · 3.4M views

Our whole DevOps stack consists of the following tools:

  • GitHub (incl. GitHub Pages/Markdown for Documentation, GettingStarted and HowTo's) for collaborative review and code management tool
  • Respectively Git as revision control system
  • SourceTree as Git GUI
  • Visual Studio Code as IDE
  • CircleCI for continuous integration (automatize development process)
  • Prettier / TSLint / ESLint as code linter
  • SonarQube as quality gate
  • Docker as container management (incl. Docker Compose for multi-container application management)
  • VirtualBox for operating system simulation tests
  • Kubernetes as cluster management for docker containers
  • Heroku for deploying in test environments
  • nginx as web server (preferably used as facade server in production environment)
  • SSLMate (using OpenSSL) for certificate management
  • Amazon EC2 (incl. Amazon S3) for deploying in stage (production-like) and production environments
  • PostgreSQL as preferred database system
  • Redis as preferred in-memory database/store (great for caching)

The main reason we have chosen Kubernetes over Docker Swarm is related to the following artifacts:

  • Key features: Easy and flexible installation, Clear dashboard, Great scaling operations, Monitoring is an integral part, Great load balancing concepts, Monitors the condition and ensures compensation in the event of failure.
  • Applications: An application can be deployed using a combination of pods, deployments, and services (or micro-services).
  • Functionality: Kubernetes as a complex installation and setup process, but it not as limited as Docker Swarm.
  • Monitoring: It supports multiple versions of logging and monitoring when the services are deployed within the cluster (Elasticsearch/Kibana (ELK), Heapster/Grafana, Sysdig cloud integration).
  • Scalability: All-in-one framework for distributed systems.
  • Other Benefits: Kubernetes is backed by the Cloud Native Computing Foundation (CNCF), huge community among container orchestration tools, it is an open source and modular tool that works with any OS.
See more
Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of Dapr
Pros of Kubernetes
  • 3
    Manage inter-service state
  • 2
    App dashboard for rapid log overview
  • 2
    Zipkin app tracing "for free"
  • 1
    MTLS "for free"
  • 159
    Leading docker container management solution
  • 124
    Simple and powerful
  • 101
    Open source
  • 75
    Backed by google
  • 56
    The right abstractions
  • 24
    Scale services
  • 18
    Replication controller
  • 9
    Permission managment
  • 7
    Supports autoscaling
  • 7
    Simple
  • 6
    Cheap
  • 4
    Reliable
  • 4
    No cloud platform lock-in
  • 4
    Self-healing
  • 3
    Quick cloud setup
  • 3
    Open, powerful, stable
  • 3
    Scalable
  • 3
    Promotes modern/good infrascture practice
  • 2
    Cloud Agnostic
  • 2
    Runs on azure
  • 2
    Backed by Red Hat
  • 2
    Custom and extensibility
  • 2
    Captain of Container Ship
  • 2
    A self healing environment with rich metadata
  • 1
    Golang
  • 1
    Easy setup
  • 1
    Everything of CaaS
  • 1
    Sfg
  • 1
    Expandable
  • 1
    Gke

Sign up to add or upvote prosMake informed product decisions

Cons of Dapr
Cons of Kubernetes
    Be the first to leave a con
    • 13
      Poor workflow for development
    • 11
      Steep learning curve
    • 5
      Orchestrates only infrastructure
    • 2
      High resource requirements for on-prem clusters

    Sign up to add or upvote consMake informed product decisions

    - No public GitHub repository available -

    What is Dapr?

    It is a portable, event-driven runtime that makes it easy for developers to build resilient, stateless and stateful microservices that run on the cloud and edge and embraces the diversity of languages and developer frameworks.

    What is Kubernetes?

    Kubernetes is an open source orchestration system for Docker containers. It handles scheduling onto nodes in a compute cluster and actively manages workloads to ensure that their state matches the users declared intentions.

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use Dapr?
    What companies use Kubernetes?
      No companies found
      See which teams inside your own company are using Dapr or Kubernetes.
      Sign up for Private StackShareLearn More

      Sign up to get full access to all the companiesMake informed product decisions

      What tools integrate with Dapr?
      What tools integrate with Kubernetes?

      Sign up to get full access to all the tool integrationsMake informed product decisions

      Blog Posts

      Kubernetesetcd+2
      2
      1033
      Dec 8 2020 at 5:50PM

      DigitalOcean

      GitHubMySQLMongoDB+11
      2
      2003
      PythonDockerKubernetes+7
      3
      725
      May 21 2020 at 12:02AM

      Rancher Labs

      KubernetesAmazon EC2Grafana+12
      3
      1271
      Apr 16 2020 at 5:34AM

      Rancher Labs

      KubernetesRancher+2
      2
      810
      PythonDockerKubernetes+14
      11
      2127
      What are some alternatives to Dapr and Kubernetes?
      Istio
      Istio is an open platform for providing a uniform way to integrate microservices, manage traffic flow across microservices, enforce policies and aggregate telemetry data. Istio's control plane provides an abstraction layer over the underlying cluster management platform, such as Kubernetes, Mesos, etc.
      Akka
      Akka is a toolkit and runtime for building highly concurrent, distributed, and resilient message-driven applications on the JVM.
      Orleans
      Orleans is a framework that provides a straightforward approach to building distributed high-scale computing applications, without the need to learn and apply complex concurrency or other scaling patterns. It was created by Microsoft Research and designed for use in the cloud.
      Knative
      Knative provides a set of middleware components that are essential to build modern, source-centric, and container-based applications that can run anywhere: on premises, in the cloud, or even in a third-party data center
      Envoy
      Originally built at Lyft, Envoy is a high performance C++ distributed proxy designed for single services and applications, as well as a communication bus and “universal data plane” designed for large microservice “service mesh” architectures.
      See all alternatives