2024/04 10

[K8S 환경에 Kafka 및 EFK 배포] EFK 구성

참고 블로그https://waspro.tistory.com/762https://medium.com/musinsa-tech/%EB%AC%B4%EC%8B%A0%EC%82%AC%EC%9D%98-%EC%97%98%EB%9D%BC%EC%8A%A4%ED%8B%B1%EC%84%9C%EC%B9%98-muse-musinsa-elasticsearch-e6355516186a https://www.elastic.co/guide/en/cloud-on-k8s/master/k8s-deploy-eck.html EFK 구성1.  ElasticSearch 구성namespace 생성 마스터 노드 생성# elasticsearch-master-configmap.yaml---apiVersion: v1kind: ConfigMapmetadata:..

AWS/Project 2024.04.24

EFK 스택(ElasticSearch+Fluentd+Kibana)

참고 블로그: https://waspro.tistory.com/762 EFKElasticSearch- 저장을 위한 모듈 - 실시간 검색/분석 기능 - 분산환경에 저장된 로그를 통합으로 수집하여 통합 저장소 역할 - 구성 요소: 마스터 노드, 데이터 노드 - NoSQL DB로 데이터의 백업/복구를 관리하는 저장소 Master 노드클러스터 관리 인덱스의 메타 데이터(생성, 삭제), 클러스터 상태 정보, 데이터 저장 Data 노드 실제로 데이터 저장 및 처리 Client 노드 클라이언트 요청을 받아들이고 처리요청을 Master 및 Data 노드로 라우팅하며, 결과를 수신하여 클라이언트에 반환검색 요청을 분산, 보안 및 인증을 관리 FluentD- 수집 및 정제를 위한 모듈 - K8S 환경에 DaemonSet으..

AWS/Service 2024.04.24

[K8S 환경에 Kafka 및 EFK 배포] TroubleShooting

Instances failed to join the kubernetes clusterInstances failed to join the kubernetes cluster새로 추가한 서브넷을 라우팅 테이블로 연결 안해둬서.. 안됐음Helm 버전 에러helm version 2 설치하니 에러 생겨서 helm version 3.14.4로 진행...참고 블로그: https://helm.sh/ko/docs/intro/install/$ curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3$ chmod 700 get_helm.sh$ ./get_helm.sh $ kubectl --namespace kube-..

AWS/Project 2024.04.19

[K8S 환경에 Kafka 및 EFK 배포] EKS 구성

1.  AWS CLI 설치로컬 환경에 AWS CLI 설치https://docs.aws.amazon.com/ko_kr/cli/latest/userguide/install-cliv2.html AccessKey 생성$ aws configureAWS AccessKey ID [********HTZD]:AWS Secret Access Key [******RhfT]:Default region name [ap-northeast-2]:Default output format [json]: 2.  Kubectl 설치로컬에서 쿠버네티스 클러스터를 kubectl로 제어해야하므로 로컬 OS에 맞게 curl로 kubectl을 설치한다. kubectl 설치https://docs.aws.amazon.com/eks/latest/user..

AWS/Project 2024.04.18

AWS EKS

참고 블로그: https://velog.io/@rockwellvinca/EKS-AWS-EKS%EC%9D%98-%ED%81%B4%EB%9F%AC%EC%8A%A4%ED%84%B0-%EC%97%94%ED%8A%B8%ED%8F%AC%EC%9D%B8%ED%8A%B8%EB%9E%80 EKS(Elastic Kubernetes Service) Public + Private Endpoint Access EKS Cluster: Public + Private Control Plane(api server): Public Worker Node: Private Nodegroup 생성할 때, Nodegroup에 왜 Public Subnet 할당이 안되나 했음 ㅡㅡ (에러는 해당 서브넷이 IPv4 자동 Public IP 할당 활성화..

AWS/Service 2024.04.15

[K8S 환경에 Kafka 및 EFK 배포] 구성도

참고 블로그https://potato-yong.tistory.com/126https://coding-start.tistory.com/m/383 쿠버네티스 로깅 파이프라인 이번에 CKA 자격증 따면서 배운 쿠버네티스와 AWS 강의 들으며 흥미 돋은 Kafka와EFK 조합을 사용하여 쿠버네티스 로깅 파이프라인을 구성해보려고 한다.  구성도fluentd  →  kafka  →  elasticsearch  →  kibana  →  visualizationlogstash 없어도 될듯 ..?  fluentd 여러 다양한 리소스에서 로그 및 이벤트를 수집하여 이를 여러 대상으로 전달하도록 설계주로 컨테이너 로그 수집daemonset으로 생성 kafkahelm을 사용하여 설치  (https://coding-start..

AWS/Project 2024.04.08

Amazon MSK

참고 블로그: https://velog.io/@dlatkdrb980219/AWS-MSKApache KafkaProducer∙ 메세지(이벤트)를 생산(Write)하는 주체∙ 프로듀서는 메세지 전송 시 토픽을 지정∙ 파티션은 라운드로빈 방식 혹은 파티션 번호를 지정하여 넣을 수 있음∙ 같은 키를 갖는 메세지는 같은 파티션에 저장되며 순서 유지Kafka 클러스터∙ Kafka의 Broker들의 모음∙ Kafka는 확장성과 고가용성을 위해 Broker들이 클러스터로 구성되어 있다.Broker∙ 각각의 Kafka 서버∙ 메시지를 저장하고 복제하는 서버∙ 동일 노드에 여러 Broker를 띄울 수 있다.Zookeeper∙ Kafka 클러스터 정보 및 분산처리 관리 등 메타 데이터가 저장된 스토리지∙ Kafka를 띄우기..

AWS/Service 2024.04.04

[Terraform] 용어

Terraform 키워드 terraformprovider Terraform 자체에 대한 설정을 작성하는 블록 Terraform과 외부 서비스를 연결해주는 기능 resourcedata 인프라 구성요소 Terraform 외부에 정의되어 있는 정보를 가져와서 사용할 수 있게 해주는 기능 variablelocals개발자로부터 입력받는 변수. 재사용성 O지역변수 선언 키워드. 현재 파일에서만 사용 가능outputmodule인프라에 대한 정보를 명령줄에 노출(숨기기 가능)시킬 수 있으며 자식 모듈의 output 값에 접근하여 사용할 수 있게 해주는 기능하나의 폴더 내에 있는 Terraform 구성 파일들의 집합 terraformterraform {  required_providers {    aws = {   ..

IaC/Terraform 2024.04.02

[Terraform] 환경 구성

참조 문서: https://docs.aws.amazon.com/ko_kr/cli/latest/userguide/getting-started-install.html 1. Terraform 설치VS Code에서 Extensions > HashiCorp HCL 설치환경변수 설정 2. AWS IAM 계정 생성AccessKey 발급: AWS Console 액세스가 아닌 프로그래밍 방식 액세스가 필요하므로, 자격 증명 유형은 액세스 키 이다. 3. AWS CLI 설치https://awscli.amazonaws.com/AWSCLIV2.msi설치 확인$ aws --versionaws-cli/2.15.34 Python/3.11.8 Windows/10 exe/AMD64 prompt/off 4. 액세스 키 설정$ aws c..

IaC/Terraform 2024.04.02

IaC 도구 비교

Terraform Ansible CloudFormation 유형 프로비저닝 구성 관리 프로비저닝 오픈소스 여부 공개 공개 비공개 적용 대상 클라우드 멀티 멀티 AWS 전용 정책 설정 가능 불가능 부분적 구성 방식 Immutable mutable Immutable 라이프사이클 관리 가능 불가능 부분적 온프레미스 지원 부분적 부분적 불가능 ✔︎ Immutable : 인프라스트럭처의 상태를 변경할 때, 기존 인프라스트럭처를 수정하거나 업데이트하는 것이 아니라 새로운 인프라스트럭처를 생성하여 이전 상태의 인프라스트럭처를 교체하는 방식을 의미한다. Ansible 프로비저닝보다 구성 관리에 더 큰 장점을 가지고 있고, 테라폼으로 자원을 생성(프로비저닝)하고 앤서블로 생성된 자원에 대한 구성 관리하는 방식으로 조합해..

IaC 2024.04.02