책 소개
요약
오라클 클라우드와 오픈소스 기술을 중점으로 다루는 실습 중심 도서이다. 실제 클라우드 환경에서 유용한 서비스를 구현하면서 오라클 클라우드의 활용법을 익히는 데 초점이 맞춰져 있으며, 독자가 미래 업무 요구 사항에 맞게 더 정교한 시스템을 구성하는 데 도움을 주기 위한 자료로 구성돼 있다. 이 책에서는 웹 애플리케이션부터 쿠버네티스 기반의 마이크로서비스, 서버리스 애플리케이션, 데이터 레이크하우스 그리고 머신러닝 시스템과 같은 다양한 서비스를 클라우드 환경에서 구현하는 과정을 상세히 다룰 것이다. 이를 통해 클라우드를 처음 접하는 독자들도 초보자에서 중급자 수준까지 스스로 성장할 수 있는 기회를 얻을 수 있다.
추천의 글
“IT 분야에서 ’클라우드’라는 용어는 이제 더 이상 낯설지 않습니다. 현재 우리는 IT 서비스를 개발할 때 더욱 유연하고 확장이 가능하며 빠르게 변화하는 시장의 요구 사항에 대응할 수 있는 ‘클라우드 네이티브 애플리케이션’을 가장 먼저 고려하고 있습니다. 이런 IT 기술 환경의 빠른 변화 속에서 클라우드 기술 또한 계속해서 진화하고 발전하고 있습니다.
과거에는 한 곳에서 모든 IT 서비스 스택을 제공하는 ‘단일 벤더 클라우드’가 주류였지만 현재는 다양한 벤더가 제공하는 최고 수준의 기술 서비스를 선택하는 ‘멀티 클라우드’로 시장이 진화했습니다. 더불어 ‘하이브리드 클라우드’, ‘퍼블릭 클라우드’, ‘전용 클라우드’를 아우르는 ‘분산형 클라우드(Distributed Cloud)’가 주요 주제 중 하나로 떠오르고 있습니다. 이는 단순히 트렌드를 따라가는 것이 아니라 고객의 현재 업무 요구 사항을 고려하고, 각 시스템 구성 요소에 맞게 배치해서 최적의 IT 서비스를 제공하기 위한 변화를 나타냅니다. 결국 가장 중요한 것은 트렌드가 아니라 고객의 업무 요건이라는 것입니다.
이런 변화와 함께 오라클 클라우드는 고객의 요구 사항 충족을 위해 단순히 IaaS, SaaS, PaaS 서비스를 제공하는 것뿐만 아니라 퍼블릭 클라우드, 전용 클라우드, 하이브리드 클라우드, 멀티 클라우드와 같이 다양한 환경에 맞춘 서비스를 제공하도록 발전해 왔습니다. 이를 반영해서 2019년부터 마이크로소프트 Azure와 협업 관계를 구축해 두 벤더 간의 고속 통신망을 통해 데이터를 주고받습니다. 또한 마이크로소프트 Azure에서 오라클 데이터 센터 내에 오라클 데이터베이스 서비스를 배포하기도 하고, 최근에는 마이크로소프트 Azure에서 오라클 데이터베이스를 Azure 데이터 센터에서 배포해서 사용할 수도 있게 됐습니다.
오라클은 ‘Generation2 클라우드’라고 하는 100개 이상의 인프라 및 플랫폼 서비스를 통해 최고의 성능과 안정성을 제공하는 퍼블릭 클라우드 서비스를 제공합니다. 또한 온프레미스와 퍼블릭 클라우드를 연결하는 하이브리드 클라우드를 제공합니다. 이뿐만 아니라 알로이(Alloy)를 통해 SI(시스템 통합) 업체는 물론 통신 및 금융 기업들도 오라클을 이용해서 클라우드 비즈니스를 수행할 수 있습니다. 현재 IT 시장에서 가능한 모든 비즈니스를 지원하는, 전체 IT 스택을 갖춘 클라우드 제공 업체는 오라클이 유일합니다. 특히 오라클은 전통적으로 데이터베이스의 최강자입니다. 오라클 데이터베이스 사용자라면 오라클 클라우드 환경으로 더욱 쉽게 전환할 수 있습니다.
이 책은 분산 클라우드 전략을 구현하기 위한 출발점으로 오라클 클라우드가 어떤 서비스를 제공하며, 사용자가 최신 트렌드의 서비스를 얼마나 쉽게 만들고 활용할 수 있는지를 보여줍니다. 오라클 클라우드만의 Generation2 인프라, RAC 데이터베이스, 인-데이터베이스 AutoML까지 다루고 있는 이 책은 클라우드 경험자에게는 오라클 기술의 핵심을, 입문자에게는 클라우드와 오픈소스 기술 습득의 장이 될 것입니다. 또한 클라우드와 오픈소스 기술을 설명과 예제를 통해 보여주고 있어 클라우드 엔지니어로서의 자신감을 향상시킬 것으로 기대합니다.
이 책을 통해 오라클 클라우드 기술을 즐기고 적극적으로 활용해 보기를 바랍니다.”
“이 책은 독자들이 오라클 클라우드를 이해하고 경험하게끔 하기 위한 지식들을 담고 있습니다. 1장에서는 간단한 웹 애플리케이션의 개발을 통해 오라클 클라우드 서비스를 개괄적으로 소개하고, 2장에서는 최근 서비스 개발의 기본 아키텍처로 자리매김한 마이크로서비스 기반 개발을 위한 과정과 방법을 조목조목 안내하고 있습니다. 전통적인 웹 애플리케이션이 마이크로서비스의 형태로 전환된 이후를 다루는 3장에서는 서버리스 애플리케이션으로 또다시 전환되는 과정을 통해 독자들이 오라클 클라우드에 대한 활용 방법뿐만 아니라 최신 애플리케이션 개발 방법론 또한 가늠할 수 있을 것이라고 생각합니다. 4장에서는 최근 가장 각광받는 분야이며, 지속적으로 뜨거운 관심을 끌 데이터 분석과 머신러닝을 활용해서 효과적으로 데이터를 활용하고 클라우드 자원을 분석하며 예측하는 방법을 안내하고 있습니다. 저자는 각 장의 시작부에서 친절한 사전 지식의 제공을 통해 서로 다른 배경을 가진 독자들을 배려하고 있습니다.”
“저자는 필드에서의 오랜 기술 지원 경험과 제품에 대한 깊이 있는 이해를 바탕으로 잘 짜인 예제를 통해 오라클 클라우드 서비스를 쉽게 설명해 주고 있습니다. 수능에 비유하자면 기능 설명은 문제 해결을 위한 개념 설명, 데모 아키텍처는 기출 문제에 해당할 것입니다. 기능 설명과 데모 아키텍처를 반복해서 읽어보고 실행해 보면 오라클 클라우드가 문제를 해결하는 방식을 깨닫게 되고 실무적인 응용도 가볍게 해낼 수 있을 것으로 판단합니다.
배우고 익히는 데 왕도는 없지만 이 책의 기능 설명과 데모 아키텍처는 클라우드로 가는 가장 짧은 길을 제시하고 있습니다. 많은 사람이 이 책을 통해 이해하기 쉽고 체계적으로 배울 수 있는 오라클 클라우드를 접하게 되기를 기대합니다. 국내외 금융환경에서 보여준 고도의 신뢰성을 동반하는 오라클 클라우드를 선택한 것은 엔지니어로서도 미래를 내다보는 훌륭한 선택이었고, 사용자로서도 최상의 선택이었음을 알게 될 것입니다.”
“이제는 ‘클라우드 환경을 적용할 것인가, 말 것인가?’를 고민하는 시대가 아니라 ‘우리에게 최적인 클라우드 환경은 무엇인가, 더 나은 대안이 있는가?’를 고민하는 시대입니다. 심지어 여러 클라우드 서비스를 목적에 맞게 혼용하는 시대가 도래했습니다.
기존의 오라클 클라우드에 대한 서적은 데이터베이스 영역에 집중해서 강조하는 것이 일반적이지만 이 책은 오라클 데이터베이스를 시작으로 마이크로서비스 구축 및 운영에 필요한 플랫폼 준비, 생성되는 데이터의 통합을 위한 데이터 레이크 및 이를 기반으로 한 다양한 분석까지 전체 라이프사이클을 다루고 있으며, 각 단계별로 오라클 클라우드의 핵심적인 기능들을 빠르게 접해볼 수 있도록 소개하고 있습니다.
‘우리에게 적합한 클라우드 플랫폼은 무엇인가, 더 나은 대안이 있는가?’를 고민하는 수많은 IT 업계 담당자에게 오라클 클라우드 인프라가 또 하나의 대안이 될 수 있음을 알려주는 훌륭한 안내서가 될 것입니다.”
“AWS 환경만을 사용하다 보면 멀티 클라우드 환경을 한번쯤 고민해 보곤 합니다. 특히 강력한 오라클 데이터베이스를 활용하고자 오라클 클라우드를 생각해 보지만, 안타깝게도 국내 시장에서 사용 사례를 정리한 책이나 오라클 클라우드 서비스 전체를 다루는 책은 전무했습니다. 그러던 중에 반갑게도 현직 한국 오라클 엔지니어가 직접 오라클 클라우드의 주요 서비스를 자세한 실습을 통해 익힐 수 있도록 한 책을 발간하게 돼 독자들보다 먼저 책을 접할 수 있게 됐습니다.
이 책은 영리하게도 오라클 클라우드의 많은 서비스를 소개하는 대신에 실제 클라우드 환경에서 사용되는 핵심 서비스를 기반으로 웹 애플리케이션 시스템으로 구축하고, 이를 마이크로서비스 아키텍처로 전환해 신규 서비스를 개발하는 과정을 소개합니다. 이 과정에서 도커와 쿠버네티스를 다루면서 기본적인 개념과 실습도 제공합니다. 또한 최신 데이터 플랫폼인 서버리스 데이터 레이크하우스 구축으로 아키텍처를 확장해서 실습을 제공하면서 핵심적인 오라클 클라우드를 모두 경험해 볼 수 있게 했습니다. 그리고 오라클 클라우드의 머신러닝에 대한 간단한 소개로 책을 마무리합니다.
이처럼 오라클 클라우드의 기본적인 개념과 실습을 한 권에서 모두 할 수 있는 책이기 때문에 오라클 클라우드 서비스 도입을 검토 중인 사람이나, 오라클 클라우드를 공부하려는 엔지니어와 학생들에게 최고의 책임을 자신 있게 추천합니다.”
이 책에서 다루는 내용
◆ 국내 최초의 한국어로 된 오라클 클라우드 기술 활용서로, 실무에서 바로 활용 가능한 내용을 제공한다.
◆ 전반적인 클라우드 기반 기술과 오픈소스 기술에 대한 핵심 개념을 간결하게 설명한다.
◆ 120여 개의 도해와 그림을 포함해 복잡한 시스템 구성도를 한눈에 이해하며 쉽게 따라 할 수 있다.
◆ 3-Tier 웹 애플리케이션을 구현하는 과정을 통해 컴퓨트 인스턴스에서부터 오토 스케일링까지 오라클 클라우드의 사용법을 쉽게 설명한다.
◆ 쿠버네티스 환경에서 모놀리식 애플리케이션을 마이크로서비스로 변환하고 CI/CD 구축부터 서비스 메시까지 구현하는 방법을 안내한다.
◆ 서버리스 기술로 저장된 애플리케이션 데이터를 데이터 카탈로그와 ETL 프로세스를 활용해서 데이터 레이크하우스를 구축하고, 오픈서치 기술 활용법을 제시한다.
◆ 파이썬 기반의 머신러닝부터 오라클 데이터베이스 내장 알고리듬을 활용한 머신러닝 분석에 이르기까지 다양한 주제를 경험한다.
이 책의 대상 독자
◆ 클라우드와 오픈소스 기술을 처음 접하는 학생이나 기초를 쌓고자 하는 독자
◆ 오라클 클라우드의 전체 기술 스택을 이해하고자 하는 클라우드 사용자
◆ 클라우드 자격증을 준비하며 클라우드 관련 지식을 쌓으려는 독자
이 책의 구성
이 책은 총 4장으로 구성돼 있다. 각 장은 해당 장에서 다룰 기술들의 이론과 개념을 먼저 설명한 후 그것을 기반으로 실제 실습을 진행하며, 마지막에 학습한 내용을 정리하는 구조로 이뤄져 있다.
1장에서는 오라클 클라우드의 기본 사용 방법을 학습한다. 전형적인 웹 시스템으로 구성된 애플리케이션 서버와 데이터베이스를 오라클 클라우드의 자원을 활용해서 구축하는 방법을 다룬다.
2장에서는 개발한 애플리케이션을 마이크로서비스 아키텍처로 전환하고, 신규 서비스를 개발하는 과정을 다룬다. 또한 도커와 쿠버네티스 환경에서 이를 배포하는 방법과 함께 마이크로서비스의 개발 및 배포 자동화 과정을 다루고 서비스 메시 아키텍처를 구성하는 방법까지 학습한다.
3장에서는 마이크로서비스를 서버리스 애플리케이션으로 확장한다. 애플리케이션에서 생산된 데이터의 메타 정보를 분석하고, ETL을 통해 데이터 레이크하우스에 적재해서 BI 도구로 분석하는 과정을 다룬다. 또한 클라우드 서비스가 만들어 내는 로그를 오픈소스 기술을 활용해서 분석한다.
4장에서는 인프라 자원의 사용률 분석과 예측에 머신러닝 기법을 활용하는 방법을 학습한다. 오라클 클라우드 서비스가 제공하는 머신러닝 기능을 활용해서 데이터를 분석하고 예측한다.
목차
목차
- 1장. 오라클 클라우드로 구현해 보는 웹 애플리케이션
- 1.1 사전 지식
- 1.2 실습
- 1.2.1 가상 클라우드 네트워크 구성
- 1.2.2 가상 머신 생성
- 1.2.3 Bastion 서비스 생성
- 1.2.4 통신을 위한 네트워크 설정
- 1.2.5 데이터베이스 설치 및 구성
- 1.2.6 애플리케이션 배포
- 1.2.7 HTTPS 연결 설정
- 1.2.8 로드밸런서, 오토스케일링 설정
- 1.2.9 OCI CLI를 활용한 자원 정리
- 1.3 요약
- 2장. 오라클 클라우드로 구현해 보는 마이크로서비스
- 2.1 사전 지식
- 2.1.1 도커
- 2.1.2 쿠버네티스
- 2.1.3 마이크로서비스
- 2.1.4 서비스 메시, 이스티오
- 2.2 실습
- 2.2.1 개발 환경 가상 머신 생성 및 도커 실습
- 2.2.2 데이터베이스 서비스 인스턴스 생성
- 2.2.3 멀티테넌트 데이터베이스 구성
- 2.2.4 샘플 마이크로서비스 개발
- 2.2.5 OCI 쿠버네티스 배포
- 2.2.6 OCI 쿠버네티스 접속 환경 설정
- 2.2.7 쿠버네티스 환경 웹 서버 배포 테스트
- 2.2.8 샘플 마이크로서비스 컨테이너 이미지 생성
- 2.2.9 컨테이너 레지스트리 서비스 배포
- 2.2.10 마이크로서비스 쿠버네티스 환경 배포
- 2.2.11 젠킨스를 통한 CI/CD 구현
- 2.2.12 이스티오를 이용한 서비스 메시 구성
- 2.2.13 애플리케이션 모니터링 구성
- 2.2.14 쿠버네티스 파드 오토스케일링 구성
- 2.2.15 실습 자원 정리
- 2.3 요약
- 3장. 오라클 클라우드로 구현해 보는 데이터 레이크 시스템
- 3.1 사전 지식
- 3.2 실습
- 3.2.1 마이크로서비스의 서버리스 Function 전환
- 3.2.2 API 게이트웨이를 통한 서비스 통합
- 3.2.3 신규 업무 서버리스 Function 개발
- 3.2.4 데이터 카탈로그로 메타데이터 식별
- 3.2.5 데이터 레이크하우스 DB 생성
- 3.2.6 ETL, 익스터널 테이블을 이용한 데이터 통합
- 3.2.7 오라클 Analytics를 활용한 데이터 분석
- 3.2.8 오픈서치를 이용한 로그 분석
- 3.2.9 실습 자원 정리
- 3.3 요약
- 4장. 오라클 클라우드로 구현해 보는 머신러닝
- 4.1 사전 지식
- 4.2 실습
- 4.2.2 OML4SQL을 활용한 머신러닝 분석
- 4.2.3 실습 자원 정리
- 4.3 요약
- 부록. Oracle Cloud Free Tier 생성