AWSマネジメントコンソールからセッションマネージャーを利用してEC2へ接続しようとした際に「SSM エージェントはオンラインではありません」と表示され接続ができなかったので、その原因と解決策を記載します。
エラー解決のため以下の項目を確認しましたが、問題はありませんでした。
自身が認知していない以下のセッションマネージャー接続用VPCエンドポイントが作成されており、VPCエンドポイントに関連付けられたセキュリティグループでHTTPSのインバウンド通信を許可していなかったことが原因でした。
AWSの仕様で、インターネットへのアクセスの経路とVPCエンドポイントの経路があった場合、VPCエンドポイントが優先されるようです。
解決策は2つあります。
個人アカウントでの検証時にはないと思いますが、会社の検証用アカウント、業務用アカウントなどでは、自身が認知していないVPCエンドポイントが作成されていることがあるかもしれません。
その際にこの記事が参考になればと思います。
Session Manager を使用して Amazon EC2 インスタンスに接続できないのはなぜですか?
ステップ 6: (オプション) AWS PrivateLink を使用して Session Manager の VPC エンドポイントを設定する