본문 바로가기

클라우드/AWS

(6)
[AWS] AWSKUS EKS 다른 AWS 서비스와 손쉽게 연동할 수 있음 EKS 배포방식 - AWS CloudFormation & CDK - eksctl - 서드파티모듈(Terraform, Pulumi, ...) 네트워킹 파드같은 경우 생명주기가 짧기 때문에 어떻게 확장 및 축소를 할것인지 고민을 해야함 파드는 VPC와 동일한 주소를 파드 내부에 가짐 VPC내에 EC2는 여러개의 ENI를 가질 수 있다. 인스턴스 타입마다 가질 수 잇는 ENI의 갯수는 제한이 있음 마치 나의 VPC에 있는 하나의 인프라 요소처럼 사용할 수 있음 Amazon VPC CNI 플러그인을 통한 최대 파드 갯수 Max Pods = ENI * (ENI당 지원하는 IPv4 개수 - 1) + 2 스토리지 컨테이너 라이프 사이클이 기존 VM보다 짧음. 같이 ..
인증과 권한 ⇒ 80페이지의 JSON 내용과 동일 P88 Lambda 함수가 오류로 인해 비정상적으로 종료된 회수를 추적 버지니아 북부(us-east-1) 리전에서 실습 P91 serverless-video-upload 버킷의 로그를 저장 S3 로그는 버킷 이름, 요청시간, 동작, 응답 상태와 같은 정보를 저장 #1 로그 파일을 저장할 버킷을 생성 #2 servless-video-upload 버킷의 로그를 serverless-video-logs 버킷에 저장 대상 접두사 = 폴더(디렉터리) 개념 P92 일정 간격으로 세 개 이상의 람다 함수 오류가 발생하면 이메일 경보를 발송 #1 주제 및 이메일 구독 생성 #2 경보 생성 #3 잘못된 값(오류가 발생할 수 있는 값)으로 람다 함수를 실행 (3번 이상 테스트) #4 경..
[AWS] Elastic Beanstalk VS Lambda elastic beanstalk 코드를 올리면 그 코드를 실행할 환경을 자동으로 만들어 주는 것 - 작성한 코드를 zip파일로 올릴 수 있음 (paas형 서비스) IaasS인 EC2와 다르게 PaaS로서 서버구성, Auto Scaling, 배포 자동화, 모니터링 등 서버 운영에 필요한 대부분의 작업을 최대한 자동화 해서 제공하는 서비스 실제 서버에 올리기 위해 서버 구성에 시간을 쏟을 필요 없이 현재 애플리케이션의 언어에 맞는 환경만 선택하고 작성한 애플리케이션 소스코드를 압축해서 업로드 하면 Elastic Beanstalk가 웹서버, 언어 등 환경 구성이 완료된 서버를 생성하고 해당 서버에 애플리케이션 배포까지 자동으로 진행 CPU등 정해둔 지표에 따라 Auto Scaling도 자동으로 진행 PHP, ..
[AWS] 비밀값 관리를 도와주는 솔루션 중요한 정보를 보호하기 위한 방법 1. 접근통제 - 아무나 접근하여 변경하는 것을 막아야한다. 1.1 식별 1.2 인증 1.3 인가(권한 유무 확인) 우회해서 접근했을 때 정보를 보호하기 위한 방법 1. 암호화 1.1 기밀성 1.2 무결성(권한 있는 사용자가 인가된 절차에 따라 정보를 바꾼 것. 정보가 잘못된 방법이나 사용자로부터 변경되지 않았음을 보장) 1.3 가용성(권한 있는 사용자가 정보를 요청했을 때 정보를 제공할 수 있어야 한다.) 비밀값 관리 원칙 1. 버전(형상)관리 시스템에 업로드하면 안된다. - github 등 → 비밀정보가 들어있는 파일은 gitignore에 등록해 업로드 되지 않도록 해야한다. → 비공개저장소(private)로 업로드 하더라도 가급적이면 올리지 않는게 좋음 2. 비밀값..
[AWS] 로드밸런싱(Load Balancing)/오토 스케일링(Auto Scaling) 실습 기존에 있던 템플릿 가져와 이미지만 바꿨다. 오토스케일링 그룹 생성 green에도 로드밸런서 추가 새로고침 하면 왔다 갔다 함 blue 에서 로드밸런싱에서 제거해버림 이제는 아무리 새로고침 해도 beta만 나옴
AWS를 이용한 운영 서버 환경 구축 인스턴스 생성 bitvise를 통해 접속 보안그룹 생성 보안그룹 변경 nvm(노드 버전 관리자: Node Version Manager) 설치 [ec2-user@ip-172-31-38-230 ~]$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash [ec2-user@ip-172-31-38-230 ~]$ nvm install 10.13.0 [ec2-user@ip-172-31-38-230 ~]$ node -e "console.log('Running Node.js ' + process.version)" 25 ~ 42페이지 소스코드 배포 git 설치에 필요한 패키지 설치 [ec2-user@ip-172-31-38-..