AWS re:Invent 2024 Part3

Simon Kim·2024년 12월 16일

Dr. Werner Vogels 키노트

re:Invent에 참관하면서 아니.. 인생에 살면서 Werner Vogels 박사님의 키노트를 현장에서 직접 들을 수 있는 경우가 있을까 생각했었는데, 그 꿈이 이루워졌다. 처음부터 이 분에 대해서는 잘 몰랐었으나, 2019년에 이 분께서 발표하셨던 Event Driven Architecture 에 대한 키노트 내용에 감명받으면서 매년 꾸준하게 키노트를 챙겨보고 있다.(좀 늦은감이 있죠? ㅋㅋㅋ)
어떤해는 메트릭스 모티브로 2년 연속 시리즈로 오프닝을 꾸몄기도 했고, 어떤 해는 과학 실험실(?)에서 과학자와 치열한 토론을 하는 모습의 오프닝을 꾸몄기도 한 기억이 새록새록 난다. 올해는 어떠한 컨셉으로 우리에게 철학적인 설명을 할 지 기대하고 있었는데, 이렇게 직접 볼 줄이야. ㅋㅋㅋ

오늘도 키노트에는 사람들이 많았다

아침 일찍 일어나 경건한(?) 마음으로 Dr. Werner Vogels의 영접을 기대하면서 키노트 행사장에 갔다. 8시 30분 행사라 그런지 키노트 1시간 전 일찍 나왔을때 대기하는 사람들이 별로 없어서 베네시안 호텔에서 조식을 후다닥 먹고 가도 괜찮겠다는 얕은 생각으로 조식을 먹으러 갔다 왔다. 근데 왠걸... 분명 식사는 15분 내로 끝내고 왔는데, 15분 만에 입장 대기 공간에 사람이 가득 찼다. 1분만 늦게 왔었더라면 좋은 자리는 언불생심이었을 것이다.

1분후...

그러나 식전 음악은 달랐다.

분명이 2~3일차까지만 해도 행사 시작전에는 DJ가 준비한 EDM음악이 식전 음악으로 사람들의 귀를 즐겁해 해주었다. 그런데, 4일차 키노트 식전 음악은 무려 현악 4중주가 나를 반겨 주었다. 어제까지 디지털 음악을 듣다가 아날로그 음악을 들으니 매우 색다르고 마음이 차분해졌다.(그러나 음악은 Pop 장르 음악이 연주되었단 사실!ㅋㅋ)

드디어 영접한 Dr. Werner Vogels

그리고 마침내 키노트 영상이 시작되면서 행사의 시작을 알렸다. 이번 오프닝 영상은 초창기 아마존(?) 모습이 나오면서 그 유명한 'Two Pizza Rule'이 창시하게 된 배경을 설명해주고 있었다. (영상에서는 이 Rule 창시한 사람이 무려 피자 배달원이었다고 하는데... 응?? : 조크의 느낌이 강하게 들어오는 ㅋㅋㅋ)

무튼 영상이 끝나고 드디어 Dr. Werner Vogels님이 등장하였다. 30년 이상의 내공을 보유하셔서 인지 모든 엔지니어의 환호속에 파이팅 넘치는 동작으로 우리를 반겨주셨다. 나 또한 Dr. Werner Vogels 영접한지 5년차인데 현장에서 직접 두눈으로 이렇게 뵙게 되어서 영광이었다.^^(역시 One of Them!)

키노트 주요 내용

키노트 주요 내용은 내 짧은 영어 실력으론 내용을 이해하는데 많은 어려움이 있었지만, 다행히 Youtube에도 영상 업로드가 되어서 내용을 반복적으로 볼 수 있었고, 이를 정리한 내 나름대로의 짧은 소견을 이야기하고자 한다.

  1. Lesson in Simplexity
    Simple + Complexity의 합성어로 복잡해지는 아키텍처에 대해 개선이 필요한 부분은 Simple하게 구성해야 한다고 말씀하셨다. 이를 이해하기 쉽게 설명하기 위해 아키텍처를 자전거에 비유하여 설명하였다.
자전거 바퀴가 하나인 경우 저렴하고 심플하지만 운전하기에 불편함과 위험성이 높다.
자전거 바퀴가 세 개인 경우 편하고 안전하지만 구조가 복잡하고 제작 비용이 높다. 
따라서 바퀴가 두 개가 심플하면서 안정성도 갖출 수 있는 최적의 구조다.

내용만 들었을 때는 이해가 되지 않다가, 그림을 보고 나서 키노트에서 말하고자 하는 포인트가 무엇인지 바로 감을 잡았다. 이해가 빠르신 분들은 Simplexity의 의미가 복잡한 아키텍처를 최대한 간결하게 개선할 수 있는 방법을 찾기 위한 여정을 이야기 하는 것임을 알 수 있을 것이다.

  1. Simplexity를 위한 6가지 교훈
    Dr. Werner Vogels님이 AWS에 있으면서 경험하고 체득한 6가지 교훈을 설명해 주시면서 Simplexity의 필요성을 강조하셨다. 평소 키노트였다면 다양한 논문과 업무 경험을 기반으로 기술적으로 나아가야할 방향을 설명해주셨는데, 올해 키노트는 실전 100% 경험을 기반으로 설명을 해주셨다는 점에서 개인적으로는 색달랐다. 6가지 교훈에 대한 상세한 설명은 AWS 에반젤리스트이신 윤석찬님께서 SNS에 잘 정리해주셔서 해당 내용을 참고하셨으면 좋겠다.
    https://www.linkedin.com/posts/channy_awsreinvent-activity-7270564267609722880-YiNQ?utm_source=share&utm_medium=member_desktop
(개인적으로는 6개의 뼈있는 조언을 해주시는 것 같았다.ㅜㅜ)
1. (사용자) 요구사항에 맞는 진화를 만드세요.
2. 복잡한 요소들은 여러 조각으로 쪼게서 최대한 간결하게...
3. 아키텍처에 맞는 조직을 구성하세요.
4. 조직를 작은 단위로 구성하세요.
5. 예측 가능한 시스템으로 디자인하세요.
6. 복잡성을 (최대한) 자동화 하세요.

  1. Simplexity requires discipline.
    Simplexity를 달성하기 위해서는 "규율"이 필요하다고 강조하였다. 국어 사전에 정의된 "규율"의 뜻을 찾아보면 '질서를 유지하기 위하여 정해 놓은, 행위의 준칙이 되는 본보기.'라고 설명되어 있다. 개인적인 생각으론 복잡한 아키텍처 속에서 단순한 아키텍처를 구성하기 위해서는 여러 의사 결정이 필요하게 될텐데, 이는 조직 내에 어느정도 정해진 "규칙"과 "Rule"를 지키며 아키텍처를 단순화하는 것이 필요하기 때문에 이 부분을 강조하신 것이 아닐까 생각한다.

  2. How to synchronized clocks in distributed system
    Part2에서 소개한 Amazon Aurora DSQL, dynamodb global table과 관련해서 리전단위로 구성된 글로벌 테이블의 시간을 millisecond 단위의 오차범위내로 시간 동기화를 어떻게 하는지에 대해서 Dr. Werner Vogels님의 상세한 설명이 진행되었다. 결론부터 말하면 인공위성 시간을 동기화 하기 위한 Hardware clock 서버(시간 동기화)를 구축하여, 해당 서버의 time을 기준으로 동기화할 수 있도록 아키텍처를 구성하였다고 한다.

    그리고 이를 바탕으로 분산 쿼리 처리 시, 시간 동기화를 millisecond 단위로 업데이트하여 데이터 일관성과 지속성을 높일 수 있게한다고 설명하였다.

  3. 그래서 결론은...
    키노트 막바지에 복잡성을 감소하기 위한 여러가지 방법들을 소개하였는데, 그 중 가장 강조하는 방법은 선출된 리더를 잘 따르라였다. 이 부분에 대해서는 다양한 의견들이 나올 수 있겠지만, 중요한 점은 어떠한 의사결정을 할 때 의사결정에 대한 권한과 책임은 리더에게서 나오는 것은 변치않는 사실이라는 점이다.
    이러한 관점에서 리더가 조직구성원들을 올바른 방향으로 이끌어 나갈 수 있도록 안내하는 것은 리더와 그 리더를 따라가는 구성원들이 합심해서 함께가는 것이 선출된 리더 방법의 진정한 의미이지 않을까 싶다.(선출의 의미가 그룹을 대표하는 의미이기도 하다.^^)

키노트가 끝난 후...

키노트가 끝나고 휴식을 취한 후, re:Invent 행사의 하이라이트인 re:Play에 참여하였다. 행사의 백미 답게, 다양한 놀이들과 볼거리가 가득하였고, 무엇보다도 너무너무너무 재미있고, 맛있었다.^^

후기: 이날 음주 6일차... 맥주를 다시한번 원없이 마셨다... 그리고 뒷풀이는 위스키와 함께 ㅋㅋㅋㅋㅋ

profile
다양한 주제를 심플하고 명확하게 정리해 보려는 연차만 많은 IT 잡부입니다. 사람들과의 소통을 사랑합니다.~^^

0개의 댓글