
=>클라우드 기술은 4차 산업혁명 빅데이터, 인공지능, 사물인터넷 등을 이루게 한 근간이 되는 핵심 인프라 기술이다.
빅데이터는 대량 데이터를 수집, 저장, 분석하여 가치를 추출하고 기업에게 의미 있는 정보를 제공하는 분석 기술이다.
데이터수집 -> 데이터가공(정제) -> 데이터 추출/선택 -> 데이터 저장 -> 분석 -> 적용활용
On-Premise 시슨템은 기업이 직접 보유하는 시스템들로 일반적으로 CLient - Server 또는 3 - Tier 환경으로 구성된다.
On-Premise의 Client-Server아키텍처
사용자(Client) - WEB(Server) - WAS(Server) - DB(Server)
IT 서비스 구축 및 운영을 위한 기반 기술과 플랫폼 하드웨어, 네트워크, 운영체제, 미들웨어 등이 있다.
하드웨어 - 서버 장비 (CPU, 메모리), 전원장장치
IT 인프라 시스템 구성
IT 시스템은 인프라 서버 위에서 애플리케이션이 구동되고, 애플리 케이션 간 통신이나 구성을 이루는 아키텍처로 이뤄진다.
애플리케이션 - API서버, 개발 언어, 개발방법론
아키텍처 - 3-tier 구조, MSA
인프라 - 네트워크, 서버, 프로토콜
클라이언트와 서버 간의 통신을 기반으로 서비스나 앱은 네이티브 형태로 배포되거나 웹으로 구현되고 이들은 서버와의 연동을 통해 구성된다.

개발 방법론은 체계적으로 관리하고 효율적인 개발하기 위해 정의된 방법론이다. 크게 폭포수, 애자일 방식으로 수행된다.
요구분석
---- 설계
--------- 개발
-------------- 테스트
--------------------- 배포
-------------------------- 운영

DevOps는 소프트웨어 개발과 운영을 통합하여 지속적인 협업과 자동화를 통해 속도와 품질을 향상시키는 문화와 방법론이다.
Plan - 요구사항 관리, 협업 도구
Create - 코드 개발, 버전 관리, 지속적 통합, 빌드
Verify - 테스트, 품질/성능 검토
Packaging - 배포 이전 단계
Release - 변경 사항 관리, 릴리즈 승인/자동화
Configure - 인프라 구성 및 관리, 프로비저닝
Monitor - 성능 모니터링, 사용자 경험
지속적 통합과 지속적인 배포를 위한 자동화된 프로세스와 도구를 활용하여 구성하는 것이다.

IT 컴퓨팅, 디스크 등의 자원을 제공하고 사용자가 필요한 만큼 사용하고 사용한 만큼만 비용을 지불하는 컴퓨팅 모델이다.
클라우드 서비스의 특징은 필요에 따른 유연한 확장성, 대규모 데이터 처리 가능, 24/7 가용성, 비용 절감 및 운영의 간편성과 유지보수성을 제공한다.
클라우드 서비스 유형에는 형태에 따라서 퍼블릭 클라우드, 프라이빗 클라우드, 하이브리드 클라우드 등과 같은 종류가 있다.
Public 클라우드 : AWS, Azure, GCP 등의 공용 클라우드 서비스
Private 클라우드 : 기업의 데이터 센터 내 클라우드 환경 구성
멀티 클라우드 : 여러 CSP(public 클라우드)를 조합해서 사용하는 방식
하이브리드 클라우드 : On-Premise 서버와 클라우드를 조합하여 사용하는 방식


가상서버, 컨테이너, 네트워크. 스토리지 등의 가상화 기술이 클라우드 서비스의 핵심 기술이다.
가상 머신 (Virtual Machines, VMs) : 하나의 물리적 서버에서 여러 개의 가상 서버를 동시에 실행하는 기술
컨테이너 가상화 (Containerization) : 운영체제를 공유하면서 애플리케이션을 독립적인 환경에서 실행하는 기술
소프트웨어 정의 네트워킹 (Software-Defined Networking, SDN) : 네트워크 인프라를 가상화하여 유연한 제어와 자동화를 가능케 하는 기술
스토리지 가상화 (Storage Virtualization) : 물리적 스토리지 자원을 가상화하여 효율적인 관리와 액세스를 제공하는 기술

컨테이너는 프로그램이 동작되기 위한 최소한의 요소들을 묶어 패키징 한 독립적인 실행 단위 및 배포 가능한 가상화 기술이다.

가상 머신은 OS를 포함하여 GigaBytes 단위로 용량이 크고 기동 시간이 오래 걸린다. 컨테이너는 용량이 MegaBytes 단위 이고, 배포가 용이하며 기동 시간이 짧다.
도커는 컨테이너화 기술을 사용하여 애플리케이션을 실행하고 배포하는 오픈 소스 플랫폼이다. 애플리케이션(컨테이너 이미지)를 배포 및 구동할 수 있는 컨테이너 엔진의 종류이다.





DNS는 Record type으로 DNS 정보를 관리한다. 도메인 이름과 IP주소 간의 매핑을 담당하고, 요청에 따라서 IP값을 응답하는 역할을 한다.

IT 보안은 정보 시스템과 데이터의 기밀성, 무경성, 가용성을 유지하고 외부 위협으로부터 보호하는 기술과 정책의 종합적인 접근이다.
기밀성
클라우드 서비스 제공자의 서비스 카테고리를 참고하여, 보안을 기반으로 네트워크 및

클라우드 보안 기술은 보안 표준, 네트워크, 접근 제어, 클라우드 인프라, 데이터로 분류할 수 있다. 기술적, 관리적 보안으로 클라우드 컴퓨팅 보안을 수행한다.

클라우드 기반 서비스에 대한 요구 사항 및 클라우드 컴퓨팅의 보안 취약점을 고려하여 보안 아키텍처를 설계한다.

클라우드 간 연계와 통합관리를 위한 기술이 성숙함에 따라 많은 기업들이 운영비용 절감 효과 및 디지털 트랜스포메이션을 위한 하이브리드/멀티 클라우드로 전환하는 추세이다.

유연성, 민첩성 및 확장성을 제공하는 MSA를 적용하는 기업이 증가하고 있으며, 빠른 개발 속도 및 변경을 견딜 수 있는 유연한 아키텍처 구조를 지향하고있다.

MSA는 애플리케이션을 작은, 독립적인 기능 단위인 마이크로서비스로 분할하는 소프트웨어 아키텍처이다.
독립적으로 배포 실행될 수 있는 작은 애플리케이션으로 구성된다.

MSA 구조로 설계 구축하면 가질 수 있는 장점들이 있다.

주요 클라우드 서비스의 히스토리

컴퓨팅, 네트워킹, 스토리지, 데이터베이스, 분석, 응용 등 다양한 서비스를 사용할 수 있다.

리즌은 AWS의 전 세계적으로 분포한 데이터 센터 그룹을 의미하며, 가용 영역은 각 리즌 내에서 독립된 데이터 센터로 구성되어 안정성과 가용성을 보장한다.

AWS EC2는 가상 컴퓨팅 환경을 제공하는 서비스이다.

Load balancer는 EC2 인스턴스 앞에서 인터넷의 트래픽을 분기 처리한다.

Auto Scaling은 컴퓨팅 자원(예: 가상 서버 또는 컨테이너)의 수를 트래픽에 맞게 자동으로 조정하는 기능이다.



Amazon S3는 Amazon Web Services(AWS)의 객체 스토리지(Object Storage) 서비스이다.

클라우드에서 관계형 데이터 베이스를 간편하게 사용할 수 있게 해주는 서비스이다.

기업의 핵심 전략, 기관의 업무 유형을 고려하여 EKS, VM, MQ 등의 아키텍처 구성으로 클라우드 컴퓨팅을 구축한다.

AWS 백업/복구 도구를 활용하여 OS, DB, Disk, Volume을 중심으로 백업 및 복구를 지원한다.
