728x90
반응형

2025/11 64

GCP Public IP를 재부팅해도 고정시키는 확실한 방법

GCP VM을 쓰다 보면 외부에서 API 호출을 받거나 방화벽을 열어둔 경우가 많다. 그런데 VM을 재부팅할 때 Public IP가 바뀌면 서비스 연결이 끊기거나 화이트리스트가 무너져 버린다.이 문제를 해결하려면 Ephemeral IP(일회성 IP) 대신 Static External IP를 할당해 고정하면 된다.아래 순서대로 하면 재부팅 후에도 Public IP는 절대 변하지 않는다.1. 기존 VM에 Static IP 할당하는 방법(1) 현재 IP가 Ephemeral인지 확인GCP Console → VPC Network → External IP addresses여기에서 IP 상태가 Ephemeral이면 재부팅 시 변경된다.(2) Static IP 예약하기VPC Network → External IP ad..

카테고리 없음 2025.11.28

AWS CloudHSM 쉽게 이해하기: 기업용 하드웨어 보안 모듈이 필요한 이유

기업 환경에서 보안 강화를 위해 ‘키 관리’를 직접 통제해야 하는 경우가 많아지고 있어. 이런 상황에서 자주 등장하는 서비스가 바로 AWS CloudHSM이야.CloudHSM은 AWS에서 제공하는 전용 하드웨어 보안 모듈(HSM) 서비스로, 고급 보안 정책을 요구하는 기업이나 금융권에서 많이 사용돼.AWS CloudHSM이란 무엇일까?AWS CloudHSM은 FIPS 140-2 Level 3 인증을 받은 전용 HSM 장비를 AWS에서 관리형으로 제공하는 서비스야.쉽게 말하면:암호화 키를 직접 만들고직접 관리하고AWS 직원도 절대 접근할 수 없고규제·감사 기준(FinTech, 금융, 공공기관)을 만족할 수 있는하드웨어 기반의 고보안 암호 장비를 클라우드에서 쓰는 거야.왜 CloudHSM이 필요할까?1. 키..

카테고리 없음 2025.11.28

BOM 문제란? 파일 깨짐·오류를 만드는 숨은 시작 바이트의 정체

개발을 하다 보면 분명 아무 것도 바꾸지 않았는데도 프로그램이 깨지고,스크립트가 실행되지 않거나,API 응답이 이상하게 보이고,Git diff에 이상한 변경이 생기는 일이 있어.이럴 때 가장 먼저 의심해야 하는 게 바로 BOM(Byte Order Mark) 이다.BOM(Byte Order Mark)이란?BOM은 텍스트 파일의 가장 앞부분에 붙는 특수한 3바이트(UTF-8 기준) 로,파일이 어떤 문자 인코딩인지 표시하는 용도야.UTF-8 BOM → EF BB BFUTF-16 BOM → FF FE 또는 FE FF문제는 이 바이트들이 눈에 보이지 않는다는 것.그런데도 프로그램은 이 바이트들을 그대로 읽어버린다.왜 BOM이 문제일까?1) 쉘 스크립트, 파이썬 스크립트가 실행 실패예: #!/bin/bash 앞에 ..

카테고리 없음 2025.11.28

Redis 버전별 클라이언트 명령어 차이 정리(최신까지 핵심만)

Redis는 서버 버전 변화와 함께 일부 명령이 추가·변경·Deprecated 되면서클라이언트 라이브러리에서도 지원 여부와 사용 방식이 조금씩 달라져.프랭크가 정리한 표만 보면 바로 감 잡을 수 있어.Redis 버전별 클라이언트 명령 차이 완전 정리Redis는 기본 명령들이 오래 유지되는 편이지만,버전이 올라가면서 새로운 기능, Deprecated 명령, 보안 강화,클러스터 관련 명령 확장이 생기면서 클라이언트 사용에도 차이가 생긴다.아래 내용은 Redis 2.x → 3.x → 4.x → 5.x → 6.x → 7.x 기준으로클라이언트가 실제로 영향을 받는 핵심 차이만 모아둔 목록이다.1) Redis 2.x ~ 3.x✔ 거의 모든 기본 명령(SET/GET/HGET/LPUSH 등) 동일클라이언트 사용 방식에..

카테고리 없음 2025.11.28

개발에서 말하는 PR, 정확히 무슨 뜻일까?

개발자들이 “패치 PR 올렸어”, “PR 좀 확인해줘”라고 말할 때 자주 등장하는 단어가 있다. 바로 PR(Pull Request)이다. 처음 들으면 다소 생소하지만, 실제로는 협업 과정에서 꼭 필요한 개념이다.PR(Pull Request)의 의미와 역할PR은 Pull Request의 줄임말로,“내가 수정한 코드(패치)를 메인 프로젝트로 합쳐도 될지 검토해달라”는 요청을 의미한다.GitHub, GitLab, Bitbucket 같은 협업 플랫폼에서 사용되며, 코드 리뷰와 품질 관리를 위한 핵심 절차다.왜 PR이 중요한가?코드 안정성 확보여러 사람이 함께 작업하면 충돌이나 버그가 생기기 쉽다. PR을 통해 다른 개발자가 검토하면 품질이 더 올라간다.변경 이력 추적 가능누가 어떤 이유로 어떤 부분을 수정했는지..

카테고리 없음 2025.11.28

Redis 5.0.5에서 Lua 스크립트 실행을 막는 가장 확실한 방법

Redis 5.0.5는 기본적으로 EVAL과 EVALSHA를 통해 Lua 스크립트를 실행할 수 있다. 하지만 운영 환경에서는 보안이나 안정성 때문에 Lua 실행 자체를 차단해야 할 때가 있다. 이럴 때 가장 효과적인 방법은 Redis 설정에서 해당 명령을 비활성화하는 것이다.Redis가 Lua 스크립트를 차단하지 못하는 이유Redis 5.x에는 특정 명령만 선택적으로 금지하는 ACL 기능이 없기 때문에 Lua 스크립트 자체를 끄는 전용 옵션도 존재하지 않는다. 즉, 기본 기능은 그대로 두면서 실행을 제한하려면 우회 방식이 필요하다.가장 실무적인 해결책: EVAL/EVALSHA 비활성화Redis 설정 파일(redis.conf)에 아래 두 줄을 추가하면 외부에서는 Lua 스크립트를 절대로 실행할 수 없다.r..

카테고리 없음 2025.11.28

E2E_DEC_ERROR 뜻과 쉽게 이해하는 방법

엔드투엔드 시스템에서 데이터를 주고받다 보면, 중간 과정 없이 처음부터 끝까지 그대로 전달되는 E2E(End-to-End) 흐름을 쓴다. 그런데 이 과정에서 받은 데이터를 복호화(Decode) 하는 쪽에서 문제가 생기면 E2E_DEC_ERROR가 나타난다.말 그대로 “엔드투엔드 데이터 디코딩 과정에서 오류가 났다” 라는 신호야, 프랭크.왜 이런 오류가 생길까보통 아래 상황 중 하나일 때 발생해:전달된 데이터가 손상됨전송 중 패킷이 깨졌거나 형식이 맞지 않을 때.암호화/복호화 키 불일치보내는 쪽과 받는 쪽의 키나 알고리즘이 다르면 정상적으로 풀 수 없어.버전(프로토콜) 불일치송수신 시스템의 버전이 다르면 디코딩 규칙도 달라 문제를 일으켜.메시지 포맷 오류JSON 필드 누락, 길이 불일치, 인코딩 형식 깨짐..

카테고리 없음 2025.11.28

ElastiCache Valkey: Redis의 오픈소스 대체 엔진

AWS가 2024년 이후 강하게 밀고 있는 ElastiCache의 새로운 엔진 — Valkey(발키) 는기존 Redis OSS 기반에서 벗어나 완전한 오픈소스 커뮤니티 중심의 인메모리 데이터 스토어 엔진이야.Redis가 상업 라이선스로 전환되면서AWS, Google, Oracle, Aiven 등 여러 회사가 함께 만든 오픈소스 포크가 Valkey고,AWS ElastiCache도 2024년부터 공식 지원을 시작했어.🔥 Valkey가 왜 중요한가?Redis는 원래 BSD 오픈소스였는데라이선스가 바뀌면서 클라우드 벤더가 직접 사용하기 어려워졌어.그래서 AWS가 선택한 방향이 바로 Valkey 기반으로 전환.즉,Redis와 완전히 호환오픈소스클라우드 친화적더 가볍고 더 빠른 엔진이 세 가지 장점을 노리는 거지..

카테고리 없음 2025.11.27

Grafana에서 irate()가 의미하는 것: 순간 변화 감지의 핵심

Prometheus 기반 모니터링을 쓰다 보면 rate()와 함께 자주 보게 되는 함수가 바로 irate()다. 둘 다 카운터 지표의 증가율을 계산하지만, 목적과 활용 방식은 분명히 다르다. 특히 장애를 빠르게 감지하려면 irate()의 성격을 제대로 이해하는 것이 중요하다.irate()는 무엇을 계산할까?irate()는 말 그대로 “Instant Rate”, 즉 가장 최근 두 데이터 포인트만 가지고 증가율을 계산한다.그래서 특정 지표가 갑자기 튀거나, 오류가 순간적으로 폭증하는지 확인할 때 강력하다.예를 들어,HTTP 5xx 에러가 갑자기 튀는지 확인Kafka consumer lag이 순간적으로 증가하는지 확인Redis ops/sec가 갑자기 치솟는지 확인이런 “순간 변화”를 잡고 싶을 때 irate(..

카테고리 없음 2025.11.27

Terraform에서 Predictable 이란?

Terraform은 같은 코드와 같은 상태(state)를 가지고 실행하면항상 같은 리소스를 생성·변경·삭제하는 동일한 결과를 내야 해.이걸 Terraform에서는 predictable infrastructure changes라고 불러.즉,실행할 때마다 결과가 달라지면 안 되고같은 입력 → 같은 계획(plan)과 결과(apply)가 나와야 돼.왜 Predictable이 중요할까?1) 인프라 변경이 “재현 가능”같은 코드면 누가 실행해도 결과가 동일해.이건 DevOps에서 엄청 큰 장점이야.2) 장애/문제 원인 파악이 쉬움결과가 항상 같으니까, 문제가 생겨도“왜 달라졌지?” 이런 혼란이 없어.3) 협업이 쉬움팀에서 여러 사람이 Terraform을 쓰면,코드 기반으로 모든 변경이 공유되기 때문에“누가 Appl..

카테고리 없음 2025.11.26
728x90
반응형