NGINX 쿡북 - 112가지 레시피로 배우는 고성능 부하분산, 보안, 서버 배포와 관리
데릭 디용기 지음, 노승헌 옮김 / 한빛미디어 / 2021년 6월
평점 :
구판절판


현대 대부분의 애플리케이션은 웹과 모바일에서 동작한다. WWW로 불리는 웹의 태동이래 웹을 지탱하는 근간 요소인, 웹 서버의 역할은 언제나 중요했고, 지금도 중요한 구성 요소로 기능하고 있다. 전통적인 웹 서버의 표본이라고 할 수 있는 Apache(Httpd)는 맏형 역할을 자처하며 아직까지 그 명맥을 꾸준하게 유지해 오고 있지만, 거의 3인자에 가까웠던 Nginx가 IIS를 제치고 Apache를 넘어서며 웹 서버 시장 점유율 1위를 달성한 쾌거는 자못 경이롭기만 하다. 그렇다, Nginx는 더이상 만년 3위가 아니라 명실상부한 웹 서버 세계의 1인자인 셈이다. 

 

특히나 현대 대부분의 인프라가 클라우드 위에서 동작하면서 다양한 트래픽을 적재적소로 라우팅하며 보다 안정적으로 처리해야할 경우가 많이 발생하게 되었다. 이 때 Nginx가 웹 서버의 역할을 넘어서는 Proxy로서의 기능을 톡톡히 해 내며 클라우드 세계, 그것도 컨테이너 환경에서의 쓸모 있는 개체로서 위용을 과시하고 있는 상황이다. Nginx는 끊임 없이 발전하며 진화하고 있고, 보다 민첩해 지고 있다. 오늘은 Nginx를 주제로 한 한빛미디어에서 출판한 Nginx 쿡북이라는 책에 대한 리뷰를 작성해 보려고 한다. 



본 저서는 부제  '112가지 레시피로 배우는 고성능 부하분산, 보안, 서버 배포와 관리'가 의미하듯이 Nginx의 특정 소재에 대해 레시피 형태(문제, 해결 방법, 해설)로 이야기를 풀어 나가고 있다. 



특정 소재를 문제로 규정하고 그에 대한 해결책을 제시하며 논의해 나가는 과정을 통해, 독자는 Nginx의 다양한 기능과 특징에 대한 지식을 얻어 나갈 수 있다. 

 

이 책은 Nginx의 기초에 대해 이야기를 시작하여 고성능 부하분산, 트래픽 관리 등을 다루고 있다. 이후에 캐싱 기능에 대해 서술해 나가고 있는데 사실 Nginx의 캐싱 기능에 대해 크게 신경 써지 않았던 터라 해당 주제가 새롭게 다가 왔고 실전에 충분히 활용할 수 있는 유용한 팁을 얻어갈 수 있었다. IaC(Infrastructue as Code)를 구현하기 위해 Puppet, Chef, Ansible 같은 SCM을 툴을 이용하는 현재의 상황에서 Nginx를 설치하고 구성하는 방법에 대한 파트도 꽤나 흥미로웠다. 


이후 인증, 보안 제어에 대한 파트를 거치며 HTTP/2와 특화된 특징에 대해서도 Nginx가 제공하는 다양한 기능에 대해 학습하게 된다. 

 

스트리밍을 다루는 파트에서는 Nginx의 상용 버전인 Nginx Plus에서 제공하는 여럿 기능과 특징에 대해 배우게 되고 클라우드 환경 배포 챕터에서는 다양한 클라우드 플랫폼을 통해 Nginx 환경을 구축하는 여정을 체험하게 된다. 

 

컨테이너와 마이크로 서비스를 주제로한 챕터에서 Nginx를 활용한 다양한 기능들, 예컨대 API 게이트웨이와 인그레스 컨트롤러 등에 대한 새로운 경험을 맛볼 수 있고, 그 이후의 고가용성 보장에 대한 설정, 고급 활동 모니터링 디버깅과 트러블슈팅 등의 고급 주제를 다루는 내용에 대해 학습할 수 있는 기회를 맛볼 수 있다. 

 

Nginx의 성능을 한껏 향상 시킬 수 있는 성능 튜닝 파트를 통해 성능에 대한 새로운 관점으로 Nginx의 면모를 고찰하게 되며 Nginx Plus에서 제공하는 Nginx Controller를 활용한 다양한 기능을 체험하며 실전 운영 팁을 끝으로 Nginx를 운영하며 활용할 수 있는 유용한 팁을 배우게 된다.

 

120개의 레시피를 통해 Nginx의 기능과 특징을 체험하며 배울 수 있는 소중한 기회를 얻게 되어 무엇보다 좋았고, 국내에 Nginx 서적이 전무한 상황에서 본 서적은 가뭄의 단비와 같은 존재가 아닐 수 없다고 할 수 있겠다. 실제 운영 환경에서 Nginx를 사용하고 있는 엔지니어, 개발자 등에게 더할 나위 없이 좋은 든든한 Nginx 서적이 출간 되어 기쁜 마음을 금할 수가 없다. 


P.S :   
한빛미디어 '나는 리뷰어' 이벤트에 당첨 되어 제공 받은 도서를 바탕으로 작성된 후기입니다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
스파크를 활용한 실시간 처리 - 실시간 데이터 처리를 위한 고수준 스트리밍 API 마스터하기
제러드 마스.프랑수아 가릴로 지음, 김인범 옮김 / 한빛미디어 / 2021년 4월
평점 :
장바구니담기


데이터는 어디에선가 끊임 없이 생성되고 또 수집되고 있으며 가공되어 분석이 되고 있다. 기업은 그 가공된 데이터를 통해 비즈니스 모델을 만들고 수익을 창출한다. 그렇다, 우리는 데이터가 디지털 시대의 '원유'로 불리고 있는 시대에 살고 있다. 

 

도처에서 생성 되는 데이터의 양이 날마다 기하급수적으로 늘어가고 있는, 그야말로 '데이터의 홍수' 속에서 가치를 발굴하기란 그리 쉬운 작업이 아니다. 그래서 데이터에 대한 기술들, 예컨대 빅데이터를 위시하여 데이터 엔지니어링과 관련 된 것들이 고안 되었고, 빅데이터의 기술의 사실상 표준(De Facto)이라고 할 수 있는 하둡 에코 시스템은 진화에 진화를 거듭하며 다양한 컴포넌트들을 흡수하고 계속해서 발전을 해오고 있다.

 

스파크는 하둡 에코 시스템의 수 많은 컴포넌트 중의 하나로서 실시간 데이터 처리, 이른바 스트리밍 처리에 있어서 훌륭한 프레임워크로 자리 잡았고, 다양한 기업과 조직이 채택해서 사용하고 있는 기술로서의 위상을 공고히 해오고 있다. 오늘은 Apache  Spark와 관련 된 도서에 대한 리뷰를 해보려고 한다. 





이 책은 스트림 처리에 대한 소개로 시작해서 스트림 처리 모델의 구조와 핵심에 대해 다루고 스트리밍 아키텍처에 대한 설명으로 이야기를 풀어 나간다. 또한 스트림 처리를 위한 엔진으로서 스파크의 특징에 대해 상세히 언급하고 있으며 분산 처리 모델로서 스파크가 어떻게 구성 되는지 그리고 복원력과 내결함성을 어떤 식으로 보장하는지에 대한 내용을 깊이 있게 제공하고 있다. 


또한 책의 후반부에서는 스파크의 주요한 특징 중 하나인 구조적 스트리밍을 본격적으로 다루고 있는데, 구조적 스트리밍에 대한 디테일한 내용이 심층적으로 언급 되고 있고 이후에 스파크 스트리밍에 대해 세부적인 주요 내용을 깊이 있게 풀어 나간다. 본 도서의 거의 핵심이라 일컬을 수 있는 구조적 스트리밍과 스파크 스트리밍의 다양한 특징을 맛보게 되고 나서 고급 스파크 스트리밍 기술에 대해 일부 다루는 내용을 접할 수 있게 된다. 

이 책은 스파크의 기본에 대해 어느 정도 알고 스파크를 접해 본 경험자들이 구조적 스트리밍과 스파크 스트리밍에 대해 학습할 수 있는 가이드를 제시하고 있기 때문에 초심자들이 책의 내용을 온전히 이해하기는 굉장히 힘들 수 밖에 없다 -.-; 또한 예제 코드가 대부분 스칼라로 작성 되었기 때문에 프로그래밍 언어를 접해 보지 못 한 이들에게는 이해하기 힘든 지점이 될 수도 있겠다. 또한 아쉬운 점은 책의 번역이 많이 매끄럽지 못한 탓일까, 책이 쉽게 읽히지 않았다는 것이다. 그럼에도 불구하고 스파크의 스트림 처리에 대한 기술 서적이 전무한 상황에 이 책은 가뭄에 단비와 같은 서적이 아닐 수가 없겠다. 

 

 

P.S : 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
클라우드 핀옵스 - 비용은 최소화 운영은 최적화
J. R. 스토먼트.마이크 풀러 지음, 오성근 옮김 / 한빛미디어 / 2020년 12월
평점 :
장바구니담기


IT 기술이 겉잡을 수 없을 정도로 빠르게 변화하면서 이에 따른 영향이 개별 기업에게 미치는 속도 역시 무시할 수 없는 수준에 이르고 있는 상황이다. IT 비즈니스를 하는 기업 뿐만 아니라 일반적인 사업을 영위하는 기업에게 있어서도 DT(Digital Transformation)는 더이상 피할 수 없는 숙명이 되어 버린 셈이다.

 

DT의 빠른 확산에 힘입어 기업 인프라 환경을 온프레미스에서 클라우드로 마이그레이션하거나 신규 인프라를 클라우드 환경 위에 구축하는 시대적 흐름은 더이상 낯선 풍경이 아닌 것이 되어 버렸다. TCO(Total Cost Ownership)을 낯추고 ROI(Retrun On Investment)를 높이는 것은 기업의 비즈니즈 전략의 최우선 당면 과제이기 때문에, 보다 민첩하고 효율적으로 고객에게 서비스와 상품을 제공하기 위해 클라우드를 기업 비즈니스의 우선 순위로 두는 것은 어찌 보면 당연한 귀결이라 하지 않을 수 없을 것이다. 

 

하지만 온프레미스(이하 온프렘) 환경을 클라우드로 마이그레이션 하거나 신규 인프라를 클라우드 기반으로 구축했음에도 불구하고 이에 따른 지출은 갈수록 커져만 가고, 투입한 지출 대비 거둬 들이는 수익이 기대 이상 만큼 나오지 않는 상황은 어떻게 설명할 수 있을까? 클라우드를 만병통치약이자 은탄환으로 간주했던 기업들은 클라우드 환상과 미신에 젖어 잔뜩 부푼 기대와 희망을 안고 모든 인프라를 클라우드 위에 얹어 놓았지만 도리어 클라우드가 저주로 다가오는 기이한 현상은 왜 발생하는 것일까? 그리고 클라우드 환경에서 온프렘 환경으로 회귀하는 기업들이 비일비재하게 목도 되는 광경은 무엇으로 풀이할 수 있을까? 

 

온프렘 환경과 클라우드 환경에 투여 되는 비용은 흔히 'Capex(자본적 지출 or 설비투자비용)'와 'Opex(운영비용)'로 대별 된다. 또한 온프렘 환경의 Capex와 클라우드 환경의 Opex는 트레이드오프의 관계이다. 즉 클라우드로 구성 되는 모든 인프라는 운영 되고 있는 지금 이 순간에도 끊임 없이 지출이 발생하는 구조에 포섭 되어 있다. 그렇기 때문에 클라우드를 통한 인프라 환경을 효율적으로 운용하기 위해서는 운영 비용에 투입 되는 지출 구조를 획기적으로 개선하거나 최적화 하기 위한 무수한 노력이 수반 되어야 함은 두말 하면 잔소리.


위와 같은 상황과 마주한 다양한 관계자들에게 좋은 가이드를 제공해 주는 책이 출판 되었다. 이름하여 '클라우드 핀옵스'.






데브옵스를 위시하여 XX옵스라는 신조어가 요근래 다양한 매체에서 심심찮게 발견 되고있는데, 이를테면 데브섹옵스, 데이터옵스, 클라우드옵스, AI옵스 등등. Operation(운영)에 조응되는 옵스라는 접미사와 함께 생성 되는 신조어들은, 접두어에 해당 하는 그 '무엇인가'를 통한 운영을 지향하는 움직임으로 해석하면 그 뜻을 헤아리는데에는 큰 문제는 없다. 결국 핀옵스는 Finance(재정)+Operation의 합성어로서 '재정을 통한 운영을' 의미하게 된다. 이 단어가 갖는 함의는 효율적이고 최적화 된 재정 관리를 통해 인프라(클라우드)를 운영하는 기술이자 문화라고 볼 수 있다. 이 책의 부제(?)인 '비용은 최소화 운영은 최적화' 라는 모토가 핀옵스가 지향하는 핵심이라 할 수 있다. 

 

이 책은 핀옵스가 무엇인가라는 물음에 대한 답을 제공하면서 핀옵스의 핵심 원칙 그리고 핀옵스를 왜 도입하는지에 대한 상황적 맥락에 대한 스토리를 전개해 나가고 있다. 또한 핀옵스를 이끄는 핵심 조직인 핀옵스팀과 이를 둘러싼 주변 환경에 대한 담론을 거침 없이 풀이해 나간다. 

 

총 19챕터 중의 절반은 핀옵스에 대한 개괄적 이해와 핀옵스를 통해 효율적으로 클라우드를 운영하기 위한 거시적 관점에 대해 기술하고 있다면 나머지 절반은 실질적이고 구체적인 클라우드 비용 최적화를 위한 가이드를 풍부하게 제공하고 있다. 예를 들면, 예약 인스턴스, 라이트 사이징, 약정 사용 할인 등 실제 운영 환경에 바로 도입해 소기의 목적을 달성하게 할 수 있는 실천적인 조언들이 상세히 소개 되고 있다는 점이 인상적이다. 

 

클라우드가 현대 IT 인프라의 정답은 아닐 것이다. 그럼에도 불구하 IT 기술의 흐름의 다양한 상황 속에서 발생하고 있는 제반 문제에 대한 하나의 '해답'은 될 수 있을 것이다. 이 해답을 올바르게 활용하고 적용하기 위해서는 '운용의 묘'가 절실히 요구 된다. 그에 대한 정답이 '핀옵스'가 아닐 수 있을 것이다. 하지만 하나의 해답으로서 '핀옵스'가 채택 된다면 클라우드라(구름)에 갇혀 보이지 않는 인프라에 대한 가시성은 충분히 확보 되고 비용에 대한 통제는 더욱 투명해질 것이다. 지금부터 모든 기업이 클라우드를 향한 여정을 핀옵스와 함께하길 기대한다. 

 

 

P.S :   
한빛미디어 '나는 리뷰어' 이벤트에 당첨 되어 제공 받은 도서를 바탕으로 작성된 후기입니다.




댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
개발 7년차, 매니저 1일차 - 개발만 해왔던 내가, 어느 날 갑자기 '팀'을 맡았다!
카미유 푸르니에 지음, 권원상 외 옮김 / 한빛미디어 / 2020년 2월
평점 :
장바구니담기



IT 업계에 종사하고 있는 엔지니어(소프트웨어 엔지니어를 위시한 직군)는 주니어에서 시니어 레벨을 거쳐 언젠가는 매니저 직급에 이르게 된다. 이것은 피할 수 없는 숙명이다. 그런데, 언제라도 제대로 된 매니저 훈련을 받은 적이 있는가? 아니 매니저가 되는 트레이닝을 회사에서 제대로 가르쳐 준적이 있는가? 매니저는 탄생하는 게 아니라 만들어 지는 것인데 과연 그 과정이 순탄하기만 할까? 그렇다면 어떻게 해야 매니저가 될 수 있고 더 좋은 매니저가 될 수 있을 것인가에 대한 물음에 좋은 길잡이 역할을 해 주는 책을 소개할까 한다. 한빛미디어에서 출판 된 '개발 7년차, 매니저 1일차'라는 책이 바로 오늘의 주인공이다.



책 중간 중간에 'CTO에게 묻는다' 라는 코너가 마련 되어 있는데, 원 저자의 생생한 경험이 온전히 녹아 있는 핵심 중의 핵심 가이드라 하지 않을 수 없다. 

 

우선 이 책은 외서를 번역한 서적이지만 번역서 특유의 매끄럽지 못한 구조가 전혀 없고 군더더기 없이 잘 된 번역을 기반으로 구성 되어 있기에 소설책 읽듯이 술술 읽을 수 있는 재미가 쏠쏠하다. 부담 없이 읽을 수 있는 재미와 저자의 경험이 반영 되어 있는 스토리를 따라 읽어 내려 가면 어느새 책 한 권 완독에 이르게 되는 경험을 맛 볼 수 있다. 


각설하고 본 서적은 총 10장으로 구성 되어 있고, 각 장의 대주제를 기반으로 하여 다양한 실무 경험담을 저자가 서술해 나가고 있다. 

 

1장의 IT 관리를 시작으로 하여 매니저의 본질이 무엇인지에 대해 이해할 수 있는 시간을 갖게 된다. 매니저에 요구 되는 자질과 매니로서 갖춰야 할 덕목등에 대해 다시금 생각할 수 있는 소중한 기회를 얻을 수 있다고 할까?

 

2장의 멘토링은 매니저로서 팀원들에게 어떻게 멘토링을 해야할지에 대한 깨알같은 꿀팁을 제공하고 멘토링의 정수를 맛보게 된다. 이 장을 통해 훌륭한 매니저는 반드시 훌륭한 멘토여야 한다는 걸 깨닫게 되었다.

 

이윽고 각 장을 거쳐 9장에 이르러서는 문화가 언급 되는데, 결국 조직의 힘은 좋은 문화에서 비롯한다는 걸 새삼 깨닫게 된다. 좋은 문화에서 좋은 조직이 구성 될 수 있고 좋은 매니저와 좋은 팀원이 만들어 지는 것은 너무나 당연한 사실 아닐까?

 

10장의 결론 파트에서 결국엔 관리의 주체인 '나'에 대해 미시적인 관점에서 바라 볼 수 있는 시간을 갖게 된다. 나라는 개체가 온전히 관리 되지 않고서 누구를 관리할 수 있을까? 나와의 내밀한 대화를 통해 다시 한번 나 자신을 진정으로 관리할 수 있을 때, 팀원들을 관리하고 조직을 관리할 수 있는 훌륭한 매니저로 거듭날 수 있는 변곡점이 되지 않을까 싶다. 

 

 

P.S :   
한빛미디어 '나는 리뷰어' 이벤트에 당첨 되어 제공 받은 도서를 바탕으로 작성된 후기입니다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
분산원장 기술 - 수학 증명과 의사코드로 배우는 블록체인 구조와 알고리즘
로저 워튼호퍼 지음, 박지훈 외 옮김 / 한빛미디어 / 2020년 9월
평점 :
장바구니담기


비트코인 하면 가장 먼저 떠오르는 게 무엇일까? 가상화폐? 암호화폐? 투기의 대상? 등등, 여러가지 이미지가 떠오를 것이다. 비트코인은 블록체인을 기반으로 한 암호화폐로서 대중에게 널리 알려져 있고 여전히 암호화폐 생태계에서 막강한 영향력을 행사하고 있는 코인이다. 비트코인을 위시한 여러 암호화폐들은 블록체이라는 기술을 등에 업고 여러 해 동안 발전에 발전을 거듭해 오고 있으며 진화하고 있는 형국이다. 그런데 여러 암호화폐들의 근간이 되는 '블록체인'이란 기술이 바로 '분산원장기술',  일명 DLT의 하나라는 사실을 알고 있는 이들이 몇이나 될까? 이렇듯 분산원장기술이란 용어는 대중에게 익숙하지도 않을뿐더러, 심지어 IT에 종사하고 있는 이들에게도 낯설기만 한 개념으로 다가온다. 비트코인과 같은 암호화폐가 대중에게 널리 각인 되면서 자연스레 블록체인의 위상은 갈수록 높아지고 있었지만 분산원장기술은 블록체인의 명성과 다르게 조용히 제 자리를 굳건히 유지하고 있었다. 한편 '수학 증명과 의사코드로 배우는 블록체인 구조와 알고리즘' 이라는 다소 길고 지루할 것 같은 부제를 달고 이 세상에 등장한 '분산원장기술'이란 책을, 한빛미디어에서 발간하게 되었다.

 


블록체인이란 단어가 부제에 등장했듯이, 책 겉 표지 배경에는 굵고 거대한 '체인'이 자연스레 나타나 있다.

 

이 책은 분산시스템의 정의를 먼저 살피면서 책의 구성 상태에 대한 개괄적인 설명을 언급한다. 2장부터 장애 허용과 팩소 알고리즘에 대한 내용을 다루면서 이에 따른 알고리즘과 수도코드(Pseudo Code)가 출현하기 시작한다. 책의 전반적인 구성이 어떠한 개념에 대한 부연설명과 알고리즘을 결부하여 서술해 나가는 방식으로 되어 있는데, 전형적인 스토리텔링 방식이 아니라서 언뜻 보기엔 딱딱하게 느껴질 수도 있겠다. 그럼에도 불구하고 이런 구성의 장점은 하나의 챕터가 다른 챕터와 연결 되는 구성이 아니라 독립적으로 위치하고 있기 때문에 마음에 드는 부분을 취사 선택해서 읽어 나가도 무리가 없다는데 있을 것이다.

 

 


 




계속해서 이 서적은 합의, 비잔틴 동의, 암호학 기초, 인증된 동의, 쿼럼 시스템 등을 다루면서 비트코인과 분산원장기술의 내밀한 속성들 들춰내고 분산 스토리지에 대한 내용을 방점으로 찍고 마무리 된다. 이 책의 전반적인 내용이 쉽지 않은 개별 주제를 알고리즘과 수도 코드를 통해 풀이 되고 있기 때문에 독자 역시 어느 정도 IT에 대한 기반 지식이 있어야 읽어 나가는데 어려움이 없을 것이다. 쉽지 않은 내용을 쉽게 풀어 나가는 책이 아니기 때문에, 기초 체력 없이 이 책에 접근했다가 생채기를 입을 게 분명하지만, 적어도 분산원장기술이라는 것이 어떻게 쓰이고 있으며 이러한 기술을 지탱하는 알고리즘과 프로토콜들에는 무엇이 있는지에 대한 기본적인 감을 잡을 수 있다는 데에 큰 도움이 될 수 있는 책이라고 생각한다. 이 책을 필두로 하여 앞으로 분산원장기술을 다루는 서적들이 더욱 많이 출간 되길 바라마지 않는다.

 

P.S :   
한빛미디어 '나는 리뷰어' 이벤트에 당첨 되어 제공 받은 도서를 바탕으로 작성된 후기입니다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo