[AWS] MSK 클러스터에 프로메테우스와 그라파나를 활용한 모니터링 연동하기
·
AWS
들어가며AWS MSK에서 제공하는 기본적인 모니터링 지표 외에는 추가적인 과금을 통해서 여러 모니터링을 할 수 있습니다.그러나 생각보다 비용이 쌔다고 판단하여....MSK에서 별도로 프로메테우스 플랫폼과 연동할 수 있는 JMX Exporter, Node Exporter를 제공하므로해당 정보를 통해 카프카 브로커의 모니터링 지표와 브로커 인스턴스 지표(CPU, 메모리, 네트워크)를 수집하여그라파나를 사용하여 대시보드를 구성한 모니터링 환경을 구축하고자 합니다. 현재 내용과 관련해서 추상적인 아키텍처를 아래와 같이 만들어보았습니다. 해당 페이지에서는 기록용으로 프로메테우스와 그라파나 관련 설치 및 연동에 관련한 글만 작성하였으며,위와 같은 구성을 진행하면서 발생했던 문제들은 아래 게시글에 작성하였습니다.N..
[AWS] MSK로 Apache Kafka 환경 구축하기
·
AWS
들어가며완전관리형 아파치 카프카 서비스를 제공하는 Amazon MSK(Managed Streaming for Apache Kafka)를현재 소프트웨어 마에스트로 활동을 하면서 진행하고 있는 팀 프로젝트의 운영 서버에 적용하는 과정과학습한 내용을 기록하고자 작성하였습니다. 아래 교재를 통해 학습하며 환경을 구축해보았습니다. 아파치 카프카 애플리케이션 프로그래밍 with 자바 | 최원영 - 교보문고아파치 카프카 애플리케이션 프로그래밍 with 자바 | 아파치 카프카 애플리케이션 개발을 위한 「실전 가이드」 아파치 카프카란 무엇일까? 카프카 애플리케이션은 어떻게 만들까? 데이터 파이product.kyobobook.co.kr    1단계: MSK 클러스터 생성하기AWS가 추천하는 '빠른 생성' 방식으로 클러스터..
[AWS] ElastiCache로 Redis 클러스터 모드 생성 및 적용해보기
·
AWS
AWS ElastiCacheAmazon Web Services(AWS)에서 제공하는 완전 관리형 인메모리 데이터베이스 서비스입니다. 고속 데이터 캐싱을 통해 애플리케이션의 성능을 향상시키고, Redis와 Memached 두 가지 엔진을 지원하고 있습니다.  적용하기 전에ElastiCache For Redis에서 클러스터를 구성할 때 아래와 같은 세가지 옵션이 존재합니다.싱글 클러스터 노드 (단일 노드)클러스터 모드 없이 Replication만 지원 (클러스터 모드 비활성화)클러스터 모드와 Replication 모두 지원 (클러스터 모드 활성화)  위 사진에서 왼쪽이 클러스터 모드 비활성화된 옵션의 모습이고, 오른쪽이 클러스터 모드 활성화된 옵션의 모습입니다.클러스터 모드 비활성화(왼쪽)는 하나의 prim..
[AWS] Lambda와 Private Subnet에 있는 RDS 연결하기
·
AWS
AWS Lambda에서 사용하고 있는 함수중에 Private Subnet에 있는 RDS에 접근해야 되는 일이 생겨서 수행했던 내용을 기록하고자 글을 작성했습니다.   Lambda 함수에 연결해줄 보안 그룹 생성 우선은 다음과 같이 RDS에 접근하고자 하는 람다 함수에 대한 보안 그룹을 생성해줍니다.VPC는 당연히 접근하고자 하는 RDS가 속해있는 VPC로 선택해줍니다.이후 위 사진처럼인바운드는 규칙없이, 아웃바운드는 Default로 설정되어있는 기존 규칙을 유지하며 보안그룹을 설정해줍니다.  Lambda 함수 설정정책 추가 람다에서 연결하고자 하는 함수의 페이지로 진입하여구성 > 권한을 클릭해서 권한을 수정해줘야합니다.  정책 연결을 누르거나 인라인 정책을 통해서 원하는 부분만 직접 설정할 수 있는데,저..
[AWS] IAM 개념 및 IAM 사용자 추가하기 + IAM 정책 시뮬레이터
·
AWS
IAM(Identity and Access Management)유저를 관리하고 접근 레벨 및 권한에 대한 관리  AWS 계정을 최초로 생성할 때, 해당 계정은 모든 AWS 서비스 및 리소스에 대해 완전한 액세스 권한이 있는 루트 사용자입니다.이러한 루트 계정은 모든 권한을 가지고 있기 때문에 공유되어서 사용되면 안됩니다. 만약에 A라는 회사에서 보유하고 있는 루트 계정을B, C, D라는 직원이 입사하여 개발과 관리를 위해 권한이 필요하다고 루트 계정을 알려주게 되면보안상 심각한 문제가 됩니다. 거기다가 만약에 C라는 직원이 갑자기 퇴사하게 된다면...?!그러므로 루트 계정으로부터 특정 리소스에 대해서 관리하고 사용할 수 있는 권한을 부여해주는IAM 계정을 B, C, D 직원에 각각 부여하여 사용하는 것이..