메뉴 바로가기 검색 및 카테고리 바로가기

한빛미디어

독자리뷰

네트워크 엔지니어의 교과서

8delp***

|

2024-08-25

네트워크 인프라 자동화

네트워크 관리의 새로운 표준, 자동화로 앞서간다! 네트워크 자동화의 기초부터 실전까지 다루는 완벽 가이드

  • 저자 : 맷 오스왈트 , 제이슨 에델만 , 크리스티안 아델 , 스콧 S. 로우
  • 번역 : 이주호
  • 출간 : 2024-08-10

 

네트워크 프로그래밍과 자동화에 대해 다룬 신간이 나왔다. 우선 이 책을 처음 받고 나서 느꼈던 생각은 '정말 방대하다'였다. 분량이 우선 1000페이지 가까이 된다. 네트워크 분야야 제대로 다루려고 하면 분량은 한도 끝도 없이 늘어날 수 있겠지만 학습자로 하여금 어쩌면 압도되도록 할 수있는 분량이기에 궁금했다. 과연 어떤 내용을 담고 있기에 이렇게 두껍고 분량이 많은 것일까? 책을 리뷰하면서 그 의문이 풀렸다. 여러 관점이 있을 수 있겠지만 내 의견은 이렇다. 네트워크 분야의 엔지니어나 관련 분야 종사자에 필요한 모든 것을 담았다라는 것이다. 그래서 저자도 밝히고 있지만 모두 순서대로 읽을 필요는 없다고 한다. 다만 1~3 장은 뒤에 나올 내용들의 기본 지식을 다루고 있는 것이므로 그 부분은 먼저 읽도록 권고하고 있다. 사실 분량이 넓고 방대하기에 리뷰도 어떤 방향으로 해야 할지 고민했다. 그냥 내가 알고 있고 느낀 점 위주로 서술하려고 한다.

 

파이썬 부분을 다루는 부분을 보면 이런 목차가 있다. '네트워크 엔지니어가 코드까지 배워야 하나'라는 것이다. 당연히 네트워크 엔지니어도 프로그래밍이 일상적인 업무라고 생각했는데 내가 생각했던 네트워크 엔지니어의 정의와 실제 네트워크 엔지니어는 많이 달랐던 것 같다. 그래서 이 책의 특징은 중점적으로 다루는 언어인 파이썬과 Go를 아예 각각 챕터 전체를 차지하여 할애했다. 파이썬과 Go의 기본적인 프로그래밍 개념과 사용법을 다뤘다는 것이다. 그래서 분량에 대한 의문을 해소할 수 있었는데 네트워크 인프라를 자동화하기 위해서는 필수적으로 프로그래밍이 필요하다. 그러나 네트워크 엔지니어 중 소프트웨어보다 하드웨어에 가까운 부분을 다루는 엔지니어들은 프로그래밍에 그렇게 익숙하지는 않을 것 같다는 생각이 들었다. 하지만 그들도 학부시절에는 프로그래밍을 분명 배웠었을 것이기에 분량을 적절히 조절하여 이 책에 담은 것 같다.

 

그다음 특징적인 부분으로는 리눅스와 깃도 다루고 있다는 점이다. 네트워크의 설정은 아무래도 리눅스에서 많이 처리를 할 것이기 때문에 이부분은 필수적인 것으로 보인다. 그래서 리눅스 부분을 살펴보면 네트워크 인터페이스를 조작하는 부분이 많이 나와있다. 네트워크 장비들이 즐비한 서버실에서 리눅스를 피해갈 수 있는 엔지니어는 거의 없을 것이라 본다. 그리고 깃도 비중있게 다루었는데 네트워크 설정이 담긴 스크립트나 파일들을 버전별로 다루기 위해서 아무래도 필수적이라 생각했던 것 같다. 예전 SVN 같은 것들보다 깃이 편리한 만큼 도움이 많이 될 것 같다.

 

가장 독특하다고 생각했던 것은 파이썬과 Go의 템플릿 언어를 다루었던 것이다. 특히 파이썬에서 익숙한 'Jinja' 또한 비중있게 다루었다. 일반적으로 Jinja는 웹 프로그래밍을 할때 UI 부분, 그러니까 프런트엔드 쪽에 가까운 부분을 파이썬 언어로도 처리할 수 있도록 하는 템플릿 언어이다. 그래서 Django에서는 비슷한 자체 템플릿 언어는 있지만 아무래도 Django 외에 Flask, FastAPI 등에서는 Jinja를 가장 많이 사용한다. 내가 놀랐던 것은 Jinja를 이런 곳에서도 사용할 수 있다는 것이었다. 그러니까 네트워크 엔지니어들은 수많은 네트워크 장비를 다루는 경우가 많은데 설정이나 상태를 확인하기 위해서는 Jinja와 같이 정적 콘텐츠를 다루는 템플릿 언어가 네트워크 장비의 수와 관련 없이 많은 설정들을 확인할 수 있게 표시해준다는 것이다. 개인적으로는 Jinja의 또다른 쓰임새를 알 수 있어서 유익했다.

 

이외에도 자동화 도구나 지속적 통합 부분도 다루고 있다. 내용이 정말 많기에 네트워크 엔지니어나 개발자는 필요한 부분만 발췌하여 읽기에 최적화된 책인 것 같다. 예를 들어 파이썬으로 어떤 작업을 하려고 하는데 파이썬 언어의 사용법을 알아야 하는 경우 파이썬 부분만 찾아서 핵심만 읽는 것이다. 그리고 그 뒤에 나오는 것들이 파이썬 언어로 되어있는 것들이 많기에 코드를 해석하기 어렵다면 다시 파이썬 부분으로 가서 쓰임새를 알아보는 것이다.

 

물론 또 네트워크의 일반적인 지식, 그러니까 네트워크 장비 제조사(시스코, 아리스타, 주니퍼 등)들의 API를 다루는 부분도 당연히 나와있다. 내가 직접적으로 네트워크를 다루는 업무는 하지 않았지만 다른 동료가 네트워크 보안 취약점을 다루는 일이 있었기에 곁에서 지켜볼 수 있었는데 그 동료가 하는 일을 하기에 큰 도움이 될 수 있는 그런 책인 것 같다. 그 회사에서는 거의 모든 걸 Perl이나 C로 처리했는데 네트워크에서는 C로 주로 되어있던 것을 그 동료가 파이썬 기반으로 거의 다 바꿨었다. 그때 이 책이 있었더라면 그 친구에게도 큰 도움이 될 수 있었을 것이라 생각한다.



닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?