このページは、まだ日本語ではご利用いただけません。翻訳中です。
古いプラグインバージョンのドキュメントを閲覧しています。
基本構成例
どのサービス、ルート、コンシューマー、コンシューマーグループにも関連しないプラグインは_global_とみなされ、
すべてのリクエストで実行されます。
- 自己管理型のKong Gateway Enterpriseでは、プラグインは特定のワークスペース内のすべてのエンティティに適用されます。
- セルフマネージドKong Gateway (OSS)では、プラグインは環境全体に適用されます。
- Konnectでは、プラグインは特定のコントロールプレーン(CP)内のすべてのエンティティに適用されます。
詳しくはプラグインリファレンスとプラグインの優先順位の
セクションをご覧ください。
以下の例では、OpenTelemetry
プラグインをグローバルに有効にするための典型的な設定をいくつかご紹介します。
Kong Admin API
Konnect API
Kubernetes
Declarative (YAML)
Konnect Terraform
次のリクエストを行います。
curl -X POST http://localhost:8001/plugins/ \
--header "accept: application/json" \
--header "Content-Type: application/json" \
--data '
{
"name": "opentelemetry",
"config": {
"endpoint": "http://opentelemetry.collector:4318/v1/traces",
"headers": {
"X-Auth-Token": "secret-token"
}
}
}
'
独自のアクセストークン、リージョン、コントロールプレーン(CP)IDを代入して、次のリクエストをしてください。
curl -X POST \
https://{us|eu}.api.konghq.com/v2/control-planes/{controlPlaneId}/core-entities/plugins/ \
--header "accept: application/json" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer TOKEN" \
--data '{"name":"opentelemetry","config":{"endpoint":"http://opentelemetry.collector:4318/v1/traces","headers":{"X-Auth-Token":"secret-token"}}}'
地域固有のURLと個人アクセストークンの詳細については、 Konnect API referenceをご参照ください。
KongClusterPlugin作成する
リソースを作成し、グローバルとしてラベル付けします。
apiVersion: configuration.konghq.com/v1
kind: KongClusterPlugin
metadata:
name: <global-opentelemetry>
annotations:
kubernetes.io/ingress.class: kong
labels:
global: "true"
config:
endpoint: http://opentelemetry.collector:4318/v1/traces
headers:
X-Auth-Token: secret-token
plugin: opentelemetry
宣言型構成ファイルにplugins
エントリを追加します。
plugins:
- name: opentelemetry
config:
endpoint: http://opentelemetry.collector:4318/v1/traces
headers:
X-Auth-Token: secret-token
前提条件: パーソナルアクセストークンの設定
terraform {
required_providers {
konnect = {
source = "kong/konnect"
}
}
}
provider "konnect" {
personal_access_token = "kpat_YOUR_TOKEN"
server_url = "https://us.api.konghq.com/"
}
Kong Konnectゲートウェイプラグインを作成するには、Terraform 構成に以下を追加します。
resource "konnect_gateway_plugin_opentelemetry" "my_opentelemetry" {
enabled = true
config = {
endpoint = "http://opentelemetry.collector:4318/v1/traces"
headers = {
X-Auth-Token = "secret-token"
}
}
control_plane_id = konnect_gateway_control_plane.my_konnect_cp.id
}