25. 12. 19 (금) 일지 : 프로젝트(5)

2025. 12. 19. 01:48·AWS 광주 개발일지(25.08.19~25.01.20)/교육 25년 12월 일지

 

 

타임스탬프가 어제 날짜로 찍히는 상황이 발생했다.

 

 

이 문제의 경우 한국 시간대로 변경해주면 해결되는데 파라미터 그룹에서 디폴트 값이 한국시간이 아니다.

새롭게 파라미터 그룹을 만들고 time_zone 에 Asia/Seoul 로 변경한 뒤
데이터베이스를 재부팅 시켜주면 적용이 완료된다.

 

 

재부팅까지 완료하고 난 후 확인하니 한국 시간대로 변경됐다. 

새로 들어온 것들만 변경되는 줄 알았더니 기존에 저장됐던 것들도 표기 시간을 변경해서 인지 모두 오늘 날짜로 바껴 있었다.

 

이제 다시 로그인 로직을 구현하는데 로그인 성공과 실패는 처리가 가능했지만 로그인 유지를 하기 위해서는 웹브라우저에 캐시를 저장해둘 필요가 있었다. 

 

또한 새로고침을 해도 가진 정보를 토대로 UI 업데이트도 필요했다.

일단 라즈베리파이 연동을 준비하고 추후에 처리하기로 했다.

 

라즈베리파이 환경설정을 위해서 가장 먼저 sd 카드에 os를 깔아주는 설정이 필요했고 

그 후에는 네트워크 설정을 하고 iot core와 연결하기 위한 기기 등록에 필요한 인증서 파일은 usb를 통해 라즈베리파이에 넘겨줬다.

 

 

sudo apt update

 

sudo apt install python3-pip

 

파이썬을 설치했지만 가상환경에서 작업하라는 코드가 나왔고

 

python3 -m venv myenv

 

source myenv/bin/activate

 

가상환경에 접속해 sdk를 설치했다.

 

pip install awsiotsdk

 

nodejs 를 환경으로 구축할 예정이기 때문에 node의 설치도 필요했다.

 

sudo apt update

 

sudo apt install -y nodejs npm

 

이제 인증서 폴더에 들어있는 start.sh를 실행하면 새로운 폴더가 생성되고 작업을 위한 환경구축이 완료된다.

 

 npm 에서 버전 문제가 너무 많이 생겨서 파이썬에서 다시 진행하기로 했다.

 

필요한 파일들은 기존에 받아뒀던 인증서 파일들이랑 

aws iot의 엔드포인트 주소다.

 

aws iot describe-endpoint --endpoint-type iot:Data-ats

엔드포인트 주소를 모르겠으면 파워쉘에 위의 명령어를 입력하면 엔드포인트 주소를 볼 수 있다.

 

import time
from awscrt import mqtt
from awsiot import mqtt_connection_builder


ENDPOINT = "엔드포인트 주소"

CLIENT_ID = "smarthome"

PATH_TO_CERT = "certs/smarthome.cert.pem"
PATH_TO_KEY = "certs/smarthome.private.key"
PATH_TO_ROOT = "certs/root-CA.crt"

mqtt_connection = mqtt_connection_builder.mtls_from_path(
    endpoint=ENDPOINT,
    cert_filepath=PATH_TO_CERT,
    pri_key_filepath=PATH_TO_KEY,
    ca_filepath=PATH_TO_ROOT,
    client_id=CLIENT_ID,
    clean_session=False,
    keep_alive_secs=30
)

print(f"{CLIENT_ID}가 {ENDPOINT}에 연결을 시도합니다...")

connect_future = mqtt_connection.connect()
connect_future.result() # 연결이 완료될 때까지 기다립니다.
print("연결 성공! 🎉")

 

실제 LED를 GPIO 17번 물리핀 11번에 연결해 테스트한 이미지 

mqtt 프로토콜을 이용해 데이터를 주고 받아 실제로 iot core에서 명령을 내리고 라즈베리파이가 동작하도록 구현했다.

'AWS 광주 개발일지(25.08.19~25.01.20) > 교육 25년 12월 일지' 카테고리의 다른 글

25. 12. 21 (일) 일지 : 프로젝트(7)  (0) 2025.12.21
25. 12. 20 (토) 일지 : 프로젝트(6)  (0) 2025.12.20
25. 12. 18 (목) 일지 : 프로젝트(4)  (0) 2025.12.18
25. 12. 17 (수) 일지 : 프로젝트(3)  (0) 2025.12.17
25. 12. 16 (화) 일지 : 프로젝트(2)  (0) 2025.12.17
'AWS 광주 개발일지(25.08.19~25.01.20)/교육 25년 12월 일지' 카테고리의 다른 글
  • 25. 12. 21 (일) 일지 : 프로젝트(7)
  • 25. 12. 20 (토) 일지 : 프로젝트(6)
  • 25. 12. 18 (목) 일지 : 프로젝트(4)
  • 25. 12. 17 (수) 일지 : 프로젝트(3)
dev_user
dev_user
csjang94-dev 님의 블로그 입니다.
  • dev_user
    devJang
    dev_user
    • Category (127)
      • Linux (2)
      • FrontEnd (11)
        • HTML (1)
        • CSS (5)
        • JavaScript (4)
        • React (1)
      • BackEnd (4)
        • node.js (7)
        • Vue.js (1)
      • DB (13)
      • Python (3)
      • GitHub (1)
      • AWS (18)
      • ErrorCode (2)
      • AWS 광주 개발일지(25.08.19~25.01... (55)
        • 교육 25년 8월 일지 (7)
        • 교육 25년 9월 일지 (22)
        • 교육 25년 10월 일지 (2)
        • 교육 25년 11월 일지 (4)
        • 교육 25년 12월 일지 (19)
      • Projects (3)
        • 미니프로젝트(25.08.29) (0)
        • Git Page -> Portfolio제작 (2.. (1)
      • 개념 정리 (1)
      • 유용한 서비스 (3)
  • 인기 글

  • 링크

    • GitHub
    • Portfolio
    • YouTube
    • 개발자 로드맵 사이트
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 전체
    오늘
    어제
  • hELLO· Designed By정상우.v4.10.4
dev_user
25. 12. 19 (금) 일지 : 프로젝트(5)
상단으로

티스토리툴바