728x90
반응형

DevOps 35

[AWS] 모놀리식 아키텍처 vs 마이크로서비스 아키텍처

모놀리식 아키텍처 대규모, 한통에 담아둔 아키텍처 맨처음에 서비스에 대한 아이디어를 테스팅해서 시장성을 검증하기 위해 만들때는 모놀리식이 더 적합하다 초기에는 오히려 개발 시간이 모놀리식이 더 적게든다. 이 서비스는 확실히 잘 될 것 같은데..라고 생각했던 것들만 마이크로서비스로 개발을 한다. 마이크로서비스 아키텍처 기능들이 분리되어 있고, 기능 간의 상호작용이 생겨나서 그것들의 함수가 많이 생김 통으로 한번에 보기는 어렵고 각각의 단계를 모두 모니터링해야하니까 좀 복잡하긴 하다

DevOps/AWS 2023.03.29

[AWS] VPC(가상 네트워크)와 VPC의 구성 요소들 (NACL/SG, Route Table, VPC endpoint, IAG, EC2, NAT Gateway, Bastion Host)

VPC : 간단하게 얘기하면 가상 네트워크 업체 불러서 선깔고 공유기 설치해야하는데, 가상 네트워크를 만드는 것이다. 기존 네트워크와 개념적으로 매우 유사하다. - 계정을 생성하면 default로 VPC를 만들어준다. - 다양한 서비스들을 VPC 위에서 활용할 수 있다. - 서브넷은 네트워크를 분할하는 것인데 VPC에서도 네트워크를 분할할 수 있다. - VPC는 하나의 리전에만 있을 수 있고 다른 리전으로 확장은 불가능하다 - 서브넷은 하나의 Availability Zone 안에만 있을 수 있고 다른 AZ로 확장 불가능하다. VPC의 구성 요소 IGW : 인터넷과 브이피씨 내부 구성요소와 소통하는 매개체이다. NACL / SG : 서브넷의 보안을 담당하는 아이들 Route Table : 브이피씨 내부 구..

DevOps/AWS 2023.03.29

[AWS] 네트워크 기초 (CIDR, 트래픽, 대역폭, HTTP, SSL, TLS)

네트워크 CIDR (싸이더) 네트워크 구분을 클래스로 하지 않는다. 싸이더가 나오면서 클래스를 사용하지 않고 사용한다. 클래스는 구식이라고 할 수 있다. - 네 개의 옥탯 - 하나의 옥탯은 8개의 비트 - 슬래시 뒤에 있는 것이 서브넷 마스크...? - ipcalc 명령어를 통해서 CIDR을 계산할 수 있다 네트워크 트래픽 / 대역폭 트래픽 = 용량 * 사용자 수 * 갯수 대역폭 = 초당 처리할 수 있는 데이터의 양 (bps) HTTP SSL TLS 개념 AWS에서 네트워크 설계하기 AWS에서 5개의 IP는 예약이 되어있다. 가용성을 위해서 최소 2개 이상의 서브넷을 사용해야 한다. 외부로 통신하려면 NAT gateway를 사용해야한다 NACL과 SG 화이트리스트 방식으로 들어오는 ..

DevOps/AWS 2023.03.28

[AWS] Teffaform 기초

Terraform이란? IAC Go언어 기반으로 개발한 HCL 언어로 코드를 작성하기 때문에 매우 간단하다. 가변적인 인프라 코드를 만들 수 있다. 이건 best practice이고, 각각 서비스의 규모에 따라서 다르게 구축하면 된다. 테라폼을 사용하는 이유는? 불변Immutable 인프라를 이용하기 위해 테라폼 기초 실습하기 (테라폼으로 EC2 생성하기) 1. S3 버킷 만들기 2. DynamoDB에서 테이블 생성 3. VScode에서 git clone 4. terraform init 5. terraform plan (어떤 리소스가 생성이 되었나요) 6. terraform apply (리소스를 실제로 생성할지) 7. AWS 콘솔에서 EC2에서 해당 instance가 생성이 되는지 확인할 수 있다 8. ..

DevOps/AWS 2023.03.28

[AWS] DevOps에 관하여 (역할 / 핵심지표 / Immutable 개념)

DevOps는 public cloud의 발전과 함께 발전했는데, 이제는 DevSecOps라는 문화로 확장해나가고 있다. 소프트웨어 배포에 관여하는 모든 사람들이 보안을 최우선으로 하는 문화이다. DevOps의 역할 데브옵스 업무의 주요 대상은 개발자이다. 개발자가 운영에 참여할 수 있는 환경과 문화를 제공한다. 개발자가 비즈니스 로직에 집중할 수 있도록 환경을 구축한다. 크게 8가지 업무 도메인이 있다. DevOps의 업무 핵심지표 중요한 것은 배포 빈도를 자주 하는 것이 목표이다. 시스템이 너무 거대해서 배포에 시간이 걸린다면 서비스를 세분화해서 배포 시간을 줄일 필요가 있다. DevOps의 로드맵 CI/CD, Cloud, Docker/Kubernettes, IAC, Monitoring, Linux, ..

DevOps/AWS 2023.03.28

Presigned URL으로 S3 Bucket 업로드할 때 CORS 이슈 (http://localhost:3000)

✔️ 필요성 presignedURL으로 S3 Bucket에 이미지를 업로드하고 싶다. 그런데 로컬에서 개발할 때 CORS 이슈로 500에러가 나면서 업로드가 안된다. ✔️ 문제 확인 지금까지의 CORS 이슈를 해결할 때.. proxy라는 것을 써서 프론트에서 해결할 수도 있다고 하지만 삽질만 엄청 했고, 결국 백엔드/서버 쪽에서 CORS를 열어주는 방식이 가장 편했다. ✔️ 문제 해결 AWS 콘솔로 들어가서 업로드할 Bucket으로 이동한 뒤 권한에 가서 다음과 같이 CORS 정책을 수정해준다. http://localhost:3000에서 들어오는 PUT/POST/DELETE method를 막지 않겠다는 정책을 작성해준다 [ { "AllowedHeaders": [ "*" ], "AllowedMethods"..

DevOps/AWS 2023.03.10

[AWS] CLI 결과 출력 형식 설정 방법

AWS 결과 출력 형식은 자동화 스크립트 작성 시에 중요하니, 꼭 설정 방법을 파악해두어야 한다. 결과 출력 형식이란? - AWS CLI 명령어 수행 후 나오는 결과 데이터의 출력 형식을 의미한다 - 지원하는 출력 형식은 json, text, table, yaml, yaml-stream 있다. 옵션을 통해서 결과 출력 형식 바꾸기 설정 파일을 통해서 결과 출력 형식 바꾸기 옵션을 지정하지 않아도 yaml[야멜] 방식으로 출력된다

DevOps/AWS 2022.06.03

[AWS] CLI 기본 Region 설정하는 방법

AWS CLI 기본 Region 설정하기 기본 Region을 설정하지 않았을 때 // EC2에서 등록된 키 페어를 가져오는 명령어 aws ec2 describe-key-pairs // EC2에서 등록된 키 페어를 가져오는 명령어 + region도 함께 설정하기 aws ec2 describe-key-pairs --region ap-northeast-2 기본 Region을 설정하는 방법 nvim ~/.aws/config region 옵션 없이도 정상적으로 수행이 가능하다 // EC2에서 등록된 키 페어를 가져오는 명령어 aws ec2 describe-key-pairs

DevOps/AWS 2022.06.03
728x90
반응형