k3s 마스터 노드 변경하기(1) - 사전 점검 및 datastore 모드 확정
·
Infra
들어가며이번 1편은 전체 이관 과정 중 이관 전 클러스터의 현재 상태와, 컨트롤플레인 이관 전에 선행해야 할 점검/설정 항목을 다루려고 한다. 해당 클러스터를 구축하고 꽤 시간이 지난 상태였기 때문에 현 상태를 정확히 파악하는 과정이 필수였다. 현재 상태를 모르면 이관 중 발생하는 장애가 기존 이슈인지, 이관으로 유발된 이슈인지 분리하기 어려워지고, 원인 파악이 늦어지면서 절차를 되돌려 여러 방법을 반복 시도하게 되어 시간 리소스 낭비로 이어질 수 있다. 이를 방지하기 위해 기존 상태를 잘 살피고, 이에 따른 전략을 세우고, 그 후에 이관을 실행하려고한다. 실제 승격/복구 디테일은 다음 편들에서 다뤄보겠다.전체 구조점검 당시 클러스터 전체 구조는 아래 차트와 같았다. 클러스터는 마스터 1대와 워커 3대로..
k3s 마스터 노드 변경하기(0) - 배경 및 결론
·
Infra
배경 서비스를 운영 중 크레딧 이슈로 인해, 기존 마스터 노드를 무조건 종료해야 하는 상황이 발생했다. 단순히 노드 한 대를 내리는 작업이 아니라 컨트롤플레인 자체를 다른 노드로 이관해야 하는 운영 이벤트였고, 그 여파로 클러스터 API 접근성, stg/prd 도메인 외부 라우팅(80/443 유입 경로), ingress-nginx 서비스 경로(NodePort 포함), cert-manager 기반 TLS 발급/갱신, ArgoCD 자동 동기화(GitOps) 정합성까지 한 번에 정리해야 했다. 이관 직전 기준으로 클러스터는 4개 노드가 모두 Ready였고, 노드 사용률은 CPU 29%, 메모리 63% 수준이었다. 영향 범위는 핵심 6개 네임스페이스(argocd, cert-manager, ingress-ngin..
Cronjob을 활용한 기업정보 크롤링 파이프라인 구축하기(1) - 기능 구현
·
Infra
직행과의 산학협력을 진행하면서, 기업 뉴스를 조회하는 새로운 기능을 제안하게 되었다.특히 제안한 기능은 해당 기업의 PR 부서가 내는 뉴스나 글에 대해서 보여주는 것이 목적이었고, PR 부서의 뉴스들만을 모아서 제공하는 서비스는 따로 존재하지 않았기 때문에 직접 뉴스나 글을 수집하는 파이프라인을 구축해야했다. 우선 최종 구축하게 된 크롤링 파이프라인의 흐름은 아래와 같다.전체 프로세스를 크롤링, 데이터 적재로 구분하여 구현하게 되었고, 크롤러는 크롤링의 역할을 수행하게 되고, 로더는 정보를 DB에 저장하는 역할을 수행하게 된다. # 크롤러와 로더로의 분리우선 가상 면접 사례로 배우는 대규모 시스템 설계 기초 책을 참고했을 때, 크롤러를 설계하는 로직에서 한 곳에서 모든 걸 처리하기보단 큐를 넣고 DB에..