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

etcd

307
414
+ 1
24
Kubernetes

60.1K
52K
+ 1
681
Add tool

etcd vs Kubernetes: What are the differences?

What is etcd? A distributed consistent key-value store for shared configuration and service discovery. etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. It’s open-source and available on GitHub. etcd gracefully handles master elections during network partitions and will tolerate machine failure, including the master.

What is Kubernetes? Manage a cluster of Linux containers as a single system to accelerate Dev and simplify Ops. 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.

etcd belongs to "Open Source Service Discovery" category of the tech stack, while Kubernetes can be primarily classified under "Container Tools".

"Service discovery" is the top reason why over 7 developers like etcd, while over 131 developers mention "Leading docker container management solution" as the leading cause for choosing Kubernetes.

etcd and Kubernetes are both open source tools. Kubernetes with 54.2K GitHub stars and 18.8K forks on GitHub appears to be more popular than etcd with 25.5K GitHub stars and 5.18K GitHub forks.

Slack, Shopify, and Starbucks are some of the popular companies that use Kubernetes, whereas etcd is used by CNCFlora, Beam, and Giant Swarm. Kubernetes has a broader approval, being mentioned in 1018 company stacks & 1060 developers stacks; compared to etcd, which is listed in 27 company stacks and 11 developer stacks.

Decisions about etcd and Kubernetes
Simon Reymann
Senior Fullstack Developer at QUANTUSflow Software GmbH · | 30 upvotes · 11.8M 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
Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of etcd
Pros of Kubernetes
  • 11
    Service discovery
  • 6
    Fault tolerant key value store
  • 2
    Secure
  • 2
    Bundled with coreos
  • 1
    Consol integration
  • 1
    Privilege Access Management
  • 1
    Open Source
  • 166
    Leading docker container management solution
  • 129
    Simple and powerful
  • 107
    Open source
  • 76
    Backed by google
  • 58
    The right abstractions
  • 25
    Scale services
  • 20
    Replication controller
  • 11
    Permission managment
  • 9
    Supports autoscaling
  • 8
    Simple
  • 8
    Cheap
  • 6
    Self-healing
  • 5
    Open, powerful, stable
  • 5
    Reliable
  • 5
    No cloud platform lock-in
  • 5
    Promotes modern/good infrascture practice
  • 4
    Scalable
  • 4
    Quick cloud setup
  • 3
    Custom and extensibility
  • 3
    Captain of Container Ship
  • 3
    Cloud Agnostic
  • 3
    Backed by Red Hat
  • 3
    Runs on azure
  • 3
    A self healing environment with rich metadata
  • 2
    Everything of CaaS
  • 2
    Gke
  • 2
    Golang
  • 2
    Easy setup
  • 2
    Expandable
  • 2
    Sfg

Sign up to add or upvote prosMake informed product decisions

Cons of etcd
Cons of Kubernetes
    Be the first to leave a con
    • 16
      Steep learning curve
    • 15
      Poor workflow for development
    • 8
      Orchestrates only infrastructure
    • 4
      High resource requirements for on-prem clusters
    • 2
      Too heavy for simple systems
    • 1
      Additional vendor lock-in (Docker)
    • 1
      More moving parts to secure
    • 1
      Additional Technology Overhead

    Sign up to add or upvote consMake informed product decisions

    What is etcd?

    etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. It’s open-source and available on GitHub. etcd gracefully handles master elections during network partitions and will tolerate machine failure, including the master.

    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 etcd?
    What companies use Kubernetes?
    Manage your open source components, licenses, and vulnerabilities
    Learn More

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

    What tools integrate with etcd?
    What tools integrate with Kubernetes?

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

    Blog Posts

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

    DigitalOcean

    GitHubMySQLPostgreSQL+11
    2
    2467
    PythonDockerKubernetes+7
    3
    1170
    May 21 2020 at 12:02AM

    Rancher Labs

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

    Rancher Labs

    KubernetesRancher+2
    2
    983
    What are some alternatives to etcd and Kubernetes?
    Consul
    Consul is a tool for service discovery and configuration. Consul is distributed, highly available, and extremely scalable.
    Zookeeper
    A centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. All of these kinds of services are used in some form or another by distributed applications.
    Redis
    Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache, and message broker. Redis provides data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes, and streams.
    MongoDB
    MongoDB stores data in JSON-like documents that can vary in structure, offering a dynamic, flexible schema. MongoDB was also designed for high availability and scalability, with built-in replication and auto-sharding.
    Cassandra
    Partitioning means that Cassandra can distribute your data across multiple machines in an application-transparent matter. Cassandra will automatically repartition as machines are added and removed from the cluster. Row store means that like relational databases, Cassandra organizes data by rows and columns. The Cassandra Query Language (CQL) is a close relative of SQL.
    See all alternatives