Troubleshooting Session Manager
Use the following information to help you troubleshoot problems with AWS Systems Manager Session Manager.
Topics
- Session Manager can't connect from the Amazon EC2 console
- No permission to start a session
- No permission to change session preferences
- Managed node not available or not configured for Session Manager
- Session Manager plugin not found
- Session Manager plugin not automatically added to command line path (Windows)
- Session Manager plugin becomes unresponsive
- TargetNotConnected
- Blank screen displays after starting a session
- Managed node becomes unresponsive during long running sessions
Session Manager can't connect from the Amazon EC2 console
Problem: After creating a new instance, the Session Manager tab in the Amazon Elastic Compute Cloud (Amazon EC2) console doesn't give you the option to connect.
Solution A: Create an instance profile: If you haven't already done so (as instructed by the information on the Session Manager tab in the EC2 console), create an AWS Identity and Access Management (IAM) instance profile by using Quick Setup. Quick Setup is a capability of AWS Systems Manager.
Session Manager requires an IAM instance profile to connect to your instance. You can
create an instance profile and assign it to your instance by creating a host
management configuration with Quick Setup. A host management
configuration creates an instance profile with the required
permissions and assigns it to your instance. A host management configuration also
enables other Systems Manager capabilities and creates IAM roles for running those
capabilities. There is no charge to use Quick Setup or the capabilities enabled by the
host management configuration. Open Quick Setup and create a host management configuration
Important
After you create the host management configuration, Amazon EC2 can take several
minutes to register the change and refresh the Session
Manager tab. If the tab doesn't show you a
Connect button after two or three minutes, refresh your
browser. If you still don't see the option to connect, open Quick Setup
If you still can't connect after creating a host management configuration, or if you receive an error, including an error about SSM Agent, see one of the following solutions:
Solution B: No error, but still can't connect
If you created the host management configuration, waited several minutes before trying to connect, and still can't connect, then you might need to manually apply the host management configuration to your instance. Use the following procedure to update a Quick Setup host management configuration and apply changes to an instance.
To update a host management configuration using Quick Setup
Open the AWS Systems Manager console at https://console.aws.amazon.com/systems-manager/
. In the navigation pane, choose Quick Setup.
-or-
If the AWS Systems Manager home page opens first, choose the menu icon (
) to open the navigation pane, and then choose Quick Setup in the navigation pane.
-
In the Configurations list, choose the Host Management configuration you created.
-
Choose Actions, and then choose Edit configuration.
-
In the Targets section, choose Manual.
-
In the Instances section, choose the instance you created.
-
Choose Update.
Wait a few minutes for EC2 to refresh the Session Manager tab. If you still can't connect or if you receive an error, review the remaining solutions for this issue.
Solution C: Error about missing SSM Agent
If you weren't able to create a host management configuration by using Quick Setup, or if you received an error about SSM Agent not being installed, you may need to manually install SSM Agent on your instance. SSM Agent is Amazon software that enables Systems Manager to connect to your instance by using Session Manager. SSM Agent is installed by default on most Amazon Machine Images (AMIs). If your instance was created from a non-standard AMI or an older AMI, you might have to manually install the agent. For the procedure to install SSM Agent, see the following topic that corresponds to your instance operating system.
For issues with SSM Agent, see Troubleshooting SSM Agent.
Solution D: Permission error
If you receive an error that you don't have permission to either run Quick Setup or to connect to an instance by using Session Manager, verify that you have administrator permissions in your in your AWS account. If you don't know, then reach out to the AWS system administrator in your organization and request permission.
No permission to start a session
Problem: You try to start a session, but the system tells you that you don't have the necessary permissions.
-
Solution: A system administrator hasn't granted you AWS Identity and Access Management (IAM) policy permissions for starting Session Manager sessions. For information, see Control user session access to instances.
No permission to change session preferences
Problem: You try to update global session preferences for your organization, but the system tells you that you don't have the necessary permissions.
-
Solution: A system administrator hasn't granted you IAM policy permissions for setting Session Manager preferences. For information, see Grant or deny a user permissions to update Session Manager preferences.
Managed node not available or not configured for Session Manager
Problem 1: You want to start a session on the Start a session console page, but a managed node isn't in the list.
-
Solution A: The managed node you want to connect to might not have been configured for AWS Systems Manager. For more information, see Setting up AWS Systems Manager.
Note
If AWS Systems Manager SSM Agent is already running on a managed node when you attach the IAM instance profile, you might need to restart the agent before the instance is listed on the Start a session console page.
-
Solution B: The proxy configuration you applied to the SSM Agent on your managed node might be incorrect. If the proxy configuration is incorrect, the managed node won't be able to reach the needed service endpoints, or the node might report as a different operating system to Systems Manager. For more information, see Configuring SSM Agent to use a proxy (Linux) and Configure SSM Agent to use a proxy for Windows Server instances.
Problem 2: A managed node you want to connect is in the list on the Start a session console page, but the page reports that "The instance you selected isn't configured to use Session Manager."
-
Solution A: The managed node has been configured for use with the Systems Manager service, but the IAM instance profile attached to the node might not include permissions for the Session Manager capability. For information, see Verify or Create an IAM Instance Profile with Session Manager Permissions.
-
Solution B: The managed node isn't running a version of SSM Agent that supports Session Manager. Update SSM Agent on the node to version 2.3.68.0 or later.
Update SSM Agent manually on a managed node by following the steps in Manually installing SSM Agent on EC2 instances for Windows Server, Manually installing SSM Agent on EC2 instances for Linux, or Working with SSM Agent on EC2 instances for macOS, depending on the operating system.
Alternatively, use the Run Command document
AWS-UpdateSSMAgent
to update the agent version on one or more managed nodes at a time. For information, see Updating the SSM Agent using Run Command.Tip
To always keep your agent up to date, we recommend updating SSM Agent to the latest version on an automated schedule that you define using either of the following methods:
-
Run
AWS-UpdateSSMAgent
as part of a State Manager association. For information, see Walkthrough: Automatically update SSM Agent (CLI). -
Run
AWS-UpdateSSMAgent
as part of a maintenance window. For information about working with maintenance windows, see Working with maintenance windows (console) and Tutorial: Create and configure a maintenance window (AWS CLI).
-
-
Solution C: The managed node can't reach the requisite service endpoints. You can improve the security posture of your managed nodes by using interface endpoints powered by AWS PrivateLink to connect to Systems Manager endpoints. The alternative to using interface endpoints is to allow outbound internet access on your managed nodes. For more information, see Use PrivateLink to set up a VPC endpoint for Session Manager.
-
Solution D: The managed node has limited available CPU or memory resources. Although your managed node might otherwise be functional, if the node doesn't have enough available resources, you can't establish a session. For more information, see Troubleshooting an Unreachable Instance.
Session Manager plugin not found
To use the AWS CLI to run session commands, the Session Manager plugin must also be installed on your local machine. For information, see Install the Session Manager plugin for the AWS CLI.
Session Manager plugin not automatically added to command line path (Windows)
When you install the Session Manager plugin on Windows, the
session-manager-plugin
executable should be automatically
added to your operating system's PATH
environment variable. If
the command failed after you ran it to check whether the Session Manager plugin installed
correctly (aws ssm start-session --target
), you might need to set it
manually using the following procedure.instance-id
To modify your PATH variable (Windows)
-
Press the Windows key and enter
environment variables
. -
Choose Edit environment variables for your account.
-
Choose PATH and then choose Edit.
-
Add paths to the Variable value field, separated by semicolons, as shown in this example:
;C:\existing\path
C:\new\path
represents the value already in the field.C:\existing\path
represents the path you want to add, as shown in these examples.C:\new\path
-
64-bit machines:
C:\Program Files\Amazon\SessionManagerPlugin\bin\
-
32-bit machines:
C:\Program Files (x86)\Amazon\SessionManagerPlugin\bin\
-
-
Choose OK twice to apply the new settings.
-
Close any running command prompts and re-open.
Session Manager plugin becomes unresponsive
During a port forwarding session, traffic might stop forwarding if you have antivirus software installed on your local machine. In some cases, antivirus software interferes with the Session Manager plugin causing process deadlocks. To resolve this issue, allow or exclude the Session Manager plugin from the antivirus software. For information about the default installation path for the Session Manager plugin, see Install the Session Manager plugin for the AWS CLI.
TargetNotConnected
Problem: You try to start a session, but the
system returns the error message, "An error occurred (TargetNotConnected) when
calling the StartSession operation: InstanceID
isn't
connected."
-
Solution A: This error is returned when the specified target managed node for the session isn't fully configured for use with Session Manager. For information, see Setting up Session Manager.
-
Solution B: This error is also returned if you attempt to start a session on a managed node that is located in a different AWS account or AWS Region.
Blank screen displays after starting a session
Problem: You start a session and Session Manager displays a blank screen.
-
Solution A: This issue can occur when the root volume on the managed node is full. Due to lack of disk space, SSM Agent on the node stops working. To resolve this issue, use Amazon CloudWatch to collect metrics and logs from the operating systems. For information, see Monitoring memory and disk metrics for Amazon EC2 Linux instances or Monitoring memory and disk metrics for Amazon EC2 Windows instances.
-
Solution B: A blank screen might display if you accessed the console using a link that includes a mismatched endpoint and Region pair. For example, in the following console URL,
us-west-2
is the specified endpoint, butus-west-1
is the specified AWS Region.https://us-west-2.console.aws.amazon.com/systems-manager/session-manager/sessions?region=us-west-1
-
Solution C: The managed node is connecting to Systems Manager using VPC endpoints, and your Session Manager preferences write session output to an Amazon S3 bucket or Amazon CloudWatch Logs log group, but an
s3
gateway endpoint orlogs
interface endpoint doesn't exist in the VPC. Ans3
endpoint in the formatcom.amazonaws.
is required if your managed nodes are connecting to Systems Manager using VPC endpoints, and your Session Manager preferences write session output to an Amazon S3 bucket. Alternatively, aregion
.s3logs
endpoint in the formatcom.amazonaws.
is required if your managed nodes are connecting to Systems Manager using VPC endpoints, and your Session Manager preferences write session output to a CloudWatch Logs log group. For more information, see Creating VPC endpoints for Systems Manager.region
.logs -
Solution D: The log group or Amazon S3 bucket you specified in your session preferences has been deleted. To resolve this issue, update your session preferences with a valid log group or S3 bucket.
-
Solution E: The log group or Amazon S3 bucket you specified in your session preferences isn't encrypted, but you have set the
cloudWatchEncryptionEnabled
ors3EncryptionEnabled
input totrue
. To resolve this issue, update your session preferences with a log group or Amazon S3 bucket that is encrypted, or set thecloudWatchEncryptionEnabled
ors3EncryptionEnabled
input tofalse
. This scenario is only applicable to customers who create session preferences using command line tools.
Managed node becomes unresponsive during long running sessions
Problem: Your managed node becomes unresponsive or crashes during a long running session.
Solution: Decrease the SSM Agent log retention duration for Session Manager.
To decrease the SSM Agent log retention duration for sessions
-
Locate the
amazon-ssm-agent.json.template
in the/etc/amazon/ssm/
directory for Linux, orC:\Program Files\Amazon\SSM
for Windows. -
Copy the contents of the
amazon-ssm-agent.json.template
to a new file in the same directory namedamazon-ssm-agent.json
. -
Decrease the default value of the
SessionLogsRetentionDurationHours
value in theSSM
property, and save the file. -
Restart the SSM Agent.