フォロワーAPIの削除

リーダーからクロスクラスタレプリケーションフォロワー保持リースを削除します。

リクエスト

Python

  1. resp = client.ccr.forget_follower(
  2. index="<leader_index>",
  3. follower_cluster="<follower_cluster>",
  4. follower_index="<follower_index>",
  5. follower_index_uuid="<follower_index_uuid>",
  6. leader_remote_cluster="<leader_remote_cluster>",
  7. )
  8. print(resp)

Js

  1. const response = await client.ccr.forgetFollower({
  2. index: "<leader_index>",
  3. follower_cluster: "<follower_cluster>",
  4. follower_index: "<follower_index>",
  5. follower_index_uuid: "<follower_index_uuid>",
  6. leader_remote_cluster: "<leader_remote_cluster>",
  7. });
  8. console.log(response);

コンソール

  1. POST /<leader_index>/_ccr/forget_follower
  2. {
  3. "follower_cluster" : "<follower_cluster>",
  4. "follower_index" : "<follower_index>",
  5. "follower_index_uuid" : "<follower_index_uuid>",
  6. "leader_remote_cluster" : "<leader_remote_cluster>"
  7. }

コンソール結果

  1. {
  2. "_shards" : {
  3. "total" : 1,
  4. "successful" : 1,
  5. "failed" : 0,
  6. "failures" : [ ]
  7. }
  8. }

前提条件

  • Elasticsearchのセキュリティ機能が有効になっている場合、リーダーインデックスに対してmanage_leader_indexインデックス権限を持っている必要があります。詳細については、セキュリティ権限を参照してください。

説明

フォロワーインデックスは、そのリーダーインデックスの保持リースを取得します。これらの保持リースは、フォロワーインデックスがレプリケーションを実行するために必要な操作の履歴をリーダーインデックスのシャードが保持する可能性を高めるために使用されます。フォロワーインデックスがアンフォローAPIを介して通常のインデックスに変換されると(このAPIの明示的な実行またはインデックスライフサイクル管理を介して暗黙的に)、これらの保持リースは削除されます。ただし、これらの保持リースの削除は失敗する可能性があります(例:リーダーインデックスを含むリモートクラスターが利用できない場合)。これらの保持リースは最終的に自動的に期限切れになりますが、その延長された存在はリーダーインデックスが必要以上の履歴を保持し、インデックスライフサイクル管理がリーダーインデックスに対していくつかの操作を実行するのを妨げる可能性があります。このAPIは、アンフォローAPIがこれを行えなかった場合に手動でこれらの保持リースを削除できるようにするために存在します。

このAPIはフォロワーインデックスによるレプリケーションを停止しません。このAPIを使用して、まだアクティブにフォローしているフォロワーインデックスをターゲットにすると、フォロワーインデックスはリーダーに対して保持リースを再追加します。このAPIの唯一の目的は、アンフォローAPIが呼び出された後にフォロワー保持リースを削除できなかった場合の処理を行うことです。

パスパラメータ

  • <leader_index>
  • (必須、文字列)リーダーインデックスの名前。

クエリパラメータ

  • timeout
  • (オプション、時間)結果を待つ時間の量を制御します。デフォルトは無制限です。

リクエストボディ

  • follower_cluster
  • (必須、文字列)フォロワーインデックスを含むクラスターの名前。
  • follower_index
  • (必須、文字列)フォロワーインデックスの名前。
  • follower_index_uuid
  • (必須、文字列)フォロワーインデックスのUUID。
  • leader_remote_cluster
  • (必須、文字列)リーダーインデックスを含むリモートクラスターのエイリアス(フォロワーインデックスを含むクラスターの視点から)。

この例は、follower_indexのフォロワー保持リースをleader_indexから削除します。

Python

  1. resp = client.ccr.forget_follower(
  2. index="leader_index",
  3. follower_cluster="follower_cluster",
  4. follower_index="follower_index",
  5. follower_index_uuid="vYpnaWPRQB6mNspmoCeYyA",
  6. leader_remote_cluster="leader_cluster",
  7. )
  8. print(resp)

Ruby

  1. response = client.ccr.forget_follower(
  2. index: 'leader_index',
  3. body: {
  4. follower_cluster: 'follower_cluster',
  5. follower_index: 'follower_index',
  6. follower_index_uuid: 'vYpnaWPRQB6mNspmoCeYyA',
  7. leader_remote_cluster: 'leader_cluster'
  8. }
  9. )
  10. puts response

Js

  1. const response = await client.ccr.forgetFollower({
  2. index: "leader_index",
  3. follower_cluster: "follower_cluster",
  4. follower_index: "follower_index",
  5. follower_index_uuid: "vYpnaWPRQB6mNspmoCeYyA",
  6. leader_remote_cluster: "leader_cluster",
  7. });
  8. console.log(response);

コンソール

  1. POST /leader_index/_ccr/forget_follower
  2. {
  3. "follower_cluster" : "follower_cluster",
  4. "follower_index" : "follower_index",
  5. "follower_index_uuid" : "vYpnaWPRQB6mNspmoCeYyA",
  6. "leader_remote_cluster" : "leader_cluster"
  7. }

APIは次の結果を返します:

コンソール結果

  1. {
  2. "_shards" : {
  3. "total" : 1,
  4. "successful" : 1,
  5. "failed" : 0,
  6. "failures" : [ ]
  7. }
  8. }