AWS

AWS에서 웹 애플리케이션 배포하기

나뭇빛자루 2020. 9. 20. 23:04
반응형

기본적으로 WAS서버 구성은 

인터넷에서 HTTP 트래픽이 WAS 서버로 들어온다.

그러면 WAS 서버가 연결된 DB에 정보를 요청하여

재공하는 형태로 운영이 되는 데  그림설명 하자면 아래와 같다

AWS에서는 보안 그룹을 지원하는데

위 그림에 보안 그룹안에 WAS서버와 DB서버들의 보안 그룹을 만들 수 있으며

접근하는 트래픽을 보안그룹에서 관리할 수 있다.

 

위 그림과 같이 작업순서는 

1.각 파트 별 보안 그룹 생성

2. EC2 로 WAS 서버 생성 후 해당 보안 그룹 적용

3. RDS로 DB 서버 생성 후 해당 보안 그룹 적용

4. 호환 테스트

 

정도가 될거 같다.

 

처음으론 각 파트별 보안그룹 생성이다 

EC2를 누른 후 리소스에 보안그룹을 선택해준다

 

 

 

그후 기본 세부 정보를 기입후

 

 

인바인드 규칙을 설정해준다.

우리는 HTTP를 이용한 WAS 서버를 만들것이기 때문에 HTTP와

소스 유형은 "위치무관"으로 해주면 IPv4랑 IPv6의 아이피가 입력된다 

즉 인바운드는 2개가 되는것

 

만들고나면 성공 화면이다.

 

디비 보안 그룹도 만들어주는데 이름이나 이런건 똑같이 해주나

인바운드에서 

 

 

아래와 같이 설정해준다 사용자 지정 > 대상에서 보안그룹을 만든 곳에서 들어오니까

 

아웃바운드를 잘못 기입햇는데 이렇게 떴는데 상태를 확인해보니 잘 적용 된거같다.

무시해도 되는 화면일까 ? 

 

그다음엔 DB

 

 

기본 입맛대로 만드는데 위에 설정은 해주고 생성하면됨

퍼블릭 액세스 가능은 아니오 하는게 맞는거같음..

 

그다음 EC2 생성할 차례

 

대충 인스턴스 만들 차례 인스턴스 시작을 눌러준다.

그럼 아래 그림과 같이 상단이 구성되는데 여기서 만들 EC2를 설정해주는것이다

 

 

우선 1.AMI와 2인스턴스 유형선택은

연습용이라 프리티어를 사용할 생각 Amazon Linux 2 AMI 를 설치 인스턴스 유형을 설정해준다.

(다른건 과금될 수 있음)

 

3 인스턴스 구성이다 

 

네트워크를 Lab VPC로 설정해주고 

Subnet 도 Public Subnet 1로 설정해주자

 

마지막으로 IAM role을 Inventory-App-Role로 설정

이걸 해주므로써 정책이 연결되어 인스턴스에서 실행중인 애플리케이션이

AWS 서비스로 요청할 권한을 부여한다

{ "Version": "2012-10-17", "Statement": [ { "Action": "ssm:*", "Resource": "arn:aws:ssm:*:*:parameter/inventory-app/*", "Effect": "Allow" } ] }

AMS 시스템 메니저 Parameter Store 내에 있는 

inventory-app 설정에 액세스할 권한을 부여함

 

 

유저 데이터 필드에 스크립트 복사하고 붙여 넣기 

 

#!/bin/bash

# Install Apache Web Server and PHP

yum install -y httpd mysql

amazon-linux-extras install -y php7.2

# Download Lab files

wget https://us-west-2-tcprod.s3.amazonaws.com/courses/ILT-TF-200-ARCHIT/v6.8.3/lab-2-webapp/scripts/inventory-app.zip

unzip inventory-app.zip -d /var/www/html/

# Download and install the AWS SDK for PHP

wget https://github.com/aws/aws-sdk-php/releases/download/3.62.3/aws.zip

unzip aws -d /var/www/html

# Turn on web server

chkconfig httpd on

service httpd start

 

4. 스토리지 추가는 기본

 

5. 태그 는 원하는 키 - 값 형태로 정해주자 

 

6. 보안 그룹 구성

아래와 같이 설정해주자

 

 

그다음 만들어 주면 된다.

 

EC2 Management Console 에서 App Server을 선택후 

Details 탭에서 IPv4 퍼블릭 IP를 복사후 웹브라우저에 실행 함

 

이후 AWS RDS를 선택해서

Databases >> [데이터베이스 선택] >> Connectivity & security 섹선에 있는

Endpoint를 복사한다 

 

형태는[DB이름].asdf.rds.amazonaws.com 형태를 가지고 있어야함

아까 켜둔 웹 브라우져에 Settings을 클릭하고

 

 

를 차례대로 입력후 Save를 눌러준다

 

WAS가 DB에 연결되어 일부 초기 데이터를 로드하고 정보를 표시함

 

 

 

 

 

 

 

반응형