본문 바로가기
9. 실습 Hands-on Lab

OCI 시작하기 - 컴퓨트 인스턴스 Compute Instance in public subnet

by primely 2022. 1. 25.

OCI에서 컴퓨트 인스턴스 Compute Instance를 만들어 보도록 하겠습니다.

Compute Instance관련하여 아래 내용들을 다룰 예정입니다.

 

1. VCN 생성

2. Compute Instance생성

3. Compute Instance를 SSH로 접속하기

4. Compute Instance를 SFTP로 접속하기

 

그럼 하나씩 살펴볼까요?

1. VCN 생성

Compute Instance를 만들기 위해선 사전에 VCN(Vritual Cloud Networks)이 만들어져 있어야 합니다

Networking > Virtual Cloud Networks 메뉴를 선택합니다

VCN에 대한 자세한 설명은 VCN을 다루는 문서에서 상세히 설명하도록 하겠습니다.

여기서는 간단하게 Compute Instance가 Network을 활용하기 위해선 VCN이 필요하다라는 정도로 이해하면 될것 같습니다

메뉴를 선택하면 아래와 같은 화면이 나타납니다

여기서 두 부분을 살펴보겠습니다

 

먼저 Compartment는 OCI를 시작하는데 있어 가장 중요한 개념중 하나입니다.

Compartment는 여러분들이 OCI에서 만드는 Resource(ex. network, compute instance, storage..)를 담을 수 있는 논리적 그릇입니다. 즉 모든 Resource는 하나의 Compartment에 담겨 있어야 된다는 의미이고 또 Resource에 접근하려면 먼저 Compartment를 먼저 선택해야 한다는 의미입니다.

 

여기서는 Root Compartment를 선택하고 진행하겠습니다(이름끝에 (root)라고 표시된 Compartment입니다)

 

VCN을 생성하는 방법은 2가지가 있습니다.

첫째로 Create VCN을 통해 VCN을 만들 수 있습니다. 이 방식은 VCN을 구성하는 요소들을 모두 직접만들어야 하므로 처음 시작하기에는 적합하지 않습니다.

 

둘째로 Start VCN Wizard를 통해서 만들 수 있습니다. 이 방식은 NW구성에 필요한 기본적인 요소들을 한번에 만들어 줍니다. VPN이 필요한 NW구성을 하고자 한다면 두번째인 Add Internet Connectivity and Site-to-Site VPN to a VCN을 선택하면 됩니다.

Note. 아래 VCN Wizard를 통해서 VCN을 생성하면 아래 요소들이 한번에 생성이 됩니다
- VCN: software-defined NW로 NW를 구성하는 기본단위이고 여러 subnet을 포함할 수 있습니다.
- Public Subnet: VCN내에 외부Internet과 연결될 수 있는 하위 NW입니다
- Private Subnet:VCN내에 외부Internet과 연결되지 않는 하위 NW입니다
- Internet Gateway: 외부Internet과의 연결은 Internet gateway를 통해 가능합니다
- NAT Gateway: 내부에서 외부로의 연결만 허용하는 gateway입니다
- Service Gateway: Internet을 거치지 않고 OCI내부의 Resource에 접근하게 해주는 Gateway입니다

우선 VCN Name에 적당한 VCN 이름을 입력합니다. 그리고 나머지 값들은 Default값으로 두고 Next를 누룹니다.

Note. Configure VCN and Subnet 부분에 VCN, Public Subnet, Private Subnet의 각 CIDR Block이 설정되었습니다.
Public CIDR Block과 Private CIDR Block은 서로 중복되면 안되며 VCN CIDR Block내에 존재해야 합니다

생성이 되는 VCN 요소들이 나열됩니다. Create를 눌러 VCN을 생성합니다.

 

Note.  이 과정을 통해 만들어 지는 것들
- Public Subnet, Private Subnet
- Internet Gateway, NAT Gateway, Service Gateway
- Routing Table 설정
- Security List 설정

2. Compute Instance 생성

메뉴에서 compute > instances를 선택하면 아래와 같은 화면이 조회됩니다.

Compute Instance를 만들기 위해 Create Instance 버튼을 클릭합니다.

우선 Compute Instance의 이름을 적습니다.

국내 Region은 서울과 춘천에 있습니다. 각 Region마다 여러개의 Availability Domain이 존재할 수 있지만 국내에서는 각 Region마다 1개씩의 Availability Domain이 존재합니다.

Note. 각 Availability Domain은 3개씩의 Fault Domain이 존재합니다. 각 Fault Domain은 각 Domain의 서버에 문제발생 시 서로간에 영향을 주지 않습니다. 따라서 Load Balancing구성 시 각기 다른 Fault Domain에 Compute Instance를 구성하면 됩니다.

 

그 다음 Image와 Shape를 설정합니다.

Image는 OS와 Built in된 SW를 선택하는 것입니다. 예를들어 Marketplace에서 Oracle Linux + Oracle Database 19c가 설치된 Image를 선택할 수 있습니다.

Shape는 Instance Type과 Shape series를 선택할 수 있습니다. 이 두가지를 간단히 설명하면 다음과 같습니다.

- Instance Type: Virtual Machine과 Bare metal machine 중 하나를 선택합니다.

- Shape series: CPU개수, Memory, Network Bandwidth등을 결정합니다.

 

Resource Billing for Stopped Instances

https://docs.oracle.com/en-us/iaas/Content/Compute/Tasks/resource-billing-stopped-instances.htm#top

 

Change shape를 눌러 Shape를 아래 그림과 같이 변경해 보도록 하겠습니다

계속 Compute Instance를 설정을 위해 Networking section을 설정합니다.

VCN과 Subnet을 선택합니다. Subnet은 외부에서 Compute Instance에 접속할 수 있도록 Public Subnet을 선택합니다.

Compute Instance에 접속할 수 있는 SSH key pair을 Down받고 Create버튼을 눌러 Compute Instance를 생성합니다.

Note. 다운 받아 놓은 SSH key pair가 존재한다면 Upload public key file을 check하여 가지고 있는 public key를 upload할 수 있습니다.

 

3. Troubleshoot instance

 

4. Custom Image

회사내에서 사용할 표준 Compute환경(환경Setup, SW설치등)을 Custom Image로 만든 후 Compute 생성 시 Base Template로 사용할 수 있다.

 

여러 Region에서 함께 사용할 수 있도록 만들어진 Custom Image를 Object Storage로 Export하기

 

Object Storage Bucket로 Export한다

 

Object Storage Bucket에 저장된 Custom Image

 

Custom Image로 Compute를 생성하기 위해선 먼저 Import Image를 해야한다.

Object Storage Bucket에 저장된 Custom Image를 가져온다.

다른 Resion의 Object Storage Bucket에 저장되어 있다면 Object Storage URL을 통해서 가져올 수 있다.

(Create Pre-Authenticated Request로 Object Storage URL생성)

 

Custom Image가 Import되면 Create Instance로 Compute Instance를 생성할 수 있다.

 

또 Instance 생성 시 My Image에서 선택하여 Instance를 생성할 수 있다.

5. Compute Instance를 SSH로 접속하기

putty를 사용해서 접속하도록 하겠습니다. 우선 putty로 접속하기 위해선 private key를 ppk파일로변경 합니다

Load버튼을 눌러 private key를 선택하고 Save private key를 눌러 ppk파일로 변환합니다.

IP address를 입력하고 Connection type으로 SSH를 선택합니다

SSH > Auth를 선택하고 좀전에 변환한 Private key ppk파일을 선택하고 Open을 누룹니다.

login as에 opc를 입력하고 Enter를 하면 접속이 성공됩니다.

6. Compute Instance를 sFTP로 접속하기

sFTP접속을 위해 FileZilla를 사용하도록 하겠습니다.

 

FileZilla를 띄우고 아래처럼 Compute Instance에 접속합니다. 키파일은 ppk파일을 선택합니다.

그리면 다음과 같이 접속된 환경을 볼 수 있습니다

 

SSH key를 분실하였을 때 복구하기 위해 아래Link를 참고하세요

https://www.youtube.com/watch?v=Rko0ecqz1Vo 

Compute비용계산시 고려해야 할 부분

https://oracle-cloud.tistory.com/entry/Resource%EB%B3%84-%EB%B9%84%EC%9A%A9%EA%B3%84%EC%82%B0-%EC%8B%9C-%EA%B3%A0%EB%A0%A4%ED%95%B4%EC%95%BC%ED%95%A0-%EB%B6%80%EB%B6%84%EB%93%A4

7. Reference

1. Putty Package 설치방법 참조: https://ndb796.tistory.com/461
2 FileZilla 설치방법 참조: https://parkjh7764.tistory.com/35

3.LiveLabs: Get Started with Oracle Cloud Infrastructure Core Services

https://apexapps.oracle.com/pls/apex/r/dbpm/livelabs/view-workshop?wid=648&clear=RR,180&session=11452489310856 

4. Compute Instacne에 접속하기

https://docs.oracle.com/ko/learn/access-oci-linux-instance/index.html#access-and-manage-a-linux-compute-instance-using-oracle-cloud-infrastructure


작성자: 손창호(primelyson@gmail.com) / Cloud Engineer, 정보시스템감리사, DAP, PIA

개인의 시간을 할애하여 작성된 글로서 글의 내용에 오류가 있을 수 있으며, 글 속의 의견은 개인적인 의견입니다.

댓글