Session Manager のトラブルシューティング - AWS Systems Manager

Session Manager のトラブルシューティング

以下の情報を参考にして、AWS Systems Manager Session Manager に関する問題のトラブルシューティングを行います。

セッションを開始するアクセス許可がありません

問題: セッションを開始しようとしましたが、システムから必要なアクセス権限がないと通知されました。

セッション設定を変更するためのアクセス許可がありません

問題: 組織のグローバルなセッション設定を更新しようとしましたが、システムから必要なアクセス権限がないと通知されました。

Session Manager が使用できない、または使用に設定されていないマネージドノード。

問題 1: セッションの開始のコンソールページでセッションを開始したくても、あるマネージドノードがリストにありません。

  • 解決策 A: 接続したいマネージドノードが AWS Systems Manager 用に設定されていない可能性があります。詳細については、「AWS Systems Manager のセットアップ」を参照してください。

    注記

    IAM インスタンスプロファイルを添付する際に AWS Systems Manager SSM Agent がマネージドノード上ですでに実行されている場合、セッションの開始コンソールページにインスタンスが表示される前に、エージェントを再起動しなければならない場合があります。

  • 解決策 B: マネージドノードの SSM Agent に適用したプロキシ設定が正しくない可能性があります。プロキシ設定が正しくない場合、マネージドノードは必要なサービスエンドポイントに到達できないか、またはノードがに異なるオペレーティングシステムとして Systems Manager にレポートする可能性があります。詳細については、「SSM Agent を設定してプロキシを使用する (Linux)」および「SSM Agent が Windows Server インスタンス用にプロキシを使用するように設定する」を参照してください。

問題 2: 接続したいマネージドノードがセッションの開始コンソールページのリストにありますが、「選択したインスタンスは Session Manager を使用するように構成されていません」というページが表示されます。

Session Manager プラグインが見つからない

AWS CLI を使用してセッションコマンドを実行するには、ローカルマシンにも Session Manager プラグインがインストールされている必要があります。詳細については、(オプション) AWS CLI 用の Session Manager プラグインをインストールする を参照してください。

Session Manager プラグインがコマンドラインパスに自動的に追加されませんでした (Windows)

Session Manager プラグインを Windows にインストールする場合、オペレーティングシステムの PATH 環境変数に session-manager-plugin 実行可能ファイルが自動的に追加されます。Session Manager プラグインが正しくインストールされているか (aws ssm start-session --target instance-id) 確認して、コマンド実行後に失敗した場合は、次の手順を使用して手動で設定する必要があります。

PATH 変数を変更するには (Windows)
  1. Windows キーを押し、「environment variables」と入力します。

  2. [Edit environment variables for your account] を選択します。

  3. [PATH] を選択して、[Edit] を選択します。

  4. 次の例に示すように、セミコロンで区切って [Variable value (変数値)] フィールドにパスを追加します: C:\existing\path;C:\new\path

    次の例に示すように、C:\existing\path は既にフィールドにある値を表します。C:\new\path は追加するパスを表します。

    • 64 ビットコンピュータ: C:\Program Files\Amazon\SessionManagerPlugin\bin\

    • 32 ビットコンピュータ: C:\Program Files (x86)\Amazon\SessionManagerPlugin\bin\

  5. [OK] を 2 回選択して、新しい設定を適用します。

  6. 実行中のコマンドプロンプトを閉じ、もう一度開きます。

Session Manager プラグインが応答しなくなる

ローカルマシンにウイルス対策ソフトウェアがインストールされている場合、ポート転送セッション中にトラフィックの転送が停止することがあります。場合によっては、ウイルス対策ソフトウェアが Session Manager プラグインがプロセスのデッドロックを引き起こします。この問題を解決するには、ウィルス対策ソフトウェアから Session Manager プラグインを許可するか除外します。Session Manager プラグインのデフォルトのインストールパスの詳細については、「(オプション) AWS CLI 用の Session Manager プラグインをインストールする」を参照してください。

TargetNotConnected

問題: セッションを開始しようとしましたが、システムは「StartSession オペレーションの呼び出し時にエラー (TargetNotConnected) が発生しました。InstanceID が接続されていません」というエラーメッセージを返します。

  • 解決策 A: このエラーは、セッションに指定されたターゲットのマネージドノードが Session Manager で使用するように完全に設定されていない場合に返されます。詳細については、Session Manager のセットアップ を参照してください。

  • 解決策 B: このエラーは、別の AWS アカウント または AWS リージョン にあるマネージドノードでセッションを開始しようとした場合も返されます。

セッション開始後に空白の画面が表示される

問題: セッションを開始すると、Session Manager に空白の画面が表示される。

  • 解決策 A: この問題は、マネージドノードのルートボリュームがいっぱいになったときに発生する可能性があります。ディスク容量不足のため、ノードの SSM Agent が動作を停止します。この問題を解決するには、Amazon CloudWatch を使用して、オペレーティングシステムからメトリクスとログを収集します。詳細については、「Amazon EC2 Linux インスタンスのメモリとディスクのメトリクスのモニタリング」または「Amazon EC2 Windows インスタンスのメモリとディスクのメトリクスのモニタリング」を参照してください。

  • 解決策 B: エンドポイントとリージョンのペアが一致しないリンクを使用してコンソールにアクセスした場合、空白の画面が表示されることがあります。例えば、次のコンソール URL では、us-west-2 は指定されたエンドポイントですが、us-west-1 は指定された AWS リージョン です。

    https://us-west-2.console.aws.amazon.com/systems-manager/session-manager/sessions?region=us-west-1
  • 解決策 C: VPC エンドポイントを使用してマネージドノードが Systems Manager に接続し、Session Manager の設定に基づいてセッション出力が Amazon S3 バケットまたは Amazon CloudWatch Logs のロググループに書き込みますが、s3 ゲートウェイ・エンドポイントまたは logs インターフェイス・エンドポイントは VPC に存在しません。マネージドノードが VPC エンドポイントを使用して Systems Manager に接続し、Session Manager の設定に基づいてセッション出力が Amazon S3 バケット に書き込まれる場合、com.amazonaws.region.s3 形式の s3 エンドポイントが必要です。マネージドノードが VPC エンドポイントを使用して Systems Manager に接続し、Session Manager の設定に基づいてセッション出力が CloudWatch Logs のロググループに書き込まれる場合、com.amazonaws.region.logs 形式の logs エンドポイントが必要です。詳細については、「Systems Manager 用の VPC エンドポイントを作成する」を参照してください。

  • 解決策 D: セッション設定で指定したロググループまたは Amazon S3 バケットが削除されました。この問題を解決するには、有効なロググループまたは S3 バケットを使用してセッション設定を更新します。

  • 解決策 E: セッション設定で指定したロググループまたは Amazon S3 バケットは暗号化されませんが、 cloudWatchEncryptionEnabled または s3EncryptionEnabled の入力を true に設定しています。この問題を解決するには、暗号化されたロググループまたは Amazon S3 バケットを使用してセッション設定を更新するか、cloudWatchEncryptionEnabled または s3EncryptionEnabled 入力を false に設定します。このシナリオは、コマンドラインツールを使用してセッション設定を作成する顧客にのみ適用されます。

長時間実行しているセッション中にマネージドノードが応答しなくなる

問題: 長時間実行しているセッション中にマネージドノードが応答しなくなるか、またはクラッシュします。

解決策: Session Manager の SSM Agent ログ保持期間を減らします。

セッションの SSM Agent ログの保持期間を短縮するには
  1. Linux 向けの amazon-ssm-agent.json.template ディレクトリ、または Windows 向けの /etc/amazon/ssm/ 内で C:\Program Files\Amazon\SSM を検索します。

  2. amazon-ssm-agent.json.template の内容を、amazon-ssm-agent.json という名前の同じディレクトリ内の新しいファイルにコピーします。

  3. SessionLogsRetentionDurationHours プロパティの SSM 値のデフォルト値を小さくして、ファイルを保存します。

  4. [SSM Agent] を再起動する