Notice
Recent Posts
Recent Comments
Link
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Archives
Today
Total
관리 메뉴

브래의 슬기로운 코딩 생활

정보보안 4주차 정리 - 클라우드 활용 본문

3-1/정보보안

정보보안 4주차 정리 - 클라우드 활용

김브래 2024. 3. 26. 22:11

클라우드 사용 패턴


웹 사이트에서 활용

급속한 접속량 증가에 대비
- 대량의 콘텐츠를 제공하는 웹사이트 : 오토스케일링, 다른 존으로 부하 분산

 

CDN(Content Delivery Network) 서비스 이용
- CDN은 웹 콘텐츠를 전달하기 위해 최적화된 네트워크
- 콘텐츠 서버 이외에 사용자와 가까운 곳에 캐시 서버를 두어 콘텐츠 대신 전달
- AWS의 Amazon CloudFront, MS의 Azure CDN 등

 

데이터 전송(업로드/다운로드) 비용도 충분이 고려해야 함


소셜 게임의 활용

소셜 게임은 리소스 변동 폭이 큰 업종으로, 게임의 인기 여부에 따라 설비 이용률 및 수익률에 영향
- 개발 단계 : 서비스 개발 단계 에서 서버 등의 인프라 투자 최소화
- 공개 후의 운용 : 이용자 수와 이용 빈도에 따른 스케일 업/아웃 활용

 

게임이 히트한 경우
- 엄청난 접속이 서버에 집중되고 동시에 고속 처리가 요구됨
- 시스템의 부하에 따라 자사의 프라이빗 클라우드 구축 혹은 퍼블릭 클라우드 내의 베어메탈 서버 활용


스타트업에서 활용

서버 등 IT 시스템에 대한 투자가 부담

 

작게 시작하고 성장에 따라 컴퓨팅 리소스 조절
- 단기간에 가설을 검증하고 피벗(방향전환)을 반복하는 방법으로 사업 가속화
- 접속량 증가에 따라 저렴한 비용으로 유연하게 컴퓨팅 자원 변화 및 사업 확대
- 많은 클라우드 사업자들이 개발 지원, 투자 지원, 코워킹 스페이스 지원, 무료 교육 등
클라우드 환경을 무료로 제공하여 고객을 후원하고 있음


ERP에서 활용

ERP 시스템은 업무별 최적화된 시스템이 아니라, 각 업무 프로세스와 데이터의
무결성을 확보하여 전적으로 최적화된 시스템

 

클라우드 ERP : 구매, 생산, 판매, 회계 등의 업무를 통합적으로 패키지화한 ERP

 

도입 기간 단축, 개발과 운용의 효율 증가, 낮은 가격에 제공
- 기존 ERP는 전용 어플라이언스 서버로 구축

 

글로벌 시스템의 통합 및 표준화


빅데이터에서의 활용

빅데이터
- 일반적인 데이터베이스 소프트웨어가 처리할 수 있는 범위를 넘어서는 크기의 데이터


IoT에서의 활용


AI에서의 활용

- 구글, MS, 아마존 등 클라우드를 바탕으로 한 인공지능 솔루션 및 서비스 제공
- 클라우드는 학습을 위한 빅데이터 저장 및 높은 연산 성능 요청에 활용
- 기업들을 자산의 머신러닝 툴을 오픈소스로 공개하며 인공지능 플랫폼 선점 경쟁
- 인공지능에 필요한 값비싼 슈퍼 컴퓨터 구매 대신 클라우드 컴퓨팅 시스템 구축


기타 용어


CSP / MSP

CSP(Cloud Service Provider)
- 클라우드 인프라 제공
- 자체 데이터 센터에서 가상화한 서버, 네트워크, 스토리지 등을 제공

 

MSP(Managed Service Provider)
- CSP와 고객을 연결하는 역할
- 클라우드 도입에 필요한 컨설팅, 아키텍처 구축, 모니터링, 보안 등 제공
- 국내 업체: 삼성 SDS, SK C&C, LG CNS 등

 

MSP를 통해 최적화된 클라우드 아키텍처를 설계, 운영함으로써 비즈니스의 비용절감, 비즈니스 연속성 수행


프로비저닝

사용자가 요청한 IT 자원을 사용할 수 있는 상태로 준비하는 것

 

서버 자원 프로비저닝
- CPU, 메모리, IO 등과 같은 실제 서버의 자원을 할당해주고 운영할 수 있게 제공해 주는 것

 

OS 프로비저닝
- OS를 서버에 설치하고 구성 작업을 해서 사용할 수 있도록 제공하는 것

 

소프트웨어 프로비저닝
- WAS, DBMS 등의 소프트웨어를 설치하고 세팅하여 실행할 수 있도록 제공하는 것

 

스토리지 프로비저닝
- 데이터를 저장하고 관리할 수 있는 스토리지를 제공하는 것
- 클라우드에서는 스토리지 종류와 용도에 따라 다양한 방식으로 제공됨

 

계정 프로비저닝
- 접근 권한을 가진 계정을 제공해 주는 것
- 클라우드에서 관리자가 변경될 경우 권한의 인계를 계정 프로비저닝을 통해 진행함


탄력적 컴퓨팅

Elastic Computing(cf. AWS의 EC2)

 

피크 사용에 대한 용량 계획 및 엔지니어링에 대한 걱정 없이 변화하는 요구사항을

충족하도록 컴퓨터 자원을 신속히 확장/축소하는 기능

 

일반적으로, 시스템 모니터링 도구로 제어

 

진행중인 작업을 중단시키지 않고 실제로 필요한 리소스 양에 따라 자동 조절
→ 불필요한 속도 저하, 서비스 중단을 피함

 

회사가 사용하지 않는 용량이나 유휴 리소스에 대한 비용 절감


데브옵스(DevOps)

목표 : 개발/운영의 협업으로 빠른 소프트웨어 릴리즈 및 서비스 제공, 이슈 해결 등

 

소프트웨어의 개발(Dev)와 운영(Ops)를 연계하는 방법론

 

개발팀과 운영팀의 협업 강조

데브옵스 실천법

지속적인 통합(CI) 

- 개발자들이 자주(하루 한번이상) 코드를 공유 리포지토리에 병합하는 프로세스, 이를 통해 코드 변경 사항의 충돌을
최소화 하고, 문제를 빠르게 발견, 해결함

 

지속적인 배포(CD)

- 개발된 소프트웨어를 자동으로 프로덕션 환경으로 배포하는 프로세스,

신규 버전의 애플리케이션을 사용자에게 빠르게 제공할 수 있음

 

자동화
- 테스트, 배포, 모니터링 등과 같은 반복적인 작업을 자동화하여 시간 절약 및 오류를 줄임

 

협업과 공유
- 개발자와 운영팀 간의 긴밀한 협업과 서로의 작업에 대해 이해하여 전체 소프트웨어 개발, 배포 프로세스 개선


클라우드 네이티브

클라우드 환경에서 가장 효과적으로 동작하는 애플리케이션 개발 및 운영 방식

 

주요기술

- 마이크로서비스 아키텍처(MSA)
- 컨테이너 기술
- 데브옵스(DevOps) 
- 지속적인 통합과 지속적인 배포(CI/CD)


애플리케이션이 하나의 큰 Monolith가 아닌 여러 개의 독립적인 마이크로서비스로 분할하어 개발


각각의 서비스는 독립적으로 개발, 테스트, 배포, 확장 될 수 있음

 

컨테이너 기술로 패키징하여 어떤 클라우드 환경에서도 동일하게 실행되도록 함


IAM(Identity and Access Management)

사용자가 누구인지, 어떤 권한을 갖는지, 어떤 리소스에 접근할 수 있는지 관리

 

인증요소
- 사용자가 아는 것 : ID+PW와 같이 사용자만 알고 있는 것
- 사용자가 갖고 있는 것: 물리적 토큰(전자 열쇠, USB, 스마트폰 등)
- 사용자 자신: 신체 속성(지문, 망막 등)

 

클라우드 환경에서 사용자의 액세스 관리는 네트워크 경계가 아닌 ID가 중요

 

액세스 관리는 시스템 내 사용자 마다 각각의 권한을 부여하고 관리