tencent cloud

Cloud Log Service

Kibanaを使用したCLSの利用

ダウンロード
フォーカスモード
フォントサイズ
最終更新日: 2026-10-12 15:06:44
AI翻訳

操作シナリオ

ログトピックは一部のElasticsearchインターフェースとDSLに対応しており、これらのインターフェースを通じてKibanaからCLSを利用できます。ElasticsearchからCLSへ移行する際に、移行の複雑さを軽減できます。

前提条件

注意:
この機能は現在、一部のユーザーまたはログトピックのみでサポートされています。ご利用が必要な場合は、お問い合わせの上、機能の許可リストを有効にしてください。
ログトピックのみをサポートしています。ログはインデックスを有効にして初めて対応するDSLを使用できます。詳細についてはインデックス設定をご参照ください。
CLSの互換インターフェースはElasticsearch 7.10バージョンに基づいており、Kibana 7.xバージョンからのアクセスのみをサポートしています。
低頻度ストレージは集約DSLをサポートしておらず、Kibanaのほとんどの統計グラフをサポートしていません。

デプロイアーキテクチャ


Kibana:データのクエリに使用します。操作手順に従って新しいKibanaをデプロイできます。また、既存のKibanaを使用することもできます(操作手順に従って、KibanaがESにアクセスするためのアドレスをProxyアドレスに変更する必要があります)。
Proxy:Kibanaリクエストの振り分けに使用され、ログデータクエリリクエストをCLSに振り分け、Kibanaのその他の設定リクエストをESクラスタに振り分けます。
CLS:CLSのログトピック
ES:ミニクラスタであり、Kibanaの設定情報の保存に使用され、データ量は非常に少ないです。操作手順に従って新しいESをデプロイできます。また、既存のESを使用することもできます。

操作手順

ステップ1:サブユーザーを作成し、KibanaのCLSアクセスを承認する

1. 子アカウントを個別に作成し、そのアカウントのSecretIdおよびSecretKeyを使用することをお勧めします。そのアカウントには以下のインターフェース権限のみを付与してください。設定方法については子アカウント権限付与をご参照ください。
{
"version": "2.0",
"statement": [
{
"effect": "allow",
"action": [
"cls:DescribeTopics",
"cls:SearchLog"
],
"resource": [
"*"
]
}
]
}

ステップ2:Kibana関連環境のデプロイ

Dockerを使用したデプロイ
Helmを使用したデプロイ
1. ES(ミニクラスタ)をデプロイします。その中の{es_password}を、お客様が設定するESアクセスパスワードに置き換えてください。
docker run -d \\
--name elasticsearch-7.10.2 \\
-p 9200:9200 \\
-e "discovery.type=single-node" \\
-e "ES_JAVA_OPTS=-Xms1g -Xmx1g" \\
-e "xpack.security.enabled=true" \\
-e "ELASTIC_PASSWORD={es_password}" \\
docker.elastic.co/elasticsearch/elasticsearch:7.10.2
2. Proxyをデプロイします。
単一リージョン/アカウント
マルチリージョン/アカウント
docker run -d \\
--name cls-kibana-proxy \\
-p 9201:9201 \\
-e META_ES_ENDPOINT={esアドレス, http://ip:port} \\
-e META_ES_USERNAME={es_user} \\
-e META_ES_PASSWORD={es_password} \\
-e CLS_REGION={region} \\
-e CLS_SECRET_ID={SECRET_ID} \\
-e CLS_SECRET_KEY={SECRET_KEY} \\
-e CLS_SYNC_ENABLED=true \\
-e CLS_SYNC_FILTERS=* \\
gz-cls-images.tencentcloudcr.com/public/kibana-proxy:alpha-v0.6
docker run -d \\
--name cls-kibana-proxy \\
-p 9201:9201 \\
-e META_ES_ENDPOINT={esアドレス, http://ip:port} \\
-e META_ES_USERNAME={es_user} \\
-e META_ES_PASSWORD={es_password} \\
-e CLS_REGION={region} \\
-e CLS_SECRET_ID={SECRET_ID} \\
-e CLS_SECRET_KEY={SECRET_KEY} \\
-e CLS_SYNC_ENABLED=true \\
-e CLS_SYNC_FILTERS=* \\
-e CLS_REGION_1={region_1} \\
-e CLS_SECRET_ID_1={SECRET_ID} \\
-e CLS_SECRET_KEY_1={SECRET_KEY} \\
-e CLS_SYNC_FILTERS_1=* \\
gz-cls-images.tencentcloudcr.com/public/kibana-proxy:alpha-v0.6
変数の説明は以下の通りです:
変数
必須
説明
META_ES_ENDPOINT
はい
ES(ミニクラスタ)アクセスアドレス、形式はhttp://ip:portです。
META_ES_USERNAME
はい
ESアクセスユーザー名、デフォルトはelasticです。
META_ES_PASSWORD
はい
ESアクセスパスワード
CLS_REGION
はい
日志主题が属する地域、例えばap-guangzhouです。
CLS_SECRET_ID
はい
サブアカウントのSecretId
CLS_SECRET_KEY
はい
サブアカウントのSecretKey
CLS_SYNC_ENABLED
いいえ
自動同期を有効にするかどうかです。有効にすると、日志主题をKibana Index Patternに自動的に追加できます。
デフォルトはfalseです。自動同期は無効です。有効にするにはtrueを設定します。
CLS_MAX_INDEX_PATTERNS
いいえ
KibanaのIndexPattern最大数です。デフォルトは1000です。上限を超えると、Index Patternは自動的に追加されません。
CLS_SYNC_FILTERS
いいえ
自動同期を有効にすると、筛选条件を満たす日志主题をKibana Index Patternに同期します。
空/未設定:ログトピックを同期しません。
* :すべてのログトピックを同期します。
フィルタ条件:json文字列を使用してフィルタ条件を設定します。サポートされているフィルタ条件については、トピックリスト取得APIのFiltersパラメータを参照してください。例えば'{"logsetName": ["logset-dev"]}'です。
LOG_LEVEL
いいえ
日志级别:DEBUG、INFO、WARN、デフォルトはINFOです。
PROXY_AUTH
いいえ
Proxy認証を有効にするかどうかです。デフォルトはtrueです。
CLS_ES_ENDPOINT
いいえ
CLS Elasticsearch互換インターフェースアドレスです。デフォルトは外部ネットワークアドレスです。
外部ネットワークアドレス:https://${region}.cls.tencentcs.com
内部ネットワークアドレス:https://${region}.cls.tencentyun.com
このうち${region}は地域略称です。日志主题が所在する地域を使用してください。例えばap-guangzhouです。
CLS_API_ENDPOINT
いいえ
CLS APIアドレスです。デフォルトは外部ネットワークアドレスです。
外部ネットワークアドレス:https://cls.tencentcloudapi.com(非金融区のみ対応)
内部ネットワークアドレス:https://cls.internal.tencentcloudapi.com
注意:
複数の地域またはアカウントがある場合は、対応する変数名の後に_{自動増分id}を追加します。例えば、CLS_REGION_1、CLS_REGION_2です。
3. Kibanaをデプロイします。
3.1 Kibana設定ファイルを作成します。
cat > ./kibana.yml << 'EOF'
server.host: "0.0.0.0"
# Elasticsearch 設定
elasticsearch.hosts: ["{proxy_address}"]
elasticsearch.username: "{es_user}"
elasticsearch.password: "{es_password}"
elasticsearch.shardTimeout: 30s
xpack.security.enabled: true
xpack.data_enhanced.enabled: false
EOF
{proxy_address}:Proxyアクセスアドレス。形式はhttp://ip:portです。
{es_user}:ES(ミニクラスタ)アクセスユーザー名です。デフォルトはelasticです。
{es_password}:ES(ミニクラスタ)アクセスパスワード。
3.2 Kibanaを起動します。
docker run -d \\
--name kibana-7.10.2 \\
-p 5601:5601 \\
-v ./kibana.yml:/usr/share/kibana/config/kibana.yml:ro \\
docker.elastic.co/kibana/kibana:7.10.2
1. 設定ファイルvalues.yamlを作成します。内容は以下のとおりです。その中の{es_password}を、お客様が設定するESアクセスパスワードに置き換えてください。{region}をログトピックが属する地域に置き換えてください。{SECRET_ID}、{SECRET_KEY}をサブアカウントキーに置き換えてください。
単一リージョン/アカウント
マルチリージョン/アカウント
elasticsearch:
enabled: true
password: "{es_password}"

kibana-proxy:
image:
tag: "v0.9.0"
env:
CLS_SYNC_ENABLED: "true"
CLS_MAX_INDEX_PATTERNS: "1000"

clsRegions:
- CLS_REGION: "{region}"
CLS_SECRET_ID: "{SECRET_ID}"
CLS_SECRET_KEY: "{SECRET_KEY}"
CLS_SYNC_FILTERS: '*'
elasticsearch:
enabled: true
password: "{es_password}"

kibana-proxy:
image:
tag: "v0.9.0"
env:
CLS_SYNC_ENABLED: "true"
CLS_MAX_INDEX_PATTERNS: "1000"

clsRegions:
- CLS_REGION: "{region}" # マルチリージョン/アカウント設定
CLS_SECRET_ID: "{SECRET_ID}"
CLS_SECRET_KEY: "{SECRET_KEY}"
CLS_SYNC_FILTERS: '*'
- CLS_REGION: "{region}" # マルチリージョン/アカウント設定
CLS_SECRET_ID: "{SECRET_ID}"
CLS_SECRET_KEY: "{SECRET_KEY}"
CLS_SYNC_FILTERS: '*'
変数の説明は以下の通りです:
変数
必須
説明
CLS_REGION
はい
ログトピックが属する地域です。例えばap-guangzhouです。
CLS_SECRET_ID
はい
サブアカウントのSecretId
CLS_SECRET_KEY
はい
サブアカウントのSecretKey
CLS_SYNC_ENABLED
いいえ
自動同期を有効にするかどうかです。有効にすると、ログトピックをKibana Index Patternに自動的に追加できます。
デフォルトはfalseです。自動同期は無効です。有効にするにはtrueを設定します。
CLS_MAX_INDEX_PATTERNS
いいえ
KibanaのIndexPattern最大数です。デフォルトは1000です。上限を超えると、Index Patternは自動的に追加されません。
CLS_SYNC_FILTERS
いいえ
自動同期を有効にすると、筛选条件を満たす日志主题をKibana Index Patternに同期します。
空/未設定:ログトピックを同期しません。
* :すべてのログトピックを同期します。
フィルタ条件:json文字列を使用してフィルタ条件を設定します。サポートされているフィルタ条件については、トピックリスト取得APIのFiltersパラメータを参照してください。例えば'{"logsetName": ["logset-dev"]}'です。
CLS_ES_ENDPOINT
いいえ
CLS Elasticsearch互換インターフェースアドレスです。デフォルトは外部ネットワークアドレスです。
外部ネットワークアドレス:https://${region}.cls.tencentcs.com
内部ネットワークアドレス:https://${region}.cls.tencentyun.com
このうち${region}は地域略称です。日志主题が所在する地域を使用してください。例えばap-guangzhouです。
CLS_API_ENDPOINT
いいえ
CLS APIアドレスです。デフォルトは外部ネットワークアドレスです。
外部ネットワークアドレス:https://cls.tencentcloudapi.com(非金融区のみ対応)
内部ネットワークアドレス:https://cls.internal.tencentcloudapi.com
説明:
その他のデプロイ方法および説明については、圧縮パッケージ内のexamplesフォルダを参照してください。例えば、Kibanaのパスワードなしモードでのデプロイ、外部ESを使用したデプロイです。
2. TKEクラスタで以下のコマンドを実行します。
helm install cls-kibana-proxy-stack https://cls-kibana-proxy-1254077820.cos.ap-guangzhou.myqcloud.com/cls-kibana-proxy-stack-0.0.1.tgz -f values.yaml -n cls --create-namespace
3. デプロイ完了後、お客様のクラスタ環境に応じて、Kibanaサービスの外部アクセスを有効にします。

ステップ3:KibanaでIndex patternを作成する

説明:
Proxy設定で自動同期がすでに有効になっている場合、CLS_SYNC_ENABLED=trueのため、この手順を再度実行する必要はありません。
1. ブラウザを開き、Kibanaのアドレスにアクセスします(例:http://<your-kibana-host>:5601)。
2. ユーザー名とパスワードを入力してログインします。
3. 左側のナビゲーションバーでStack Managementをクリックします。
4. 左側のメニューでKibanaカテゴリを見つけ、Index Patternsをクリックします。
5. ページ右上のCreate index patternをクリックします。
6. Index pattern name入力ボックスにクエリするログトピックIDを入力し、Timestamp fieldで@timestampを選択します。
7. Create index patternボタンをクリックして作成を完了します。

ステップ4:Kibanaでログを検索する

1. 左側のナビゲーションメニューボタンをクリックしてナビゲーションバーを開き、Discoverをクリックします。
2. 左側で前の手順で作成したIndex patternを選択し、ログのクエリを開始します。

ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック