일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Terraform
- IRSA
- node group
- helm_release
- amazon sns
- ingestion
- aws-loadbalacner-controller
- 클러스터 보안 그룹
- Docker0
- Gateway
- route53
- aws ses #aws lambda
- 코드커버리지
- 에이전트 유형
- s3
- httpasswd
- 추가 보안 그룹
- 에이전트 구성
- jenkins
- assumerole
- Pipeline
- Service Account
- saa-c03 #saa #aws certified solutions architect - associate
- docker
- Amazon CloudWatch
- instances failed to join cluster
- 테라폼
- kubernetes
- fruition
- NAT
- Today
- Total
목록분류 전체보기 (48)
cloudwithbass
다음 웹사이트의 아키텍처를 실습할 테라폼 코드를 공유합니다: https://catalog.workshops.aws/general-immersionday/ko-KR/basic-modules/40-monitoring/monitoring General Immersion Day - BasicThe content contained in the module is considered foundational, 100 level labs covering AWS core services.catalog.workshops.awsEC2의 CPU 사용량이 평균 60%가 넘을 경우 CloudWatch가 Amazon SNS에 게시하고, 등록한 이메일로 메일을 보내는 아키텍처입니다. 전체 코드는 아래 git에서 확인할 수 있습니다.h..
이전 포스팅에서 TCP/IP 소켓 통신에 대해 알아봤습니다.TCP/IP 소켓 통신에선 서버와 클라이언트의 양방향 통신을 위해 연결을 유지합니다.하지만 연결이 필요하지 않을 경우, 이것은 리소스 낭비로 이어질 것입니다.이번 포스팅에선 연결이 필요하지 않은 HTTP에 대해 알아보겠습니다. 목차HTTP란?HTTP는 HTML과 같은 리소스를 가져올 수 있도록 해주는 프로토콜입니다. 웹에서 이루어지는 모든 데이터 교환의 기초이며, 클라이언트-서버 프로토콜이기도 합니다. (mozila) 크게 요청(request) 메시지와 응답(response) 메시지로 나눌 수 있습니다. RequestStart line: HTTP 메서드(POST), 요청 URI ( / ), HTTP 버전에 대한 정보가 있습니다.Header: 요..
네트워크를 공부한지 오래되었고, 명확하지 않은 느낌이 자주 들어서 더욱 자세하게 공부하려고 합니다.가장 먼저 공부할 개념은 어디선가 많이 들어본 소켓입니다. 목차소켓이란?소켓은 네트워크에서 실행되는 두 프로그램의 양방향 통신에 사용되는 하나의 엔드포인트입니다.소켓에는 포트 번호가 바운드되어 있으므로 데이터를 전달할 목적지를 식별할 수 있습니다.TCP/UDP 프로토콜을 사용하므로 소켓은 OSI 7 Layers의 4계층(Transfer Layer)에서 사용됩니다. 일반적으로 서버는 특정 포트 번호가 바운드된 소켓을 갖고 실행됩니다. 서버는 연결 요청을 보내는 클라이언트의 소켓을 리스닝하며 기다릴 뿐이죠. 클라이언트는 호스트 이름(IP address)과 포트 번호를 알고 있습니다. 이 두가지 정보를 이용해 ..
이전 포스팅까지의 인프라 구성도입니다.이전 포스팅에선 aws-loadbalancer-controller의 helm chart를 이용해 ALB를 구성했습니다.이번 포스팅의 목표는 두 가지입니다.대표적인 모니터링 도구인 Prometheus와 Grafana를 helm chart로 배포합니다.Route53을 이용해 호스팅 영역 별로 Prometheus와 Grafna로 접속하는 도메인을 생성합니다. (예시: prometheus.example.com과 grafana.example.com)모든 소스코드는 아래 주소에서 확인하실 수 있습니다.https://github.com/Dminus251/practice-terraform/tree/main/demo09-monitoring목차 1. Prometheus 구성하기helm..
이전 포스팅까지의 인프라 구성도입니다.이전 포스팅에선 private subnet을 노드 그룹으로 관리하도록 구성했었습니다.이번 포스팅에선 이 노드 그룹에 안정적으로 트래픽을 전달하도록 로드 밸런서를 구성할 것입니다.모든 소스 코드는 아래 주소에서 확인하실 수 있습니다.https://github.com/Dminus251/practice-terraform/tree/main/demo08-ingress목차1. helm 차트 구성AWS의 aws-loadbalancer-controller 문서와 Helm artifact hub 문서를 참고해서 helm chart 구성합니다.Terraform에서는 Helm 차트를 사용할 때 helm_release 리소스를 사용합니다.helm.tfresource "helm_releas..
지난 포스팅까지 테라폼으로 구성했던 인프라의 구성도입니다. 이번 포스팅에선 private subnet의 ec2 instance를 제거하고, eks nodegroup을 통해 private subnet의 인스턴스를 관리해보겠습니다.또한 그 과정에서 발생한 'instances failed to join cluster' 에러를 해결한 과정을 기록했습니다. 아직 테라폼을 공부 중이기 때문에 내용이 부정확할 수 있지만.. 어쨌든 에러는 해결했습니다.또한 블로그에서 다루지 못한 내용이 있을 수 있으며, 최신 상태의 전체 코드는 아래 github에서 확인하실 수 있습니다.https://github.com/Dminus251/practice-terraform/tree/main/demo07-ng 목차1. Launch Tem..
지난 포스팅까지 구성했던 Terraform 인프라 구성도입니다.이번 포스팅에선 priavte subnet에 EKS cluster를 구성해보겠습니다.전체 소스 코드는 아래 깃허브에서 확인하실 수 있습니다.https://github.com/Dminus251/practice-terraform/tree/main/demo06-eks목차1. Cluster테라폼 문서를 참고해 eks cluster를 구성합니다. modules/t-aws-eks/cluster/main.tfresource "aws_eks_cluster" "example" { name = var.cluster-name role_arn = var.cluster-role_arn vpc_config { subnet_ids = var.clust..
지난 포스팅에서 ec2 인스턴스를 생성했습니다.이번 포스팅에서는, ec2 구성 시 반드시 확인해야 하는 보안 그룹에 대해 알아보겠습니다.보안 그룹의 인그레스 규칙이 설정되지 않으면, 라우팅 테이블이 제대로 구성되어 있어도 트래픽이 인스턴스에 도달할 수 없습니다. 이번 포스팅에선 테라폼으로 security group을 구성합니다.소스 코드는 다음 github 주소에서 확인 가능합니다.https://github.com/Dminus251/practice-terraform/tree/main/demo05-sg목차 1. 보안 그룹 모듈 구성하기 modules/t-aws-sg/main.tf보안 그룹 모듈입니다.aws_security_group 테라폼 문서를 참조해 작성합니다.'코드를 어떻게 짜야 간결성과 재사용성을..
현재까지 서브넷, NAT, IGW, Route Table을 테라폼으로 구성했습니다.이번 포스팅에선 ec2 instance를 구성하고, 서브넷을 다시 모듈화할 생각입니다.소스 코드는 아래 깃허브에서 확인할 수 있습니다.https://github.com/Dminus251/practice-terraform/tree/main/demo04-ec2목차1. 서브넷 모듈화하기지난 포스팅까진 모듈 내에서 count를 사용해 반복적으로 서브넷을 생성했었지만, 코드를 일관적으로 만들기 위해 루트 모듈에서 반복문을 사용하도록 수정했습니다. 그에 따라 루트 모듈과 서브넷 모듈의 코드가 조금 바뀌었습니다. moduels/t-aws-public_subnet/main.tfresource "aws_subnet" "public_subn..
지난 포스팅에서 public subnet을 인터넷과 통신하도록 구성했습니다. (https://cloudwithbass.tistory.com/44)이번 포스팅에선 private subnet이 인터넷에 연결할 수 있도록 구성할 것입니다.전체 코드는 https://github.com/Dminus251/practice-terraform/tree/main/demo03-nat에서 확인하실 수 있습니다. 목차1. NAT에 관해서왜 private subnet이 인터넷에 연결해야 할까?private subnet은 보안을 위해 인터넷에서 온 트래픽을 허용해선 안 됩니다. 하지만 private subnet에서 인터넷으로 나가는 트래픽을 허용해야 하는 경우가 있습니다.패키지 설치/업데이트 (apt update, apt upg..