Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 자바
- 싱글톤패턴
- 버블정렬
- 백준 11659
- String.valueOf()
- 클라우드에서 도커 실행하기
- 스택
- Array.asList
- OOP
- vm인스턴스생성
- List.of
- 코드스테이츠
- 프로그래머스
- Spring Web MVC
- 코드스테이츠 백엔드
- 백준
- 인텔리제이
- 코딩테스트
- GCP
- java
- Spring MVC 구성요소
- 투포인터알고리즘
- 알고리즘
- 재귀함수
- Spring MVC 동작원리
- 재귀와반복문
- MySQL
- 11659
- 성능테스트툴
- 구간합구하기
Archives
- Today
- Total
순간을 기록으로
[인프라] 물리서버와 가상서버 차이는 무엇일까 본문
개요
배포를 공부하면서 클라우드를 사용하게 되었고 기본적인 개념이 필요해서 작성하게 되었습니다.
용어 정리
- 가상화(virtualization): 소프트웨어를 사용해서 한 컴퓨터 안에 있는 하드웨어 자원(cpu, 메모리, 스토리지 등)을 가상머신(VM,가상서버)이라고 불리는 다수의 가상 컴퓨터에게 분할해서 나누어 줄 수 있도록 하기 위해, 컴퓨터 하드웨어에서 추상화 계층을 만드는 것.
- 실제 기반 컴퓨터 하나만 실행되지만, 각각의 vm에서 운영체제를 실행하여 마치 여러 대의 컴퓨터가 동작하는 것 처럼 만들 수 있다.
- 결국 가상화의 목적은 물리적인 하드웨어 자원을 효율적으로 사용해서 하드웨어 ROI(투자 수익율)을 올릴 수 있습니다.
- 오늘날 가상화 기술을 사용하는 클라우드 제공자(aws, gcp)는 물리적 컴퓨터의 하드웨어를 사용해서 사용자(서버를 구축하고 싶은 개발자 등)에게 서비스를 제공한다.
- 장점
- 하드웨어 리소스를 효율적으로 사용할 수 있다.
- 과거에는 컴퓨터 하나에 서버 하나를 구축했다. 그래서 하드웨어 성능이 엄청 좋아도 서버가 그만큼의 성능을 요구하지 않으면 하드웨어 자원이 낭비되었다.
- 반면, 가상화를 하면 엄청 좋은 단일 컴퓨터 하나를 통해 여러 서버를 만들 수 있고, 성능을 조절할 수 있다.
- 관리가 편하다
- 하드웨어 자원을 논리적으로 설계하여 소프트웨어적으로 관리하기 때문에 관리하기가 더 쉽다.
- 하드웨어 리소스를 효율적으로 사용할 수 있다.
- 서버 가상화: 한 대의 물리적 서버를 가상화하여 여러 대의 가상 서버를 만드는 것
- 가상 서버는 다른 말로 VM(Virtual Macine)이라고도 합니다.
- 하이퍼바이저(Hypervisor): 가상머신을 생성/삭제를 담당하고, 가상 머신에서 동작할 게스트(Guest) 운영체제를 실행시킵니다.
- VM 이미지: VM을 배포(생성,Deploy)할 경우 동작하는 이미지.
물리서버와 가상서버
- 물리 서버(Physical Server): 하드웨어(물리적) 자원을 한 사용자가 단독으로 사용합니다. 주로 서버를 호스팅 할 때 사용합니다.
- 한 컴퓨터의 하드웨어 자원을 한 사람이 모두 사용하기 때문에 성능이 좋습니다.
- 한 명인 사용자가 자원을 자유롭게 관리/운영합니다.
- 사용자가 늘어나더라도 자원을 추가할 수 없습니다.
- 웹 호스팅: 하드웨어 자원을 여러 사용자가 나누어서 사용합니다.
- 하드웨어 자원을 여러 사용자가 공용으로 사용합니다.
- 자원을 공유하기 때문에 다른 사용자의 사용량이 성능에 영향을 줍니다.
- 가상 서버: 하드웨어 자원을 여러 개로 분할하여 개별 서버에서 각각 사용합니다.
- 공용 스토리지가 있어 자유롭게 디스크 자원을 사용할 수 있습니다.
- 사용자가 직접 권리자 권한을 갖고 자원을 직접 관리할 수 있습니다.
REFERENCE
https://www.ibm.com/kr-ko/cloud/learn/virtualization-a-complete-guide
'Development > Cloud' 카테고리의 다른 글
[GCP] GCP를 이용해서 메이븐 프로젝트를 배포하기 (4) | 2022.05.10 |
---|---|
[GCP] VM 인스턴스에 도커 설치후 Getting Start 페이지 띄우기 (0) | 2022.04.26 |
[GCP] GCP에서 VM인스턴스 생성하고 접속하기 | 클라우드 (0) | 2022.04.20 |
개발 및 운영에 필요한 서버 종류 | 개발환경 종류 (0) | 2022.03.30 |
Deploy와 Release의 차이점 (0) | 2022.03.30 |
Comments