AWS/Service
[AWS] Auto Scaling
Auto Scaling이란?애플리케이션의 수요에 따라 자동으로 리소스를 조정하여 트래픽 변화에 대응하는 서비스.애플리케이션이나 서비스에 필요한 서버(가상머신)를 자동으로 늘리거나 줄이는 것을 관리해 주는 도구 목표Auto Scaling으로 웹서버 생성 후 cpu로 부하를 줬을 때 이 변화에 맞춰서 대응할 수 있는지 확인 구축 순서1. (ALB)대상그룹 생성2. 로드밸런서 생성3. 서버 생성4. 이미지(AMI) 생성5. 템플릿 생성6. 오토스케일링 그룹 생성7. 테스트 1. 대상그룹 생성웹서버를 운영 할 것이므로 80번 포트에 대한 대상그룹 생성따로 서버는 선택하지 않고 대상그룹만 생성 2. 로드밸런서(ALB)생성HTTP 프로토콜을 사용하므로 Application Load Balancer 생성 외부에서 접..
[AWS] EFS
AWS efs 개념 및 구성 방법EFS란? "Elastic File System"의 약자로, 클라우드에서 파일 시스템을 쉽게 관리할 수 있는 서비스이다. 여러 서버에서 동시에 사용할 수 있는 공유 스토리지이며 서버 간에 파일을 쉽게 공유하고, 데이터를 안전하게 저장하며 필요할 때 확장할 수 있다.온프레미스의 NFS라고 생각하면 된다. 구성할 환경서버 2개 생성 후 EFS를 통해 파일을 공유해 볼 것이다. EFS 구성 방법VPC 설정편집에서 DNS 호스트 이름 활성화 체크 efs전용 보안그룹을 생성 후 유형은 NFS(2049), 소스는 마운트 할 서버의 보안그룹으로 지정 EFS -> 파일 시스템 생성에서 이름 지정 후 VPC선택 생성된 EFS들어가서 네트워크 - 관리 보안그룹을 처음에 생성한 것으로..
[AWS] EBS
AWS EBS란?"Elastic Block Store"의 약자로 쉽게 말해 가상환경에서 사용할 수 있는 가상 하드디스크이다.온프레미스 환경의 디스크와 다르게 용량 확장, 스냅샷 백업 등의 기능을 통해 탄력성(Elastic) 있게 사용할 수 있다. EC2 인스턴스 디스크 용량 확장현재 볼륨크기 8GB20GB로 확장하려 한다. 서버 - 스토리지에서 증설할 볼륨 선택 해당 볼륨 선택 후 수정 원하는 크기 입력 서버 접속해서 lsblk명령어로 확인 시 xvda 디바이스 크기는 늘어났지만 /는 그대로이다. 아래 명령어로 파티션을 확장 후 lsblk 명령어로 확인해 보니 7.9G에서 19.9로 확장된 것을 확인할 수 있다.sudo growpart /dev/디바이스명 1sudo growpart /dev/xv..
[AWS] VPN (with GCP)
VPN이란? 서로 다른 IP대역을 가진 장비 간에 가상 사설망을 만들어서 서로 통신이 가능하게 하는 것이다. 예를 들어, 해외로 출장을 나간 직원이 자신의 컴퓨터나 스마트폰을 사용하여 회사 네트워크에 접속을 하기 위해 VPN을 사용하며, 해외직구 같은 것을 할 때 해외에서 접속된 것처럼 보이게 하기 위해 VPN을 이용하기도 한다. VPN을 사용하면 데이터 전송 시 암호화되어 안전하게 전송되기 때문에, 외부에서 해킹이나 감청 등의 공격을 받더라도 데이터가 유출되지 않는다. 또한 이동성이 높아서 언제 어디서든 접속이 가능하다. 하지만 VPN 서버와 암호화 통신을 하는 만큼 네트워크 속도가 매우 느려진다는 단점이 있다. 구성할 환경 AWS 172.20.0.0/0 대역과 GCP에 10.128.0.0/20 대역에..
[AWS] Athena
Athena란? Amazon S3에 저장된 데이터를 대상으로 SQL 쿼리를 실행할 수 있는 서비스이다. 몇 초만에 대용량의 데이터를 조회해 결과를 얻을 수 있다. 이 글에서는 ALB의 Access log를 수집해 Athena를 이용해 분석해 볼 것이다. 사용 방법 1. 로그를 저장할 버킷 생성 2. 버킷 정책 설정 { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::600734575887:root" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::logbucket3333/*" } ] } ELB가 위치한 지역의 ID값을 적으면 된다 ..
[AWS] AWS Backup
AWS Backup이란? 다양한 서비스의 데이터를 안전하게 백업하고 복원할 수 있는 관리형 백업 서비스. 사용자가 구성한 정책에 따라 자동으로 스테줄된 백업을 생성하며, 데이터 복원을 신속하게 수행할 수 있다. 사용 방법 1. 백업볼트 생성 2. 백업계획 생성 바로 리소스 할당 창으로 넘어가진다. 백업하고 싶은 리소스를 선택해 주면 된다. 여기서는 EC2를 백업해 보겠다. 내가 보유 중인 인스턴스 3개가 오후 9시에 백업이 된 것을 알 수 있다. 3. 복원 web서버에 접속해서 이전에 설치한 nginx의 상태를 확인하니 active라고 되어있는 것을 확인할 수 있다.
[AWS] SNS
SNS란? AWS에서 제공하는 관리형 메시징 서비스. 다양한 종류의 메시지를 안정적으로 전송하고 수신할 수 있다. 이메일, HTTP, Lambda, SQS 등을 통해 메시지를 전송할 수 있다. 사용 방법 이 SNS 주제, 구독 생성을 통해 다양한 상황에서 알람이 필요한 상황이 생기면 내 메일로 알람이 오도록 설정할 수 있다.
[AWS] WAF
WAF란? AWS에서 제공하는 웹 애플리케이션 방화벽. 애플리케이션에 대한 웹 트래픽을 모니터링하고, 악성 요청 또는 보안 위협으로부터 애플리케이션을 안전하게 보호할 수 있다. L7계층에서 작동하면 HTTP 및 HTTPS 트래픽을 모니터링하고 필터링한다. 사용 방법 1. web ACL 생성 WAF 페이지는 기본적으로 영어로 나온다. Add AWS resources 버튼 클릭 WAF를 적용시킬 ALB를 선택하자. 로드밸런서 관련 내용은 이 글 참고(https://itstoryy.tistory.com/32) 2. 접근제어 규칙 설정 다양한 방법으로 요청을 차단할 수 있다. 이 글에서는 국가단위로 트래픽을 차단해 보겠다. match the statement로 설정 후 Country codes에 접근을 허용할 ..
[AWS] SSL
SSL이란? 인터넷 통신 보안 프로토콜 중 하나로, 클라이언트와 서버 간의 통신을 암호화하여 안전하게 전송하는 기능을 제공. 이를 통해 중간자 공격 및 데이터 탈취 등의 보안 위협으로부터 데이터를 보호할 수 있다. 또한 AWS에서는 ACM을 통해 SSL인증서를 무료로 발급받을 수 있다는 장점이 있다. 사용 방법 우선 본인의 도메인이 필요하다. 가비아에서 500~20000원 정도로 저렴하게 구매할 수 있다. https://www.gabia.com/ 1. 인증서 요청 가비아 -> 도메인관리 창으로 들어가서 네임서버를 NS유형으로 생성된 주소로 등록해 주자. 이때 맨 뒤에 있는.(점)은 빼고 등록해야 한다. 다음은 ACM을 통해 인증서를 발급받아야 한다. 만들어진 인증서로 들어가면 CNAME 이름과 값이 보일..
[AWS] ALB & NLB
Load Balancer란? 여러 대의 서버에게 들어오는 네트워크 트래픽을 분산시켜 주는 네트워크 장치이다. 트래픽을 여러 대의 서버에 균등하게 분배하여 각 서버가 과부하 상태에 빠지지 않도록 한다. 그중 ALB와 NLB의 차이점은? ALB(Application Load Balancer) 1. OSI 7 계층에서 L7에서 동작한다. 2. 도메인 기반으로 로드밸런싱을 지원한다. 즉 도메인 이름을 통해 다른 서비스로 라우팅 할 수 있다. 3. HTTP/HTTPS 프로토콜에서 동작한다. 4. SSL인증서 발급 및 WAF(Web Application Firewall)를 통한 보안 기능 설정이 가능하다. NLB(Network Load Balancer) 1. OSI 7계층에서 L4에서 동작한다. 2. IP기반으로 ..