Logic in Code,
Freedom in Travel.

인생 뭐 있나 사람 사는거 다 똑같지

실무 경험/실무 개발 & 협업

실무 경험/실무 개발 & 협업

2022 - 휴가만 쓰면 발생하는 우마카세가 삼겹살로 바뀌던 날: 크리스마스 전전날의 악몽 (TLS 이슈)

평화로운 날 2022년 12월 23일. 크리스마스 이브 전날이자, 코로나 백신 접종으로 얻은 소중한 1일 휴가였다. 오전에는 멘토님, 그리고 그의 제자분과 건대 롯데백화점에서 커피챗을 하며 시간을 보냈다.하지만 이날의 메인이벤트는 저녁이었다. 크리스마스 기념으로 청담동 우마카세를 예약해 뒀기 때문이다. 인천에서 차를 끌고 올라오는 친구를 기다리며 카페에 앉아있던 오후, 너무나 평화롭게 시간을 때우고 있었다. 오후 6시. 친구가 거의 도착했다는 연락을 받았고, 나는 청담동으로 이동할 채비를 했다. 딱 3분 뒤, 내 휴대전화가 진동하기 전까지는 모든 게 완벽했다.18:03, 재앙의 시작장애 알림 문자와 동시에 회사에서 전화가 걸려 왔다. "야 서비스 안된다"카페 테이블에 급하게 노트북을 펼쳤다. VPN을 통..

2024. 2. 29. 01:06
실무 경험/실무 개발 & 협업

2023 - 모니터링을 구축해서 프로젝트 운영을 편하게 하자

장애의 시작 - Slony-I 리플리케이션 붕괴출근 후 오전 10시, 사이트에 접속이 안된다는 메세지를 받았다. 상황 분석PostgreSQL Slony-I 로 Master-Slave 리플리케이션 구성되어 있다. Slave 서버 한 대가 삭제되었다. (직원중에는 이 서버에 대해 아는 사람이 없었다)Master 서버의 디스크가 가득 찼다. 문제의 Slave 서버 한대가 사라진 후 문제가 시작되었다. 장애 원인Slony-I 는 Slave 로 복제 데이터를 전송할 때 트랜잭션 로그(WAL)를 사용한다. Slave에 전달이 지연되거나 다운되면 아래와 같이 문제가 발생할 수 있다. Master 에서는 WAL 로그를 계속 생성함 Slave가 복구될 때까지 로그를 보관WAL 로그가 디스크를 가득 채움 (500GB → ..

2024. 2. 29. 01:04
실무 경험/실무 개발 & 협업

2023 - Bulk Mailler 실종 사건

태어난 모든 것들은 기약조차 없는 이별을 준비하고 있어야 한다발타사르 그라시안 레거시 서비스에서 어느날 갑자기 예약 메일 발송하는 서비스가 사라졌다. 해당 서비스에서 동작하던 내가 알고 있던 Application 도 아니었다. 그렇다면 사라진걸 어떻게 알았을까 예약 메일이 발송되지 않으니까 알았지.. 변명우선 이 서비는 2000년도 초반에 오픈하였으며 2010년도 후반부터 간단한 유지보수 작업만 이루어졌다. 이 서비스를 담당했던 직원들은 극 소수를 제외하고 모두 퇴사하였고, 질문을 해도 5할은 모른다.. 혼자 유지보수하는 Application 은 약 20개 정도이며 뭐가 더 있는지는 모른다.보안상의 이유로 대부분의 문서를 볼 수 있는 권한이 없다. 장애가 발생했을 때만 엄청난 고뇌를 통해 하나씩 알..

2024. 2. 29. 00:57
실무 경험/실무 개발 & 협업

2022 - TLS 1.0, TLS 1.1 지원 중단으로 인한 TLS 버전 업그레이드 회고

상황글 작성하기 2년전 wss 통신에서 장애가 발생했다. 해당 서비스는 초당 50 만건 이상의 트래픽을 감당하고 있을만큼 장애가 발생할 경우 문제가 큰 서비스였다. 당시 서버 로그를 확인해서 SSL 인증서에 문제가 있다는 것을 확인했다.원인을 확인했으니 2가지를 확인해봤다. 1. 인증서 기간 확인2. OpenSSL 버전 확인 인증서 기간에는 문제가 없었지만 Host 에서 TLS 에 대한 이슈가 있다는 것을 확인했고 OpenSSL 1.0.2g 에서는 TLS 1.2 이상을 지원하지 않았으며 Docker Daemon 에서도 TLS 1.2 / 1.3 을 지원하지 않았다. 우선 원활한 서비스를 위해 wss 통신하던걸 모두 ws 통신으로 변경했더니 서비스가 정상으로 돌아왔다. 원인TLS 1.0, TLS 1.1 지..

2024. 2. 10. 13:22
실무 경험/실무 개발 & 협업

Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client

더보기더보기2022 년도에 작성된 글 입니다.서버에서 API 스팩을 잘못 개발했을 경우 클라이언트 개발자에게서 겪는 문제이다. Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client살다살다 아래와 같은 에러를 만나게 됬다.error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client at ServerResponse.setHeader (_http_outgoing.js:561:11) at sendJson (/Users/kyungseo.park/Documents/sunyoh-web/node_modules/next/dis..

2024. 2. 9. 22:53