일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- STM32
- 보안
- 전기차충전
- AWS
- OCPP
- homeassistant
- thread
- 라즈베리파이
- dynamodb
- everon
- lambda
- 전기차
- IOT Core
- 디자인패턴
- Android
- flask
- 서버리스
- YMODEM
- 펌웨어
- 안드로이드
- 파이썬
- 완속충전기
- raspberry
- 충전기
- esp8266
- 홈어시스턴트
- 플라스크
- 급속충전기
- 전기차충전기
- 에버온
- Today
- Total
Louie NRT Story
[AWS] IOT Core Basic 본문
Writed: 10 Jan 20
1. AWS IoT Core System Architectrue
2. AWS IOT 구성요소
1) 디바이스 게이트웨이
- 디바이스가 AWS IOT와 통신 할 수 있도록 해줌
2) 메시지 브로커
- MQTT 프로토콜 또는 MQTT over WebSocket 게시 및 구독
3) 규칙 엔진
- SQL 기반 S3, DynamoDB, Lambda 서비스 데이터 전송 가능
4) 보안 및 자격 증명 서비스
- 데이터 주고 받을 때 암호화
5) 레지스트리
- 디바이스의 인증서 및 MQTT Client ID 관리
6) 그룹 레지스트리
- 여러 디바이스 한번에 관리
7) 디바이스 섀도우
- 디바이스 현재 상태 정보 저장 및 검색
8) 디바이스 섀도우 서비스
- 디바이스 섀도우 정보 게시 및 상태 통기화
9) 디바이스 프로비저닝 서비스
- 사물(레지스트리의 디바이스 속성 정보), 인증서, 정책
10) 사용자 지정 인증 서비스
- 사용자 지정 인증 서비스와 Lambda 사용하여 인증 및 권한 부여 관리
11) 작업 서비스
- 어플리케이션 및 펌웨어 업데이트 다운로드 설치 및 재부팅 등 원격 작업
12) AWS IOT 용 Alexa Voice Service(AVS) 통합
3. AWS IOT 엑세스
1) AWS Command Line Interface(AWS CLI)
- AWS IOT 명령을 실행함
2) AWS IOT API
- HTTP 또는 HTTPS 요청하여 사물, 인증서, 규칙 및 정책 생성 및 관리 할 수 있음
3) AWS SDK
- HTTP/HTTPS API를 래핑하고 지원 언어로 프로그래밍 작성 할 수 있도록 해줌
4) AWS IOT Deivce SDK
- 디바이스에서 AWS IOT 메시지 송수신 하는 애플리케이션 구축
4. 관련 서비스
1) Amazon Simple Storage Service(S3)
- 확장 가능한 스토리지 제공
2) Amazon DynamoDB
- NoSQL 데이터베이스 제공
3) Amazon Kinesis
- 실시간 대규모 데이터 스트리밍 처리
4) AWS Lambda
- 이벤트에 대한 응답
5) Amazon Simple Notification Service(SNS)
- 알림 송수신
6) Amazon Simple Queue Service
- 애플리케이션이 검색할 데이터를 대기열 저장함
5. 간단한 예제
1) 정책 만들기
2) 사물 만들기
이번 포스트에서는 인증서를 다운로드 한다는 것만 알아두면 됨
3) 동작되는 것을 테스트 함
- 무슨 OS를 선택하든 내부의 start 파일만 실행 시키면 필요한 Package는 자동으로 다운로드 되고 실행됨
- 실행 될 start.sh의 bash 코드임
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
# stop script on error
set -e
# Check to see if root CA file exists, download if not
printf "\nDownloading AWS IoT Root CA certificate from AWS...\n"
fi
# install AWS Device SDK for Python if not already installed
if [ ! -d ./aws-iot-device-sdk-python ]; then
printf "\nInstalling AWS SDK...\n"
pushd aws-iot-device-sdk-python
python setup.py install
popd
fi
# run pub/sub sample app using certificates downloaded in package
printf "\nRunning pub/sub sample application...\n"
python aws-iot-device-sdk-python/samples/basicPubSub/basicPubSub.py -e a250bpbwc8ncp5-ats.iot.ap-northeast-2.amazonaws.com
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
- 예제 프로그램 basicPubSub.py가 실행되면서 IOT Core에 데이터가 올라오는 것을 확인 할 수 있음
- 테스트 기능을 통하여 sdk/test/Python을 구독하거나 sdk/test/Python을 게시하면 데이터를 주고 받을 수 있음
- 위에서 실행시킨 basicPubSub.py 코드를 보면 sdk/test/Python이 구독과 게시가 topic으로 Default 설정 되어 있음
6. 추가 설명
1) 상호작용의 HTTPS 주소가 사물의 End Point 주소임
2) 다운로드 한 인증서가 주고 받은 데이터를 암호화 하는 것임
Reference:
- https://docs.aws.amazon.com/ko_kr/iot/latest/developerguide/what-is-aws-iot.html
'서버시스템' 카테고리의 다른 글
[AWS] IOT Core DynamoDB (0) | 2020.01.13 |
---|---|
[AWS] IOT Core SNS 규칙 (0) | 2020.01.11 |
[Cloud_Training] 181005 Linux_HTTPS, FTPS 설정 (0) | 2019.03.21 |
[Cloud_Class] 180927 CentOS6 CentOS_Clone,사용자별용량제한 (0) | 2019.03.20 |
[Cloud_Training] 180917_CentOS7_Tar (0) | 2019.03.20 |