1. Server
- 서버를 물리적으로 구매하지 않고 클라우드 환경에서 서버를 생성하고 사용할 수 있게 해주는 서비스
- XEM 하이퍼바이저 기반(2세대), KVM 하이버파이저 기반(3세대) 서버를 지원
1-1. 하이퍼바이저
- 가상화 기술을 사용하여 하나의 물리적 컴퓨터(호스트 시스템)에서 여러 개의 가상 머신(가상 환경 또는 게스트 시스템)을 실행하도록 도와주는 소프트웨어 또는 하드웨어 컴포넌트입니다.
- 가상화된 환경에서 각 가상 머신이 독립적으로 실행되도록 제어하며, 호스트 시스템의 리소스를 가상 머신 간에 나누고 격리합니다.
XEN
- 하드웨어 위에 가상화 계층을 형성하여 가상머신들에게 분리된 가상의 하드웨어를 제공한다.
- 따라서 각 가상머신들은 서로에 게 영향을 미치지 않고, 완벽하게 분리된 가상화 환경에서 각각의 환경에 맞는 서비스를 제공할 수 있다.
- 하지만 VM의 대부분 동작이 하이퍼바이저의 중계를 통해 이루어지므로 병목현상에 따른 성능저하 가 발생하게 된다
KVM
- KVM은 커널의 모듈로 포함 되어 있으며, QEMU라는 CPU에뮬레 이터를 사용하기 때문에 QEMU-kvm 유틸리티가 지원되어야 KVM 을 구동 시킬 수 있다.
- QEMU는 하드웨어를 에뮬레이터 하여 Xen 또는 KVM 하이퍼바이저의 가상화 기능을 도와주는 역할을 수행한다
- KVM 위에 설치된 가상머신은 호스트 서버 입장에서 하나의 프로세스로 간주되기 때문에 기존의 Xen에서 발생되는 오버헤드가 거의 없는 장점을 갖고 있다
2. Server 특징
1. 편리한 서버 생성
> NCP 콘솔에서 몇분만에 서버를 생성할 수 있으며 운영 체제를 별도로 설치하지 않아도 선택된 이미지에 따라 서버를 제공
> 스펙 변경 기능을 통해 서버를 새로 생성하지 않고 서버의 CPU와 Memory를 조정
2. 모니터링 기능 제공
> 서버 운영에 필요한 모니터링 기능을 제공하며 CPU, 네트워크, 메모리, 디스크나 서버의 상태 변화에 따른 이벤트 알림도 가능
> Cloud Insight로 대시보드를 통해 시각화된 성능/운영 지표를 확인 가능
3. 효과적인 비용 관리
> 서버 사용량과 사용 시간만큼만 비용을 지불
> 서비스 운영 중에도 자유롭게 서버를 추가하거나 반납할 수 있다.
4. 내 서버 이미지 기능 제공
> 현재 운영하고 있는 서버의 현재 상태와 정보를 이미지로 저장
> 내 서버 이미지를 사용해 동일한 데이터를 가진 서버를 생성하거나 복구, 또는 스펙을 변경할 수 있다.
5. 세분화된 서버 타입 제공
> 서비스 규모와 사용 목적에 따라 적합한 성능의 서버를 선택할 수 있다록 다양한 서버 타입을 제공
6. Init Script 기능
> 서버가 생성될때 딱 한번 실행되는 스크립트로 필요한 패키지 설치, 서비스 등록 등을 수행
> 같은 서버를 여러대 생성하거나 초기 환경 관리가 필요한 경우에 사용
3. Server 생성
1. Service -> Server를 클릭합니다.
2. 3세대의 Micro 서버는 결제 정보 등록 시 1년간 무료 사용이 가능하지만 1대만 생성 가능하기에 Private, Public으로 번갈아가면서 생성해보겠습니다.
3. 서버 생성 콘솔 선택창이 뜨는데 3세대 서버를 생성을 위해 신규 콘솔 화면을 선택 후 서버 생성을 클릭합니다.
4. 바로 보이는 창은 최신 서버이미지만 보이니 NCP 서버 이미지를 클릭해봅니다.
5. NCP에서 제공중인 다양한 서버 이미지가 보입니다.
3세대(KVM) 서버 이미지만 보고 싶으니 2세대(XEN)을 클릭해서 체크해제 해줍니다.
6. Micro 서버를 지원하는 이미지가 보입니다. Ubuntu에 있는 다음을 클릭합니다.
7. 서버 정보들을 설정하고 다음을 클릭합니다.
VPC : 서버가 배치될 VPC를 선택합니다. (test vpc만 만들었으니 test 선택)
Subnet : 선택된 VPC 안에 있는 Subnet중 원하는 Subnet을 선택합니다. (이번에는 Private Subnet 선택)
서버 스펙 : 3세대로 생성을 눌렀기 때문에 지금은 Micro만 선택이 가능합니다.
요금제 선택 : 월, 시간 중 원하는 요금제 선택(Micro는 현재 월만 선택 가능)
서버 개수 : 한번에 같은 스펙 서버를 여러개 만들 수 있지만 지금은 1개만 생성합니다.
서버 이름 : 원하는 이름 작성
Network Interface : 선택된 Subnet의 범위 내에서 원하는 IP를 수동으로 설정할 수도 있지만
입력하지 않고 추가를 눌러 자동할당 해줍니다.
공인 IP : Public Subnet에 배치되는 서버에는 공인 IP를 할당할 수 있으며 생성시에 바로 할당할 수도 있고
나중에 따로 할당할 수도 있습니다. 지금은 Private Subnet이라 공인IP 할당이 불가능한 상태 입니다.
물리 배치 그룹 : 서버들을 하나의 그룹으로 묶어 해당 그룹에 속한 서버들을 클러스터에 배치할 때 어떻게 할 것인가 하는 옵션 입니다.
반납 보호 : 실수로 서버를 반납하는 경우를 방지하는 옵션으로 해당 옵션을 사용하면 해제 전까지 서버를 반납할 수 없습니다.
메모 : 어떤 서버인가 콘솔에서 쉽게 확인하고 싶을때 넣는 메모 입니다.
Script : 서버가 생성될때만 설정된 Script가 딱 한번 수행되는 기능입니다. 나중에 사용해보겠습니다.
8. 2세대 서버들은 기본 스토리지가 OS별로 고정되어 있지만 3세대 서버는 기본 스토리지를 10~2040GB까지 설정할 수 있습니다.
Micro 서버는 기본 스토리지 10GB까지만 무료이므로 그대로 두고 다음을 클릭합니다.
9. 서버에 사용될 인증키를 생성 및 저장하고 다음을 클릭합니다.
- 서버 생성시 인증키를 적용하게 되는데 이 인증키를 통해 서버의 초기 패스워드를 확인 할 수 있으니 인증키를 잘 보관하셔야 합니다.
10. Subnet 단위로 적용되는 NACL이 1차 보안이라면 서버 단위로 적용되는 ACG는 2차 보안입니다.
- 서버마다 3개의 ACG를 적용할 수 있는데 지금은 ACG를 따로 생성하지 않았으니 default acg를 선택하고 다음을 클릭합니다.
11. 설정된 사항들을 확인하고 서버생성을 클릭합니다.
12. 확인을 클릭합니다.
13. 상태가 운영중으로 바뀌기까지 시간이 조금 걸립니다.
상태가 운영중으로 바뀌었다면 상단의 서버 관리 및 설정 변경 -> 관리자 비밀번호 확인을 클릭합니다.
14. 관리자 비밀번호 확인을 위해서 아까 생성했던 인증키가 필요합니다.
해당 인증키를 마우스로 파일을 끌고 오거나 창을 클릭하여 선택해줍니다.
15. 해당 인증키가 제대로 선택되었는지 확인하고 비밀번호 확인을 클릭합니다.
16. 서버의 관리자 ID와 PW를 확인하고 확인을 클릭합니다.
17. 서버에 접속해보고 싶지만 이 서버는 Private에 생성하여 공인IP가 없기 때문에 Public에 Bastion Host를 만들거나 IPsec VPN, SSL VPN을 통해서만 접속할 수 있습니다.
18. Public으로 서버를 재생성하기 위해 서버를 선택 후 정지를 클릭합니다.
19. 서버가 정지상태가 되었다면 다시 서버를 선택 후 반납을 클릭합니다.
20. 서버를 반납하게 되면 해당 서버에 있는 데이터는 전부 날라가니 중요한 데이터가 있다면 꼭 다른 곳에 백업해두도록 합니다.
21. 서버가 밥납되면 다시 서버 생성을 클릭합니다.
22. 이전과 동일하게 3세대 Ubuntu로 생성하겠습니다.
23. 이번에는 Public Subnet으로 설정하고 다음을 클릭합니다.
공인 IP는 서버 생성시 바로 할당할 수 있지만 지금은 바로 할당하지 않고 미설정으로 하고 나중에 따로 할당하겠습니다.
24. 스토리지도 기본으로 두고 다음을 클릭합니다.
25. 인증키도 먼저 생성해둔 인증키를 그대로 사용하겠습니다. 다음을 클릭합니다.
26. ACG 또한 default ACG를 선택하고 다음을 클릭합니다.
27. 서버 정보 확인 후 서버 생성을 클릭합니다.
28. 서버가 운영중으로 바뀌었다면 서버 관리 및 설정 변경 -> 관리자 비밀번호를 클릭합니다.
29. 인증키 선택 후 비밀번호 확인을 클릭합니다.
30. 서버의 ID와 PW를 확인합니다.
외부통신이 가능한 Public에 서버를 생성했지만 서버에 공인IP가 없어 접속이 불가능한 상황 입니다.
다음 글에서는 서버에 공인IP를 할당해보겠습니다.
Public IP : https://angrycloud.tistory.com/22