전체 글
-
Kubernetes가 있는데 왜 Slurm을 검토하게 되는가Infrastructure 2026. 8. 23. 21:46
밤에는 CI가 쓰고, 낮에는 사람이 쓰는 accelerator 서버 풀이 있다. 비싼 장비인 만큼 한쪽이 쓰지 않는 시간에는 다른 쪽이 쓰게 만드는 게 자연스럽다. 실제 운영도 그렇게 하고 있었다. 저녁이 되면 regression pipeline이 서버를 예약하고, 테스트가 끝나면 예약을 풀어 사람이 다시 쓴다.그런데 사용 기록을 펼쳐보니 생각보다 빈 시간이 많았다. 며칠 동안 모인 호스트별 실행 기록 48건을 기준으로 보면 40% 이상이 실제 작업을 끝낸 뒤에도 4시간 넘게 예약 상태로 남아 있었다. 표본이 크지는 않았지만, 먼저 끝난 서버가 마지막 서버를 기다리는 패턴은 반복해서 보였다. 극단적인 경우에는 테스트를 시작하지도 못한 서버가 다음 날까지 잡혀 있었다.처음 떠오른 건 Slurm이었다. 남는..
-
Netcastle을 읽고: 하드웨어 테스트 장비를 공유한다는 것Infrastructure 2026. 8. 21. 22:50
하드웨어를 쓰는 CI를 들여다보면, 테스트 코드보다 장비를 빌리고 돌려놓는 일이 더 까다로울 때가 있다.장비가 모자라서 기다리고, 앞선 테스트가 남긴 상태 때문에 다음 테스트가 실패한다. 막상 실패해도 코드가 잘못된 건지 장비가 이상한 건지 바로 알기 어렵다. 워크플로우만 잘 정리한다고 해결되는 문제는 아니었다.비슷한 문제를 다른 곳에서는 어떻게 다루는지 찾아보다가 NSDI 2024에 발표된 Netcastle: Network Infrastructure Testing At Scale을 읽었다.Netcastle은 Meta가 여러 팀의 네트워크 테스트 장비를 한곳에 모아 운영한 시스템이다. 약 1천 대의 장비로 하루 50만 건이 넘는 테스트를 처리한다. 논문에는 5년 동안 시스템을 만들고 운영하며 겪은 일이 ..
-
pyenv + poetry 조합으로 다양한 python 버전 개발환경 구성Engineering Notes 2022. 6. 26. 14:24
오랜만에 글을 쓰게 됐네요. 다른 언어도 마찬가지이겠지만 파이썬으로 개발을 할 때 두 가지 경우가 있습니다. 1. 처음부터 프로젝트를 시작하거나 2. 이미 진행되고 있는 프로젝트에 참여하거나 첫 번째 경우라면 poetry init 명령어를 통해 현재 설치돼있는 파이썬 버전으로 시작해도 되지만 기존 프로젝트에 참여하게 된다면 해당 프로젝트가 어떤 파이썬 버전으로 개발됐는지에 따라 나의 개발환경도 맞춰주어야 합니다. 버전에 따라 https://python.org 에서 맞는 버전을 다운로드하여 설치해도 되지만 엄청 귀찮은 일이 될 것입니다. 당장 여러분의 터미널 화면에서 python 또는 python3라고 쳐보세요. 설치된 환경에 맞는 파이썬 버전이 실행될 것입니다. 간단하게 원하는 파이썬 버전을 설치하고 실..
-
NFT의미와 가치에 관한 고찰Investment & Life 2022. 1. 20. 22:15
NFT란 무엇인가? NFT는 Non-fungible token의 줄임말로 한글로 해석하면 대체 불가 토큰입니다. 처음에는 대체 불가능하다는 말이 이해 안 됐습니다. 아래 그림을 통해 쉽게 이해해보도록 하겠습니다. 자산의 종류를 묘사한 도표인데 실제로 보이고 만질 수 있으면서 대체 가능한 자산은 금, 지폐 등입니다. 반대로 대체 불가능한 자산은 자동차, 그림, 집 등입니다. 감이 오셨는지 모르겠네요. 내가 갖고 있는 1,000원권 지폐는 다른 사람이 갖고 있는 1,000원짜리 지폐와 교환할 수 있습니다. 누구도 손해보지 않죠. 하지만 모나리자 그림은 제가 초등학생 때 일기장에 그린 그림과 바꿀 수 없습니다. 저의 그림을 자산이라고 하기 모호하긴 하지만 같은 그림이어도 특성이 다르고 가치가 다르기 때문입니다..
-
비트코인 원리와 블록체인 - 비트코인은 어떻게 거래되는가?Investment & Life 2021. 12. 3. 00:17
탈중앙화(decentralized), 암호화폐(cryptocurrency) 같은 단어가 항상 비트코인에 따라붙는데 이해가 잘 안 된다. 일반 코인 투자하는 사람들은 업비트나 빗썸 같은 곳에서 현금을 넣고 시시각각 변하는 가격에 따라 원하는 수량을 사고팔고 하는 게 전부다. 지금이 최저점이다 생각하고 샀다 비쌀 때 팔면 그만이지 비트코인이 뭐고 블록체인이 뭔지 알 필요가 있을까 싶기도 하다. 하지만 근본적으로 IT 피가 흐르는지 어떻게 비트코인이 생성되고 P2P(peer-to-peer) 거래가 가능한지 너무 궁금해서 직접 알아보았다. 오늘의 질문은 비트코인은 어떻게 중앙 서버(거래를 증명해줄 신뢰할만한 제삼자) 없이 신뢰 기반의 거래를 할 수 있는가? 이 질문에 대한 답변을 이해하기 위해서는 몇 가지 개념..
-
파이썬으로 웹 크롤링 쉽게하기Software Engineering 2021. 11. 2. 23:41
말은 쉽게 하기라고 했지만 쉽지 않을 수 있습니다. 오늘 크롤링을 도전해볼 페이지는 네이버 랭킹뉴스입니다. 언론사별로 조회수가 많은 기사 순위를 보여줍니다. 이것을 크롤링해서 이렇게 저렇게 지지고 볶아보면 어떤 인사이트를 얻을 수 있지 않을까요? 아마도 현재 가장 언급이 많이 되는 이슈와 사람들의 관심을 알 수 있겠죠. 일단 크롤링으로 랭킹뉴스를 다 수집해보고 분석은 이후에 해보도록 합니다. 크롤링 환경 구성 우선 크롤링을 하기 위해 적절한 환경이 구성되어야 합니다. Python이 설치되어있어야 하는 것은 당연하고 여기에서 사용할 라이브러리는 다음과 같습니다. Requests Beautiful Soup pip install 로 설치하거나 poetry로 설치하면 됩니다. poetry 사용법은 다음 글을 참..
-
Apache Airflow, ETL Workflow 개념Infrastructure 2021. 9. 8. 23:43
ETL Workflow 개념 ETL(Extract, Transform, Load)에 관해 들어보신 적 있나요? 쉽게 큰 조직에서 데이터를 정제하는데 쓰는 방법을 말합니다. 조직이 크다는 의미는 다시 말해 데이터의 소스가 한군데가 아니라는 뜻입니다. ETL은 여러 곳에 퍼져있는 정제되지 않은 데이터를 추출(Extract)하고 용도에 맞게 변형(Transform)하고 그렇게 정제된 데이터를 한곳에 로드(Load)하는 프로세스를 의미합니다. Apache Airflow Apache Airflow는 위에서 설명한 ETL 워크플로우를 편리하게 해주는 도구이며 파이썬으로 작성됐습니다. 공식 홈페이지 설명에 따르면 "에어플로우는 워크플로우를 프로그래밍적으로 작성하고 스케줄링하고 모니터링하는 플랫폼입니다." 라고 소개합..
-
[미국기업분석] Microsoft (MSFT) 마이크로소프트Investment & Life 2021. 9. 3. 22:52
빌 게이츠가 어떻게 노래 부르는지 아시는 분? 정답은 아래 더보기를 누르세요. 더보기 마이크로 소프트하게 😖 먼저 CEO 사티아 나델리(Satya Nadella) 이야기부터 해보겠습니다. 빌 게이츠의 MS를 현재 MS로 만든 분이거든요. 아마 대한민국에서 컴퓨터를 사용하시는 분이라면 이 기업을 모르는 분은 없겠죠? 빌 게이츠가 마이크로소프트를 창업했다는 사실은 많이 알고 계실 겁니다. 이후 스티브 발머가 CEO였다가 현재는 사티아 나델라가 2014년부터 마이크로소프트의 CEO를 맡고 있습니다. 사티아 나델라가 시대 이전에는 마이크로소프트는 내리막길을 걷고 있었죠. 2010년도부터 애플의 아이폰으로 인해 모바일 시장이 불타오르기 시작했습니다. 그러나 Windows로 퍼스널 컴퓨터 시장을 장악했던 마이크로소..