[AIVLE SCHOOL] IT 인프라(3) - 서버

춤추는 머쉬룸·2024년 11월 27일

AIVLE SCHOOL 6기

목록 보기
68/80
post-thumbnail

2024.11.27 2, 3, 4세션

A. 서버란

서버 == 제공자

  • 클라이언트의 요청에 응답하여 데이터를 보내주는 컴퓨터 또는 시스템

서버팜

  • 컴퓨터와 서버 등 운영에 필요한 시스템을 한 곳에 모아 놓은 곳
  • 외부에서 허가되지 않은 접근은 차단

DMZ 비무장지대

  • 보안 지역과 비보안 지역 사이의 중립 지역
  • 공개해도 되는 서버를 배치하여, 서버팜으로 직접적인 접근을 막아 보안 강화

A-1. 3tier 아키텍쳐

  • WEB / WAS/ DB 서버를 물리적으로 분리하고, 역할을 효율적으로 분담
  • 각 계층 간의 독립성과 보안을 높임

웹서버

  • 웹 브라우저로부터 요청을 받아 정적인 컨텐츠를 직접 처리하고, 동적 컨텐츠는 WAS 에게 전달
  • Apache, Nginx, IIS 등

WAS

  • DB 조회나 다양한 로직을 처리하는 동적인 컨텐츠 처리
  • Tomcat, JBoss 등

DBMS

  • 데이터베이스를 운영하고 관리하는 소프트웨어
  • MySQL, MariaDB, Oracle 등

A-2. 서버 아키텍쳐의 발전

  • 서버 하나에 하나의 어플리케이션이 일반적이지만, 서비스 목적이나 비즈니스 상황에 따라 다른 아키텍쳐 사용

가상머신

  • 하이퍼바이저 : 호스트 컴퓨터에서 다수의 운영체제를 동시에 실행하기 위한 논리적 플랫폼. 자원을 가상머신에게 쪼개서 나눠줌 (VMware, MS Hyper-V, Linux KVM, IBM Power VM 등).
  • 하이퍼바이저가 나눠준 자원으로 여러 개의 Guest OS가 돌아감.
  • OS 설치하기 위해서는 해당 OS의 설치 이미지가 필요함

컨테이너

  • OS 수준의 가상화 기술로, 리눅스 커널을 공유하면서 프로세스를 격리된 환경에서 실행하는 가상화 기술
  • OS 까지는 똑같지만, 그 위에 Container Engine 이 올라가고, 그 위에 각각의 서버를 올릴 수 있음.
  • 도커, cri-o 등


B. 가상 머신과 컨테이너

B-1. 하이퍼바이저

  • Baremetal : 서버에 설치
  • Hosted : PC 용으로, OS 위에 하이퍼바이저 설치 (Virtual Box 등)
  • 가상 머신은 여러 개의 파일로 구성
  • 마이그레이션 : 가상 머신을 하나의 호스트에서 다른 호스트로 이동
  • Live 마이그레이션 : 서비스 중단 없이 이동
  • off-line 마이그레이션 : 셧다운 후 마이그레이션

B-2. 컨테이너

  • 하드웨어에 일반 OS를 올리고, 그 위에 Container Engine 설치
  • 컨테이너 엔진이 컨테이너 환경을 만들어줌. (Guest OS 없다)
  • OS 를 사용하지 않아 메모리와 디스크 사용량이 적다

B-3. 도커

  • LXC 를 기반으로 효율적으로 컨테이너를 생성, 관리, 배포 작업을 도와주는 기술
  • 컨테이너를 이미지화하여 배포를 쉽고 빠르게 지원. (Dockerfile)
  • 스냅샷 기능
  • 서비스 운영에 필요햔 프로그램, 소스코드, 라이브러리 등을 묶어 놓은 패키지 형태

Docker File

  • 컨테이너 이미지를 커스터마이징하기 위한 파일
  • 파일의 내용에 이미지 생성과정을 syntax에 따라 작성
  • 작성된 Docker File을 활용하여 새로운 이미지 제작

Docker image url

  • <Namespace>/<ImageName>:<tag>
  • docker.io/library/nginx:latest

기타
쿠버네티스 - 다수의 컨테이너 관리

기타

  • custom windows : 나만의 윈도우 iso 파일 세팅 가능

0개의 댓글