베하 안녕하세요 ~~! BTC_현상수배범입니다.
이번 시간에는 WEB/WAS 소스를 EFS로 옮긴 후 서비스 가능하도록 설정해보겠습니다.
1. EFS 파일 시스템 생성
[콘솔 EFS] > [파일 시스템] > [파일 시스템 생성] > [사용자 지정]
이름 설정 후 next
WEB/WAS 서버가 있는 vpc에 EFS 탑재
2. WEB&WAS SG에 NFS 설정 추가
이름 | 타입 | 포트 | 대상 |
WEB-SG | NFS | 2049 | 0.0.0.0 |
WAS-SG | NFS | 2049 | 0.0.0.0 |
3. EFS 파일 시스템 정책설정(읽기 전용 엑세스)
참고 ) 기본적으로 루트 액세스 금지를 선택해서 정책을 적용하게 되면 EC2 인스턴스에서 파일 시스템에 루트 권한(sudo)으로 파일을 쓸 수 없게 됩니다.익명 액세스 금지를 선택하면 이후에 EC2 인스턴스에서 탑재 대상에 마운트할 때 액세스 거부가 발생할 수 있습니다.
4. WEB/WAS에 파일 시스템 마운트
[WEB 설정]
#마운트할 폴더 생성
sudo mkdir /var/www/html/efs
#파일 시스템 마운트
mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-0312ff355f0292b37.efs.ap-northeast-2.amazonaws.com:/ /var/www/html/efs
[WAS 설정]
#마운트할 폴더 생성
sudo mkdir /apache-tomcat-11.0.0-M5/webapps/ROOT/sanghun
#파일 시스템 마운트
mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-0312ff355f0292b37.efs.ap-northeast-2.amazonaws.com:/ /root/apache-tomcat-11.0.0-M5/webapps/ROOT/sanghun
콘솔에서 생성한 파일 시스템을 선택하고 연결을 누르면 자동 완성된 명령어가 나타납니다.
5. EFS 루트 권한으로 되어 있으므로, 하위 디렉토리 생성 후 권한을 ec2-user로 변경
[WEB]
cd /var/www/html/efs
sudo mkdir sampledir
sudo chown ec2-user sampledir
sudo chmod -R o+r sampledir
[WAS]
cd /webapps/ROOT/sanghun
sudo mkdir sampledir
sudo chown ec2-user sampledir
sudo chmod -R o+r sampledir
ex)
6. httpd.conf 파일을 수정하여 새로운 소스 코드 위치(EFS 마운트 경로)를 가리키도록 설정
모든 경로(/)에 대해서 프록시 설정이 적용되고 있어서, /var/www/html/efs/sampledir/hello.html 파일에 접근할 수 없음
따라서 <Location "/efs">
ProxyPass !
</Location> 설정을 추가하여 /efs 경로에 대해서는 프록시 설정을 적용하지 않도록 함
7. 마운트 한 폴더에서 WEB(hello.html) & WAS(was.html) 생성 후 해당 경로로 ALB에 연결된 도메인 savy.monster를 이용하여 접속
이렇게 하여 EFS 활용편으로 ApacheTomcat 관련 파일을 EFS에서 가져와 서비스 실습을 해봤습니다!
다음에 또 만나요 ~~ 베빠~!
'CSP (Cloud Service Provider) > AWS' 카테고리의 다른 글
[AWS] S3 스토리지 클래스 & 생명주기 (0) | 2023.05.24 |
---|---|
[AWS] Storage Gateway (0) | 2023.05.22 |
[AWS] EKS Service Type 4가지 (0) | 2023.05.21 |
[AWS] KMS의 활용 (2) | 2023.05.20 |
S3 로그를 Lambda를 통해 CLoud watch로 전송 (0) | 2023.05.19 |
댓글