기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
클라이언트 디바이스 문제 해결
이 섹션의 문제 해결 정보 및 솔루션을 사용하여 Greengrass 클라이언트 디바이스 및 클라이언트 디바이스 구성 요소와 관련된 문제를 해결하세요.
Greengrass 검색 문제
다음 정보를 활용하여 Greengrass 검색 관련 문제를 해결하세요. 이러한 문제는 클라이언트 디바이스가 연결할 수 있는 Greengrass 코어 디바이스를 식별하기 위해 Greengrass 검색 API를 사용할 때 발생할 수 있습니다.
주제
Greengrass 검색 문제(HTTP API)
다음 정보를 활용하여 Greengrass 검색 관련 문제를 해결하세요. cURL로 검색 API를 테스트하면 이 오류가 발생할 수 있습니다.
주제
curl: (52) Empty reply from server
요청에 비활성 AWS IoT 인증서를 지정하면이 오류가 표시될 수 있습니다.
클라이언트 디바이스에 연결된 인증서가 있고 해당 인증서가 활성화되어 있는지 확인합니다. 자세한 내용은 AWS IoT Core 개발자 가이드에서 클라이언트 인증서에 사물 또는 정책 연결과 클라이언트 인증서 활성화 또는 비활성화를 참조하세요.
HTTP 403: {"message":null,"traceId":"a1b2c3d4-5678-90ab-cdef-11111EXAMPLE"}
클라이언트 디바이스에 greengrass:Discover
를 직접 호출할 수 있는 권한이 없는 경우 이 오류가 발생할 수 있습니다.
클라이언트 디바이스의 인증서에 greengrass:Discover
를 허용하는 정책이 있는지 확인합니다. 이 권한에는 Resource
섹션의 사물 정책 변수(iot:Connection.Thing.
)를 사용할 수 없습니다. 자세한 내용은 Discovery 인증 및 권한 부여 섹션을 참조하세요.*
HTTP 404: {"errorMessage":"The thing provided for discovery was not found"}
다음 경우에 이 오류가 발생할 수 있습니다.
-
클라이언트 디바이스는 Greengrass 코어 디바이스 또는 AWS IoT Greengrass V1 그룹에 연결되지 않습니다.
-
클라이언트 디바이스의 연결된 Greengrass 코어 디바이스 또는 AWS IoT Greengrass V1 그룹에 MQTT 브로커 엔드포인트가 없습니다.
-
클라이언트 디바이스의 연결된 Greengrass 코어 디바이스 중 클라이언트 디바이스 인증 구성 요소를 실행하는 디바이스는 없습니다.
클라이언트 디바이스가 연결하려는 코어 디바이스에 연결되어 있는지 확인합니다. 그런 다음 코어 디바이스가 클라이언트 디바이스 인증 구성 요소를 실행하고 MQTT 브로커 엔드포인트가 하나 이상 있는지 확인합니다. 자세한 내용은 다음 자료를 참조하세요.
Greengrass 검색 문제(Python용AWS IoT Device SDK v2)
다음 정보를 활용하여 Python용AWS IoT Device SDK v2
주제
awscrt.exceptions.AwsCrtError: AWS_ERROR_HTTP_CONNECTION_CLOSED: The connection has closed or is closing.
요청에 비활성 AWS IoT 인증서를 지정하면이 오류가 표시될 수 있습니다.
클라이언트 디바이스에 연결된 인증서가 있고 해당 인증서가 활성화되어 있는지 확인합니다. 자세한 내용은 AWS IoT Core 개발자 가이드에서 클라이언트 인증서에 사물 또는 정책 연결과 클라이언트 인증서 활성화 또는 비활성화를 참조하세요.
awsiot.greengrass_discovery.DiscoveryException: ('Error during discover call: response_code=403', 403)
클라이언트 디바이스에 greengrass:Discover
를 직접 호출할 수 있는 권한이 없는 경우 이 오류가 발생할 수 있습니다.
클라이언트 디바이스의 인증서에 greengrass:Discover
를 허용하는 정책이 있는지 확인합니다. 이 권한에는 Resource
섹션의 사물 정책 변수(iot:Connection.Thing.
)를 사용할 수 없습니다. 자세한 내용은 Discovery 인증 및 권한 부여 섹션을 참조하세요.*
awsiot.greengrass_discovery.DiscoveryException: ('Error during discover call: response_code=404', 404)
다음 경우에 이 오류가 발생할 수 있습니다.
-
클라이언트 디바이스는 Greengrass 코어 디바이스 또는 AWS IoT Greengrass V1 그룹에 연결되지 않습니다.
-
클라이언트 디바이스의 연결된 Greengrass 코어 디바이스 또는 AWS IoT Greengrass V1 그룹에 MQTT 브로커 엔드포인트가 없습니다.
-
클라이언트 디바이스의 연결된 Greengrass 코어 디바이스 중 클라이언트 디바이스 인증 구성 요소를 실행하는 디바이스는 없습니다.
클라이언트 디바이스가 연결하려는 코어 디바이스에 연결되어 있는지 확인합니다. 그런 다음 코어 디바이스가 클라이언트 디바이스 인증 구성 요소를 실행하고 MQTT 브로커 엔드포인트가 하나 이상 있는지 확인합니다. 자세한 내용은 다음 자료를 참조하세요.
Greengrass 검색 문제(C++의 경우AWS IoT Device SDK v2)
다음 정보를 활용하여 AWS IoT Device SDK v2 for C++
주제
aws-c-http: AWS_ERROR_HTTP_CONNECTION_CLOSED, The connection has closed or is closing.
요청에 비활성 AWS IoT 인증서를 지정하면이 오류가 표시될 수 있습니다.
클라이언트 디바이스에 연결된 인증서가 있고 해당 인증서가 활성화되어 있는지 확인합니다. 자세한 내용은 AWS IoT Core 개발자 가이드에서 클라이언트 인증서에 사물 또는 정책 연결과 클라이언트 인증서 활성화 또는 비활성화를 참조하세요.
aws-c-common: AWS_ERROR_UNKNOWN, Unknown error. (HTTP 403)
클라이언트 디바이스에 greengrass:Discover
를 직접 호출할 수 있는 권한이 없는 경우 이 오류가 발생할 수 있습니다.
클라이언트 디바이스의 인증서에 greengrass:Discover
를 허용하는 정책이 있는지 확인합니다. 이 권한에는 Resource
섹션의 사물 정책 변수(iot:Connection.Thing.
)를 사용할 수 없습니다. 자세한 내용은 Discovery 인증 및 권한 부여 섹션을 참조하세요.*
aws-c-common: AWS_ERROR_UNKNOWN, Unknown error. (HTTP 404)
다음 경우에 이 오류가 발생할 수 있습니다.
-
클라이언트 디바이스는 Greengrass 코어 디바이스 또는 AWS IoT Greengrass V1 그룹에 연결되지 않습니다.
-
클라이언트 디바이스의 연결된 Greengrass 코어 디바이스 또는 AWS IoT Greengrass V1 그룹에 MQTT 브로커 엔드포인트가 없습니다.
-
클라이언트 디바이스의 연결된 Greengrass 코어 디바이스 중 클라이언트 디바이스 인증 구성 요소를 실행하는 디바이스는 없습니다.
클라이언트 디바이스가 연결하려는 코어 디바이스에 연결되어 있는지 확인합니다. 그런 다음 코어 디바이스가 클라이언트 디바이스 인증 구성 요소를 실행하고 MQTT 브로커 엔드포인트가 하나 이상 있는지 확인합니다. 자세한 내용은 다음 자료를 참조하세요.
Greengrass 검색 문제(JavaScript용AWS IoT Device SDK v2)
다음 정보를 활용하여 JavaScript용AWS IoT Device SDK v2
주제
Error: aws-c-http: AWS_ERROR_HTTP_CONNECTION_CLOSED, The connection has closed or is closing.
요청에 비활성 AWS IoT 인증서를 지정하면이 오류가 표시될 수 있습니다.
클라이언트 디바이스에 연결된 인증서가 있고 해당 인증서가 활성화되어 있는지 확인합니다. 자세한 내용은 AWS IoT Core 개발자 가이드에서 클라이언트 인증서에 사물 또는 정책 연결과 클라이언트 인증서 활성화 또는 비활성화를 참조하세요.
Error: Discovery failed (headers: [object Object]) { response_code: 403 }
클라이언트 디바이스에 greengrass:Discover
를 직접 호출할 수 있는 권한이 없는 경우 이 오류가 발생할 수 있습니다.
클라이언트 디바이스의 인증서에 greengrass:Discover
를 허용하는 정책이 있는지 확인합니다. 이 권한에는 Resource
섹션의 사물 정책 변수(iot:Connection.Thing.
)를 사용할 수 없습니다. 자세한 내용은 Discovery 인증 및 권한 부여 섹션을 참조하세요.*
Error: Discovery failed (headers: [object Object]) { response_code: 404 }
다음 경우에 이 오류가 발생할 수 있습니다.
-
클라이언트 디바이스는 Greengrass 코어 디바이스 또는 AWS IoT Greengrass V1 그룹에 연결되지 않습니다.
-
클라이언트 디바이스의 연결된 Greengrass 코어 디바이스 또는 AWS IoT Greengrass V1 그룹에 MQTT 브로커 엔드포인트가 없습니다.
-
클라이언트 디바이스의 연결된 Greengrass 코어 디바이스 중 클라이언트 디바이스 인증 구성 요소를 실행하는 디바이스는 없습니다.
클라이언트 디바이스가 연결하려는 코어 디바이스에 연결되어 있는지 확인합니다. 그런 다음 코어 디바이스가 클라이언트 디바이스 인증 구성 요소를 실행하고 MQTT 브로커 엔드포인트가 하나 이상 있는지 확인합니다. 자세한 내용은 다음 자료를 참조하세요.
Error: Discovery failed (headers: [object Object])
Greengrass 검색 샘플을 실행할 때 HTTP 응답 코드 없이 이 오류가 발생할 수 있습니다. 해당 오류는 여러 가지 이유로 발생할 수 있습니다.
-
클라이언트 디바이스에
greengrass:Discover
를 직접 호출할 수 있는 권한이 없는 경우 이 오류가 발생할 수 있습니다.클라이언트 디바이스의 인증서에
greengrass:Discover
를 허용하는 정책이 있는지 확인합니다. 이 권한에는Resource
섹션의 사물 정책 변수(iot:Connection.Thing.
)를 사용할 수 없습니다. 자세한 내용은 Discovery 인증 및 권한 부여 섹션을 참조하세요.*
-
다음 경우에 이 오류가 발생할 수 있습니다.
-
클라이언트 디바이스는 Greengrass 코어 디바이스 또는 AWS IoT Greengrass V1 그룹에 연결되지 않습니다.
-
클라이언트 디바이스의 연결된 Greengrass 코어 디바이스 또는 AWS IoT Greengrass V1 그룹에 MQTT 브로커 엔드포인트가 없습니다.
-
클라이언트 디바이스의 연결된 Greengrass 코어 디바이스 중 클라이언트 디바이스 인증 구성 요소를 실행하는 디바이스는 없습니다.
클라이언트 디바이스가 연결하려는 코어 디바이스에 연결되어 있는지 확인합니다. 그런 다음 코어 디바이스가 클라이언트 디바이스 인증 구성 요소를 실행하고 MQTT 브로커 엔드포인트가 하나 이상 있는지 확인합니다. 자세한 내용은 다음 자료를 참조하세요.
-
Greengrass 검색 문제(Java용AWS IoT Device SDK v2)
다음 정보를 활용하여 Java용AWS IoT Device SDK v2
주제
software.amazon.awssdk.crt.CrtRuntimeException: Error Getting Response Status Code from HttpStream. (aws_last_error: AWS_ERROR_HTTP_DATA_NOT_AVAILABLE(2062), This data is not yet available.)
요청에 비활성 AWS IoT 인증서를 지정하면이 오류가 표시될 수 있습니다.
클라이언트 디바이스에 연결된 인증서가 있고 해당 인증서가 활성화되어 있는지 확인합니다. 자세한 내용은 AWS IoT Core 개발자 가이드에서 클라이언트 인증서에 사물 또는 정책 연결과 클라이언트 인증서 활성화 또는 비활성화를 참조하세요.
java.lang.RuntimeException: Error x-amzn-ErrorType(403)
클라이언트 디바이스에 greengrass:Discover
를 직접 호출할 수 있는 권한이 없는 경우 이 오류가 발생할 수 있습니다.
클라이언트 디바이스의 인증서에 greengrass:Discover
를 허용하는 정책이 있는지 확인합니다. 이 권한에는 Resource
섹션의 사물 정책 변수(iot:Connection.Thing.
)를 사용할 수 없습니다. 자세한 내용은 Discovery 인증 및 권한 부여 섹션을 참조하세요.*
java.lang.RuntimeException: Error x-amzn-ErrorType(404)
다음 경우에 이 오류가 발생할 수 있습니다.
-
클라이언트 디바이스는 Greengrass 코어 디바이스 또는 AWS IoT Greengrass V1 그룹에 연결되지 않습니다.
-
클라이언트 디바이스의 연결된 Greengrass 코어 디바이스 또는 AWS IoT Greengrass V1 그룹에 MQTT 브로커 엔드포인트가 없습니다.
-
클라이언트 디바이스의 연결된 Greengrass 코어 디바이스 중 클라이언트 디바이스 인증 구성 요소를 실행하는 디바이스는 없습니다.
클라이언트 디바이스가 연결하려는 코어 디바이스에 연결되어 있는지 확인합니다. 그런 다음 코어 디바이스가 클라이언트 디바이스 인증 구성 요소를 실행하고 MQTT 브로커 엔드포인트가 하나 이상 있는지 확인합니다. 자세한 내용은 다음 자료를 참조하세요.
MQTT 연결 문제
다음 정보를 활용하여 클라이언트 디바이스 MQTT 연결 관련 문제를 해결하세요. 이러한 문제는 클라이언트 디바이스가 MQTT를 통해 코어 디바이스에 연결하려고 시도할 때 발생할 수 있습니다.
주제
io.moquette.broker.Authorizator: Client does not have read permissions on the topic
클라이언트 디바이스가 권한이 없는 MQTT 주제를 구독하려고 할 때 Greengrass 로그에 이 오류가 발생할 수 있습니다. 오류 메시지에는 주제가 포함됩니다.
클라이언트 디바이스 인증 구성 요소의 구성에 다음이 포함되어 있는지 확인합니다.
-
클라이언트 디바이스와 일치하는 디바이스 그룹입니다.
-
주제에 대한
mqtt:subscribe
권한을 부여하는 해당 디바이스 그룹에 대한 클라이언트 디바이스 권한 부여 정책입니다.
클라이언트 디바이스 인증 구성 요소를 배포하고 구성하는 방법에 대한 자세한 내용은 다음을 참조하세요.
MQTT 연결 문제(Python)
다음 정보를 활용하여 Python용AWS IoT Device SDK
v2
주제
AWS_ERROR_MQTT_PROTOCOL_ERROR: Protocol error occurred
클라이언트 디바이스 인증 구성 요소가 클라이언트 디바이스에 연결 권한을 부여하는 클라이언트 디바이스 권한 부여 정책을 정의하지 않은 경우 이 오류가 발생할 수 있습니다.
클라이언트 디바이스 인증 구성 요소의 구성에 다음이 포함되어 있는지 확인합니다.
-
클라이언트 디바이스와 일치하는 디바이스 그룹입니다.
-
클라이언트 디바이스에 대한
mqtt:connect
권한을 부여하는 해당 디바이스 그룹에 대한 클라이언트 디바이스 권한 부여 정책입니다.
클라이언트 디바이스 인증 구성 요소를 배포하고 구성하는 방법에 대한 자세한 내용은 다음을 참조하세요.
AWS_ERROR_MQTT_UNEXPECTED_HANGUP: Unexpected hangup occurred
클라이언트 디바이스 인증 구성 요소가 클라이언트 디바이스에 연결 권한을 부여하는 클라이언트 디바이스 권한 부여 정책을 정의하지 않은 경우 이 오류가 발생할 수 있습니다.
클라이언트 디바이스 인증 구성 요소의 구성에 다음이 포함되어 있는지 확인합니다.
-
클라이언트 디바이스와 일치하는 디바이스 그룹입니다.
-
클라이언트 디바이스에 대한
mqtt:connect
권한을 부여하는 해당 디바이스 그룹에 대한 클라이언트 디바이스 권한 부여 정책입니다.
클라이언트 디바이스 인증 구성 요소를 배포하고 구성하는 방법에 대한 자세한 내용은 다음을 참조하세요.
MQTT 연결 문제(C++)
다음 정보를 활용하여 AWS IoT Device SDK v2 for C++
주제
AWS_ERROR_MQTT_PROTOCOL_ERROR: Protocol error occurred
클라이언트 디바이스 인증 구성 요소가 클라이언트 디바이스에 연결 권한을 부여하는 클라이언트 디바이스 권한 부여 정책을 정의하지 않은 경우 이 오류가 발생할 수 있습니다.
클라이언트 디바이스 인증 구성 요소의 구성에 다음이 포함되어 있는지 확인합니다.
-
클라이언트 디바이스와 일치하는 디바이스 그룹입니다.
-
클라이언트 디바이스에 대한
mqtt:connect
권한을 부여하는 해당 디바이스 그룹에 대한 클라이언트 디바이스 권한 부여 정책입니다.
클라이언트 디바이스 인증 구성 요소를 배포하고 구성하는 방법에 대한 자세한 내용은 다음을 참조하세요.
AWS_ERROR_MQTT_UNEXPECTED_HANGUP: Unexpected hangup occurred
클라이언트 디바이스 인증 구성 요소가 클라이언트 디바이스에 연결 권한을 부여하는 클라이언트 디바이스 권한 부여 정책을 정의하지 않은 경우 이 오류가 발생할 수 있습니다.
클라이언트 디바이스 인증 구성 요소의 구성에 다음이 포함되어 있는지 확인합니다.
-
클라이언트 디바이스와 일치하는 디바이스 그룹입니다.
-
클라이언트 디바이스에 대한
mqtt:connect
권한을 부여하는 해당 디바이스 그룹에 대한 클라이언트 디바이스 권한 부여 정책입니다.
클라이언트 디바이스 인증 구성 요소를 배포하고 구성하는 방법에 대한 자세한 내용은 다음을 참조하세요.
MQTT 연결 문제(Java)
다음 정보를 활용하여 Java용AWS IoT Device SDK v2
주제
software.amazon.awssdk.crt.mqtt.MqttException: Protocol error occurred
클라이언트 디바이스 인증 구성 요소가 클라이언트 디바이스에 연결 권한을 부여하는 클라이언트 디바이스 권한 부여 정책을 정의하지 않은 경우 이 오류가 발생할 수 있습니다.
클라이언트 디바이스 인증 구성 요소의 구성에 다음이 포함되어 있는지 확인합니다.
-
클라이언트 디바이스와 일치하는 디바이스 그룹입니다.
-
클라이언트 디바이스에 대한
mqtt:connect
권한을 부여하는 해당 디바이스 그룹에 대한 클라이언트 디바이스 권한 부여 정책입니다.
클라이언트 디바이스 인증 구성 요소를 배포하고 구성하는 방법에 대한 자세한 내용은 다음을 참조하세요.
AWS_ERROR_MQTT_UNEXPECTED_HANGUP: Unexpected hangup occurred
클라이언트 디바이스 인증 구성 요소가 클라이언트 디바이스에 연결 권한을 부여하는 클라이언트 디바이스 권한 부여 정책을 정의하지 않은 경우 이 오류가 발생할 수 있습니다.
클라이언트 디바이스 인증 구성 요소의 구성에 다음이 포함되어 있는지 확인합니다.
-
클라이언트 디바이스와 일치하는 디바이스 그룹입니다.
-
클라이언트 디바이스에 대한
mqtt:connect
권한을 부여하는 해당 디바이스 그룹에 대한 클라이언트 디바이스 권한 부여 정책입니다.
클라이언트 디바이스 인증 구성 요소를 배포하고 구성하는 방법에 대한 자세한 내용은 다음을 참조하세요.
MQTT 연결 문제(JavaScript)
다음 정보를 활용하여 JavaScript용AWS IoT Device SDK v2
주제
AWS_ERROR_MQTT_PROTOCOL_ERROR: Protocol error occurred
클라이언트 디바이스 인증 구성 요소가 클라이언트 디바이스에 연결 권한을 부여하는 클라이언트 디바이스 권한 부여 정책을 정의하지 않은 경우 이 오류가 발생할 수 있습니다.
클라이언트 디바이스 인증 구성 요소의 구성에 다음이 포함되어 있는지 확인합니다.
-
클라이언트 디바이스와 일치하는 디바이스 그룹입니다.
-
클라이언트 디바이스에 대한
mqtt:connect
권한을 부여하는 해당 디바이스 그룹에 대한 클라이언트 디바이스 권한 부여 정책입니다.
클라이언트 디바이스 인증 구성 요소를 배포하고 구성하는 방법에 대한 자세한 내용은 다음을 참조하세요.
AWS_ERROR_MQTT_UNEXPECTED_HANGUP: Unexpected hangup occurred
클라이언트 디바이스 인증 구성 요소가 클라이언트 디바이스에 연결 권한을 부여하는 클라이언트 디바이스 권한 부여 정책을 정의하지 않은 경우 이 오류가 발생할 수 있습니다.
클라이언트 디바이스 인증 구성 요소의 구성에 다음이 포함되어 있는지 확인합니다.
-
클라이언트 디바이스와 일치하는 디바이스 그룹입니다.
-
클라이언트 디바이스에 대한
mqtt:connect
권한을 부여하는 해당 디바이스 그룹에 대한 클라이언트 디바이스 권한 부여 정책입니다.
클라이언트 디바이스 인증 구성 요소를 배포하고 구성하는 방법에 대한 자세한 내용은 다음을 참조하세요.