翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon OpenSearch Service ドメインのアップグレード
注記
OpenSearch および Elasticsearch バージョンのアップグレードは、サービスソフトウェアの更新とは異なります。サービスドメインのサービスソフトウェアの更新については、 OpenSearch 「」を参照してくださいAmazon Service での OpenSearch サービスソフトウェアの更新。
Amazon OpenSearch Service は、 OpenSearch 1.0 以降、または Elasticsearch 5.1 以降を実行するドメインのインプレースアップグレードを提供します。Amazon Data Firehose や Amazon CloudWatch Logs などのサービスを使用してデータを OpenSearch サービスにストリーミングする場合は、移行 OpenSearch 前にこれらのサービスが新しいバージョンの をサポートしていることを確認してください。
トピック
サポートされているアップグレードパス
現在、 OpenSearch サービスは以下のアップグレードパスをサポートしています。
元のバージョン | 目的のバージョン |
---|---|
OpenSearch 1.3 または 2.x |
OpenSearch 2.x バージョン 2.3 には、次のような重要な変更点があります。
|
OpenSearch 1.x | OpenSearch 1.x |
Elasticsearch 7.x |
Elasticsearch 7.x または OpenSearch 1.x 重要OpenSearch 1.x では、多数の重大な変更が導入されています。詳細については、「Amazon OpenSearch Service 名称変更 - 変更の概要」を参照してください。 |
Elasticsearch 6.8 |
Elasticsearch 7.x または OpenSearch 1.x 重要Elasticsearch 7.0 および OpenSearch 1.0 には、多くの重大な変更が含まれています。インプレースアップグレードを開始する前に、6.x ドメインの手動スナップショットを作成し、テスト 7.x または OpenSearch 1.x ドメインで復元し、そのテストドメインを使用してアップグレードの潜在的な問題を特定することをお勧めします。 OpenSearch 1.0 の重大な変更については、「」を参照してくださいAmazon OpenSearch Service 名称変更 - 変更の概要。 Elasticsearch 6.x と同様に、インデックスに含めることができるマッピングタイプは1つだけですが、そのタイプには 新しいインデックスの場合、セルフホスト型 Elasticsearch 7.x および OpenSearch 1.x のデフォルトシャード数は 1.x 以降の Elasticsearch 7.x 上の OpenSearch サービスドメインでは、以前のデフォルトである 5 つが保持されます。 |
Elasticsearch 6.x |
Elasticsearch 6.x |
Elasticsearch 5.6 |
Elasticsearch 6.x 重要バージョン 6.x で作成されたインデックスは、複数のマッピングタイプをサポートしなくなりました。バージョン 5.x で作成されたインデックスは、6.x クラスターに復元された場合でも、複数のマッピングタイプをサポートします。クライアントコードによって作成されるマッピングタイプがインデックスごとに 1 種類のみであることを確認します。 Elasticsearch 5.6 から 6.x へのアップグレード中のダウンタイムを最小限に抑えるために、 OpenSearch サービスは |
Elasticsearch 5.x | Elasticsearch 5.x |
アップグレードプロセスには、3 つの手順が含まれます。
-
アップグレード前のチェック — OpenSearch サービスは、アップグレードをブロックし、これらのチェックが成功しない限り次のステップに進みません。
-
スナップショット – OpenSearch サービスは OpenSearch または Elasticsearch クラスターのスナップショットを取得し、スナップショットが成功しない限り次のステップに進みません。アップグレードが失敗した場合、 OpenSearch サービスはこのスナップショットを使用してクラスターを元の状態に復元します。詳細については、アップグレード後にダウングレードできないを参照してください。
-
アップグレード – OpenSearch サービスによってアップグレードが開始されます。このアップグレードが完了するまでに 15 分から数時間かかる場合があります。アップグレードの一部またはすべて中に OpenSearch ダッシュボードが使用できなくなる場合があります。
アップグレードの開始 (コンソール)
アップグレードプロセスは元に戻せず、一時停止またはキャンセルすることはできません。アップグレード中、ドメインの設定を変更することはできません。アップグレードを開始する前に、続行するかどうかを再度確認します。これらの同じ手順を使用して、アップグレードを実際に開始することなくアップグレード前の確認を実行することができます。
クラスターに専用マスターノードがある場合、 OpenSearch アップグレードはダウンタイムなしで完了します。ない場合、クラスターがマスターノードを選択している間、アップグレード後数秒間応答しなくなることがあります。
ドメインを OpenSearch または Elasticsearch の新しいバージョンにアップグレードするには
-
ドメインの手動スナップショットを作成します。このスナップショットは、以前の OpenSearch バージョンの使用に戻る場合、新しいドメインで復元できるバックアップとして機能します。
-
https://aws.amazon.com
にアクセスし、[Sign In to the Console] (コンソールにサインイン) を選択します。 -
分析 で、Amazon OpenSearch サービス を選択します。
-
ナビゲーションペインの [Domains] (ドメイン) で、アップグレードするドメインを選択します。
-
[アクション] から [更新] を選択します。
-
アップグレードするバージョンを選択します。 OpenSearch バージョンにアップグレードする場合は、「互換モードを有効にする」オプションが表示されます。この設定を有効にすると、 はバージョンを 7.10 として OpenSearch レポートし、Logstash などの Elasticsearch OSS クライアントとプラグインが Amazon OpenSearch Service で引き続き作業できるようにします。この設定は後で無効にできます
-
[アップグレード] を選択します。
-
ドメインダッシュボードのステータスをチェックし、アップグレードのステータスをモニタリングします。
アップグレードの開始 (CLI)
次のオペレーションを使用して、ドメインの正しいバージョンの OpenSearch または Elasticsearch を特定し、インプレースアップグレードを開始し、アップグレード前のチェックを実行し、進行状況を表示できます。
-
get-compatible-versions
(GetCompatibleVersions
) -
upgrade-domain
(UpgradeDomain
) -
get-upgrade-status
(GetUpgradeStatus
) -
get-upgrade-history
(GetUpgradeHistory
)
詳細については、 AWS CLI コマンドリファレンス
アップグレードの開始 (SDK)
このサンプルでは、 のOpenSearchService
import boto3 from botocore.config import Config import time # Build the client using the default credential configuration. # You can use the CLI and run 'aws configure' to set access key, secret # key, and default Region. DOMAIN_NAME = '' # The name of the domain to upgrade TARGET_VERSION = '' # The version you want to upgrade the domain to. For example, OpenSearch_1.1 my_config = Config( # Optionally lets you specify a Region other than your default. region_name='us-east-1' ) client = boto3.client('opensearch', config=my_config) def check_versions(): """Determine whether domain is eligible for upgrade""" response = client.get_compatible_versions( DomainName=DOMAIN_NAME ) compatible_versions = response['CompatibleVersions'] for i in range(len(compatible_versions)): if TARGET_VERSION in compatible_versions[i]["TargetVersions"]: print('Domain is eligible for upgrade to ' + TARGET_VERSION) upgrade_domain() print(response) else: print('Domain not eligible for upgrade to ' + TARGET_VERSION) def upgrade_domain(): """Upgrades the domain""" response = client.upgrade_domain( DomainName=DOMAIN_NAME, TargetVersion=TARGET_VERSION ) print('Upgrading domain to ' + TARGET_VERSION + '...' + response) time.sleep(5) wait_for_upgrade() def wait_for_upgrade(): """Get the status of the upgrade""" response = client.get_upgrade_status( DomainName=DOMAIN_NAME ) if (response['UpgradeStep']) == 'UPGRADE' and (response['StepStatus']) == 'SUCCEEDED': print('Domain successfully upgraded to ' + TARGET_VERSION) elif (response['StepStatus']) == 'FAILED': print('Upgrade failed. Please try again.') elif (response['StepStatus']) == 'SUCCEEDED_WITH_ISSUES': print('Upgrade succeeded with issues') elif (response['StepStatus']) == 'IN_PROGRESS': time.sleep(30) wait_for_upgrade() def main(): check_versions() if __name__ == "__main__": main()
検証障害のトラブルシューティング
OpenSearch または Elasticsearch バージョンアップグレードを開始すると、 OpenSearch Service は最初に一連の検証チェックを実行して、ドメインがアップグレードの対象であるかどうかを確認します。これらのチェックのいずれかが失敗した場合、ドメインを更新する前に修正する必要がある特定の問題を含む通知が表示されます。発生する可能性のある問題とその解決手順の一覧については、検証エラーのトラブルシューティング を参照してください。
アップグレードのトラブルシューティング
インプレース アップグレードには、正常なドメインが必要です。ドメインがアップグレードの対象とならなかったり、さまざまな理由でアップグレードに失敗する場合があります。次の表は、最も一般的な問題を示しています。
問題 | 説明 |
---|---|
オプションのプラグインはサポートされていません |
オプションのプラグインを使用してドメインをアップグレードすると、 OpenSearch サービスによってプラグインも自動的にアップグレードされます。そのため、ドメインのターゲットバージョンは、これらのオプションプラグインもサポートしている必要があります。ターゲットバージョンでは使用できないオプションのプラグインがドメインにインストールされている場合、アップグレードリクエストは失敗します。 |
ノードあたりのシャードが多すぎます | OpenSearch、および Elasticsearch の 7.x バージョンのデフォルト設定では、ノードあたり 1,000 シャード以下です。現在のクラスター内のノードがこの設定を超えると、 OpenSearch サービスではアップグレードできません。トラブルシューティングのオプションについては、「シャードの最大制限を超えました」を参照してください。 |
処理中のドメイン | ドメインは、設定変更中です。オペレーション完了後、アップグレードの適格性を確認します。 |
赤のクラスター状態 | クラスター内の 1 つ以上のインデックスが赤です。トラブルシューティングステップについては、「赤のクラスター状態」を参照してください。 |
高いエラー率 | クラスターはリクエストの処理を試みましたが、大量の 5xx エラーを返しています。この問題は通常、同時読み取りまたは書き込みリクエストが多すぎることで起こります。クラスターへのトラフィックを減らすか、ドメインのスケーリングを検討してください。 |
スプリットブレイン | スプリットブレインとは、 クラスターに 1 つ以上のマスターノードがあり、決して独自に再結合することのない 2 つのクラスターに分割されているという意味です。専用マスターノードの推奨値を使用することで、スプリットブレインを回避できます。スプレッドブレインからの復旧方法については、AWS Support |
マスターノードが見つからない | OpenSearch サービスがクラスターのマスターノードを見つけられません。ドメインでマルチ AZ を使用している場合、アベイラビリティーゾーンの障害によってクラスターがクォーラムを失い、新しいマスターノードを選択できなくなる可能性があります。問題が自動的に解決されない場合、AWS Support |
保留中のタスクが多すぎる | マスターノードに高い負荷がかかっており、たくさんの保留中のタスクがあります。クラスターへのトラフィックを減らすか、ドメインのスケーリングを検討してください。 |
障害が発生したストレージボリューム | 1 つ以上のノードのディスクボリュームが正常に機能していません。この問題は、高いエラー率や保留中のタスクが多すぎるなど、他の問題とともに頻繁に発生します。問題が単独で発生し、自動的に解決されない場合は、AWS Support |
KMS キーの問題 | ドメインの暗号化に使用する KMS キーがアクセス不可能であるか、または存在しません。詳細については、「保管中のデータを暗号化するドメインのモニタリング」を参照してください。 |
スナップショットを作成中 | ドメインは現在、スナップショットを作成しています。スナップショットの完了後に、アップグレードの適格性を確認します。手動スナップショットのリポジトリが一覧表示できること、それらのリポジトリ内のスナップショットが一覧表示できること、および手動スナップショットが作成できることも確認してください。 OpenSearch サービスがスナップショットが進行中かどうかを確認できない場合、アップグレードは失敗する可能性があります。 |
スナップショットのタイムアウトまたは障害 | アップグレード前のスナップショットの完了まで時間がかかりすぎたか、失敗しました。クラスター状態を確認して、再度お試しください。問題が解決しない場合は、AWS Support |
互換性のないインデックス | 1 つ以上のインデックスがターゲットバージョンと互換性がありません。この問題は、古いバージョンの OpenSearch または Elasticsearch からインデックスを移行した場合に発生する可能性があります。インデックスを再作成して、再試行してください。 |
高いディスク使用率 | クラスターのディスク使用率が 90% を超えています。データを削除またはドメインをスケーリングして、再度お試しください。 |
高い JVM 使用率 | JVM メモリプレッシャーが 75% を超えています。クラスターへのトラフィックを削減するか、ドメインをスケーリングして、再度お試しください。 |
OpenSearch Dashboards エイリアスの問題 | .dashboards はエイリアスとして既に設定されており、互換性のないインデックスにマッピングされています。おそらく以前のバージョンの OpenSearch Dashboards のインデックスです。インデックスを再作成して、もう一度試してください。 |
赤の Dashboards ステータス | OpenSearch Dashboards のステータスは赤です。アップグレードが完了したら、Dashboards を使用してみてください。赤いステータスが続く場合は、手動で解決してから再度お試しください。 |
クラスター間の互換性 |
アップグレードできるのは、アップグレード後にソースドメインとデスティネーションドメインの間で、クラスター間の互換性が維持されている場合のみです。アップグレードプロセス中に、互換性のない接続があれば特定されます。続行するには、リモートドメインをアップグレードするか、互換性のない接続を削除します。ドメインでレプリケーションがアクティブな場合は、接続を削除した後でレプリケーションを再開できないことに注意してください。 |
その他の OpenSearch サービスの問題 | OpenSearch サービス自体に問題があると、ドメインがアップグレード対象外として表示される可能性があります。前述の条件がドメインに当てはまらず、問題が 1 日以上続く場合は、AWS Support |
スナップショットを使用してデータを移行する
インプレースアップグレードは、ドメインを新しいバージョン OpenSearch または Elasticsearch バージョンにアップグレードする、より簡単、迅速、信頼性の高い方法です。スナップショットは、Elasticsearch の 5.1 より前のバージョンから移行する必要がある場合や、まったく新しいクラスターに移行する場合に適しています。
次の表は、スナップショットを使用して、別の OpenSearch または Elasticsearch バージョンを使用するドメインにデータを移行する方法を示しています。スナップショットの作成と復元の詳細については、「Amazon OpenSearch Service でのインデックススナップショットの作成」を参照してください。
元のバージョン | 目的のバージョン | 移行プロセス |
---|---|---|
OpenSearch 1.3 または 2.x | OpenSearch 2.x |
|
OpenSearch 1.x | OpenSearch 1.x |
|
Elasticsearch 6.x または 7.x | OpenSearch 1.x |
|
Elasticsearch 6.x | Elasticsearch 7.x |
|
Elasticsearch 6.x | Elasticsearch 6.8 |
|
Elasticsearch 5.x | Elasticsearch 6.x |
|
Elasticsearch 5.x | Elasticsearch 5.6 |
|
Elasticsearch 2.3 | Elasticsearch 6.x |
Elasticsearch 2.3 のスナップショットは 6.x とは互換性がありません。データを 2.3 から 6.x に直接移行するには、新しいドメインでインデックスを手動で再作成する必要があります。 または、この表の 2.3 から 5.x のステップに従い、新しい 5.x ドメインで |
Elasticsearch 2.3 | Elasticsearch 5.x |
|
Elasticsearch 1.5 | Elasticsearch 5.x |
Elasticsearch 1.5 のスナップショットは 5.x とは互換性がありません。データを 1.5 から 5.x に移行するには、新しいドメインでインデックスを手動で再作成する必要があります。 重要1.5 スナップショットは 2.3 と互換性がありますが、 OpenSearch サービス 2.3 ドメインは |
Elasticsearch 1.5 | Elasticsearch 2.3 |
|