# Advent of SysAdmin 2025

> Clean Markdown view of GeekNews topic #24762. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=24762](https://news.hada.io/topic?id=24762)
- GeekNews Markdown: [https://news.hada.io/topic/24762.md](https://news.hada.io/topic/24762.md)
- Type: GN+
- Author: [xguru](https://news.hada.io/@xguru)
- Published: 2025-12-02T10:05:52+09:00
- Updated: 2025-12-02T10:05:52+09:00
- Original source: [sadservers.com](https://sadservers.com/advent)
- Points: 12
- Comments: 2

## Summary

올해도 돌아온 **Advent of SysAdmin 2025**는 12일간 진행되는 **Linux·DevOps 실습 챌린지 시리즈**로, 실제 서버 환경에서의 **트러블슈팅 감각과 운영 역량**을 날카롭게 다듬을 수 있는 이벤트입니다. 각 날짜마다 새로운 **시나리오 기반 문제**가 공개되어, 단순한 퀴즈가 아닌 실무형 문제 해결 경험을 제공합니다. **무료 계정 등록**으로 점수와 순위를 관리할 수 있고, 회원가입 없이도 한 가지 시나리오를 바로 체험할 수 있습니다. DevOps 인터뷰 대비나 시스템 운영 감각을 유지하고 싶은 엔지니어라면, 이 12일간의 퍼즐이 꽤 자극적인 연말 루틴이 될 듯합니다.

## Topic Body

- **시스템 관리자를 위한 어드벤트 캘린더 2025**는 12월 1일부터 12일까지 진행되는 **12일간의 Linux 및 DevOps 챌린지 시리즈**  
  - 각 날짜별로 매일 서로 다른 난이도의 새로운 **시나리오 과제**가 공개됨  
- 참가자는 **무료 계정 등록**을 통해 자신의 진행 상황을 추적 가능(계정이 있어야 점수 및 순위 관리가 가능함)  
- **회원가입 없이도 체험 가능한 시나리오**가 하나 제공되어, 누구나 바로 실행 가능  
- 실무형 DevOps 환경에서의 **문제 해결 및 시스템 관리 역량 강화**에 초점을 둠  
  
### 예시 시나리오: “Auderghem: containers miscommunication”  
- **시나리오명:** “Auderghem: containers miscommunication”  
  - **난이도:** Easy  
  - **유형:** Fix  
  - **접근 방식:** 이메일 인증 필요  
  - **시간 제한:** 30분  
- **문제 설명:**  
  - nginx Docker 컨테이너가 포트 80에서 트래픽을 수신하여 두 개의 다른 컨테이너(statichtml1, statichtml2)로 리디렉션해야 하지만 작동하지 않음  
  - 참가자는 이 문제를 수정해야 함  
  - 모든 컨테이너는 **재시작은 가능하지만 중지나 삭제는 금지**됨  
- **테스트 조건:**  
  - `curl http://localhost` → “Welcome to nginx”  
  - `curl http://localhost/1` → “HelloWorld;1”  
  - `curl http://localhost/2` → “HelloWorld;2”  
  - “Check My Solution” 버튼은 `/home/admin/agent/check.sh` 스크립트를 실행하여 결과를 검증함  
  
### SadServers 플랫폼 정보  
- 제공사인 **SadServers**는 Linux 및 DevOps 환경에서의 **문제 해결 인터뷰 및 실습 시나리오**를 제공하는 플랫폼

## Comments



### Comment 47105

- Author: roxie
- Created: 2025-12-03T10:05:00+09:00
- Points: 1

sad server 이야기였군요! 정말 좋은 플랫폼입니다.

### Comment 47061

- Author: neo
- Created: 2025-12-02T10:05:53+09:00
- Points: 1

###### [Hacker News 의견](https://news.ycombinator.com/item?id=46102347)   
- 직장에서 겪는 실제 **12가지 Sysadmin/DevOps 도전 과제**를 정리했음    
  1\.  사용자가 **root로 로그인하지 않게 하기**  
  2\.  모든 사용자가 **모든 서버에 하나의 계정·비밀번호를 공유하는 관행을 끝내게 만들기**  
  3\.  누군가의 애플리케이션 **의존성을 2010년 이후 버전으로 업데이트하게 만들기**  
  4\.  설정 파일을 **노트북에서 서버로 scp로 던져 넣는 대신**, 구성 관리 툴을 쓰게 만들기  
  5\.  구성 관리 대신 **설정이 들어간 불변 이미지(immutable image)**를 만들어 쓰게 만들기  
  6\.  Jenkins를 버리고 **GitHub Actions로 갈아타게 만들기**  
  7\.  S3에 **프로덕션 비밀 키가 한 파일로 몰려 있는 상황**을 끝내고, 비밀 관리 시스템을 쓰게 만들기  
  8\.  “**수년 동안 아무 문제 없었는데 왜 새 서버가 필요하냐**”는 경영진과 사용자를 설득해,  
      사실 모든 장비가 파워·디스크·NIC·RAM이 다 망가지기 직전이며 부품도 없다며 **신규 서버 구매를 승인받기**  
  9\.  무려 **8년 동안 안 바뀐 AWS 액세스 키를 강제로 회전시키기 위한 권한**을 경영진에게 얻어내기  
  10\. 애플리케이션이 **AWS 루트 계정의 액세스 키를 사용하는 미친 상황**을 멈추게 만들기  
  11\. 사용자가 애플리케이션을 **컨테이너로 빌드하도록 만들기**  
  12\. 사용자가 **당신 도움 없이 스스로 배포하도록 만들기**  
  각 과제를 완료할 때마다 스카치 한 잔을 마시면 됨. 해피 홀리데이!  
  - 6번 GitHub Actions 관련해서 말하자면, 인증된 worker가 5일 정도 비활성화되면 풀에서 사라지는 문제가 있었음  
    복잡한 PR 워크플로우를 구성했는데, 며칠간 PR이 없으면 갑자기 깨져버림  
    GitHub에서 이에 대한 **안내나 대안**도 없었음. CI로는 다른 솔루션이 훨씬 낫다고 생각함  
  - 이런 문제들의 첫 단계는, 왜 중요한지를 **구체적이고 문서화된 방식**으로 설명하는 것임  
    대부분은 명확하지만, 모두에게 자명한 건 아님  
  - Jenkins에서 GitHub Actions로 바꾸라니… 정말 왜 그래야 하는지 모르겠음  
  - “Sysadmin/DevOps는 이제 동의어다”라는 말에 농담으로 **당국에 신고했다**고 함  
  - 5번과 6번은 취향과 트레이드오프의 문제지만, 나머지는 전적으로 공감함  
  
- 우리 회사는 DevOps/SRE 후보자 평가에 **Sad Servers**를 사용하고 있음  
  인터뷰 중에는 약간 긴장된다는 피드백이 있지만, 끝나고 나면 다들 좋은 경험이었다고 함  
  Zoom 채팅으로 링크를 보내고 화면 공유만 하면 바로 작동해서 **인터뷰 효율**이 매우 높음  
  - 이 얘기를 들으니 반갑고, 나도 오늘부터 Sad Servers의 **데일리 챌린지**를 시작하려 함  
    홈랩과 소규모 회사에서 tech lead로 일한 경험은 있지만, 대규모 환경에서는 아직임  
    현재는 **지식 공백 메우기**와 자격증 준비에 집중 중임  
  
- 우울할 때 세상에 할 일이 없으면, Sad Server 문제를 **해킹하듯 푸는 게 재미있을 것 같음**  
  
- 터미널에서 단어를 지우려고 Ctrl+w를 눌렀는데, 사실 브라우저 창이라 창이 닫혀버리는 상황을 상상해보라… 슬픔 그 자체임  
  - 예전에 [gotty](https://github.com/yudai/gotty)를 이용해 브라우저에서 터미널을 띄웠는데, 팀 전체가 Ctrl+w를 Ctrl+`로 리매핑했음  
    1년 반 동안 이 환경에서 개발했더니, 지금도 Ctrl+w를 누를 때마다 **진짜 터미널이 닫힐까 두려움**  
  - 그래서 macOS의 **Command 키 분리 설계**가 얼마나 고마운지 새삼 느낌  
  - 그래도 Ctrl+Shift+T로 최근에 닫은 탭을 다시 열 수 있음  
  - (제작자) 미안함. “Open the Server Terminal in a New Window” 버튼을 다시 클릭하면 됨  
  - 그 마음 이해함. 나도 KVM 쓸 때 종종 당함  
  
- 요즘은 이걸 **SRE**라고 부르는 것 같음  
  괜히 이름만 바꿔서 **버즈워드** 만드는 게 싫음  
  - 내가 좋아하는 정의는 “운영을 **소프트웨어 문제로 다루는 것**이 SRE다”였음  
  - 나도 버즈워드는 싫지만, SRE는 확실히 다른 역할임  
  - SRE는 플랫폼 위에서 애플리케이션이 계속 돌아가게 하는 역할임  
    메트릭 수집, 배포 자동화 등 다양한 도구를 다룸  
    작은 회사에서는 Sysadmin이 SRE 역할을 겸하지만, 규모가 커지면 명확히 분리됨  
  
- 진행 상황이 저장되지 않는 것 같음  
  - (제작자) 대시보드를 확인해보고, 그래도 안 되면 이메일이나 웹사이트 폼으로 연락해달라고 함  
  
- **Sad Servers를 정말 좋아함**, Windows 버전이 나오길 기다리고 있음  
  - (제작자) 고맙고, 언젠가 Windows 버전도 고려 중이라고 함  
  
- 이런 플랫폼이 **k8s나 Docker 같은 컨테이너 생태계**에도 있으면 좋겠다고 생각함  
  - (SadServers 제작자) 이미 k8s 기반 시나리오가 있음  
    단일 VM에서 실행되는 버전도 있고, **PoC용 k8s 클러스터**에서 pod 단위로 돌리는 실험도 진행 중임  
    앞으로 podman 시나리오도 추가할 예정임  
  
- 스포일러는 피하지만, 문제를 해결했는데 **체크 스크립트가 통과하지 않음**  
  curl은 잘 작동했지만, 스크립트가 특정 설정 방식을 강제했음  
  이런 건 CTF처럼 결과만 확인하는 방식이 더 낫다고 생각함  
  - (제작자) 피드백 고맙고, 이제는 **목표만 검사**하도록 새 이미지를 배포했음  
    완벽한 체크는 어렵지만, **false negative 최소화**를 위해 계속 개선 중임  
  
- (삭제된 댓글에 대한 대화)  
  - Advent of Code도 계정이 필요하다는 언급이 있었음  
  - (제작자) 플랫폼은 홈 → “give me a server” 두 번 클릭이면 바로 VM을 제공함  
    등록 없이 VM을 주는 SaaS는 거의 없다고 생각함  
    피드백 고맙고, `/advent` 페이지에 **명확한 버튼**을 추가했다고 함  
  - “그럼 어떻게 작동하길 바라는 거냐, 진짜 sysadmin 맞냐?”라는 농담 섞인 반응도 있었음
