[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 제거