`sudo ./greengrassd start` not working

0

●environment・device
・jetson xavier, jetson nano
※both devices have same problem
・Greengrass Version: 1.11.0

●problem
when i call below command, i have problem.
i cant find solution from logs and aws greengrass documents.
please help me.
※i hide some text for security.

sudo ./greengrassd start  
  
hoge@hoge-desktop:~/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/ggc/core$ sudo ./greengrassd start  
Setting up greengrass daemon  
Validating hardlink/softlink protection  
Waiting for up to 1m10s for Daemon to start  
ds server failed to start listening to socket: listen unix /home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/ggc/socket/greengrass_ipc.sock: bind: invalid argument  
runtime failed to start: unable to start domain socket server  
amazonaws.com/iot/greengrass/ipc.(*Service).Serve  
	/opt/src/src/amazonaws.com/iot/greengrass/ipc/server.go:134  
main.main.func3  
	/opt/src/src/amazonaws.com/iot/greengrass/daemon/daemon.go:294  
runtime.goexit  
	/usr/local/go/lib/src/runtime/asm_arm64.s:1128  
unable to start server  
main.main.func3  
	/opt/src/src/amazonaws.com/iot/greengrass/daemon/daemon.go:296  
runtime.goexit  
	/usr/local/go/lib/src/runtime/asm_arm64.s:1128  
The Greengrass daemon process with \[pid = 16078] died  

●report
・config.json

{  
  "coreThing" : {  
    "caPath" : "root.ca.pem",  
    "certPath" : "84bca786b7.cert.pem",  
    "keyPath" : "84bca786b7.private.key",  
    "thingArn" : "arn:aws:iot:○○:××:thing/xavier-greengrass-sample-dev_Core",  
    "iotHost" : "××-ats.iot.○○.amazonaws.com",  
    "ggHost" : "greengrass-ats.iot.○○.amazonaws.com",  
    "keepAlive" : 600  
  },  
  "runtime" : {  
    "cgroup" : {  
      "useSystemd" : "yes"  
    }  
  },  
  "managedRespawn" : false,  
  "crypto" : {  
    "principals" : {  
      "SecretsManager" : {  
        "privateKeyPath" : "file:///home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/certs/84bca786b7.private.key"  
      },  
      "IoTCertificate" : {  
        "privateKeyPath" : "file:///home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/certs/84bca786b7.private.key",  
        "certificatePath" : "file:///home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/certs/84bca786b7.cert.pem"  
      }  
    },  
    "caPath" : "file:///home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/certs/root.ca.pem"  
  }  
}  

・runtime.log

\[2021-07-02T15:37:42.287+09:00]\[INFO]-===========================================  
\[2021-07-02T15:37:42.287+09:00]\[INFO]-Greengrass Version: 1.11.0-RC2  
\[2021-07-02T15:37:42.287+09:00]\[INFO]-Greengrass Root: /home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass  
\[2021-07-02T15:37:42.287+09:00]\[INFO]-Greengrass Write Directory: /home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/ggc  
\[2021-07-02T15:37:42.287+09:00]\[INFO]-Group File Directory: /home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/ggc/deployment/group  
\[2021-07-02T15:37:42.288+09:00]\[INFO]-Default Lambda UID: 125  
\[2021-07-02T15:37:42.288+09:00]\[INFO]-Default Lambda GID: 131  
\[2021-07-02T15:37:42.288+09:00]\[DEBUG]-Go version: go1.12.11  
\[2021-07-02T15:37:42.288+09:00]\[DEBUG]-CoreThing Connection Config:  
{  
	"Region": "△△",  
	"ThingArn": "arn:aws:iot:△△:□□:thing/xavier-greengrass-sample-dev_Core",  
	"IoTMQTTEndpoint": "〇〇-ats.iot.△△.amazonaws.com:8883",  
	"IoTHTTPEndpoint": "〇〇-ats.iot.△△.amazonaws.com:8443",  
	"GGMQTTPort": 8883,  
	"GGHTTPEndpoint": "greengrass-ats.iot.△△.amazonaws.com:8443",  
	"GGDaemonPort": 8000,  
	"GGMQTTKeepAlive": 600,  
	"GGMQTTMaxConnectionRetryInterval": 60,  
	"GGMQTTConnectTimeout": 30,  
	"GGMQTTPingTimeout": 30,  
	"GGMQTTOperationTimeout": 5,  
	"GGHTTPTimeout": 60,  
	"FIPSMode": false,  
	"CoreClientId": ""  
}  
\[2021-07-02T15:37:42.288+09:00]\[DEBUG]-System Config:  
{  
	"tmpDirectory": "",  
	"shadowSyncTimeout": 0,  
	"useOverlayWithTmpfs": false,  
	"disablePivotRoot": false  
}  
\[2021-07-02T15:37:42.288+09:00]\[DEBUG]-Runtime Config:  
{  
	"maxWorkItemCount": 1024,  
	"schedulingFrequency": 1000,  
	"maxConcurrentLimit": 25,  
	"lruSize": 25,  
	"cgroup": {  
		"useSystemd": true,  
		"mountPoint": null  
	},  
	"postStartHealthCheckTimeout": 60000,  
	"allowFunctionsToRunAsRoot": false,  
	"onSystemComponentsFailure": 0,  
	"systemComponentAuthTimeout": 5000,  
	"mountAllBlockDevices": false  
}  
\[2021-07-02T15:37:42.288+09:00]\[INFO]-===========================================  
\[2021-07-02T15:37:42.288+09:00]\[DEBUG]-\[3]Requested certificate load \[file:///home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/certs/84bca786b7.cert.pem] with error: \[<nil>]  
\[2021-07-02T15:37:42.288+09:00]\[INFO]-The current core is using the AWS IoT certificates with fingerprint.	{"fingerprint": "~~~~~"}  
\[2021-07-02T15:37:42.288+09:00]\[INFO]-Will persist worker process info.	{"dir": "/home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/ggc/packages/1.11.0/var/worker/processes"}  
\[2021-07-02T15:37:42.289+09:00]\[INFO]-Will persist worker process info.	{"dir": "/home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/ggc/packages/1.11.0/var/worker/processes"}  
\[2021-07-02T15:37:42.29+09:00]\[DEBUG]-loading subscriptions	{"trie": "map\[]"}  
\[2021-07-02T15:37:42.29+09:00]\[INFO]-No proxy URL found.  
\[2021-07-02T15:37:42.29+09:00]\[DEBUG]-\[3]Requested certificate load \[file:///home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/certs/root.ca.pem] with error: \[<nil>]  
\[2021-07-02T15:37:42.291+09:00]\[DEBUG]-\[3]Requested key load \[file:///home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/certs/84bca786b7.private.key] with error: \[<nil>]  
\[2021-07-02T15:37:42.291+09:00]\[DEBUG]-\[3]Requested certificate load \[file:///home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/certs/84bca786b7.cert.pem] with error: \[<nil>]  
\[2021-07-02T15:37:42.291+09:00]\[INFO]-No proxy URL found.  
\[2021-07-02T15:37:42.292+09:00]\[FATAL]-ds server failed to start listening to socket: listen unix /home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/ggc/socket/greengrass_ipc.sock: bind: invalid argument  
runtime failed to start: unable to start domain socket server  
amazonaws.com/iot/greengrass/ipc.(*Service).Serve  
	/opt/src/src/amazonaws.com/iot/greengrass/ipc/server.go:134  
main.main.func3  
	/opt/src/src/amazonaws.com/iot/greengrass/daemon/daemon.go:294  
runtime.goexit  
	/usr/local/go/lib/src/runtime/asm_arm64.s:1128  
unable to start server  
main.main.func3  
	/opt/src/src/amazonaws.com/iot/greengrass/daemon/daemon.go:296  
runtime.goexit  
	/usr/local/go/lib/src/runtime/asm_arm64.s:1128	{"stacktrace": "main.stop\n\t/opt/src/src/amazonaws.com/iot/greengrass/daemon/daemon.go:108\nruntime.gopanic\n\t/usr/local/go/lib/src/runtime/panic.go:522\nmain.main.func3\n\t/opt/src/src/amazonaws.com/iot/greengrass/daemon/daemon.go:296"}  

・crash.log

ds server failed to start listening to socket: listen unix /home/hoge/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass/ggc/socket/greengrass_ipc.sock: bind: invalid argument  
runtime failed to start: unable to start domain socket server  
amazonaws.com/iot/greengrass/ipc.(*Service).Serve  
	/opt/src/src/amazonaws.com/iot/greengrass/ipc/server.go:134  
main.main.func3  
	/opt/src/src/amazonaws.com/iot/greengrass/daemon/daemon.go:294  
runtime.goexit  
	/usr/local/go/lib/src/runtime/asm_arm64.s:1128  
unable to start server  
main.main.func3  
	/opt/src/src/amazonaws.com/iot/greengrass/daemon/daemon.go:296  
runtime.goexit  
	/usr/local/go/lib/src/runtime/asm_arm64.s:1128  
The Greengrass daemon process with \[pid = 16078] died  

・dependencies check

~/Desktop/iw/828107bd-870a-4a54-866c-233539d826ec/greengrass-dependency-checker-GGCv1.11.x/greengrass-dependency-checker-GGCv1.11.x$ sudo ./check_ggc_dependencies  
==========================Checking script dependencies==============================  
The device has all commands required for the script to run.  
========================Dependency check report for GGC v1.11.x=========================  
System configuration:  
Kernel architecture: aarch64  
Init process: /lib/systemd/systemd  
Kernel version: 4.9.140  
C library: Ubuntu GLIBC 2.27-3ubuntu1  
C library version: 2.27  
Directory /var/run: Present  
/dev/stdin: Found  
/dev/stdout: Found  
/dev/stderr: Found  
----------------------------Commands and software packages--------------------------  
Python 2.7 version: 2.7.17  
Python 3.8: Not found  
Python 3.7 version: 3.6.9  
NodeJS 12.x: Not found  
Java 8: Not found  
wget: Present  
realpath: Present  
tar: Present  
readlink: Present  
basename: Present  
dirname: Present  
pidof: Present  
df: Present  
grep: Present  
umount: Present  
mv: Present  
gzip: Present  
mkdir: Present  
rm: Present  
ln: Present  
cat: Present  
cut: Present  
/bin/bash: Present  
---------------------------------Platform security----------------------------------  
Hardlinks_protection: Enabled  
Symlinks protection: Enabled  
-----------------------------------User and group-----------------------------------  
ggc_user: Present  
ggc_group: Present  
----------------(Optional) Greengrass container dependency check----------------  
--------------------------------Kernel configuration--------------------------------  
Kernel config file: /proc/config.gz  
Namespace configs:  
CONFIG_IPC_NS: Enabled  
CONFIG_UTS_NS: Enabled  
CONFIG_USER_NS: Enabled  
CONFIG_PID_NS: Enabled  
Cgroup configs:  
CONFIG_CGROUP_DEVICE: Enabled  
CONFIG_CGROUPS: Enabled  
CONFIG_MEMCG: Enabled  
Other required configs:  
CONFIG_POSIX_MQUEUE: Enabled  
CONFIG_OVERLAY_FS: Enabled  
CONFIG_HAVE_ARCH_SECCOMP_FILTER: Enabled  
CONFIG_SECCOMP_FILTER: Enabled  
CONFIG_KEYS: Enabled  
CONFIG_SECCOMP: Enabled  
CONFIG_SHMEM: Enabled  
CONFIG_INOTIFY_USER: Enabled  
------------------------------------Cgroups check-----------------------------------  
Cgroups mount directory: /sys/fs/cgroup  
Devices cgroup: Enabled and Mounted  
Memory cgroup: Enabled and Mounted  
------------------------------------Results-----------------------------------------  
Note:  
1. It looks like the kernel uses 'systemd' as the init process. Be sure to set the  
'useSystemd' field in the file 'config.json' to 'yes' when configuring Greengrass core.  
Missing optional dependencies:  
1. Could not find the binary 'python3.8'.  
If Python 3.8 is installed on the device, name the binary 'python3.8' and add its parent  
directory to the PATH environment variable. Python 3.8 is required to execute Python 3.8  
lambdas on Greengrass core.  
2. Could not find the binary 'nodejs12.x'.  
If NodeJS 12.x or later is installed on the device, name the binary 'nodejs12.x' and  
add its parent directory to the PATH environment variable. NodeJS 12.x or later is  
required to execute NodeJS lambdas on Greengrass core.  
3. Could not find the binary 'java8'.  
If Java 8 or later is installed on the device name the binary 'java8' and add its  
parent directory to the PATH environment variable. Java 8 or later is required to  
execute Java lambdas as well as stream management features on Greengrass core.  
Supported lambda isolation modes:  
No Container: Supported  
Greengrass Container: Supported  
----------------------------------Exit status---------------------------------------  
You can now proceed to installing the Greengrass core 1.11.x software on the device.  
Please reach out to the AWS Greengrass support if issues arise.  
keikai
asked 3 years ago232 views
2 Answers
0

Hi,
The problem you are having is due to the path being too long for Unix domain sockets. Please use the suggested installation path of /greengrass. If you cannot use /greengrass, then make sure to use some shorter path than what you're currently using. The maximum length for unix domain socket paths is 108 characters.

Cheers,
Michael

AWS
EXPERT
answered 3 years ago
0

thank you.
i solve problem by trying changing dir and length of path.

thank you so much.

keikai
answered 3 years 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