전체 글 159

kubectl 사용법 정리 — 자주 쓰는 명령어와 옵션 총정리

1. kubectl이란?kubectl은 Kubernetes 클러스터와 통신하기 위한 공식 CLI(Command Line Interface) 도구다. Pod, Deployment, Service 같은 리소스를 조회하고, 생성하고, 수정하고, 삭제하는 등 클러스터에 대한 거의 모든 작업을 이 하나의 명령어로 수행한다.중요한 건 kubectl 자체가 클러스터에 직접 접속하는 게 아니라는 점이다. kubectl은 클러스터의 API Server에 REST API 요청을 보내는 클라이언트일 뿐이고, 실제 상태 조회/변경은 모두 API Server를 거쳐 처리된다.2. 설치와 초기 설정2.1 설치# macOS (Homebrew)brew install kubectl# Linuxcurl -LO "https://dl.k8..

Kubernetes 기본 개념 정리 — 그림으로 이해하는 K8s 아키텍처

1. Kubernetes란?**Kubernetes(k8s)**는 여러 대의 서버에 걸쳐 컨테이너화된 애플리케이션을 배포, 확장, 운영하기 위한 오픈소스 컨테이너 오케스트레이션 플랫폼이다. 구글이 사내에서 사용하던 Borg 시스템의 경험을 바탕으로 만들어 2014년 오픈소스로 공개했다.컨테이너(Docker 등)가 애플리케이션을 "격리된 실행 단위"로 패키징하는 기술이라면, Kubernetes는 그 컨테이너를 **"어디에, 몇 개나, 어떻게 띄우고 유지할지"**를 관리해주는 도구다.왜 필요한가컨테이너 1~2개를 서버 1대에서 돌리는 정도라면 docker run 몇 번으로 충분하다. 하지만 서비스가 커지면 다음과 같은 문제들이 자연스럽게 발생한다.컨테이너가 죽으면 누가 다시 띄워주는가?트래픽이 몰릴 때 어떻게..

Kubernetes 멀티 Pod 환경에서 Alert 중복 전송 문제 해결하기 (client-go Leader Election)

1. 문제 상황Alertmanager(혹은 그 외 alert 소스)에서 수집한 데이터를 외부 웹으로 전달하는 서비스를 Kubernetes에 배포했다고 가정해보자.Alertmanager → [내 서비스 Pod] → 외부 웹 API가용성을 위해 Deployment의 replicas를 2 이상으로 설정하면, 각 Pod가 독립적으로 alert를 수신하고 동시에 동일한 데이터를 외부 웹으로 전송해버리는 문제가 발생한다.Pod A → 외부 웹으로 alert 전송Pod B → 동일한 alert를 또 전송결과: 외부 시스템에는 중복 알림이 두 번(또는 replica 수만큼) 쌓임이는 서비스 자체는 이중화(HA)해야 하지만, 실제 "일"을 수행하는 주체는 단 하나여야 하는 전형적인 케이스다. 이럴 때 Kubernetes..

AI 프롬프팅, 이제는 모두 비슷해질까?

AI를 처음 사용할 때 가장 많이 듣는 말 중 하나가 있습니다."프롬프트를 잘 작성해야 좋은 결과를 얻을 수 있다."실제로 GPT가 처음 등장했을 때는 프롬프트 작성 능력이 결과를 크게 좌우했습니다. 같은 질문이라도 표현을 조금만 바꿔도 답변의 품질이 크게 달라졌기 때문입니다.하지만 최근에는 조금 다른 변화가 나타나고 있습니다.AI는 점점 사람의 말을 더 잘 이해한다최신 AI 모델들은 예전보다 훨씬 자연스러운 대화를 이해합니다.예전에는역할을 지정하고단계별로 지시하고출력 형식을 명확하게 작성해야원하는 결과를 얻을 수 있었습니다.반면 최근 모델들은 단순히"게임 서버를 C++로 설계하는 방법을 알려줘."처럼 자연스럽게 질문해도 상당히 좋은 답변을 제공합니다.즉, AI가 발전할수록 프롬프트 자체의 중요성은 조금..

클로드 활용 - 미국 주식 모의 투자(day1)

환경설정Claude - 자동 매매(buy, sell 도 스스로 하도록 수정)Alpaca - 계좌(100,000달러), api 활용자율 매매 로직점수의미자본 분배0.8+강한 매수 (골든크로스 + RSI저점 + 모멘텀)최대 35%0.6~0.8중간 매수비례 배분0.4~0.6약한 매수소량0.4 미만기회 없음패스SELLRSI>75 or 데드크로스전량 매도 → 현금으로 재분배관심 종목"NVDA", "TLT", "PFE", "AGNC", "JEPQ", "KO", "SCHD", "TSLA"결론claude는 재밌다.환경 세팅, 코드 구현, 자동화, 이후 들어오는 피드백에 대해서 수정까지 알아서 한다똑똑하기도, 바보같기도 한 재미있는 친구유의미한 성적은 아니였다.(됐으면 이미 다 부자됐겠지....)그래도 모의투자 전략 방..

잡동사니/주식 2026.04.29

[Modern C++] std::call_once

std::call_once는 C++11에서 도입된 함수로, 여러 스레드가 동시에 실행되더라도 특정 작업이 딱 한 번만 실행되도록 보장하는 동기화 도구입니다.주로 초기화가 한 번만 이루어져야 하는 경우에 사용됩니다 (예: 싱글톤 패턴 등).#include #include #include std::once_flag flag;void initialize() { std::call_once(flag, []() { std::cout 이 프로그램은 여러 스레드에서 initialize가 호출되더라도 std::call_once 내부의 람다가 단 한 번만 실행되도록 보장합니다. 🧠 사용 예시 요약상황설명싱글톤 초기화객체가 한 번만 생성되어야 할 때리소스 초기화설정 파일, 네트워크, DB 연결 등한 번만 실행되어야 ..

[C++] 반환값 최적화(RVO, NRVO)

📦 개념 요약용어의미RVO (Return Value Optimization)임시 객체를 직접 호출자 영역에 생성하여 복사/이동 생략NRVO (Named Return Value Optimization)이름 있는 지역 변수를 반환할 때도 복사/이동 없이 직접 생성✅ RVO (Return Value Optimization)예제:Test createTest() { return Test(); // 임시 객체 반환}Test() 생성 시, 컴파일러가 호출자 스택에 직접 객체 생성그래서 생성자 1번만 호출, 복사/이동 생략됨➡️ 객체를 “리턴용 임시 공간”에 직접 생성하는 방식✅ NRVO (Named Return Value Optimization)예제:Test createTest() { Test t; ..

[Modern C++20] 🚀주요 특징 & 설명

✅ 1. Concepts – 템플릿 타입 제약templateconcept Addable = requires(T a, T b) { { a + b } -> std::convertible_to;};templateT add(T a, T b) { return a + b; }템플릿에 조건을 부여할 수 있음컴파일 에러가 명확해짐, 가독성 증가enable_if, SFINAE 대체 가능✅ 2. Modules – 헤더보다 더 나은 코드 구성// math.ixxexport module math;export int add(int a, int b);// main.cppimport math;#include 대신 import컴파일 속도↑, 중복 include 문제 해결대규모 프로젝트에서 효과적✅ 3. Coroutines – ..