DevOps

    [AWS] ECS에서 firelens를 이용한 컨테이너 로그 아카이빙

    회사에서는 ECS Anywhere를 사용중이며 컨테이너의 로그는 NAS와 마운트된 디렉토리를 볼륨 마운트로 해당 디렉토리에 로그를 적재 하고 있다. IDC → AWS로 이관한다면 NAS는 동일하게 사용할 수 없으므로 firelens를 사용해 S3에 로그를 저장하는 방법이 있다. 1. ECS firelens란FireLens는 AWS에서 제공하는 컨테이너 로그 라우팅 및 수집 기능이다. ECS(Elastic Container Service)와 EKS(Kubernetes Service)에서 사용할 수 있으며, Fluent Bit과 Fluentd를 사용하여 로그를 다양한 대상(예: Amazon CloudWatch, Amazon S3, Amazon Kinesis Data Firehose, Elasticsearch..

    [AWS] RDS 인스턴스, Aurora RDS audit로그 활성화

    Amazon RDS의 Audit Log는 데이터베이스 활동에 대한 자세한 기록을 제공하는 기능이다. 이 로그를 사용하면 데이터베이스에 대한 접근, 실행된 쿼리, 데이터베이스 관리 작업 등과 같은 이벤트를 추적할 수 있다. Audit Log를 활용하면 보안 감사, 데이터베이스 사용 모니터링, 문제 해결 및 컴플라이언스 요구사항을 충족하는 데 도움이 된다.  1. Audit Log의 주요 사용 사례보안 감사: 누가 언제 어떤 데이터베이스 작업을 수행했는지 추적하여 보안 감사를 수행할 수 있다.활동 모니터링: 데이터베이스 사용 패턴을 이해하고, 비정상적인 활동이나 예상치 못한 접근을 식별할 수 있다.문제 해결: 데이터베이스 성능 문제나 애플리케이션 오류의 원인을 파악하는 데 도움된다.규제 준수: 많은 산업 분..

    [ElasticSearch] ElasticSearch Query DSL 검색

    Elasticsearch의 Query DSL (Domain Specific Language)은 Elasticsearch에서 데이터를 검색하기 위해 사용되는 강력하고 유연한 쿼리 언어입니다. DSL은 '도메인 특화 언어'를 의미하며, 이 경우 도메인은 데이터 검색과 관련된 작업이다. Elasticsearch의 Query DSL은 JSON 형식으로 쿼리를 작성하며, 다양한 검색 요구 사항을 표현할 수 있는 다양한 타입의 쿼리를 제공한다. Full-Text Query 텍스트 데이터를 검색할 때 사용되는 쿼리 유형이다. 이들은 일반적으로 자연 언어 텍스트에서 단어나 문구를 검색하는 데 사용되며, 각 쿼리 유형은 텍스트 검색을 다른 방식으로 수행하며 주요 Full-Text Queries에 대해 자세히 설명해보겠다..

    [ElasticSearch] ElaticSearch란 무엇인가, CRUD

    오랜만에 블로그에 글을 쓰는거같은데 입사한지 7개월 만인거같다.. 회사에서도 ELK를 Poc 하면서 간단하게 APM 모니터링이나 인프라 스트럭쳐등 만 사용하고있는데 이렇게만 사용하기에는 아쉽다는 생각이 들어 따로 ElasticSearch를 공부해서 활용하기위해 공부하려한다. Elasticsearch는 오픈 소스, 분산형 검색 및 분석 엔진으로, 대량의 데이터를 빠르고 효율적으로 검색, 분석 및 시각화할 수 있게 해준다. Elasticsearch는 주로 텍스트 검색, 로그 분석, 실시간 분석 등 다양한 용도로 널리 사용된다. 아래에 Elasticsearch의 주요 특징과 기능을 자세히 설명하겠다. 주요 특징 분산형 구조: Elasticsearch는 자연스럽게 분산되어 있어, 데이터를 여러 노드에 걸쳐 저장..

    [AWS] 인스턴스의 버스트기능(번역)

    Amazon 버스트 가능 인스턴스란 무엇인가? Amazon burstable 인스턴스는 차이점이 있는 AWS 인스턴스 제품군이다. 다른 AWS 인스턴스 제품군과 마찬가지로 일정 수준의 CPU 성능을 보장하지만 워크로드가 필요한 높은 CPU 성능 수준을 유지하기 위해 "기준" 수준의 성능을 버스트할 수 있는 능력도 있다. 최적으로 사용될 때 Amazon 버스터블 인스턴스는 "클라우드에서는 사용한 만큼만 비용을 지불한다"라는 주장에 가장 근접한다. 2010년에 Amazon은 t1.micro 인스턴스를 도입했으며 이 인스턴스는 호스트에 사용되지 않은 리소스가 충분할 경우 필요한 경우 짧은 "주기적" 급증을 허용하는 낮은 백그라운드 수준에서 작동하도록 설계된 인스턴스이다. Amazon 최초의 버스트 가능 인스턴..

    [자격증 후기] AWS SAA-C03 솔루션즈 아키텍트 어소시에이트 합격후기(2023-02-27)

    요즘 글 포스팅을 못한 이유 이녀석 때문이다... AWS자격증을 딴 이유는 데브옵스 관련 지식을 공부하면서 실습하는데 좀더 전문적인 지식이 필요하다 생각도하고 무엇보다 취업시장에서 자격증을 필요로하는곳이 많은거같아 스스로 증명해보고싶어서 준비하게되었다 필자는 준비기간을 12일을 잡고 준비했다 이렇게 타이트하게 잡은이유로는 이미 ec2, 람다, rds등 리소스등을 사용해본경험있기 때문에 준비하게되었다 그래도 뭐 별거있겠어? 라는 생각을 했는데 처음 공부를 시작할때 내가 정말 모르는 이론들과 아키텍쳐의 구성들이 나오니 정말 머리가 아팠다.. 필자는 아래의 유데미강의를 보고 공부를 시작했다 https://www.udemy.com/course/best-aws-certified-solutions-architect..

    [K8s] 쿠버네티스 livenessProbe로 파드 헬스 체크

    쿠버네티스가 아니더라고 배포방식에서 헬스체크는 중요하다 블루그린으로 배포를 한다는 가정하에 먼저 was가 블루 일때 새로운 was그린을 배포하게된다 이과정에서 그린의 status code가 200이여야만 블루로 가있던 트레픽을 그린으로 옮기는것이다 만약 200인걸 확인 하는 health check가 없다면 status code가 500이더라도 그린으로 배포되는 상황이 오게된다 물론 개인 프로젝트라면 상관없겠지만 실제 서비스라면 끔찍한 일이다 이상태를 확인 할 수 있도록 쿠버네티스에선 livenessProbe기능이 존재한다 livenessProbe으로 헬스체크할 프로토콜로는 HTTP와 TCP, 명령으로 테스트하는 유형이 존재하는데 이번 포스팅에서는 HTTP프로토콜로 livenessProbe기능을 사용해보려..

    [Terraform] 테라폼으로 aws VPC구성하고 오토스케일링으로 EC2 프로비저닝

    이번 포스팅은 아래의 아키텍쳐를 테라폼 코드로 만들어 보겠다(항상 테라폼 코드로 작성하기전 관련리소스들을 직접 aws 콘솔에서 구현 해보고 어떤 리소스들이 필요한지 확인하고 코드로 작성하는걸 추천한다. VPC관련 구현은 이링크를 통해 만들어보자) 프로젝트 구성은 아래의 그림과같다 # variable.tf variable "server_port" { type = string description = "app-port" default = 8080 } # 로컬에서 export TF_VAR_db_username=로 민감정보 보호 variable "db_username" { type = string description = "admin" } # 로컬에서 export TF_VAR_db_password=로 민감정보 ..