コンテンツにスキップ

ログエンジンの切り替え

概要

この記事では、Guanceのログエンジンの切り替えについて説明します。6種類の異なるエンジンをサポートしており、オープンソース版の Elasticsearch、オープンソース版の OpenSearch、AWS クラウド上のマネージド OpenSearch、Huawei Cloud 上のマネージド Elasticsearch、aliyun 上のマネージド Elasticsearch ログ強化版、aliyun 上のマネージド Elasticsearch が含まれます。この操作は、POC から本番ログエンジンへの切り替えに適用されます。

前提条件

  • ログエンジンのアドレス、アカウント、パスワードを準備してください
  • analysis-ik が正常にインストールされていることを確認してください
  • 自動インデックス作成が無効になっていることを確認してください
  • Guance MySQL のアドレスと、df_core データベースのアカウント、パスワードを準備してください

切り替え手順

ステップ1:kodo-x サービスの停止

kubectl scale -n forethought-kodo deploy kodo-x --replicas 0

ステップ2:設定の更新

df_core データベースにログインします

  1. テーブルのバックアップ
SQL> create table df_core.main_es_instance_copy select * from df_core.main_es_instance;
  1. 情報の確認
SQL> select authorization,configJSON,id,host from df_core.main_es_instance;

構造:

mysql> select id,host,authorization,configJSON from df_core.main_es_instance;
+----+----------------------------------------+------------------------------------------------------------------------+-------------------------+
| id | host                                   | authorization                                                          | configJSON              |
+----+----------------------------------------+------------------------------------------------------------------------+-------------------------+
|  1 | http://testing-ft-elastic.cloudcare.cn | {"admin": {"password": "xxxxx", "username": "elastic"}}                | {"provider": "elastic"} |
+----+----------------------------------------+------------------------------------------------------------------------+-------------------------+
1 rows in set (0.01 sec)
  1. 設定の更新
SQL> update df_core.main_es_instance a set a.authorization='{"admin": {"password": "xxxxx", "username": "elastic"}}',a.configJSON='{"provider": "elastic"}',a.host='http://elasticsearch-client-headless.middleware:9200' where id =1;

パラメータの説明:

  • authorization:ES のユーザー名とパスワード
  • configJSON:ES のプロバイダー。設定可能な値:
    • elastic (オープンソース版の Elasticsearch)
    • opensearch (オープンソース版の OpenSearch)
    • aws_opensearch (AWS クラウド上のマネージド OpenSearch)
    • huawei_opensearch (Huawei Cloud 上のマネージド Elasticsearch)
    • aliyun_openstore (aliyun 上のマネージド Elasticsearch ログ強化版)
    • aliyun_elasticsearch (aliyun 上のマネージド Elasticsearch)
  • host:ES のアドレス
  • id:ステップ2で取得した ES インスタンス ID

ステップ3:サービスの再起動

kubectl delete pods --all -n forethought-kodo

ステップ4:ES テンプレートの初期化

forethought-core の inner api コンテナにログインして、以下のコマンドを実行します:

$ curl 'http://127.0.0.1:5000/api/v1/inner/es/init' -X 'POST'  -H 'Content-Type: application/json'
$ curl 'http://127.0.0.1:5000/api/v1/inner/es/init_subsequent' -X 'POST'  -H 'Content-Type: application/json'

ステップ5:kodo-x の起動

kubectl scale -n forethought-kodo deploy kodo-x --replicas 3

ステップ6:Redis キャッシュのクリア

Redis データベースにログインします:

flushall

ステップ7:確認

Guanceコンソールにログインし、インフラストラクチャーとログ機能を確認してください。

FAQ

ページクエリ query failed

前提条件

  • エラーが発生したワークスペースのワークスペース ID を取得します
  • OpenSearch にアクセスできること

エラーインデックスの削除

curl -XDELETE -u "user:password" http://<OPenSearchHost>:9200/<ワークスペースID>*

アスタリスク(*)は省略しないでください

フィードバック

このページは役に立ちましたか?