다음 코드 예시에서는 AWS IoT Greengrass V2에서 AWS Command Line Interface를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.
작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 관련 시나리오의 컨텍스트에 따라 표시되며, 개별 서비스 함수를 직접적으로 호출하는 방법을 보여줍니다.
각 예시에는 전체 소스 코드에 대한 링크가 포함되어 있으며, 여기에서 컨텍스트에 맞춰 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있습니다.
주제
작업
다음 코드 예시에서는 associate-service-role-to-account
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
AWS 계정에 Greengrass 서비스 역할 연결
다음
associate-service-role-to-account
예시에서는 AWS 계정에 대한 서비스 역할을 AWS IoT Greengrass에 연결합니다.aws greengrassv2 associate-service-role-to-account \ --role-arn
arn:aws:iam::123456789012:role/service-role/Greengrass_ServiceRole
출력:
{ "associatedAt": "2022-01-19T19:21:53Z" }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 Greengrass 서비스 역할을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 AssociateServiceRoleToAccount
섹션을 참조하세요.
-
다음 코드 예시에서는 batch-associate-client-device-with-core-device
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
클라이언트 디바이스를 코어 디바이스와 연결
다음
batch-associate-client-device-with-core-device
예시에서는 두 개의 클라이언트 디바이스를 하나의 코어 디바이스에 연결합니다.aws greengrassv2 batch-associate-client-device-with-core-device \ --core-device-thing-name
MyGreengrassCore
\ --entriesthingName=MyClientDevice1
thingName=MyClientDevice2
출력:
{ "errorEntries": [] }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 로컬 IoT 디바이스와 상호 작용을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 BatchAssociateClientDeviceWithCoreDevice
섹션을 참조하세요.
-
다음 코드 예시에서는 batch-disassociate-client-device-from-core-device
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
코어 디바이스에서 클라이언트 디바이스의 연결 해제
다음
batch-disassociate-client-device-from-core-device
예시에서는 코어 디바이스에서 두 개의 클라이언트 디바이스를 연결 해제합니다.aws greengrassv2 batch-disassociate-client-device-from-core-device \ --core-device-thing-name
MyGreengrassCore
\ --entriesthingName=MyClientDevice1
thingName=MyClientDevice2
출력:
{ "errorEntries": [] }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 로컬 IoT 디바이스와 상호 작용을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 BatchDisassociateClientDeviceFromCoreDevice
섹션을 참조하세요.
-
다음 코드 예시에서는 cancel-deployment
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
배포 취소
다음
cancel-deployment
예시에서는 사물 그룹에 대한 연속 배포를 중지합니다.aws greengrassv2 cancel-deployment \ --deployment-id
a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
출력:
{ "message": "SUCCESS" }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 배포 취소를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CancelDeployment
섹션을 참조하세요.
-
다음 코드 예시에서는 create-component-version
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
예시 1: 레시피에서 구성 요소 버전 생성
다음
create-component-version
예시에서는 레시피 파일에서 Hello World 구성 요소의 버전을 생성합니다.aws greengrassv2 create-component-version \ --inline-recipe
fileb://com.example.HelloWorld-1.0.0.json
com.example.HelloWorld-1.0.0.json
의 콘텐츠:{ "RecipeFormatVersion": "2020-01-25", "ComponentName": "com.example.HelloWorld", "ComponentVersion": "1.0.0", "ComponentDescription": "My first AWS IoT Greengrass component.", "ComponentPublisher": "Amazon", "ComponentConfiguration": { "DefaultConfiguration": { "Message": "world" } }, "Manifests": [ { "Platform": { "os": "linux" }, "Lifecycle": { "Run": "echo 'Hello {configuration:/Message}'" } } ] }
출력:
{ "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0", "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "creationTimestamp": "2021-01-07T16:24:33.650000-08:00", "status": { "componentState": "REQUESTED", "message": "NONE", "errors": {} } }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 사용자 지정 구성 요소 생성 및 배포할 구성 요소 업로드를 참조하세요.
예시 2: AWS Lambda 함수에서 구성 요소 버전 생성
다음
create-component-version
예시는 AWS Lambda 함수에서 Hello World 구성 요소의 버전을 생성합니다.aws greengrassv2 create-component-version \ --cli-input-json
file://lambda-function-component.json
lambda-function-component.json
의 콘텐츠:{ "lambdaFunction": { "lambdaArn": "arn:aws:lambda:us-west-2:123456789012:function:HelloWorldPythonLambda:1", "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "componentLambdaParameters": { "eventSources": [ { "topic": "hello/world/+", "type": "IOT_CORE" } ] } } }
출력:
{ "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0", "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "creationTimestamp": "2021-01-07T17:05:27.347000-08:00", "status": { "componentState": "REQUESTED", "message": "NONE", "errors": {} } }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 AWS Lambda 함수 실행을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CreateComponentVersion
섹션을 참조하세요.
-
다음 코드 예시에서는 create-deployment
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
예시 1: 배포 생성
다음
create-deployment
예시에서는 AWS IoT Greengrass 명령줄 인터페이스를 핵심 디바이스에 배포합니다.aws greengrassv2 create-deployment \ --cli-input-json
file://cli-deployment.json
cli-deployment.json
의 콘텐츠:{ "targetArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "deploymentName": "Deployment for MyGreengrassCore", "components": { "aws.greengrass.Cli": { "componentVersion": "2.0.3" } }, "deploymentPolicies": { "failureHandlingPolicy": "DO_NOTHING", "componentUpdatePolicy": { "timeoutInSeconds": 60, "action": "NOTIFY_COMPONENTS" }, "configurationValidationPolicy": { "timeoutInSeconds": 60 } }, "iotJobConfiguration": {} }
출력:
{ "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 배포 생성을 참조하세요.
예시 2: 구성 요소 구성을 업데이트하는 배포 생성
다음
create-deployment
예시에서는 핵심 디바이스 그룹에 AWS IoT Greengrass 핵 구성 요소를 배포합니다. 이 배포는 핵 구성 요소에 대해 다음 구성 업데이트를 적용합니다.대상 디바이스의 프록시 설정을 기본값인 프록시 없음 설정으로 재설정합니다. 대상 디바이스의 MQTT 설정을 기본값으로 재설정합니다. 핵의 JVM 옵션을 설정합니다.핵의 로깅 수준을 설정합니다.
aws greengrassv2 create-deployment \ --cli-input-json
file://nucleus-deployment.json
nucleus-deployment.json
의 콘텐츠:{ "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "deploymentName": "Deployment for MyGreengrassCoreGroup", "components": { "aws.greengrass.Nucleus": { "componentVersion": "2.0.3", "configurationUpdate": { "reset": [ "/networkProxy", "/mqtt" ], "merge": "{\"jvmOptions\":\"-Xmx64m\",\"logging\":{\"level\":\"WARN\"}}" } } }, "deploymentPolicies": { "failureHandlingPolicy": "ROLLBACK", "componentUpdatePolicy": { "timeoutInSeconds": 60, "action": "NOTIFY_COMPONENTS" }, "configurationValidationPolicy": { "timeoutInSeconds": 60 } }, "iotJobConfiguration": {} }
출력:
{ "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "iotJobArn": "arn:aws:iot:us-west-2:123456789012:job/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222" }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 배포 생성 및 구성 요소 구성 업로드를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CreateDeployment
를 참조하세요.
-
다음 코드 예시에서는 delete-component
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
구성 요소 버전 삭제
다음
delete-component
예시에서는 Hello World 구성 요소를 삭제합니다.aws greengrassv2 delete-component \ --arn
arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 구성 요소 관리를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteComponent
섹션을 참조하세요.
-
다음 코드 예시에서는 delete-core-device
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
디바이스 삭제
다음
delete-core-device
예시에서는 AWS IoT Greengrass 코어 디바이스를 삭제합니다.aws greengrassv2 delete-core-device \ --core-device-thing-name
MyGreengrassCore
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 AWS IoT Greengrass 코어 소프트웨어 제거를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteCoreDevice
섹션을 참조하세요.
-
다음 코드 예시에서는 describe-component
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
구성 요소 버전 설명
다음
describe-component
예시에서는 Hello World 구성 요소를 설명합니다.aws greengrassv2 describe-component \ --arn
arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0
출력:
{ "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0", "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "creationTimestamp": "2021-01-07T17:12:11.133000-08:00", "publisher": "Amazon", "description": "My first AWS IoT Greengrass component.", "status": { "componentState": "DEPLOYABLE", "message": "NONE", "errors": {} }, "platforms": [ { "attributes": { "os": "linux" } } ] }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 구성 요소 관리를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeComponent
섹션을 참조하세요.
-
다음 코드 예시에서는 disassociate-service-role-from-account
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
AWS 계정에서 Greengrass 서비스 역할의 연결 해제
다음
disassociate-service-role-from-account
예시에서는 AWS 계정에 대한 AWS IoT Greengrass에서 Greengrass 서비스 역할을 연결 해제하는 예시입니다.aws greengrassv2 disassociate-service-role-from-account
출력:
{ "disassociatedAt": "2022-01-19T19:26:09Z" }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 Greengrass 서비스 역할을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DisassociateServiceRoleFromAccount
섹션을 참조하세요.
-
다음 코드 예시에서는 get-component-version-artifact
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
구성 요소 아티팩트를 다운로드할 URL 가져오기
다음
get-component-version-artifact
예시에서는 로컬 디버그 콘솔 구성 요소의 JAR 파일을 다운로드할 수 있는 URL을 가져옵니다.aws greengrassv2 get-component-version-artifact \ --arn
arn:aws:greengrass:us-west-2:aws:components:aws.greengrass.LocalDebugConsole:versions:2.0.3
\ --artifact-name"Uvt6ZEzQ9TKiAuLbfXBX_APdY0TWks3uc46tHFHTzBM=/aws.greengrass.LocalDebugConsole.jar"
출력:
{ "preSignedUrl": "https://evergreencomponentmanageme-artifactbucket7410c9ef-g18n1iya8kwr.s3.us-west-2.amazonaws.com/public/aws.greengrass.LocalDebugConsole/2.0.3/s3/ggv2-component-releases-prod-pdx/EvergreenHttpDebugView/2ffc496ba41b39568968b22c582b4714a937193ee7687a45527238e696672521/aws.greengrass.LocalDebugConsole/aws.greengrass.LocalDebugConsole.jar?X-Amz-Security-Token=KwfLKSdEXAMPLE..." }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 구성 요소 관리를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetComponentVersionArtifact
섹션을 참조하세요.
-
다음 코드 예시에서는 get-component
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
예시 1: YAML 형식(Linux, macOS 또는 Unix)으로 구성 요소의 레시피 다운로드
다음
get-component
예시는 Hello World 구성 요소의 레시피를 YAML 형식의 파일로 다운로드하는 예시입니다. 이 명령은 다음 작업을 수행합니다.--output
및--query
파라미터를 사용하여 명령의 출력을 제어합니다. 이러한 파라미터는 명령의 출력에서 레시피 블롭을 추출합니다. 출력 제어에 대한 자세한 내용은 AWS 명령줄 인터페이스 사용 설명서의 명령어 출력 제어를 참조하세요.base64
유틸리티를 사용합니다. 이 유틸리티는 추출된 블롭을 원본 텍스트로 디코딩합니다.get-component
명령이 성공하면 반환되는 블롭은 base64로 인코딩된 텍스트입니다. 원본 텍스트를 얻으려면 이 블롭을 디코딩해야 합니다.디코딩된 텍스트를 파일에 저장합니다. 명령의 마지막 섹션(> com.example.HelloWorld-1.0.0.json
)은 디코딩된 텍스트를 파일에 저장합니다.aws greengrassv2 get-component \ --arn
arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0
\ --recipe-output-formatYAML
\ --queryrecipe
\ --outputtext
|
base64
--decode>
com.example.HelloWorld-1.0.0.json
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 구성 요소 관리를 참조하세요.
예시 2: 구성 요소의 레시피를 YAML 형식으로 다운로드(Windows CMD)
다음
get-component
예시는 Hello World 구성 요소의 레시피를 YAML 형식의 파일로 다운로드하는 예시입니다. 이 명령은certutil
유틸리티를 사용합니다.aws greengrassv2 get-component
^
--arnarn:aws:greengrass:us-west-2:675946970638:components:com.example.HelloWorld:versions:1.0.0
^
--recipe-output-formatYAML
^
--queryrecipe
^
--outputtext
>
com.example.HelloWorld-1.0.0.yaml.b64
certutil
-decode
com.example.HelloWorld-1.0.0.yaml.b64
com.example.HelloWorld-1.0.0.yaml
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 구성 요소 관리를 참조하세요.
예시 3: 구성 요소의 레시피를 YAML 형식으로 다운로드하는 방법(Windows PowerShell)
다음
get-component
예시는 Hello World 구성 요소의 레시피를 YAML 형식의 파일로 다운로드하는 예시입니다. 이 명령은certutil
유틸리티를 사용합니다.aws greengrassv2 get-component
`
--arnarn:aws:greengrass:us-west-2:675946970638:components:com.example.HelloWorld:versions:1.0.0
`
--recipe-output-formatYAML
`
--queryrecipe
`
--outputtext
>
com.example.HelloWorld-1.0.0.yaml.b64
certutil
-decode
com.example.HelloWorld-1.0.0.yaml.b64
com.example.HelloWorld-1.0.0.yaml
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 구성 요소 관리를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetComponent
섹션을 참조하세요.
-
다음 코드 예시에서는 get-connectivity-info
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
Greengrass 코어 디바이스의 연결 정보를 가져오는 방법
다음
get-connectivity-info
예시는 Greengrass 코어 디바이스에 대한 연결 정보를 가져오는 예시입니다. 클라이언트 디바이스는 이 정보를 사용하여 이 코어 디바이스에서 실행되는 MQTT 브로커에 연결합니다.aws greengrassv2 get-connectivity-info \ --thing-name
MyGreengrassCore
출력:
{ "connectivityInfo": [ { "id": "localIP_192.0.2.0", "hostAddress": "192.0.2.0", "portNumber": 8883 } ] }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 코어 디바이스 엔드포인트 관리를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetConnectivityInfo
섹션을 참조하세요.
-
다음 코드 예시에서는 get-core-device
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
코어 디바이스 가져오기
다음
get-core-device
예시는 AWS IoT Greengrass 코어 디바이스에 대한 정보를 가져옵니다.aws greengrassv2 get-core-device \ --core-device-thing-name
MyGreengrassCore
출력:
{ "coreDeviceThingName": "MyGreengrassCore", "coreVersion": "2.0.3", "platform": "linux", "architecture": "amd64", "status": "HEALTHY", "lastStatusUpdateTimestamp": "2021-01-08T04:57:58.838000-08:00", "tags": {} }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 코어 디바이스 상태 확인을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetCoreDevice
섹션을 참조하세요.
-
다음 코드 예시에서는 get-deployment
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
배포를 가져오는 방법
다음
get-deployment
예시에서는 핵심 디바이스 그룹에 AWS IoT Greengrass 핵 구성 요소를 배포하는 방법에 대한 정보를 얻습니다.aws greengrassv2 get-deployment \ --deployment-id
a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
출력:
{ "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "revisionId": "14", "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "deploymentName": "Deployment for MyGreengrassCoreGroup", "deploymentStatus": "ACTIVE", "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "iotJobArn": "arn:aws:iot:us-west-2:123456789012:job/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "components": { "aws.greengrass.Nucleus": { "componentVersion": "2.0.3", "configurationUpdate": { "merge": "{\"jvmOptions\":\"-Xmx64m\",\"logging\":{\"level\":\"WARN\"}}", "reset": [ "/networkProxy", "/mqtt" ] } } }, "deploymentPolicies": { "failureHandlingPolicy": "ROLLBACK", "componentUpdatePolicy": { "timeoutInSeconds": 60, "action": "NOTIFY_COMPONENTS" }, "configurationValidationPolicy": { "timeoutInSeconds": 60 } }, "iotJobConfiguration": {}, "creationTimestamp": "2021-01-07T17:21:20.691000-08:00", "isLatestForTarget": false, "tags": {} }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 디바이스에 구성 요소 배포를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetDeployment
섹션을 참조하세요.
-
다음 코드 예시에서는 get-service-role-for-account
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
AWS 계정의 Greengrass 서비스 역할을 가져오는 방법
다음
get-service-role-for-account
예시에서는 계정에 대해 AWS IoT Greengrass와 연결된 서비스 역할을 가져옵니다.aws greengrassv2 get-service-role-for-account
출력:
{ "associatedAt": "2022-01-19T19:21:53Z", "roleArn": "arn:aws:iam::123456789012:role/service-role/Greengrass_ServiceRole" }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 Greengrass 서비스 역할을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetServiceRoleForAccount
섹션을 참조하세요.
-
다음 코드 예시에서는 list-client-devices-associated-with-core-device
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
클라이언트 디바이스를 코어 디바이스와 연결
다음
list-client-devices-associated-with-core-device
예시에서는 코어 디바이스와 연결된 모든 클라이언트 디바이스를 나열합니다.aws greengrassv2 list-client-devices-associated-with-core-device \ --core-device-thing-name
MyTestGreengrassCore
출력:
{ "associatedClientDevices": [ { "thingName": "MyClientDevice2", "associationTimestamp": "2021-07-12T16:33:55.843000-07:00" }, { "thingName": "MyClientDevice1", "associationTimestamp": "2021-07-12T16:33:55.843000-07:00" } ] }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 로컬 IoT 디바이스와 상호 작용을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListClientDevicesAssociatedWithCoreDevice
섹션을 참조하세요.
-
다음 코드 예시에서는 list-component-versions
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
구성 요소 버전 나열
다음
list-component-versions
예시에서는 Hello World 구성 요소의 모든 버전을 나열합니다.aws greengrassv2 list-component-versions \ --arn
arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld
출력:
{ "componentVersions": [ { "componentName": "com.example.HelloWorld", "componentVersion": "1.0.1", "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.1" }, { "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0" } ] }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 구성 요소 관리를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListComponentVersions
섹션을 참조하세요.
-
다음 코드 예시에서는 list-components
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
구성 요소 나열
다음
list-components
예시에서는 현재 리전 내 AWS 계정에 정의된 각 구성 요소와 최신 버전을 나열합니다.aws greengrassv2 list-components
출력:
{ "components": [ { "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld", "componentName": "com.example.HelloWorld", "latestVersion": { "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.1", "componentVersion": "1.0.1", "creationTimestamp": "2021-01-08T16:51:07.352000-08:00", "description": "My first AWS IoT Greengrass component.", "publisher": "Amazon", "platforms": [ { "attributes": { "os": "linux" } } ] } } ] }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 구성 요소 관리를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListComponents
섹션을 참조하세요.
-
다음 코드 예시에서는 list-core-devices
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
코어 디바이스를 나열하는 방법
다음
list-core-devices
예시에서는 현재 리전 내 AWS 계정의 AWS IoT Greengrass 핵심 디바이스를 나열합니다.aws greengrassv2 list-core-devices
출력:
{ "coreDevices": [ { "coreDeviceThingName": "MyGreengrassCore", "status": "HEALTHY", "lastStatusUpdateTimestamp": "2021-01-08T04:57:58.838000-08:00" } ] }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 코어 디바이스 상태 확인을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListCoreDevices
섹션을 참조하세요.
-
다음 코드 예시에서는 list-deployments
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
배포 나열
다음
list-deployments
예시에서는 현재 리전 내 AWS 계정에 정의된 각 배포의 최신 개정 버전을 나열합니다.aws greengrassv2 list-deployments
출력:
{ "deployments": [ { "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "revisionId": "14", "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "deploymentName": "Deployment for MyGreengrassCoreGroup", "creationTimestamp": "2021-01-07T17:21:20.691000-08:00", "deploymentStatus": "ACTIVE", "isLatestForTarget": false }, { "targetArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "revisionId": "1", "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "deploymentName": "Deployment for MyGreengrassCore", "creationTimestamp": "2021-01-06T16:10:42.407000-08:00", "deploymentStatus": "COMPLETED", "isLatestForTarget": false } ] }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 디바이스에 구성 요소 배포를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListDeployments
섹션을 참조하세요.
-
다음 코드 예시에서는 list-effective-deployments
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
배포 작업 나열
다음
list-effective-deployments
예시에서는 AWS IoT Greengrass 코어 디바이스에 적용되는 배포를 나열합니다.aws greengrassv2 list-effective-deployments \ --core-device-thing-name
MyGreengrassCore
출력:
{ "effectiveDeployments": [ { "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "deploymentName": "Deployment for MyGreengrassCore", "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333", "targetArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "coreDeviceExecutionStatus": "COMPLETED", "reason": "SUCCESSFUL", "creationTimestamp": "2021-01-06T16:10:42.442000-08:00", "modifiedTimestamp": "2021-01-08T17:21:27.830000-08:00" }, { "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "deploymentName": "Deployment for MyGreengrassCoreGroup", "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE44444", "iotJobArn": "arn:aws:iot:us-west-2:123456789012:job/a1b2c3d4-5678-90ab-cdef-EXAMPLE44444", "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "coreDeviceExecutionStatus": "SUCCEEDED", "reason": "SUCCESSFUL", "creationTimestamp": "2021-01-07T17:19:20.394000-08:00", "modifiedTimestamp": "2021-01-07T17:21:20.721000-08:00" } ] }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 코어 디바이스 상태 확인을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListEffectiveDeployments
섹션을 참조하세요.
-
다음 코드 예시에서는 list-installed-components
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
코어 디바이스에 설치된 구성 요소를 나열하는 방법
다음
list-installed-components
예시에서는 AWS IoT Greengrass 코어 디바이스에 설치되는 구성 요소를 나열합니다.aws greengrassv2 list-installed-components \ --core-device-thing-name
MyGreengrassCore
출력:
{ "installedComponents": [ { "componentName": "aws.greengrass.Cli", "componentVersion": "2.0.3", "lifecycleState": "RUNNING", "isRoot": true }, { "componentName": "aws.greengrass.Nucleus", "componentVersion": "2.0.3", "lifecycleState": "FINISHED", "isRoot": true } ] }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 코어 디바이스 상태 확인을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListInstalledComponents
섹션을 참조하세요.
-
다음 코드 예시에서는 list-tags-for-resource
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
리소스의 태그 나열
다음
list-tags-for-resource
예시에서는 AWS IoT Greengrass 코어 디바이스의 모든 태그를 나열합니다.aws greengrassv2 list-tags-for-resource \ --resource-arn
arn:aws:greengrass:us-west-2:123456789012:coreDevices:MyGreengrassCore
출력:
{ "tags": { "Owner": "richard-roe" } }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 리소스에 태그 지정을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListTagsForResource
를 참조하세요.
-
다음 코드 예시에서는 tag-resource
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
리소스에 태그를 추가하는 방법
다음
tag-resource
예시에서는 AWS IoT Greengrass 코어 디바이스에 소유자 태그를 추가합니다. 이 태그를 사용하여 소유자에 따라 코어 디바이스에 대한 액세스 권한을 제어할 수 있습니다.aws greengrassv2 tag-resource \ --resource-arn
arn:aws:greengrass:us-west-2:123456789012:coreDevices:MyGreengrassCore
\ --tagsOwner=richard-roe
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 리소스에 태그 지정을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 TagResource
를 참조하세요.
-
다음 코드 예시에서는 untag-resource
의 사용 방법을 보여줍니다.
- AWS CLI
-
리소스에서 태그 제거
다음
untag-resource
예시에서는 AWS IoT Greengrass 코어 디바이스에서 소유자 태그를 제거합니다.aws iotsitewise untag-resource \ --resource-arn
arn:aws:greengrass:us-west-2:123456789012:coreDevices:MyGreengrassCore
\ --tag-keysOwner
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 리소스에 태그 지정을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UntagResource
를 참조하세요.
-
다음 코드 예시에서는 update-connectivity-info
코드를 사용하는 방법을 보여줍니다.
- AWS CLI
-
Greengrass 코어 디바이스의 연결 정보를 업데이트하는 방법
다음
update-connectivity-info
예시는 Greengrass 코어 디바이스에 대한 연결 정보를 가져오는 예시입니다. 클라이언트 디바이스는 이 정보를 사용하여 이 코어 디바이스에서 실행되는 MQTT 브로커에 연결합니다.aws greengrassv2 update-connectivity-info \ --thing-name
MyGreengrassCore
\ --cli-input-jsonfile://core-device-connectivity-info.json
core-device-connectivity-info.json
의 콘텐츠:{ "connectivityInfo": [ { "hostAddress": "192.0.2.0", "portNumber": 8883, "id": "localIP_192.0.2.0" } ] }
출력:
{ "version": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
자세한 내용은 AWS IoT Greengrass V2 개발자 안내서의 코어 디바이스 엔드포인트 관리를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateConnectivityInfo
섹션을 참조하세요.
-