Consul Service Networking

Consul Service Networking

github.com

2

About this website

Consul is a free and open-source service networking platform that provides service discovery, configuration, and orchestration capabilities for distributed systems. Created by HashiCorp in 2014 by Mitchell Hashimoto and Armon Dadgar, Consul enables applications to register themselves and discover other services via DNS or HTTP interfaces, with built-in health checking and a key-value store. Key features: service discovery: services register with Consul (via configuration file or API) with a name, address, port, and health checks. Clients query Consul via DNS (service.consul) or HTTP API to discover the address and port of healthy service instances. Consul supports both TCP and UDP services. Health checking: Consul performs active health checks (HTTP, TCP, script, Docker, gRPC, TTL) on registered services. Unhealthy services are removed from DNS and API results, preventing traffic from being routed to failing instances. Health checks can be configured with intervals, timeouts, and deregistration critical thresholds. Key-Value store: a hierarchical KV store for dynamic configuration, feature flags, and coordination. Supports long-polling for near-real-time updates and consistency modes (default/strong). Service mesh: Consul Connect provides secure service-to-service communication via mutual TLS (mTLS) with automatic certificate rotation. Sidecar proxies (Envoy) handle encryption and traffic policies. Intentions define allow/deny rules for service-to-service communication. Multi-datacenter: Consul natively supports multiple datacenters with WAN gossip, enabling service discovery and mesh connectivity across regions. Raft consensus: uses the Raft protocol for strong consistency of the catalog and KV store. Consul servers form a Raft cluster; agents run on every node. Gossip protocol (Serf memberlist) for cluster membership and failure detection. Watch: long-poll subscriptions for changes to KV, services, nodes, or events. Go. MPL-2.0.

Statistics

2
Views
0
Clicks
0
Like
0
Dislike

Comments

Log In to post a comment

No comments yet. Be the first!