안녕하세요, surmin입니다.
도움이 될 수 있도록 설정 관련 정보를 공유하는 포스트를 준비했습니다. 많은 참고 바랍니다.
목표
- Auto Scaling 으로 인하여 생성 된 여러 EC2의 볼륨들을 EFS를 통하여 공유 해보기
- EFS는 리눅스용 파일 서비스 이며, 윈도우는 지원이 안됩니다. (아마존 리눅스 AMI에 최적화 되어 있다.)
실습
- VPC DNS 설정
EFS는 DNS를 이용해 탑재되기 때문에 EFS가 위치할 VPC의 DNS를 활성화해야 합니다.
VPC → 해당 VPC 선택 → DNS 확인 편집 클릭 합니다.
DNS 확인 편집 들어가서 활성화 눌러 줍니다.
- EFS 전용 보안그룹 생성
EFS는 파일시스템 전용 보안 그룹이 필요하여 만들어 줍니다.
보안 그룹 생성을 눌러줍니다.
- 보안 그룹 이름을 정해 줍니다.
- VPC를 선택 하여 줍니다
- 인바운드 규칙을 선택하여 주는대 따로 IP를 지정하는 것보다는 해당 보안 그룹을 사용하는 EC2 인스턴스로 접속한 IP만 NFS 프로토콜을 사용하게 해줍니다.
- EFS 생성
1.파일 시스템 생성을 눌러 줍니다.
- 이름을 지정합니다.
- VPC 는 EC2가 있는 VPC를 선택 하고 사용자 지정을 눌러 줍니다.
- 이름을 지정합니다.
- IA 수명 주기 관리를 설정하여 줍니다.
Amazon EFS 수명 주기 관리는 파일 시스템에 대한 비용 효율적인 파일 스토리지를 자동으로 관리 합니다. 이 기능이 활성화되면 수명 주기 관리가 설정된 기간 동안 액세스하지 않은 파일을 Infrequent Access(IA) 스토리지 클래스로 마이그레이션 됩니다.
수명 주기 관리가 파일을 IA 스토리지 클래스로 이동하면 해당 파일은 무기한 보존됩니다.
(Tip
표준 – 표준 스토리지 클래스는 자주 액세스하는 파일을 저장하는 데 사용 Infrequent Access – Infrequent Access(IA) 스토리지 클래스는 수명이 길고 자주 액세스하지 않는 파일을 비용 효율적으로 저장하기 위해 고안된 저비용 스토리지 클래스 입니다. )
- 성능 모드는 파일 시스템을 만들때만 선택이 가능합니다. (둘의 비용 차이는 없습니다.)
- 처리량 모드
- 네트워크 엑세스 설정 합니다.
- vpc는 마운트할 EC2 인스턴스가 위치한 VPC 선택 합니다.
- 가용영역은 연결하고자 하는 EC2인스턴스의 가용 영역, 서브넷 ID가 모두 일치해야 하며,
보안 그룹은 위에서 만든 EFS 용 을 선택 합니다.
- 정책 설정
- 필요한 정책이 있을경우 체크하여 줍니다.
- 검토 및 생성
- 검토 후 문제 없으면 생성 눌러 줍니다.
7.EFS 연결
1) 생성한 EFS 클릭 → 세부 정보 보기 클릭 → 연결 클릭
2)연결 버튼을 누르면 아래와 같이 두 가지 방법이 나옵니다.
둘중 아무거나 상관 없으며, 여기서는 DNS의 EFS 탑재 헬퍼를 사용 합니다.
[Amazon EFS 탑재 헬퍼는 파일 시스템 탑재를 간소화시켜줍니다. 탑재 헬퍼는 Linux의 표준 efs 명령과 완전히 호환되는 mount이라는 새로운 네트워크 파일 시스템 유형을 정의합니다. 또한 탑재 헬퍼는 /etc/fstab 구성 파일의 항목을 사용해 자동으로 부팅 시 인스턴스에 EFS 파일 시스템을 탑재하는 것을 지원합니다.]
탑재 헬퍼를 사용기 위하여 yum 을통 하여 유틸리티 다운 받아 줍니다.
[root@ip-10-0-34-179 ~]# yum install -y amazon-efs-utils
마운트할 지점을 생성하여 줍니다 여기서는 autodata 로 합니다
[root@ip-10-0-34-179 ~]# mkdir autodata
EFS 마운트 하는 명령어을 입력 합니다.
sudo mount -t efs -o tls fs-..:/ efs(마운트할 파일이름)
EX) /root/autodata
입력 후 아래와 같이 마운트가 되었는지 확인 합니다.
(이런식으로 마운트를 할경우 리부팅된 후는 마운트가 풀립니다)
EFS를 고정해 줍니다.
[
_netdev 옵션은 네트워크에 연결 후 마운트하라는 옵션이다.
이렇게 해야 시스템 시작 시 문제 없이 해당 네트워크 경로로 자동 마운트 되기 때문이다.
_netdev이 빠진 경우 EC2 인스턴스가 응답을 중지하게 된다.
]
[root@ip-10-0-34-179 ec2-user]# vi /etc/fstab
===
#efs id 마운트 지점
fs-0f....:/ /autodata efs _netdev,tls 0 0
===
참고 URL
===
EFS – efs(elastic file system) 간단하게 사용하기
Amazon EFS file system creation, mounting & settings
[AWS 실습] EFS(Elastic File System) 사용해보기
===
감사합니다.