참고:
- 이 자습서는 Oracle에서 제공하는 무료 실습 환경에서 사용할 수 있습니다.
- Oracle Cloud Infrastructure 인증서, 테넌시 및 구획에 대한 예제 값이 사용됩니다. 랩을 완료한 후에는 이러한 값을 클라우드 환경과 관련된 값으로 대체하십시오.
컴퓨트 인스턴스에 웹 서버 생성
소개
Oracle Cloud Infrastructure Compute를 통해 인스턴스라고 하는 컴퓨팅 호스트를 프로비저닝하고 관리할 수 있습니다. 컴퓨트 및 애플리케이션 요구사항을 충족하기 위해 필요에 따라 인스턴스를 실행할 수 있습니다. 인스턴스를 시작한 후 컴퓨터에서 안전하게 해당 인스턴스에 액세스하고, 인스턴스를 재시작하고, 볼륨을 연결 및 분리하고, 작업이 완료되면 종료할 수 있습니다. 인스턴스의 로컬 드라이브를 종료하면 변경된 내용이 손실됩니다. 인스턴스에 연결된 볼륨에 저장된 변경 사항은 유지됩니다.
필요 조건
-
Oracle Cloud Infrastructure Compute 인스턴스 작업에 대한 중요한 정보는 컴퓨트 인스턴스에 대한 최적의 방법을 검토하십시오.
-
이 사용지침서에서는 Oracle Cloud Infrastructure에서 SSH 키를 생성하는 방법을 알아봅니다. SSH 키를 계속 사용할 수 있습니다.
컴퓨트 인스턴스에 웹 서버 생성
Oracle Cloud Infrastructure는 베어메탈 및 가상 머신 인스턴스를 모두 제공합니다.
- 베어 메탈 - 베어 메탈 컴퓨팅 인스턴스는 고성능 및 강력한 격리를 위한 전용 물리적 서버 액세스를 제공합니다.
- 가상 머신 - VM(가상 머신)은 물리적 베어메탈 하드웨어에서 실행되는 독립적인 컴퓨팅 환경입니다. 가상화를 통해 서로 격리된 여러 VM을 실행할 수 있습니다. VM은 전체 물리적 시스템의 성능과 리소스(CPU, 메모리, 네트워크 대역폭, 스토리지)가 필요하지 않은 애플리케이션을 실행하는 데 적합합니다.
Oracle Cloud Infrastructure VM 컴퓨트 인스턴스는 클라우드에 최적화된 하드웨어, 펌웨어, 소프트웨어 스택 및 네트워킹 인프라를 활용하여 베어메탈 인스턴스와 동일한 하드웨어에서 실행됩니다.
-
컴퓨트 탭으로 이동하고 인스턴스 생성을 누릅니다. 이 실습용 VM 인스턴스가 시작됩니다.
-
Create Compute Instance 마법사가 시작됩니다. 서버 이름을 Web-Server로 설정합니다. 모양, 네트워킹, 스토리지 옵션 표시 링크를 눌러 페이지의 해당 영역을 확장합니다.
-
대부분의 기본값은 당사의 목적에 적합합니다. 그러나 페이지의 네트워킹 구성 영역으로 스크롤하고 공용 IP 주소 지정 옵션을 선택해야 합니다.
주: 이 연습의 뒷부분에서 실행 중인 instance에 SSH로 접속할 수 있도록 공용 IP 주소가 필요합니다.
-
페이지의 SSH 영역으로 이동합니다. 이전에 생성한 SSH 키를 선택합니다. 생성 단추를 눌러 인스턴스를 생성합니다.
인스턴스 실행은 간단하고 직관적이며 선택할 옵션이 거의 없습니다. 컴퓨트 인스턴스 프로비저닝은 1분 이내에 완료되며 인스턴스 상태가 프로비저닝에서 실행 중으로 변경됩니다.
-
인스턴스 상태가 Running으로 변경되면 인스턴스의 공용 IP 주소로 SSH를 사용할 수 있습니다.
인스턴스에 연결하고 Apache HTTP Server 설치
-
인스턴스에 접속하려면 MAC를 사용 중인 경우
Terminal를 사용하고, Windows를 사용 중인 경우Gitbash를 사용할 수 있습니다. 터미널 또는 gitbash에서 다음 명령을 입력합니다.참고: Oracle Linux VM의 경우 기본 사용자 이름은 opc입니다.
ssh opc@<public_ip_address>SSH 키 경로가 다른 경우 다음을 입력합니다.
ssh -i <path_to_private_ssh_key> opc@<public_ip_address> -
이 실습에서는 Apache HTTP 웹 서버를 설치하고 공용 인터넷을 통해 연결하려고 합니다. Linux 인스턴스에 SSH를 사용하여 다음 명령을 실행합니다.
주: Apache HTTP Server는 Apache Software Foundation에서 개발한 오픈 소스 웹 서버입니다. Apache 서버는 웹 콘텐츠를 호스트하고 Chrome 또는 Firefox와 같은 웹 브라우저에서 이 콘텐츠에 대한 요청에 응답합니다.
-
Apache http 설치
sudo yum install httpd -y -
apache 서버를 시작하고 시스템 재부트 후 시작되도록 구성합니다.
sudo apachectl start sudo systemctl enable httpd -
apache 구성에 대한 빠른 확인 실행
sudo apachectl configtest -
HTTP 서버가 수신하는 포트에 액세스할 수 있도록 방화벽 규칙을 생성합니다.
sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --reload웹 서버에 대한 인덱스 파일 생성
sudo bash -c 'echo This is my Web-Server running on Oracle Cloud Infrastructure >> /var/www/html/index.html'
-
-
브라우저를 열고
http://Public-IPAddress(Linux VM의 IP 주소)로 이동합니다.주: 포트 80이 보안 목록으로 열리지 않았으므로 브라우저에서 아무것도 반환하지 않습니다.
-
메뉴를 사용하여 가상 클라우드 네트워크, 이 연습용으로 생성한 VCN을 차례로 누릅니다.
-
이제 VCN의 왼쪽 탐색 모음에서 보안 목록을 누릅니다.
-
기본 보안 목록을 누릅니다.
-
여기에서 포트 80을 열어야 합니다. + Another Ingress Rule을 누르고 아래 표시된 대로 다음 값을 추가합니다.
- 소스 유형: CIDR
- 소스 CIDR: 0.0.0.0/0
- IP 프로토콜: TCP
- 소스 포트 범위: 모두
- 대상 포트 범위: 80
- 아래에서 수신 규칙 추가를 누릅니다.

-
브라우저에서
http://<public_ip_address>(Linux VM의 IP 주소)로 이동합니다. 이제 위에서 생성한 웹 서버의 인덱스 페이지가 표시됩니다.
문제 해결
브라우저에서 웹 서버를 볼 수 없는 경우 가능한 시나리오는 다음과 같습니다.
-
VCN 보안 목록이 트래픽을 차단하고 있습니다. 포트 80에 대한 수신 규칙은 VCN 보안 목록을 확인하십시오.
-
linux 인스턴스의 방화벽이 트래픽을 차단하고 있습니다.
-
공용 영역의 일부로 http 서비스를 표시합니다.
# sudo firewall-cmd --zone=public --list-services -
httpd 서비스는 포트 80에서 수신해야 하며 다른 포트인 경우 VCN SL에서 해당 포트를 여십시오.
# sudo netstat -tulnp | grep httpd
-
-
회사 VPN이 트래픽을 차단하고 있습니다.
감사의 글
-
인증자 - Flavio Pereira, Larry Beausoleil
-
제공자 - Oracle LiveLabs QA 팀(Kamryn Vinson, QA 인턴, Arabella Yao, Product Manager 인턴, DB 제품 관리)
추가 학습 자원
docs.oracle.com/learn에서 다른 실습을 찾아보거나 Oracle Learning YouTube channel에서 무료 학습 콘텐츠에 액세스할 수 있습니다. 또한 education.oracle.com/learning-explorer를 방문하여 Oracle Learning Explorer로 변경하십시오.
제품 설명서는 Oracle Help Center를 참조하십시오.
Create a web server on a compute instance
F49367-01
October 2021
Copyright © 2021, Oracle and/or its affiliates.