본문 바로가기
Hardware/Home Assistant

Home Assistant 마이그레이션 - Snapshot 백업/복구

by lovey25 2021. 2. 15.

Home Assistant(HA)의 활용도가 커지고 이것저것 설치하는 것도 많아지고 NAS로까지 사용하려다 보니 라즈베리파이 3은 왠지 좀 후달리는 듯한 느낌이 들어서 라즈베리파이 4로 업그레이드를 결정했습니다.

라즈베리파이는 동일 기종으로 기변이야 새거 사서 SD카드만 교체하면 되지만 기종이 달라지는 경우 제가 가장 걱정되는 건 아직 익숙하지도 않은 HA를 백업해서 새로 설치한 라즈베리파이에 복구를 해야 한다는 부분이었습니다. 뭐 대단한 걸 이룩해 놓은 건 아니지만 지금까지 들인 공이 아까워서 만약 복구가 잘 안돼서 처음부터 다시 구축하라고 하면 좀 억울할 것 같았거든요.

그래도 백업/복구는 언젠가 한 번은 넘어야 될 산이라 생각하고 이참에 경험해 보기로 했습니다.

라즈베리파이 4

라즈베리파이는 ModelB 4GB로 준비해 봤습니다. HA 권장사양이 라즈베리파이 4이고 최소 3A이기 때문에 HA 서버용으로만 사용할 때 특별히 불편한 점은 느끼지 못했습니다. 다만 PLEX로 동영상을 본다거나 할 때 버퍼링도 심한 것 같고 해서 뭐 물증은 없지만 심적으로 부족한 것 같아서 한 단계 업그레이드한다는 생각으로 4B 구매했습니다.

기존 HA 설정 백업(스냅숏 만들기)

마이그레이션 시작하기 전, 가장 먼저 해야 할 부분은 바로 기존 설정의 백업본을 만드는 거죠. HA에서는 스냅숏이라고 부르는데 각종 설정 및 사용자 데이터를 모두 백업할 수 있습니다.

" Supervisor" 메뉴에서 "Snapshot"으로 이동해서 스냅숏 만들기를 실행합니다. 스냅숏은 백업 가능한 데이터를 모두 포함하는 Frull snapshot과 원하는 데이터만 골라서 만드는 Partial snapshot이 있습니다.

저는 크게 중요하지 않고 용량만 많이 차지하는 미디어 관련 데이터만 제외하고 스냅숏을 만들었습니다.

HA 설치 후 스냅숏 파익 이식

이제 새로운 라즈베리파이에 HA를 설치하고 준비한 Snapshot으로 복구 진행해 보겠습니다.

먼저 라즈베리파이에 HA 설치하는 과정은 이전 포스팅으로 대신하고 넘어가겠습니다.

라즈베리파이OS 설치 후 도커 + Home Assistant Supervised 설치방법

라즈베리파이에 Home Assistant 이미지로 설치 (공식 권장 설치법)

라즈베리파이에 Home Assistant(HA) 수동 설치법 [요건 비추해요]

HA가 설치를 완료하고 처음 서버에 접속하면 아래와 같은 화면을 만날 수 있죠. 여기서 맨 아래 "Alternatively, you can restore from a previous snapshot" 링크를 눌러서 기존 설정 환경을 복구할 수 있습니다. 그런데 이 방법은 스냅숏의 크기가 1기가가 넘지 않을 때만 가능한 방법입니다.

만약 스냅숏이 1기가가 넘어간다면 일단 사용자 계정을 만들어서 HA에 접속을 하고 스냅숏 파일을 HA에 수동으로 이식시켜야 합니다. 스냅숏 파일을 이식하는 가장 쉬운 방법은 라즈베리파이에 삼바 서버를 설치하고 스냅숏 파일을 HA에 서버에 직접 복사해 주는 겁니다. 리눅스 환경이 익숙하신 분이라면 삼바도 필요 없이 바로 파일을 복사할 수도 있지만 어차피 저는 삼바도 많이 이용하기 때문에 이 방법이 가장 편했습니다.

아래 링크를 참고해서 samba 서버를 설정합니다.

 

라즈베리파이 처음 사용자를 위한 기본설정 A to Z

2020-12-12 update log: 뒷부분에 와이파이 연결 및 SSH 설정방법 추가 제목은 거창한데 A to Z는 아니고 사실은 A to C 정도이고 라즈베리파이를 처음 만져보는 저 같은 사람이 뭔가를 해보기 위해서 기본

kwonkyo.tistory.com

만약 HA OS를 설치한 경우 거나 위 방법이 귀찮다 하시면 Addon store에서 Samba share를 바로 설치하는 방법도 있습니다.

삼바 서버까지 준비가 되었으면 PC에서 삼바 서버로 접속하고 스냅숏 로딩 위치에 준비해둔 파일을 복사합니다. HA에서 스냅숏 파일이 저장되는 위치는 "share/backup"입니다. 

스냅숏 복구

파일 복사가 끝나고 나서 HA의 스냅숏 메뉴에 가보면 하단의 "Available Snapshots" 목록에 방금 복사한 스냅숏을 확인할 수 있습니다.

복구하고자 하는 스냅숏을 선택하고 "RESTORE SELECTED"를 선택합니다. 복구할 때 한번 더 복구할 데이터를 선택할 수 있습니다. 

복구 결과

스냅숏을 백업하고 복구하는 과정은 매우 간단하고 이해하기 쉽도록 만들어져 있어서 큰 어려움 없이 진행할 수 있었습니다. 그리고 걱정이 많이 되긴 했지만 거~의 대부분 설정했던 모든 내용들이 문제없이 다시 복구되는 것을 확인할 수 있었습니다. 하지만 몇 가지는 복구 뒤에 다시 확인해줄 부분도 있었는데요. 

제가 사용하는 서비스 중 다시 정상화시키기 위해서 스냅숏 복원 후 손을 봐줘야 할 부분은 SmartThings와 MQTT 2가지였습니다. SmartThings는 동일한 인증키로 구성요소 등록만 다시 해주는 것만으로도 다시 정상 동작했습니다. 그리고 "Mosquitto broker"는 그 자체의 문제는 아니었고 "Zigbee2mqtt"에 등록된 디바이스들과 통신상태가 문제였는데, 겉으로는 아무 문제가 없는 듯 보였지만 각 센서의 상태를 읽어오지 못하는 문제가 있었고 간단히 각 센서의 페어링을 다시 진행해 주는 것으로 해결이 되었습니다.

앞으로 얼마나 더 방대하게 HA를 활용하게 될지 모르겠지만 지금과 같은 활용 수준이라면 정기적으로 스냅숏을 잘 백업하는 것만으로도 충분히 스트레스 없이 HA 서버 관리가 가능하다고 느껴지네요.

 

끝!

728x90

댓글0