コードをほとんど変更せず、マイクロサービスにトラフィック管理、セキュリティ、可観測性を追加するオープンソースのサービスメッシュです。
hashicorp/consul
動的なインフラ全体でサービスディスカバリー、ヘルスチェック、設定、サービスメッシュを実現する分散型サービスネットワーキングツール。
- スター
- 30,087
- フォーク
- 4,631
- 未解決の Issue
- 1,421
- 最終コミット
- 23 時間前
これは何?
Consulは、動的なインフラ全体でアプリケーションを接続・設定するための分散システムです。サービスは自身を登録し、DNSまたはHTTPインターフェースを通じて互いを検出できます。また、SaaSプロバイダーなどの外部サービスも内部サービスと並べて登録できます。ヘルスチェックにより、運用者はクラスター全体の問題を検知でき、サービスディスカバリーとの連携によって異常なホストへのトラフィックを回避できます。
Consulは複数のデータセンターを認識するよう設計されており、任意の数のリージョンにまたがって利用できます。Service Mesh機能は、自動TLS暗号化、IDベースの認可、透過プロキシを利用できるサイドカープロキシによって、サービス間通信を実現します。独立したAPI Gatewayコンポーネントは、トラフィックポリシーと認可ポリシーを通じてメッシュ内のサービスへのアクセスを制御します。
このプロジェクトには、インデックス付きのキーバリュー設定やアプリケーションのメタデータを保存するHTTP APIも含まれています。Linux、macOS、FreeBSD、Solaris、Windowsで動作し、オプションでブラウザベースのUIも利用できます。商用版のConsul Enterpriseも提供されています。
主な機能
- 01外部サービスも含め、DNSまたはHTTPインターフェースを介してサービスを検出。
- 02ヘルスチェックにより、異常なホストへのトラフィックを回避。
- 03自動TLSとIDベースの認可を備えたサービスメッシュ。
- 04ポリシーに基づき、メッシュ内のサービスへのアクセスを制御するAPI Gateway。
- 05任意の数のリージョンにまたがるマルチデータセンター対応。
- 06インデックス付きの設定やアプリケーションメタデータを保存するHTTP API。
ユースケース
- 変化するホスト間で、ハードコードされたアドレスを使わずにマイクロサービス同士を検出させる。
- Kubernetes環境やVMベースの環境で、サービス間通信を暗号化し、認可する。
- 複数のデータセンターやリージョンにまたがるサービス設定を調整する。
- ヘルスチェックを使って、障害が発生しているインスタンスからトラフィックを迂回させる。
クイックスタート
- 1
Consul のスタートガイドからスタンドアロンバイナリをインストールします
- 2
または、リンク先のチュートリアルを使って Kubernetes または Minikube にデプロイします
使う前に知っておきたいこと
- ライセンスは BUSL-1.1 で、一部の商用利用が制限されています。
- すべてのエンタープライズ機能など、一部の機能を利用するには有料版の Consul Enterprise が必要です。
収録されている特集
トピック
よくある質問
- consul とは?
- 動的なインフラ全体でサービスディスカバリー、ヘルスチェック、設定、サービスメッシュを実現する分散型サービスネットワーキングツール。 Consulは、動的なインフラ全体でアプリケーションを接続・設定するための分散システムです。サービスは自身を登録し、DNSまたはHTTPインターフェースを通じて互いを検出できます。また、SaaSプロバイダーなどの外部サービスも内部サービスと並べて登録できます。ヘルスチェックにより、運用者はクラスター全体の問題を検知でき、サービスディスカバリーとの連携によって異常なホストへのトラフィックを回避できます。
- consul は無料で使えますか?ライセンスは?
- consul は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- consul は今もメンテナンスされていますか?
- 活発にメンテナンス中。consul の最終コミットは 2026年10月22日 です。
- consul は何に使えますか?
- 変化するホスト間で、ハードコードされたアドレスを使わずにマイクロサービス同士を検出させる。 Kubernetes環境やVMベースの環境で、サービス間通信を暗号化し、認可する。 複数のデータセンターやリージョンにまたがるサービス設定を調整する。 ヘルスチェックを使って、障害が発生しているインスタンスからトラフィックを迂回させる。
- consul のインストール方法は?
- Consul のスタートガイドからスタンドアロンバイナリをインストールします または、リンク先のチュートリアルを使って Kubernetes または Minikube にデプロイします
- consul はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/hashicorp/consul
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
DockerやKubernetesなどからルートを自動設定する、クラウドネイティブなHTTPリバースプロキシ兼ロードバランサー。
サービス通信、ディスカバリー、トラフィック管理を実現するRPC・マイクロサービスフレームワーク、Apache DubboのJava実装。
クラウドネイティブ環境やマイクロサービスシステム向けに、動的なサービスディスカバリー、設定管理、サービスメタデータ管理を提供するオープンソースプラットフォーム。
Envoy上でKubernetes Gateway APIを実装し、AIゲートウェイのユースケースにも対応するKubernetesネイティブなAPIゲートウェイ。
Kongは、プラグインで拡張でき、サービス通信のルーティングと保護を担う、クラウドネイティブでプラットフォームに依存しないAPI・LLM・MCPゲートウェイです。