Error deploying aws.greengrass.SystemsManagerAgent with state BROKEN

0

After using AWS Console to deploy AWS System Manager, here are the steps:

"AWS Console" -> "IoT Core" -> "Manage" -> "Greengrass devices" -> "Components" -> "Public components" -> search for "aws.greengrass.SystemsManagerAgent" -> "Deploy"

This deployment fails and when looking at the device logs it is showing the the component is in the BROKEN state. Here is the log:

2023-05-10T21:27:06.981Z [INFO] (pool-2-thread-34) aws.greengrass.SystemsManagerAgent: shell-runner-start. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN, command=["/opt/greengrass/v2/packages/artifacts-unarchived/aws.greengrass.SystemsManager..."]}
2023-05-10T21:27:06.987Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO Setup parameters:. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:06.987Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO artifactsDir=/opt/greengrass/v2/packages/artifacts-unarchived/aws.greengrass.SystemsManagerAgent/1.0.0/artifacts. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:06.987Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO region=us-east-1. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:06.987Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO install=false. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:06.987Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO shutdown=true. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:06.987Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO register=false. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:06.987Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO role=. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:06.987Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO tags=[{"Key":"","Value":""}]. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:06.988Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO override=false. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:06.988Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. DEBUG Package manager dpkg is available, checking if agent is installed. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.009Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO Agent is already installed with dpkg, selecting it as package manager. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.009Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO Selecting Systemctl as service manager. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.010Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO Shutting down amazon-ssm-agent. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.010Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO Stopping agent using Systemctl service manager. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.021Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO Successfully stopped agent. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.352Z [INFO] (pool-2-thread-34) aws.greengrass.SystemsManagerAgent: shell-runner-start. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN, command=["/opt/greengrass/v2/packages/artifacts-unarchived/aws.greengrass.SystemsManager..."]}
2023-05-10T21:27:07.358Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO Setup parameters:. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.359Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO artifactsDir=/opt/greengrass/v2/packages/artifacts-unarchived/aws.greengrass.SystemsManagerAgent/1.0.0/artifacts. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.359Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO region=us-east-1. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.359Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO install=false. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.359Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO shutdown=true. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.359Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO register=false. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.359Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO role=. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.359Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO tags=[{"Key":"","Value":""}]. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.359Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO override=false. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.359Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. DEBUG Package manager dpkg is available, checking if agent is installed. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.385Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO Agent is already installed with dpkg, selecting it as package manager. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.386Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO Selecting Systemctl as service manager. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.386Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO Shutting down amazon-ssm-agent. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.386Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO Stopping agent using Systemctl service manager. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}
2023-05-10T21:27:07.412Z [INFO] (Copier) aws.greengrass.SystemsManagerAgent: stdout. INFO Successfully stopped agent. {scriptName=services.aws.greengrass.SystemsManagerAgent.lifecycle.Shutdown.Script, serviceName=aws.greengrass.SystemsManagerAgent, currentState=BROKEN}

What best way to determine why it is in the broken state?

2 Answers
0
Accepted Answer

@Aws_user171999 it seems that an image can be attached, but not log files. I do have the specific log "aws.greengrass.SystemsManagerAgent.log", but can't attach it here. I would need to upload it somewhere and add a link.

I was able to resolve the issue by running into the following link below, specifically the "Example: Configuration merge update" section: https://docs.aws.amazon.com/greengrass/v2/developerguide/systems-manager-agent-component.html#systems-manager-agent-component-configuration

To solve this, I did the following:

  1. Login to AWS Console
  2. Go to "IoT Core"
  3. Manage -> Greengrass devices -> Deployments
  4. Select your deployment
  5. Select Actions -> Revise
  6. Click "Revise deployment"
  7. In "Specify target", click "Next"
  8. In "Select components - options", click "Next".
  9. In "Configure components - optional", click the circle next to "aws.greengrass.SystemManagerAgent". This will cause the "Configure component" button to enable, so click on it.
  10. In the "Configuration update" -> "Configuration to merge", past the following JSON text below. Make sure to replace the value of "SSMRegistrationRole" with the role defined in IAM. Do not use the full ARN, just the role name:
{
	"SSMRegistrationRole": "myRole",
	"SSMOverrideExistingRegistration": true,
	"SSMResourceTags": [
		{
			"Key": "Owner",
			"Value": "user1"
		},
		{
			"Key": "Team",
			"Value": "team1"
		}
	]
}
  1. Click on "Confirm"
  2. Finish the deployment.

Once the correct "SSMRegistrationRole" was setup the deployment finished successfully.

answered a year ago
0

Hello,

I understand that you are using AWS Console to deploy AWS System Manager. When the deployment fails and looking at the device logs it is showing the the component is in the broken state. Hence, you would like to know about the best way to determine why it is in the broken state.

I would like mention that It should be visible in the System Manager logs only. And for better understanding the issue please share the complete logs.

Monitor AWS IoT Greengrass logs - https://docs.aws.amazon.com/greengrass/v2/developerguide/monitor-logs.html

answered a year ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions