AWS DMS と MongoDB ソースエンドポイント間の接続エラーをトラブルシューティングする方法を教えてください。

最終更新日: 2022 年 6 月 27 日

AWS Database Migration Service (AWS DMS) レプリケーションインスタンスと MongoDB ソースエンドポイント間の接続に失敗しました。ソースエンドポイントとして MongoDB を使用している場合、「テストエンドポイントの失敗」エラーをトラブルシューティングする方法を教えてください。

解決方法

MongoDB ソースエンドポイントが接続に失敗する理由は複数あります。次の一般的なエラーとその解決策を参照してください。

接続タイムアウト呼び出しエラー

AWS DMS レプリケーションインスタンスが指定された MongoDB データベースに接続できない場合、次のエラーが表示されます。

Test Endpoint failed: Application-Status: 1020912, Application-Message: Failed to create new client connection Failed to connect to database., Application-Detailed-Message: Error verifying connection: 'No suitable servers found (`serverSelectionTryOnce` set): [connection timeout calling ismaster on 'mongodbtest.us-west-2.compute.amazonaws.com:27017']' Failed to connect to database.

このエラーは、AWS DMS レプリケーションインスタンスと MongoDB データベースの間で接続を確立できない場合に発生します。ほとんどの場合は、セキュリティグループ、ネットワークアクセスコントロールリスト (ネットワーク ACL)、またはオンプレミスのファイアウォールと IP アドレステーブルの設定問題が原因です。このエラーを解決するには、ネットワークが AWS DMS レプリケーションインスタンスの接続要件を満たすように設定されていることを確認します。

接続が呼び出しエラーを拒否する

AWS DMS レプリケーションインスタンスからの接続リクエストが MongoDB インスタンスによって拒否されると、次のエラーが表示されます。

Test Endpoint failed: Application-Status: 1020912, Application-Message: Failed to create new client connection Failed to connect to database., Application-Detailed-Message: Error verifying connection: 'No suitable servers found (`serverSelectionTryOnce` set): [connection refused calling ismaster on 'mongodbtest.us-west-2.compute.amazonaws.com:27017']' Failed to connect to database.

このエラーは、MongoDB データベースの bindIp 設定でレプリケーションインスタンスからの接続へのアクセスが許可されていない場合に発生します。このエラーを解決するには、MongoDB インスタンスの bindIp 設定を変更して、レプリケーションインスタンスからの接続を許可します。詳細については、IP バインディングに関する MongoDB のドキュメントを参照してください。

認証失敗エラー

提供された認証情報が正しくないか、特殊文字を使用すると、次のエラーが表示されます。

Test Endpoint failed: Application-Status: 1020912, Application-Message: Failed to create new client connection Failed to connect to database., Application-Detailed-Message: Error verifying connection: 'Authentication failed.' Failed to connect to database.<br>

このエラーは、エンドポイントで指定されたユーザー名またはパスワードが正しくない場合、ユーザー名フィールドに指定された認証ソースデータベースが正しくない場合、または MongoDB が受け付けない特殊文字をパスワードに使用した場合に発生します。詳細については、ソースエンドポイントとターゲットエンドポイントの作成を参照してください。

このエラーを解決するには、エンドポイントで提供されるユーザー名とパスワードを使用して MongoDB データベースに接続し、認証情報が正しいことを確認します。

Libmongoc バージョンエラー

AWS DMS レプリケーションでサポートされていないバージョンの MongoDB を使用すると、次のエラーが表示されます。

Test Endpoint failed: Application-Status: 1020912, Application-Message: Failed to create new client connection Failed to connect to database., Application-Detailed-Message: Error verifying connection: 'Server at ec2-35-166-73-109.us-west-2.compute.amazonaws.com:27017 reports wire version 2, but this version of libmongoc requires at least 3 (MongoDB 3.0)' Failed to connect to database.

このエラーを解決するには、ソース MongoDB データベースを AWS DMS でサポートされているバージョンの MongoDB にアップグレードします。