[Livelog:OCI] Linux VM 배포


이번 Livelog에서는 OCI에 Linux VM을 배포하는 과정을 소개하겠습니다. 이번 Livelog는 OCI 계정이 준비된 상태고, OCI 기본설정(사용자, 그룹, Policy, Compartment, VCN)이 준비된 상태를 가정합니다. 현재 OCI 계정과 기본 환경 구성이 안된 상태라면 다음 두 개 Livelog를 참조하여 사전 준비를 먼저 진행해 주시기 바랍니다.

  • 아래 이미지를 클릭하면 해당 Livelog로 이동합니다.
Livelog1: OCI 계정 생성 Livelog2: OCI 기본 설정

Livelog는 동영상 데모를 중심으로 작성된 콘텐츠입니다. Livelog는 Youtube에 배포된 동영상과 블로그 문서로 구성됩니다. Livelog의 블로그 문서는 동영상을 진행하기 위한 보조 정보를 중심으로 작성됩니다.

Livelog 진행 환경

이번 Livelog에서 사용하는 OCI Tenancy(계정) 정보는 다음과 같습니다.

  • OCI Tenancy 명: taewandemo003
  • Admin User(IDCS): admin (관리자 ID)

이번 Livelog에서는 다음과 같은 자원을 이용하여 진행합니다.

자원유형 대상자원 설명
OCI User developer01 개발자 유저
OCI Compartment demo
VCN demovcn Public Subnet-demovcn 서브넷
Policy basic_policy
cloudshell_policy

VM 배포 절차

  • SSH 접속을 위한 key-pair 생성 (@cloud shell)
  • VM 이미지 생성
    • OS: Oracle Linux 7.9
    • Shape: VM.Standard.E3.Flex
    • CPU: 2
    • Memory: 32
  • VCN(demovcn)의 인터넷 접속(ingress) 설정
  • VM에 ssh 접속 (@cloud shell)
  • Linux 방화벽 설정
  • Apache 서버 설치
  • php 설치
  • Linux VM Scale-up
  • Linux VM 정지/재시작/종료

OCI Console 접속

https://cloud.oracle.com 로그인 페이지에서 사용할 OCI 계정(taewandemo003)에 developer01 사용자로 로그인합니다.

SSH 접속을 위한 key-pair 생성

OCI Console에서 Cloud Shell에 접속한 다음에 ssh-keygen 명령으로 새로운 key-pair를 생성합니다.

# -f 파일명 옵션:  livelog_rsa, livelog_rsa.pub 생성
ssh-keygen -t rsa -b 2048 -f ~/.ssh/livelog_rsa

VM 생성

VM을 설정하기 위하여 다음과 같이 설정합니다.

항목 설정값 설명
Name livelog-web-vm01
Compartment demo
Availability Domain AD 1
Image Oracle Linux 7.9
Shape series AMD OCPU & Memory 개별적으로 설정
Shape VM.Standard.E3.Flex OCPU: 2, Memory: 32GB

VCN(demovcn)의 인터넷 접속 설정

demovcn의 Public Subnet-demovcn 서브넷의 Security List에 80 포트를 오픈하는 설정을 추가합니다.

  • VCN: demovcn
  • Subnet: Public Subnet-demovcn
  • Security List: Default Security List for demovcn
  • Ingress Rule 추가
Source CIDR IP Protocol Source Port Range Target Port Range Description
0.0.0.0/0 TCP All 80 Allow HTTP connections

VM에 ssh 접속 (@cloud shell)

cloud shell에서 livelog-web-vm01 VM의 public IP로 ssh 접속을 시도합니다. ssh 접속 시 VM의 OS user는 opc 인증서는 ~/.ssh/livelog-web-vm01를 사용합니다.

# ssh 접속 명령
ssh -i ~/.ssh/livelog-web-vm01 opc@<VM_PUBLIC_IP_ADDRESS>

Linux 방화벽 설정

Oracle Linux의 방화벽에서 80(http) 포트를 다음과 같은 명령으로 오픈합니다.

sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --reload

Apache 서버와 PHP 설치

다음과 같은 명령으로 Apache와 PHP를 설치합니다.

sudo yum install -y httpd
sudo systemctl enable httpd
sudo systemctl restart httpd
# Oracle Linux package repos 
sudo yum install -y oracle-php-release-el7
sudo yum install -y php
sudo systemctl restart httpd

다음 명령으로 php 버전을 확인합니다.

php -v

/var/www/html/info.php 파일에 다음 내용을 저장합니다.

<?php
phpinfo();
?

브라우저로 다음 주소를 접근합니다.
- http://[VM_PUBLIC_IP_ADDRESS]/info.php

Linux VM 관리

  • Linux VM Scale-up
  • Linux VM 정지/시작
  • Linux VM 제거

참고 문서

김태완 avatar
작성자: 김태완
1999년 부터 Java, Framework, Middleware, SOA, DB Replication, Cache, CEP, NoSQL, Big Data, Cloud를 키워드로 살아왔습니다. 현재는 빅데이터와 Machine Learning을 중점에 두고 있습니다.
E-mail: taewanme@gmail.com