ターゲットグループ たーげっとぐるーぷ
簡単に言うとこんな感じ!
ロードバランサー(振り分け係)が「じゃあこのグループに届けて!」と仕事を投げる相手のリストだよ。「注文を受けたらキッチンAとキッチンBに振り分ける」ときの「キッチンA・B」がターゲットグループってこと!
ターゲットグループとは
ターゲットグループとは、ロードバランサー(負荷分散装置)がリクエストを転送する宛先サーバーやコンテナのまとまりのことです。AWSのALB(Application Load Balancer)やNLB(Network Load Balancer)で広く使われる概念で、「どのサーバー群に処理を任せるか」をグループとして定義します。
たとえばWebサービスを運営していて、注文処理用のサーバーが3台・商品検索用のサーバーが2台あるとします。このとき「注文処理サーバー3台」をひとつのターゲットグループ、「検索サーバー2台」を別のターゲットグループとして登録します。ロードバランサーは受け取ったリクエストの内容(URLのパスやホスト名など)を見て、適切なターゲットグループへ振り分けます。
ターゲットグループにはヘルスチェック(死活監視)機能があり、グループ内のサーバーが正常に動いているかを定期的に確認します。不具合があるサーバーには自動的にリクエストが送られなくなるため、サービス全体の可用性(止まりにくさ)を高められます。
ターゲットグループの構造と仕組み
ターゲットグループは主に以下の要素で構成されています。
| 要素 | 内容 |
|---|---|
| ターゲット | 実際にリクエストを受け取るサーバー・コンテナ・IPアドレスなど |
| プロトコルとポート | どの通信方式・ポート番号で受け渡しするか(例: HTTP:80) |
| ヘルスチェック設定 | 正常かどうか確認するための間隔・閾値・チェック先パス |
| ロードバランシングアルゴリズム | ラウンドロビン(順番)・最小接続数など、振り分けルール |
ターゲットの種類
ターゲットグループに登録できる「宛先」の種類は複数あります。
| 種類 | 具体例 |
|---|---|
| インスタンス | EC2仮想サーバーなど |
| IPアドレス | オンプレミス(社内)サーバーや別VPC内のサーバー |
| Lambda関数 | サーバーレス処理(AWSのFaaS) |
| ALB | 別のロードバランサーを宛先にする構成 |
覚え方
「ターゲット(的)グループ(集合)」=ロードバランサーの矢が飛んでいく的の集まり、と覚えると直感的!矢(リクエスト)がどの的(サーバーグループ)に向かうかを定義するものだよ。
歴史と背景
- 2009年頃:AWSがElastic Load Balancing(ELB)を提供開始。当初はシンプルな「CLB(Classic Load Balancer)」のみで、ターゲットグループの概念はなく、直接サーバーを登録する方式だった
- 2016年:AWS が ALB(Application Load Balancer)を発表。ターゲットグループという概念が正式に導入され、URLパスやホスト名による高度な振り分けが可能になった
- 2017年:NLB(Network Load Balancer)でもターゲットグループに対応。TCP/UDPレベルの高速振り分けと組み合わせられるようになった
- 2018年以降:コンテナ(ECS/Kubernetes)や Lambda との連携が強化され、マイクロサービス(機能を小さく分割したシステム設計)との相性がさらに高まった
- 現在:AWSのみならず Google Cloud の Backend Service、Azure の Backend Pool など、主要クラウドが同様の概念を採用し、業界標準の考え方として普及
ロードバランサーとターゲットグループの関係
ロードバランサーとターゲットグループは「振り分けルール(リスナールール)」を介して結びつきます。1つのロードバランサーが複数のターゲットグループに振り分けられるのが特徴です。
ALB vs NLB でのターゲットグループの違い
| 比較項目 | ALB(アプリケーション層) | NLB(ネットワーク層) |
|---|---|---|
| 振り分けの判断材料 | URL・ヘッダー・クッキーなど | IPアドレス・ポート番号 |
| 主な用途 | WebアプリのHTTP/HTTPS通信 | 高速・大量のTCP/UDP通信 |
| ターゲット種類 | インスタンス・IP・Lambda | インスタンス・IP・ALB |
| ヘルスチェック | HTTP/HTTPSでパスを指定 | TCP接続またはHTTP |
| 向いているシステム | 一般的なWebサービス | ゲーム・金融・IoTなど |
関連する規格・RFC
| 規格・RFC番号 | 内容 |
|---|---|
| RFC 7540 | HTTP/2(ALBが対応するHTTPプロトコル) |
| RFC 793 | TCP(NLBのターゲットグループで使われるトランスポート層プロトコル) |
| RFC 2616 | HTTP/1.1(ヘルスチェックのHTTPリクエストに関連) |
関連用語
- ロードバランサー — リクエストをターゲットグループへ振り分ける装置
- ALB(Application Load Balancer) — URLパスやヘッダーに基づいてターゲットグループを選択するロードバランサー
- [