기타

2024 당근 테크 밋업 (1회) 참여후기 : D (플랫폼)

KyuminKim 2024. 10. 11. 17:32

당근 테크 밋업?

  • 일시: 2024.10.7 월요일
  • 장소: 삼성동 코엑스 컨퍼런스룸
  •  특징:
    • 4개의 트랙으로 나누어 세션(강의) 진행
    • 네트워킹 활동 진행
    • Jetbrains, AWS의 후원

4개의 트랙


신청

신청은 festa 웹사이트에서 D 트랙으로 신청했다.

 

A Frontend

B Server

C Data/ML

D Platform

트랙으로 나누어 진행되는데,

이 중 하나의 트랙을 선택하면 된다.


진행방식

0) 공지/진행

- 당근 어플리케이션 모임 기능을 통해 사용했다.

- 네트워킹 신청, 당근 행사측의 공지글, 개인 컨퍼런스 참가자의 후기 등등 모든 행사 관련 내용이 당근 모임으로 진행되었다.

 

1) 강연

- 약 100석의 자리가 마련된 회의실이 A, B, C, D 트랙별로 존재한다.

- 세션을 자유롭게 돌아다니며 들을 수 있었다. 

 

2) 네트워킹

- 당근 모임을 통해 신청

- 강연장 앞 테이블에서 진행

 

3) 굿즈

- 입장 기념품

- 추가 굿즈

 

입장 기념품은 말 그대로 입장 시 받을 수 있다.

당근 볼펜 / 안경닦기 / 스티커 / 공책

 

추가 굿즈의 경우 5종류로 이루어져 있다.

스티커 / 에코백 / 키링 / 뱃지 / 키캡

 

- 중간중간 세션이 마치고 퀴즈 (당근모임 게시글)

- 밋헙 후기 설문조사 (당근모임 게시글)

- 네트워킹

등등을 통해 계속 굿즈를 얻을 기회가 있었다!

+ JetBrains 후원을 받다보니, IDE 무료 3개월 사용권 QR코드도 행사장 곳곳에 있었다.


강연 요약

새로 알게 된 점, 용어, 개념을 중심으로 메모하였다

 

[비용이 왜 튀었는지 저도 몰라요]

발표자 홍성택 / 당근 SRE팀 (FinOps : IT 비용 관리)

 

- 당근 서비스는 300개 이상의 MSA로 구성되어 있다.

- Netflix의 FCD 모델(Full Cycle Developers): "직접 만든 것은 직접 운영한다

         - SRE의 개입 없이도 빌드/프로비저닝/배포/모니터링 등 인터페이스를 제공하는 것

         - 즉, "비용 관리를 셀프 서비스로 제공하자"

 

- 자체 서비스 Katalog 개발: SRE 밋업 3 참고(프로젝트 오너쉽 정리를 통한 DevOps 기반 만들기)

 

- 자체 서비스 Kost 개발: 비용 시각화 인터페이스 (Kubecost와 같은)

        - Kubecost: 쿠버네티스 비용 처리 오픈소스 tool 

        - Kubecost의 비용 연산 과정

                - 사용량 x 단가 = 서비스별 비용

                - 프로메테우스를 통한 메트릭 수집 -> 사용량

                - AWS CUR (Cost & Usage Report) -> 단가

        


[궁극의 CI 환경을 만들기 위한 여정]

발표자 염근철 / 당근 SRE팀 (Docker Captain)

 

- 현재 Dockerfile 배포의 문제

         - Build 대부분이 Dockerfile 문법을 따른다 (kaniko)

         - Dockerfile = Docker를 따른다. BUT Docker: OCI를 따르지 않는다는 문제

 

- 자체 배포 시스템 제작기

         - (기존 사용) Remote Cache

                 - 실패 이유 = 빌드 시간이 길어질수록 더 안좋은 효과

                 - 실패 이유 = 빌드 시간이 길어지면 캐시도 커짐 <- 다운로드 시간도 + 캐시 준비 시간도 많이 든다

 

         - 새 배포 시스템의 조건: Stateless환경 장점 유지 + 캐시 유지

                 - Stateless 파이프라인의 장점 1: 확장이 편리

                 - Stateless 파이프라인의 장점 2: 이전 배포에 영향 x

 

         - 조건 1. 확장이 편리 (stateless)

                 - Kontrol : template 없음 (sre밋업)

                 - EBS, 동적 프로비저너, pvc

         - 조건 2. 이전 배포에 영향 x (stateless)

                 - Stateful Area를 따로 만들어, Cache에 중복이 생기지 않도록?

         - 조건 3. 캐시 유지

                 - remote cache가 아닌, local cache 구조 채택

 

- 도커파일 신규 피쳐

RUN --mount=type=cache

        <- 매번 빌드할때마다 특정 디렉토리를 유지시켜줌 (target=)

 

- 도커 BuildCloud

        - 이번 강연과 유사한, Docker에서 진행한 프로젝트 (참고)


 

[온콜, 알림만 보다가 죽겠어요]

발표자 이시은 / 당근 SRE팀 (Observability, EKS)

 

- 자체 시스템 Alert delivery 시스템 2

        - 그라파나 알림 웹훅을 받아 처리하는 앱 (+ Slack 알림)

                - 그라파나 -> AlertDelivery로 로그(쿠버네테그 + 노드cpu알림 등 인프라 알림) 보냄 +  AlertDelivery에서 처리하도록 함

        - Alert delivery시스템 1의 문제

                - 1. Verbose 알림이 너무 많다

                - 2. 추세 기반 알림이 필요하다

                - 3. 진행중인 알림을 구분하기 힘들다

       Severity Leveling: 메트릭 수치 추세 기반 심각도 정의 

                - Low / medium / high / critical level

                - EX) 서비스 응답룰 응답률 감소 시 high로 올림-> 3번이상 미디언이면 sre온콜

                - EX) Pod 5개 이상 재시작 -> 멘션

                - EX)  Zone skew (aws 멀티 존 사용 시 한쪽 존으로 쏠리는 현상) 발생 시 Slack 알림 -> Deployment 재시작 버튼 (slack)

        -Slack 스레드

                - Firing, OK 알림을 묶어서 스레드로 관리

 


강연 후기

 

당근 테크 밋업은 새로운 기술이나, 복잡한 기술에 대한 소개보다는

'당근 이렇게 일해요' 라든가 '당근은 이 문제가 닥쳤을때, 이 개념을 통해 새로운 시스템을 만들어봤어요' 였다.

 

취업준비생인 나로서는,

1) 익숙한 개념이 등장하다 보니, 너무 이해가 안가는 건 아니어서 좋았고,

2) 새로운 용어를 많이 알아갈 수 있어서 좋았다.

 

인상적인 것은, 당근은 자체 시스템을 새로 만들고 개선하는 것에 진심이라고 느꼈던 것이다.

실제로 가장 흥미롭게 들은 세션은 

D (플랫폼) 세션의 '궁극의 CI 환경을 만들기 위한 여정' 이었다.

SRE 담당자 분이 발표를 진행했는데, CI, 배포 관련 시스템을 구축하는 업무를 담당하고 있었다.

당시, 비록 당장의 배포와 서비스 출품에는 문제가 되지 않는 문제를 겪었다고 한다.

팀원들에게 말하지 않고 우선 서비스를 출품할까 고민했다고 하셨지만,

솔직하게 팀원에게 토로하고, 해결이 길게 걸리더라도 새로 도전해보겠다 말했다.

그리고 팀원들도 ok하시고 기다려주셨다 한다.

 

그렇게 발표자분은 문제를 해결하기 위해

'현재 겪은 문제'를 나열하였고, '그럼에도 이러한 장점은 지킨' 시스템을 만들자고 선언하였으며,

각각 나열된 문제를 하나씩 풀어가며 자체 시스템을 만들어

당근 팀원의 프로젝트 배포 시간을 획기적으로 줄일 수 있다고 한다.

 

당근의 더 나은 서비스를 위한 개발자 정신, 그리고 팀원을 믿는 자세를 볼 수 있었고

그것이 퍽 인상적이었던것 같다.


당근 테크 밋업 개인적인 장단점

 

장점

  • 스크린이 뒤에도 있어 잘 보였다.
    • 대형 회의실 특성 상 뒤에 있는 사람들은 스크린이 잘 보이지 않을 수 있는데, 스크린이 뒤쪽에 하나 더 있었다.
  • 각 회의실의 맨 뒷 열에, 당근 테크밋업  담당자가 있어 좋았다. (문의할 게 있다면 어딜 찾아가야 할지 알겠달까?)
  • 웰컴 굿즈가 많고, 추가 굿즈도 얻을 기회가 많았다.
  • 추가적인 네트워킹이 쉬웠다.
    • 당근 모임 앱을 사용하다 보니, 중간중간에 '같이 점심 드실 분', '컨퍼런스 끝나고 저녁 드실 분' 등 컨퍼런스 참가자들끼리도 네트워킹을 자체적으로 쉽게 할 수 있었다는 점이 장점으로 보인다.

 

단점 

  • 당근 모임 앱 - 자유 게시판에 너무 많은 글이 올라와, 행사 관계자의 글만 따로 볼 수 있었으면 했다.
  • 네트워킹선착순 신청이다보니 거의 1초만에 바로 찬다. (수강신청?)
    • 게다가 중복 참여도 가능해, 한 사람이 여러번 참여하는 것 같았다.
    • 다양한 사람들이 교류한다는 네트워킹의 취지 상, 인당 1회 참여로 제한했다면 좋지 않았을까 생각한다.
  • 선착순 퀴즈의 경우 먼저 댓글 쓰고, 그 댓글을 나중에 정답으로 수정하는 사람도 있다. (선착순 인정이된다)
  • 충격적인 네트워킹
    • 하다못해 의자라도 있을 줄 알았는데, 서서 네트워킹을 한다. 그리고 그 위치가 세션이 열리는 회의실 바로 앞에서다.
    • 그러다보니, 세션을 들으로 문을 열었다 닫았다 할때마다 네트워킹 소리가 나 살짝 거슬렸다. (내가 문 근처에 앉아서 그럴 수도 있다.)