티스토리 뷰

데브옵스를 위한 교과서적인 책을 소개한다. 이 책은 누군가에게는 굉장히 수준 낮은 책일 수도 있고 또 누군가에게는 굉장히 유익한 책일 수 있다. 그래서 교과서라는 표현을 사용해봤다. 이전에 DevOps와 SE를 위한 리눅스 커널 이야기에 대한 리뷰를 작성했었는데 그 책이 Dev 쪽에 조금 더 무게를 둔 책이라면 이번 DevOps TroubleshootingOps 쪽에 무게가 실린다.


책의 내용은 서버를 운영하면서 겪을 수 있는 다양한 문제를 소개하고 이에대한 대처방안이나 트래킹 하는 과정을 이야기한다. 책의 큰 목차를 살펴보면 다음과 같다.

  • 01장 문제 해결 우수사례
    02장 왜 서버가 이렇게 느리지? CPU, RAM 그리고 디스크 I/O의 자원 고갈
    03장 왜 시스템이 부팅되지 않을까? 부팅 문제 해결하기
    04장 왜 디스크에 쓸 수 없는가? 용량이 가득 찼거나 오류가 생긴 디스크 문제 해결하기
    05장 서버가 다운됐는가? 네트워크 문제 원인 추적하기
    06장 왜 호스트 이름이 해석되지 않을까? DNS 서버 문제 해결하기
    07장 왜 이메일이 전송되지 않을까? 이메일 문제 추적하기
    08장 웹 사이트가 다운됐는가? 웹 서버 문제 추적하기
    09장 왜 데이터베이스가 느린가? 데이터베이스 문제 추적하기
    10장 그건 하드웨어 고장이야! 일반적인 하드웨어 문제 진단하기

목차를 보면 알겠지만 서버 엔지니어로 지내다보면 대부분 ( 경험을 통해 ) 알게되는 배경 지식에 포함되는 것들이다. 위 주제를 처음 접하는 사람들에게는 다소 폭 넓은 범위가 될 수도 있지만 "적어도" 이정도는 알아야 하는 부분이기도 하니 필독을 권한다. 물론 잘 알고 있는 사람도 정리하는 시간을 갖을 수 있다. 아래는 굉장히 공감가는 문구를 캡쳐해봤다. "재부팅" 이라는 단어를 "Process 재시작" 으로 적용 시켜봐도 같은 내용이다.



하지만 이 책 한권으로는 많이 부족하다. 좋은 엔지니어가 되기 위해서는 이 책에서 다루는 여러가지 키워드를 파악해서 추가적인 도서를 많이 접하고 경험을 통해 지식을 쌓아야 할 필요가 있겠다. 이 책을 고수가 봤을 때는 "그래 그랬었지" 하며 공감되는 부분도 무척 많고 예상한대로 문제해결 과정이 흘러가는 것을 보며 재밌게 읽을 수 있겠다. 예를들면 아래와 내용을 발췌할 수 있겠다.

내가 시스템 관리자로서 수년 동안 배운 한 가지는 바로 문제가 생겼을 때 사람들은 자신이 가장 잘 이해하지 못하는 기술을 탓한다는 것이다. 내가 경험한 바로는 DNS가 네트워크 문제에 대한 희생양이었다. 내가 DNS 서버를 관리했던 동안 DNS 서버는 항상 안정적이었기 때문에 어쩌다 그렇게 됐는지는 전혀 모른다. 그러나 네트워크 문제가 발생한 순간 사람들은 칸막이 위로 얼굴을 내밀고 "DNS가 다운됐어요?"라고 물어볼 것이다.


난이도를 떠나서 재밌게 많은 이슈를 다루고 있기 때문에 이 책은 데브옵스의 필독서가 되지 않을까? :-) 


댓글
댓글쓰기 폼