DevOps 58

[CCAAK] Broker 개념 노트 v1.0

✅ Kafka Broker 이해하기Kafka broker는 Apache Kafka 클러스터 내에서 데이터를 수신, 저장, 전송하는 서버이다. Kafka 생태계의 핵심 컴퓨팅 노드이며, 메시지를 불변한 순서로 저장하는 topic partition (로그 파일) 을 갖고 있음.📌 Broker의 기본Broker: 여러 개의 partition에 데이터를 저장하며, producer와 consumer 간 메시지 전달을 중계하는 서버임. Broker ID: 각 Kafka broker는 고유한 정수형 ID로 식별됨. Bootstrap Server: 모든 Kafka broker는 bootstrap server로 동작함. 클러스터 전체에 접근하기 위해서는 하나의 broker에만 연결하면 됨. Cluster: 여러 ..

DevOps/Kafka 2025.03.24

[리눅스 마스터 1급 1회독] 01-1-1.2 리눅스 기초

1. 리눅스의 철학1) 리눅스 관련 용어GNUFSF: ‘구속되지 않는다 관점에서의 자유’GNU GPL: GNU 소프트웨어에서 카피레프트를 실제로 구현한 라이센스커널: 주된 역할이 하드웨어 제어버전 표시 방법 (주번호는 큰변화, 부번호는 작은 변화, 패치레벨은 버그가 수정되고 새로운 기능이 추가될 시)2) 리눅스와 주요 라이센스정리: 무료이용, 배포, 소스코드 취득 및 수정은 다 가능. 그런데 수정 시 소스코드를 비공개할 수 있는 건 BSD, Apache, MIT만. 독점소프트웨어와 결합은 GPL만 불가.GPL컴퓨터 프로그램은 어떠한 목적으로도 사용할 수 있지만 법 제한 불가프로그램의 실행복사본은 소스 코드를 같이 판매하거나 무료로 공개 해야함.프로그램의 소스코드는 용도에 따라 변경할 수 있음변경된 컴퓨터..

DevOps/👣 Linux 2025.02.05

Java-Gradle Kafka 환경 설정하기

sdk 리스트: https://learn.conduktor.io/kafka/kafka-sdk-list/IntelliJ Idea에서 New Project 통해 Java > Gradle 선택 및 jdk 잡아주기프로젝트 하위에 새로운 module을 다음과 같이 만들어준다.maven repository로 간다: https://mvnrepository.com/artifact/org.apache.kafka가장 먼저 kafka-clients가 눈에 띌 것가장 최신 버전을 클릭해주기.거기서 Gradle을 클릭하여 복사해준 후, 그대로 dependencies 하위에 붙여넣어준다.// https://mvnrepository.com/artifact/org.apache.kafka/kafka-clientsimplementati..

DevOps/Kafka 2025.01.22

[리눅스 마스터 1급 1회독] 01-1-1.1 운영체제의 개요 정리

01. 리눅스 실무의 이해1. 리눅스의 개요1.1. 운영체제의 개요운영체제의 이해1) 운영체제의 주요 역할컴퓨터의 ____를 제어작업의 ____를 정함____을 제어데이터의 ________ 처리 기능을 수행함.2) 최근 운영체제의 주요 특징다중 ____ 시스템다중 ____ 시스템____ 기술 지원운영체제의 종류1) 주요 서버 및 데스크톱 운영체제유닉스: ____ 연구소에서 시작켄 톰슨이 B언어로 개발하다 데니스 리치가 C언어를 개발해서 작성상업적 목적을 가진 계열은 ____, 그게 아니면 ____윈도우: ____ 빌게이츠에서 시작MAC OS X: ____ 사 스티브잡스에서 시작2) 모바일 운영체제안드로이드바다마에모모블린미고리모타이젠3) 리눅스 기반 모바일 운영체제4) 스마트 TV5) IVI - 약어? _..

DevOps/👣 Linux 2025.01.21

Mac OS에서 쓸 수 있는 kafka docker-compose 구성 (arm 64)

Docker Compose를 이용한 Kafka 클러스터 구성Kafka는 분산 메시징 시스템으로, 데이터 스트리밍 처리에 널리 사용된다. 이 글에서는 Docker Compose를 활용하여 Zookeeper와 Kafka 브로커 3개로 구성된 로컬 환경을 구축하는 방법을 다룬다. 또한, Kafka UI 및 관리 도구를 포함하여 운영 환경을 시뮬레이션할 수 있는 구성 방법도 설명한다.1. Kafka 클러스터 개요Kafka 클러스터는 일반적으로 다음과 같은 구성 요소를 포함한다.Zookeeper: Kafka 브로커들의 메타데이터를 관리하며 클러스터의 상태를 조율한다.Kafka 브로커: 메시지를 저장하고 클라이언트로부터의 요청을 처리하는 핵심 요소이다. 브로커는 여러 개로 구성될 수 있으며, 데이터의 분산 및 복제..

DevOps/Kafka 2024.11.21

[EKS] external secret 이란

개요Kubernetes는 Secrets 리소스를 통해 애플리케이션의 민감한 정보를 안전하게 저장하고 관리할 수 있는 기능을 제공한다. 하지만 Kubernetes Secrets는 이름과 달리 완벽하게 안전하지 않은데, Secrets는 Kubernetes 클러스터의 etcd 데이터베이스에 base64로 인코딩된 평문 형태로 저장되기 때문에, 보안 위협에 노출될 가능성이 있다.이러한 한계를 극복하기 위해 AWS Secrets Manager, Google Secret Manager, HashiCorp Vault 등 외부 Secret 관리 서비스를 Kubernetes와 연동할 수 있는 방법이 필요하며, External Secrets Operator(ESO)**는 이를 가능하게 하는 오픈소스 도구이다. 외부 서비스..

[Istio] istio를 로컬 mac에서 실습할 환경 만들기

minikubek8s 기동minikube start --driver=dockeringress addon 활성화minikube addons enable ingress애드온이 활성화된 후 "minikube tunnel"을 실행하면 인그레스 리소스를 "127.0.0.1"에서 사용할 수 있음.minikube tunnel istioctl - cli설치curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.17.2 sh -vim ~/.zshrcexport PATH=$PWD/bin:$PATH 추가source ~/.zshrc Istio 설치istioctl install --set profile=demo -y설치확인kubectl get all -n istio-systemis..

[Terraform] 지연 이후 Gracefully shutting down

문제 상황Interrupt received.Please wait for Terraform to exit or data loss may occur.Gracefully shutting down... terraform plan시 자꾸 plan이 긴 시간 안되면서 Ctrl + C로 그냥 멈추면 위와 같은 메시지가 뜸 임시 해결책찐 원인이나 해결책은 아직 모르겠고 임시방편으로 다른 터미널 켠뒤,terraform init - terraform plan 해줌.그러면, 이렇게 Error acquiring the state lock과 함께 Lock ID가 나옴. terraform force-unlock [Lock ID]해주면 위와 같이 unlock 되고, 이후에 plan 쳐서 하면 당분간은(?) 위같은 현상 안뜸. 찐 ..

DevOps/👾IaC 2024.10.27

[Network] 라우터와 스위치의 차이

기능의 차이라우터는 여러 네트워크를 연결하여 서로 다른 서브넷 간의 통신을 가능하게 하는 장치임.각 네트워크를 식별하기 위해 IP 주소를 사용하고, 이 주소에 따라 데이터 패킷이 최적의 경로를 통해 전송되도록 함.반면에 스위치는 단일 네트워크 내에서 여러 장치를 연결하고 데이터 패킷을 장치 간에 전달하는 역할을 함.주로 MAC(Medium Access Control) 주소를 사용하여 데이터를 수신할 장치를 식별하고, 이를 통해 중복 트래픽을 줄여 네트워크 성능을 향상데이터 전달 방식의 차이라우터는 서로 다른 네트워크 간에 데이터를 전달하며, 특히 인터넷과 연결된 네트워크의 경우 NAT(Network Address Translation) 기능을 사용하여 개인 IP 주소를 공용 IP 주소로 변환.스위치는 연..

DevOps/Etc 2024.10.26