자바 마이크로서비스를 활용한 SRE - 기업에서 신뢰할 수 있는 마이크로서비스를 위한 패턴
조너선 슈나이더 지음, 정병열 옮김 / 한빛미디어 / 2022년 3월
평점 :
장바구니담기


SRE의 본원지는 구글이지만, 넷플릭스에서 그들의 독창적인 조직 문화와 추구하는 지향점을 녹여낸 독특한 SRE 활용법을 다룬 도서가 세상에 빛을 보게 되었다. '자바 마이크로서비스를 활용한 SRE'라는 책이 바로 오늘의 주인공이다. 넷플릭스는 AWS로 모든 인프라를 마이그레이션 하고 나서 혹독한 대가를 치르는 과정을 거쳤다. 그것도 클라우드 플랫폼에 인프라를 그냥 이전한 것이 아니라 MSA 구조로 근본적인 변화를 가하고 쇄신을 꾀하는 절차가 포함되었다. 그러나, 클라우드 환경에 모든 자원이 이관되었다고 해서 예상한대로 애플리케이션이 동작한다고 생각하면 큰 오산이다. 예기치 못한 숱한 변수와 난관이 도처에 도사리고 있으니, 클라우드 세계에 존재하는 애플리케이션은 잘 운영되면 천국을 맞이하지만 그렇지 못한 경우에는 지옥을 맛보게 되는 극한 상황에 내몰릴 수 밖에 없는 숙명을 갖게된다. 





이러한 현실 속에서 넷플릭스는 애플리케이션의 강건함을 보장하는 다양한 방법을 모색했고, 이른바 '카오스 엔지니어링' 기법을 활용하여 인프라의 가용성과 신뢰성을 보증하기 위한 패러다임의 변화를 주도했다. 거기에 더하여 넷플릭스 조직의 독특한 문화에 기반한 SRE를 활용하여 다양한 장애를 사전에 대비하고 여럿 이슈에 대응하며 트러블슈팅할 수 있는 시스템을 갖추게 되었다. 


이 책에서 꽤 많은 분량으로 다뤄진 주제는 바로 '애플리케이션 메트릭'이다. 애플리케이션의 상태를 다양한 각도와 여러 관점에서 바라보며 애플리케이션이 장애를 맞이하거나 이슈를 토해내는 지점을 명확하게 파악할 수 있는 노하우를 자연스레 터득하게 된다. 자바 애플리케이션을 기반으로 하기 때문에 자바 소스 코드를 이해할 수 있는 기본적인 역량이 필요하지만, 수많은 예시와 실질적인 지침들은 독자들에게 명쾌한 애플리케이션 운영의 첩경으로 인도하게 된다. 프로메테우스 같은 애플리케이션 모니터링에 익숙하지 않은 경우엔, 내용 자체가 다소 무겁게 다가올 수 있으나 어떠한 메트릭을 통해 애플리케이션의 상태를 가늠할 수 있는지에 대한 감을 익히는 것만으로도 큰 도움이 되지 않을까 생각한다. 


이윽고 차트의 중요성에 대해 이 책은 서술하고 있으며 차트라는 유용한 도구를 통해 어떻게 하면 좀더 효율적인 결과를 획득할 수 있는지에 대한 유용한 팁을 얻을 수 있게 된다. 계속해서 클라우드 환경에서의 CI를 보다 안정적으로 활용할 수 있는 내용을 함께 다루며, 소스코드에 대한 관찰 가능성, 트래픽 관리 등을 통해 SRE가 지향하는 가치를 온전히 실현하고 실천할 수 있는, 둘도 없는 중요한 가이드를 여실히 제공 받게 된다.  


전반적으로 내용 자체가 꽤 무겁게 느껴질 수 있지만, 인내심을 갖고 끝까지 책을 읽어 나간다면 분명 적지 않은 소득을 얻을 수 있는 도서임엔 틀림 없다고 생각한다. SRE에 관심이 있거나, 클라우드 환경에서 자바 애플리케이션을 운영하고 있는 개발자, 운영자들에게 이 책을 적극 추천한다. 


P.S 

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




댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
SRE를 위한 시스템 설계와 구축 - 구글이 공개하는 SRE 모범 사례와 설계, 구현, 운영 노하우
헤더 애드킨스 외 지음, 장현희 옮김 / 한빛미디어 / 2022년 1월
평점 :
장바구니담기


시스템의 강건함을 보증하는 지표는 여럿 존재하지만, 그중 두 개를 꼽으라면 단연 보안성과 신뢰성이다. 보안성이 결여된 시스템은 결코 안전한 시스템일 수 없으며 신뢰성에 문제가 있는 서비스는 사용자의 외면을 받기 마련이다. 결국 보안성과 신뢰성을 바탕으로 한 시스템과 서비스를 제공하기 위해 부단히 노력해야하는 수 밖에 없다. 보안성과 신뢰성이라는 속성이 공히 온전히 동작할 때만 건강한 시스템을 유지할 수 있는 것이다. 


SRE(Site Reliiability Engineering)라는 단어는 IT 업계에 종사하는 이들에게도 결코 흔하지 않은 용어이다. 이 용어는 최초에 구글에서 고안되었으며, 실제 구글에서는 SRE를 바탕으로 시스템을 운용하고 있고 이러한 추세는 전 세계적으로 전파되고 있는 상황이다. Devops의 실체가 모호한 추상적인 개념이라면, SRE는 Devops라는 이념이 제시하는 실천적인 방향을 제시하는 하나의 엔지니어링 프랙티스로 묘사되고 있는 실정이다. 하지만 용어의 정의가 무엇이 되었든 중요한 것은, SRE가 지향하는 목표는 '강건한 시스템을 설계하고 그 바탕위에 구축된 시스템을 운용하며 유지될 수 있도록 노력하는 것'에 있다고 생각한다. 오늘은 SRE의 실천 이념을 바탕으로 세상에 그 모습을 드러낸 'SRE를 위한 시스템 설계와 구축'이라는 도서에 대해 얘기를 나누고자 한다. 




이 책은 실제 구글에서 활동한 전문가들에 의해 출판되었고, 그들의 생생한 경험에 입각한 내용이 도서 전반에 녹아 있기 때문에 독자들로 하여금 SRE와 관련된 서술에 대해 한층 신뢰성을 높이고 있다고 해도 과언이 아니다. 


 

책의 도입부는 보안성과 신뢰성이 시스템에 어떠한 영향을 미치는가에 대해 운을 떼며 서막을 알린다. 이윽고 시스템 설계와 관련된 중요하면서도 결코 간과할 수 없는 사상과 엔지니어링 프랙티스에 대해 이야기를 이어 나간다. 이를테면 최소 권한의 원칙과 이해 가능성, 범위의 변화, 회복성, 복구와 관련 된 다양한 저자들의 생각과 실제 경험에서 빚어진 실증 사례가 언급되며 보안성과 신뢰성을 기반으로 한 설계의 중요성을 역설한다. 



시스템 설계 이후의 시스템 구현, 시스템 유지 보수에 이르는 일련의 시스템 생애주기에 대한 실천적이고 유용한 다양한 팁이 여과 없이 제공되며 책의 후반부에 이르러서는 조직과 문화에 대한 주제로 서사는 마무리 된다. 결국 보안성과 신뢰성을 기반으로한 시스템 구현에 있어, 그 중심에 있는 사람과 이를 둘러싼 조직, 조직의 담론을 형성하는 문화의 중요성은 시스템이 아닌 사람에게 초점이 맞춰지며 담대한 여정이 종지부를 찍게 된다. 

 

다시 한번 이 글의 처음으로 돌아가, 시스템의 강건함을 보장하기 위해서는 보안성과 신뢰성이 무엇보다 중요함에 대해 강조하고자 한다. 결함 없는 완전한 시스템은 이 세상에 존재하지 않기에, 제대로 굴러 가는 온전한 시스템을 설계하고 운영하며 유지하기 위해서는 보안성과 신뢰성을 기반으로 한 엔지니어링 프랙티스가 중요함을 절실히 깨닫게 해 주는 계기가 되었다. SRE의 정수를 온전히 맛볼 수 없지만, 강건한 시스템을 구현하는데에 관심이 있는 독자라면 이 책과 그 여정을 시작하길 바란다. 


P.S 

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




댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
MongoDB 완벽 가이드 - 실전 예제로 배우는 NoSQL 데이터베이스 기초부터 활용까지, 3판
크리스티나 초도로우 외 지음, 김인범 옮김 / 한빛미디어 / 2021년 3월
평점 :
장바구니담기


DB 세계에 있어 RDB는 언제나 절대적 지위를 고수해 왔고, 그 권좌를 공고히 해왔다. 이는 DB 랭킹을 통해서도 여실히드러난 사실이며, RDB의 독주는 제법 지칠줄 모르는 형국에 가깝다. 하지만 어느 순간 부터 RDB가 아닌 DB가 RDB의 기세를 위협하는 상황이 연출되고 있으며, 그 영향력이 점차 커져만 가고 있는 실정이다. RDB가 아닌 DB, 이른바 NoSQL로 대변되는 DB가 DB 왕국의 패권에 도전하며 그 위용을 매섭게 드러내고 있는 현상을 맞이하게 되었다. 

 

수 많은 NoSQL 중, 도큐먼트 지향의 DB임을 자처하는 DB가 있으니 바로 MongoDB가 그 중심부에 놓여 있다. MongoDB는 오픈소스 DB로서 온프레미스 환경 뿐만 아니라 최근 클라우드 환경에서도 엄청난 성장세를 이뤄 나가며 맹위를 떨쳐 나가고 있는 상황이다. 태생적으로 Scale out을 지향하며 탄생한 MongoDB는 DB 랭킹에서도 상위권을 고수하며 NoSQL 세계의 선봉에 서 있는 독보적 위치의 DB인 셈이다. 오늘은 한빛미디어에서 출판한 MongoDB와 관련 된 서적에 대해 이야기를 풀어 나갈까 한다.






오늘 소개하는 본 서적은 'MongoDB 완벽 가이드'로서 벌써 3판으로 재탄생한 책이다. 초판 발행 이후 그동안의 변화를 여실히 반영하였기에, 최신 환경의 MongoDB를 다루는데 있어 아주 적합한 책이라 할 수 있겠다. 

 

이 책은 MongoDB에 대한 소개를 시작으로 MongoDB의 기능과 특징, 철학에 대한 본질적인 내용을 언급한다. 챕터 2에서는 MongoDB의 기본 개념과 MongoDB를 시작하는 방법, 쉘, 데이터 타입 등에을 다루며 본격적인 MongoDB 사용에 대한 토대를 쌓을 수 있게 가이드 하고 있다. 이어서 도큐먼트 생성,갱신, 삭제, 쿼리 등에 대한 내용을 통해 MongoDB를 다룰 수 있는 기본 중의 기본을 학습하게 된다.

 

파트 2에서는 MongoDB 개발과 관련 된 내용을 다루게 되는데, 인덱싱, 컬렉션 유형, 집계 프레임워크, 트랜잭션, 애플리케이션 설계 등에 대한 세부적인 가이드를 제공 받고 이후의 파트에서는 복제, 샤드와 같은 MongoDB의 가용성 및 데이터 처리의 성능을 향상 시킬 수 있는 속성에 대해 학습하게 된다. 파트 4,5에서는 MongoDB를 운영 및 관리하는 입장에서 반드시 필요한 개념과 실질적이며 유용하고 다양한 팁을 얻을 수 있는 기회를 여실히 제공 받게 된다. 

 

도큐먼트 지향의 DB 자체가 RDB와 전혀 다른 구조이고, 사상 및 철학 자체가 여타의 RDB와 근본적으로 다르기 때문에 학습 자체가 까다로울 수 있지만, 호기심을 갖고 학습에 임하면 전혀 다른 관점에서 MongoDB를 맛볼 수 있게 되고 MongoDB가 선사하는 다채로운 특징과 속성에 대해 계속해서 관심을 가지지 않을 수 없게 되는 오묘한 매력을 느끼게 되는 것 같다. 국내에 MongoDB와 관련 된 책이 거의 없는 상황 속에서, 이 책은 MongoDB 입문자에게 더할 나위 없이 훌륭한 가이드로 자리매김 하리라 생각한다. MongoDB를 알고 싶은 자, MongoDB를 궁금해 하는 자, 이 책으로 MogoDB를 향한 여정을 시작하시길. 


P.S 

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



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
소프트웨어 아키텍처 101 - 엔지니어링 접근 방식으로 배우는 소프트웨어 아키텍처 기초
마크 리처즈.닐 포드 지음, 이일웅 옮김 / 한빛미디어 / 2021년 11월
평점 :
장바구니담기


훌륭한 건축물을 만들기 위해서는 훌륭한 설계도가 필요하다. 마찬가지로 훌륭한 소프트웨어를 만들기 위해서는 훌륭한 아키텍처가 필요하다. 너무나 단순하고 명료한 진리임에도 불구하고 아키텍처의 중요성을 간과하는 케이스는 도처에서 쉽게 목도되곤 한다. 그저 동작하기만 하는 소프트웨어를 만들고 그것을 서비스로 고객에 전달하며, 그 이후에 발생 되는 자잘한 결함과 오류, 그것들을 처리하기 위해 다시 수 많은 인력이 시간과 비용을 투입하며 고군분투하는 경우를 우리는너무 흔하게 접해 왔고 지금도 그런 사례들이 우리 주위에 회자되곤 한다. 그렇다면 이렇게 하지 않기 위해서 우리는 무엇을 할 수 있을까? 어떻게 하면 훌륭한 소프트웨어를 만들 수 있을까 하는 질문에 대한 답을 오늘 소개하는 서적이 제공하고 있다. 

 

소프트웨어의 뼈대를 지탱하는 설계도는 바로 이키텍처다. 이 아키텍처를 만들기 위해서는 아키텍트가 소프트웨어 개발 현장의 중심에 서있고, 그는 수 많은 이해관계자들과 다양한 요구사항을 청취하고 트레이드 오프를 따져 보며 종국적으로 소프트웨어의 근간인 아키텍처를 설계한다. 그 이후 채택 된 아키텍처는 다양한 이해관계자들에게 전달되어 소프트웨어 개발이 진행 되고 비로소 완성된다. 결국 소프트웨어 아키텍처는 소프트웨어를 지탱하는 주춧돌이자 핵심이라 할 수 있겠다. 





이 책은 소프트웨어 아키텍처 설계 과정에 있어, 다양한 아키텍처 패턴과 아키텍트에게 필요한 소프트 스킬과 여럿 유용한 팁을 제공하는 훌륭한 아키텍처 설계 지침서라 요약할 수 있다. 모놀리스로 부터 시작하여 마이크로 서비스 아키텍처(MSA)로 끝나는 소프트에어 아키텍처 패턴을 통해 다양다종한 아키텍처의 변종과 진화한 유형을 거쳐, 작금의 클라우드 네이티브 환경에 걸맞는 아키텍처가 MSA임을 은연중에 깨닫게 된다. 

 

각설하고 본 서적은 다양한 아키텍처 패턴의 본질과 케이스를 통해 해당 아키텍처의 장단점을 각각 비교하며 결국 저자가 설파하는 아키텍처를 설계하는 궁극의 요소는 바로 '트레이드 오프'와 '최악의 아키텍처를 피하고 차악의 아키텍처를 선택한다'라는 것으로 귀결된다. 책의 첫 장을 넘기며 완독한 이후에 머릿 속에 맴도는 가장 주요한 2가지 원칙, 이것은 아직까지도 마음 속 깊은 곳을 강렬하게 자리잡고 있음을 고백하지 않을 수가 없다. 

 

아키텍처 패턴은 정형화 되어 있지만 한 시대를 풍미하는 IT 패러다임과 트렌드에 의해 진화되고 발전 되고 있다. 그 수 많은 패턴 중 어떤 것을 선택할지는 아키텍트의 수 많은 고민이 투사되며, 다양한 이해관계자들과의 끊임 없는 소통을 통해 다듬어지고 결국엔 하나의 선택지가 채택 된다. 하지만 그 선택지가 정답은 아니며 언제라도 그것은 변경 될 수 있고 갈아 치워질 수도 있음을 우리는 인지해야 할 것이다. 계속해서 변화하는 환경 속에서 강건한 아키텍처로 자리 잡는 최고의 아키텍처는 존재하지 않는다. 다만 우리가 선택한 아키텍처는 트레이드 오프에 대한 철저한 계산과 차악을 채용한 결과임을 잊지 말아야 할 것이다. 

 

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



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
핸즈온 해킹 - 침투 테스트의 전 과정을 알려주는 모의 해킹 완벽 가이드
매슈 히키.제니퍼 아커리 지음, 류광 옮김 / 한빛미디어 / 2021년 9월
평점 :
장바구니담기



기업의 IT 인프라 위에서 동작하는 서비스가 온전한 생명력을 갖추기 위해서 정보보안은 필수인 시대이다. 정보보안이 제대로 갖춰지지 않은 인프라 환경은 취약성을 내포하고 있고, 이는 곧 잠재적 리스크로 남게 된다. 기업 뿐만 아니라 개인에게 있어서도, 기본적인 보안 환경이 구성 되어 있지 않다면 음지의 세계에서 암약하는 해커에게 먹잇감이 되는 건 시간 문제다. 보안의 중요성은 결코 쉽게 간과 되어서도 안 되고, 끊임 없는 보안을 강화하기 위한 노력이 개인과 조직 모두에게 필요한 상황이 되어 버렸다. 오늘 소개하는 '핸즈온 해킹'이라는 도서는 침투테스트(모의해킹)을 위한 훌륭한 가이드를 제공하는 책으로서 선제적으로 시스템의 취약점을 파악하고 그에 따르는 위협을 사전에 제거하는 일련의 과정을 배울 수 있는 기회를 선사한다. 



이책의 1장과 2장은 기업 환경에서의 해커(침투테스터)가 필요한 이유에 대한 논의와 윤리적이고 합법적인 해킹이 과연 무엇이고 그와 대비되는 개념과는 어떠한 차이가 있는지 그와 관련 된 이야기를 다루고 있다. 3장에서는 침투테스트 훈련을 위한 가상화 환경의 구축을 설명하며 4장 부터 본격적으로 침투테스트와 관련 된 개별 주제들, 예컨대 공개정보 수집 , DNS, 이메일, 웹 서버, VPN, 파일 공유와 관련 된 내용으로 세부적인 논의를 이어나가며 다양한 침투 테스팅 도구 사용법에 대한 가이드를 제공한다. 그리고 유닉스, 리눅스, 윈도우즈 등의 OS 영역, 데이터베이스, 웹 애플리케이션 등의 범주에서 나타나는 취약점과 그에 따른 수행 가능한 공격 등을 이해하기 쉽게 풀어 나간다. 끝으로 침투테스트에 대한 결과를 효과적으로 리포팅하기 위한 보고서 작성 스킬을 여과 없이 제공하고 있다. 

 

결코 가볍지도 만만하지도 않은 분량과 범위를 아우르며 독자들로 하여금 침투테스트의 본질을 제대로 느낄 수 있는 기회를 제공하고 있는 이 책은, 모의해킹과 관련 된 업무를 이제 막 시작하는 초심자에게 훌륭한 가이드가 되리라 생각한다. 

 

P.S 

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


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