ohjongsung's Dev Story

Ohjongsung's Dev Story

NoSQL에서 스키마 변경과 마이그레이션

NoSQL에서 스키마를 변경한 경우, 모든 문서를 건 바이 건으로 변경된 스키마를 반영한다고 생각해보자. 저장된 데이터의 양이 작다면 순식간에 끝날 것이다. 그러나 데이터의 양이 많아서 며칠이 걸린다면? 중간에 에러가 발생해서 중단되면? 스키마 마이그레이션 작업의 부하가 크다면 어떻게 해야 할까? 이 글을 통해서 NoSQL의 스키마 변경을 어떻게 반영하는지 알아보자.

2019년 03월 01일

엘라스틱 서치 재시작하기 - Rolling Restarts

엘라스틱 서치 버전 업그레이드 또는 서버 OS 나 하드웨어 업그레이드 등의 이유로 서비스를 중단해야할 경우가 생긴다. 하지만 무중단 서비스를 지향한다면 엘라스틱서치 클러스터 전체가 아닌 노드를 한 번에 하나씩 재시작해야 한다. 영어로 Rolling Restarts라고 하는데, 문제는 엘라스틱 서치는 데이터를 각 노드에 균등하게 배분하고 레플리카 또한 완전한 셋을 유지하고 싶어 한다는 것이다. 그래서 노드 하나가 셧다운되면, 클러스트는 그 상황을 즉시 인식하고 셧다운된 노드에 있는 프라이머리 샤드와 레플리카 샤드를 다른 노드로 옮기는 Reallocation, Rebalancing 작업이 시작된다.

2018년 08월 04일

Let's Encrypt를 갱신할 때 Web Server도 재시작하자

오늘 잠깐 내 블로그에 접속을 했다가 크롬 URL 창에서 ‘안전하지 않음’ 메시지를 보고 깜짝 놀랬다. 원인을 생각해봤을때, Let’s Encrypt 인증서 갱신이 제대로 이루어 지지 않아서 발생한 문제라고 파악했다. 이전에 내가 작성했던 Let’s Encrypt로 HTTPS 적용하기 를 보면 인증서 갱신을 위해 cron 설정을 해뒀었다. 처음에는 이 부분이 잘못 설정 된줄 알고 직접 갱신 명령을 실행해봤지만 실패..그래서 Log 파일을 확인해 봤다.

2017년 08월 31일

Tomcat 8에 ROOT로 게시하기

Tomcat 8에 지금 이 블로그를 ROOT로 게시하기 위해 여기저기 정보를 검색했었다. 계속해서 에러가 나고 원하는데로 게시가 되지 않았다. 지금은 잘 운영되고 있지만, 관련 내용을 정리해 둔다. 시일이 좀 지난터라 정확한 삽질 내용과 순서가 흐릿하다.

2017년 06월 24일