[리눅스]우분투 리눅스 실습 환경 구축.
리눅스
우분투 리눅스 실습 환경 구축
리눅스 설치가 어려운 이유
윈도우와 리눅스의 멀티부팅의 문제점은 하드디스크 파티셔닝이다. 이 문제점을 해결하기 위해 가상화 기술을 사용한다.
가상화란
가상 애플리케이션, 서버, 스토리지 및 네트워그와 같은 물리적 장치를 소프트웨어 기반 또는 가상 표현을 작성하는 프로세스
가상화의 이점
가상화는 간단하게 관리하고 소유 및 운영 비용을 절감한다(가상화 기술 적용 후 총소유비용이 약 30%감소, 물리적 서버 대수를 1/3로 감소가능). 애플리케이션 및 리소스의 빠른 프로비저닝
서버 가상화 기술 비교
플랫폼 기반 가상화
- 컴퓨팅 자원(CPU, Memory)을 가상화해 서비스 제공
- 업무와 서버 하드웨어를 분리하고, OS로부터 독립성을 확보하여 물리적인 서버 수 및 TCO절감
하이퍼바이저 가상화 기술
- 가상 서버와 하드웨어 사이에 추상화 레이어(가상화계층을 갖는 전용 커널)를 배치하는 구조
- CPU명령에 끼어들어 어떤 OS라도 수정하지 않고 가상머신 위에 바로 인스톨 기능
- 많은 종류의 게스트 OS를 지원하고 싶을 때, 혹은 소프트웨어 품질보증이나 테스트시 사용
프로비저닝
Provisioning이란 “제공하는 것”이다. 어떤 종류의 서비스든 사용자의 요구에 맞게 시스템 자체를 제공하는 것을 말하며 IT인프라 자원을 사용자나 비즈니스 요구사항에 맞게 할당, 배치, 배포해 시스템을 사용할 수 있도록 제공하는 것이다.
1. 서버 리소스 프로비저닝 : 실제 서버의 자원을 할당해주고 운영할 수 있게 제공
2. OS 프로비저닝 : OS를 서버에 설피하고 구성작업을 해서 사용할 수 있도록 제공
3. 소프트웨어 프로비저닝 : WAS, DBMS등의 소프트웨어를 설치하고 세팅, 실행할 수 있도록 제공
프로비저닝의 종류
어카운트 프로비저닝 : 접근권한을 가진 계정을 제공해주는 것
스토리지 프로비저닝 : 데이터를 저장하고 관리할 수 있는 스토리지를 제공할 수 있다.
클라우드를 도입하거나 클라우드 환경에서 사용하는 것은 클라우드 공급자로부터 서비스를 프로비저닝 받아 사용한다.
가상화 작동방식
먼저 오늘날은 각 서버의 용량을 조금씩 운영하는 여러 서버를 배포해야 한다. 따라서 엄청 비효율적이고 과도한 운영비용이 발생한다. 가상화는 하드웨어 기능을 시뮬레이션하고 가상시스템과 여러 운영체제 및 응용 프로그램을 실행할 수 있다. 이에 따라 효율적이게 된다.
가상 컴퓨터 시스템은 가상머신(VM)으로 운영체제와 응용 프로그램이 내부에 있는 완전히 격리된 소프트웨어 컨테이너 자체 포함된 각 VM은 완전히 독립적이다.
서버 가상화
서버 가상화를 통해 여러 운영체제를 단일 물리적 서버에서 매우 효율적인 가상 머신으로 실행할 수 있다. 이점으로 IT효율성 향상, 운영 비용 절감, 높은 서버 가용성, 서버스프롤 및 복잡성 제거가 있다.
서버 스프롤은 마이크로 서비스의가장 일반적인 배포 모델 중 하나로 한 서버에 하나의 마이크로 서비스 인스턴스를 배포하는 것이다. 여기서 인스턴스는 실행중인 임의의 프로세스, 백스라운드 프로세스(DB)다.
마이크로 서비스 아키텍쳐란
마이크로 서비스 아키텍쳐는 하나의 큰 애플리케이션을 여러 개의 작은 애플리케이션으로 쪼개여 변경과 조합이 가능하도록 만든 아키텍처다. 애플리케이션을 특화된 기능별로 나누게 되면 자연스럽게 애플리케이션의 추상화가 가능해진다.
많은 기업들은 서비스를 분리해 애플리케이션을 만들었으며, 최근 REST API의 일반화, 도커(Docker)와 같은 컨테이너 기술의 발전에 힘입어 마이크로 서비스는 더 손쉽게 구현될 수 있게 되었다.
- REST(Representational State Transfer) : 이름(자원의 표현)으로 구현하여 해당 자원의 상태(정보)를 주고받는 모든 것을 의미
가상머신의 주요 속성
1. 파티셔닝 : 하나의 물리적 시스템에서 여러 운영체제를 실행한다. 가상 시스템간에 시스템 리소스를 나누어 사용한다.
2. 격리 : 하드웨어 수준에서 오류 및 보안 격리를 제공한다(고급 리소스 제어로 성능을 유지).
3. 캡슐화 : 가상머신의 전체상태를 파일에 저장가능(쉽게 가상머신을 이동 및 복사)
4. 하드웨어 독립 : 가상머신을 물리적 서버로 프로비저닝 하거나 마이그레이션이 가능
5. 1대의 PC만으로 학습 – 문제점 네트워크 환경에서 작업 불가능
6. 실무작업 환경 – 네트워크 환경
7. 가상머신과 멀티부팅의 차이점 – 하드 디스크(파티션) 분할 여부
가상머신과 가상 머신 소프트웨어의 개념
가상머신 : 가상으로 존재하는 컴퓨터
가상머신 소프트웨어 : 가상머신을 생성하는 소프트웨어로 컴퓨터에 설치된(Host OS)안에 가상의 컴퓨터를 만들고, 그 가상의 컴퓨터 안에 또 다른 운영체제(Guset OS)를 설치/운영할 수 있도록 만들어진 소프트웨어
가상화가 유용한 이유
1. 여러 운영체제를 동시에 실행가능
2. 더 쉬운 소프트웨어 설치(소프트웨어 공급업체가 가상머신을 사용하여 전체 소프트웨어를 구성 제공 가능)
3. 테스트 및 재해복구(가상머신과 하드디스크는 호스트 간에 복사, 백업, 전송이 가능한 컨테이너로 간주)
4. 스냅샷(snapshot) 지원 – 이전 상태의 가상머신으로 되돌리기 가능(시스템의 에러로 인해 이전상태로 복구하고자 할 때 사용하는 기능 – 중요하다.)
5. 인프라 통합 – 가상화는 하드웨어 및 전력 사용비를 감소
버추얼 박스
인텔VT 및 AMD AMD-V 하드웨어 보조 가상화를 지원하고 하이퍼 바이저 가상화 방식이다.
버추얼 박스를 사용하기전 Hyper-V를 비활성화 하고 CPU의 가상화 지원 여부를 확인한다. 다음 www.virtualbox.org에 가서 다운로드한다. 설치가 완료된 후 설치가완료된후VirtualBox Extension Pack을 설치한다. 이제 이름, 종류, 버전, 메모리, 하드디스크 용량을 선택한 후 가상머신을 만들어 준다.
버추얼 박스 하드 디스크 파일 종류
-VDI(Virtual Disk Image) -Oracle
-VHD(Virtual Hard Disk) -MS
-VMDK(Virtual Machine Disk) -VMWare
버추얼박스 네트워크 환경설정
NAT(Network Address Translation)
NAT는 네트워크 주소를 변환하는 방식으로 네트워크 주소는 IP를 의히한다. 가상머신에서는 자체 NAT 라우터가 내장되 사설 IP를 할당 받아 호스트와 연결한다.
즉 NAT는 공인 IP를 사설IP로 변환하고 연결해주는 것이다. 반대로 사설IP를 공인 IP로 변환하고 연결해주는 역할도 한다. 가상머신은 호스트에서 받은 공인IP를 NAT를 통해서 사설 IP를 할당 받고 호스트의 공인 IP롸 연결되어 인터넷을 사용할 수 있다.
Bridge 방식
Bridge 방식은 여러 개의 네트워크가 마치 하나의 네트워크처럼 사용하는 방식으로 물리적인 네트워크 장치를 공유해서 직접 네트워크 장치와 연결한다.
프록시
프록시 서버는 다른 네트워크 서비스에 간접적으로 접속할 수 있게해주는 응용 프로그램으로 서버와 클라이언트 사이에 중계기로서 대리로 통신하는 것을 프록시라 하면 중계기능을 하는 것을 프록시 서버라 한다.
댓글남기기