アクセスエラーと AWS CodeCommit のトラブルシューティング - AWS CodeCommit

アクセスエラーと AWS CodeCommit のトラブルシューティング

以下の情報は、AWS CodeCommit リポジトリに接続するときに、アクセスエラーのトラブルシューティングに役立つ場合があります。

アクセスエラー: Windows から CodeCommit リポジトリへ接続する際、ユーザー名とパスワードの入力を求められる

問題: Git を使用して CodeCommit リポジトリ に接続しようとすると、ユーザー名およびパスワードの入力を求めるダイアログボックスが表示されます。

解決方法: Windows 用の組み込みの認証情報管理システムである可能性があります。設定により、以下のいずれかを実行します。

アクセスエラー: CodeCommit リポジトリへの接続時にパブリックキーが拒否される

問題: SSH エンドポイントを使用して CodeCommit リポジトリ と接続しようとすると、エラーメッセージ Error: public key denied が表示されます。

解決方法: このエラーの最も一般的な原因は、SSH 接続のセットアップを完了していないことです。SSH キー (パブリックキーとプライベートのペア) を設定し、続いて、そのパブリックキーを IAM ユーザーと関連付けます。SSH の設定に関する詳細については、「Linux, macOS, or Unix で SSH 接続をセットアップする手順」および「Windows で SSH 接続をセットアップする手順」を参照してください。

アクセスエラー: CodeCommit リポジトリへの接続時の「Rate Exceeded」または「429」メッセージ

問題: CodeCommit リポジトリと通信しようとすると、「Rate Exceeded」というメッセージまたはエラーコード「429」が表示されます。通信は大幅に遅くなるか失敗します。

問題: アプリケーション、AWS CLI、Git クライアント、AWS マネジメントコンソールのいずれからの CodeCommit へのすべての呼び出しは、1 秒あたりの最大リクエスト数と全体的なアクティブリクエストの対象となります。どの AWS リージョンでも、AWS アカウントの許容されるリクエストレートの最大値を超えることはできません。リクエストが最大レートを超えると、エラーが表示され、それ以降の呼び出しは一時的に AWS アカウントに制限されます。スロットリング期間中は、CodeCommit への接続が遅くなり、失敗する可能性があります。

解決方法: CodeCommit への接続または呼び出しの数を減らすか、リクエストを分散させるためのステップを実行してください。留意が必要なアプローチ:

  • リクエスト、特に定期的なポーリングリクエストにジッターを実装する

    CodeCommit を定期的にポーリングしているアプリケーションがあり、このアプリケーションが複数の Amazon EC2 インスタンスで実行されている場合は、異なる Amazon EC2 インスタンスが同じ秒にポーリングしないようにジッター (ランダムな遅延量) を導入します。1 分間にポーリングメカニズムを均等に分散させるには、0 〜 59 秒の乱数をお勧めします。

  • ポーリングではなくイベントベースのアーキテクチャーを使用する

    ポーリングではなく、イベントベースのアーキテクチャーを使用して、イベントが発生したときにのみ呼び出しが行われるようにします。ワークフローをトリガーするために AWS CodeCommit イベントに CloudWatch イベント 通知を使用することを検討します。

  • API と自動 Git アクションのためのエラー再試行とエクスポネンシャルバックオフの実装

    エラーの再試行とエクスポネンシャルバックオフは、呼び出しの頻度を制限するのに役立ちます。各 AWS SDK は自動再試行ロジックおよび指数エクスポネンシャルバックオフアルゴリズムを実装します。自動 Git push と Git pull の場合は、独自の再試行ロジックを実装する必要があります。詳細については、「AWS でのエラーの再試行とエクスポネンシャルパックオフ」を参照してください。

  • AWS サポートセンターで CodeCommit サービスのクォータの引き上げを要求する

    サービスの制限の引き上げを受けるには、エラーの再試行やエクスポネンシャルバックオフ方法の実装など、ここで示されている提案に従っていることを確認する必要があります。リクエストでは、AWS リージョン、AWS アカウント、およびスロットリングの問題の影響を受ける期間も入力する必要があります。