지난 번에 계정을 등록했던 Oracle Cloud Free Tier 서비스에 웹 서버를 운영하기 위한 VM을 만들었습니다.
VM 설치와 관련된 작업은 아래의 글을 참고했습니다.
OCI 퀵스타트(Step by Step) :: 오라클 클라우드 사용자 가이드 (taewan.kim)
다른 글들도 참고했었는데 일정부분까지는 잘 되다가 그 뒤로는 제대로 동작하지 않거나...
그렇지 않으면 설치와 기본 설정은 잘 되었지만 내용 설명이 부족해서.. 뭔가 생각처럼 동작하지 않아도 왜 그렇게 되는지 이해하기 어려운 부분들이 자주 생겨서 여러 글을 뒤지고 다녔네요.
위에 링크를 해둔 글은 작성 시점이 좀 지난 시점인지 메뉴나 화면 등 일부가 지금과 좀 다르지만 보고 찾아가면서 작업하는 데에는 별 문제가 없었습니다.
그런데... VM의 OS는 Ubuntu 20.04 버전으로 선택했는데...
VM 생성과 VCN 생성 등 여러 작업은 문제없이 진행되었지만 제 PC에서 VM에 할당된 공유 IP로 SSH 접속을 수없이 시도해도 전혀 접속이 되지 않더군요.
왜 안되나... 싶어서 고민하다가...
VM의 OS를 Ubuntu가 아닌 기본 설정으로 되어 있는 Oracle Linux 7.9로 설정하고 다시 생성했더니... VM 설치부터 콘솔의 SSH 접속까지 한 번에 성공했습니다.
뭔가 Ubuntu와 설정이 맞지 않는 부분이 있나 봅니다.
(그런데.. 다른 사람들은 Oracle Cloud VM에 Ubuntu를 설치해서 잘 사용하고 있던데.. 왜 난 콘솔접속이 안되는지..)
이제 웹서버를 설치해야 하는데 Apache 웹서버를 설치하려고 하니 위에 링크한 가이드에서는 Apache가 아니라 nginx를 사용하고 있더군요.
검색을 해 보니 요즘에는 nginx가 점점 점유율이 높아지는 추세라고 하길래 나도 nginx를 설치해보자.. 라는 생각이 들어서 nginx 웹서버를 설치하기 시작했습니다.
$ sudo yum install nginx
Ubuntu와 달리 apt가 아니라 yum을 쓰는군요.
Redhat Linux 계열이라고 하더니 그래서 그런가 봅니다.
그런데 문제가 발생했습니다.
No package nginx available. Error: Nothing to do |
이런 에러가 나는군요.
아예 nginx를 설치 저장소에서 찾지를 못합니다.
여기저기 찾아보니 epel-release 라는 것을 설치하면 된다고 이야기 하는 곳이 많더군요.
그래서 시키는 대로 해 봤습니다.
$ sudo yum install epel-release
그러나...
No package epel-release available. Error: Nothing to do |
같은 종류의 오류가 발생합니다.
또 여기저기 찾아 해메었습니다.
해당 위치에서 패키지를 찾지 못하는 것이 원인이라... epel-release가 저장된 공식 경로를 지정해서 직접 설치하면 되지 않을까 싶더군요.
그래서 공식 경로를 찾아갔습니다.
https://dl.fedoraproject.org/pub/epel/
가장 최신 버전은 epel-release-latest-9.noarch.rpm 이네요.
$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
이렇게 설치하니 제대로 설치가 되었습니다.
그럼 다시 nginx를 설치해야겠지요.
여전히 같은 오류가 발생합니다.
epel-release를 설치하는 것은 아무런 도움이 되지 못했네요.
이번에는 따로 검색을 하지 않고 nginx 공식 사이트로 바로 찾아갔습니다.
https://www.nginx.com/resources/wiki/start/topics/tutorials/install/
Redhat Linux 계열이라면 아래와 같이 설정, 실행하라고 하는군요.
시키는대로 따라했더니.. 드디어 설치를 성공했습니다.
이제 공유 IP로 접속을 해 볼 차례입니다.
먼저 nginx를 실행시킵니다.
$ sudo systemctl start nginx
$ sudo systemctl status nginx
nginx 웹 서버는 잘 동작하고 있습니다.
다른 PC에서 브라우저를 켜고 공유 IP로 접속을 시켰습니다.
VM을 설치할 때, 80번 포트를 열어주는 작업을 했기 때문에 잘 접속될 것으로 생각했지만...
또 접속 실패입니다....
제일 위에 링크한 글에서 아래쪽에 보니 방화벽에 대한 글이 있길래 다시 참고했습니다.
$ sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
$ sudo firewall-cmd --reload
이제 공유 IP를 이용해서 외부 브라우저에서도 잘 접속됩니다.
쉽게 설치, 설정이 끝날 줄 알았는데.. 의외로 가로막히는 부분이 많군요.
어쨋든... 이렇게 공유 IP로 외부 서비스가 가능한 무료 웹 서버를 하나 확보했습니다.
이 웹 서버가 앞으로 여러 프로젝트의 기반이 되어 줄 것으로 믿습니다.
'기타 > 시스템 설정' 카테고리의 다른 글
Oracle Cloud VM에 Flask 웹 애플리케이션 서버 설치하기 (0) | 2021.11.25 |
---|---|
Oracle Cloud Free Tier 계정 등록 (0) | 2021.11.12 |
FastAPI의 설치와 확인 (0) | 2021.01.21 |
딥러닝 서버 환경 구축(4): 텐서플로우 2.x를 위해서 그냥 virtualenv로.. (0) | 2020.09.15 |
딥러닝 서버 환경 구축(3): 텐서플로우 2.x 와 아나콘다-주피터노트북의 문제점 (0) | 2020.09.13 |