본문 바로가기
프로젝트

Cloud 환경 구성 및 환경 설정

by 엑츄얼리 2021. 8. 2.

주제 : 클라우드 환경 구성 및 환경 설정

  신규 서비스에서 활용할 퍼블릭 클라우드 환경을 구성해보고 간단한 리눅스 웹서버를 구축

1) 퍼블릭 클라우드(AWS)실습 환경 접근

2) 리눅스 가상 서버 생성 후 웹서버 구성

 

사전 지식

1) AWS ECS란? AWS의 Compute Service의 종류  

2) GCP Compute Engine

 

실습

1. EC2 instance로 Web Server 구축

EC2 인스턴스 생성

2. SSH 클라이언트(XShell)을 통해 Web Server에 접근

XShell을 통해 접속 성공

접속은 성공했지만 중간에

WARNING! the remonte SSH server rejected Xll forwarding request.라는 경고가 발생했다.

이는 Xshell을 통해 GUI 기반 프로그램을 실행시킬 때 문제가 된다고 하는데

해결방법은 생각보다 간단했다.

sudo yum install xauth

라는 명령어를 통해 xauth 패키지를 Web Server에 설치해주면 된다.

해결!

3. flask앱 구동

 

pip3 install Flask // Web Server에 Flask 설치
vi app.py // Flask로 구동시킬 app파일 생성 및 작성

아래는 app.py 내용

app.py

1) from flask import Flask

=>Flask 모듈을 flask로부터 import

 

2) app = Flask(__name__)

=>Flask 객체를 app에 할당

 

3) @app.route('/')

      def hello_world():

           return "Hello, EC2!"

=> 괄호 안의 라우팅 경로로 요청이 올 때 아래의 함수를 실행

 

4) if __name__ == "__main__":

      app.run(debug=True, host='0.0.0.0', port=5000)

=> 메인 모듈로 실행될 때 플라스크 앱 구동 (디버깅 모드 on, 누구든지 접속 가능, 5000 포트로)

 

*디버깅 모드 on => 예를 들어 SSH클라이언트를 통해 app.py파일을 수정했을 시 그 내용이 Web Server에 즉시 반영

* __name__변수 => 모듈(*. py파일)을 인터프리터에서 실행했을 때는 __main__이 저장되고

                                   다른 모듈에서 import해서 실행했을 때는 executeThisModule이 저장됨.

python3 app.py //app.py실행

EC2 instancd의 Public IP:5000로 접속 시 아래와 같은 결과를 확인 가능

Web Server에 Flask app(app.py) 구동

 

 

댓글