본문 바로가기

전체 글

(102)
ChatGPT를 활용해 GitHub Pages 기술 블로그를 시작합니다 배경이 블로그는 단순한 개발 기록장이 아니라, 실무에서 겪은 문제 해결 과정과 기술적 판단을 정리하기 위한 공간입니다.백엔드/풀스택 개발자로 일하면서 Java, Spring Boot, 데이터베이스, Linux 서버 운영, 웹 서비스 배포, 데이터 분석 시스템화와 관련된 업무를 수행하고 있습니다. 업무 중에는 장애 대응, 서버 설정, 데이터베이스 이슈, 배포 환경 정리, 분석가와 개발자 사이의 요구사항 조율처럼 문서화하지 않으면 사라지는 경험이 많습니다.그동안 이런 내용은 개인 메모, ChatGPT 대화, 업무 보고, GitHub 저장소 등에 흩어져 있었습니다. 이제는 이 경험들을 정리해서 재사용 가능한 기술 자산으로 만들고자 합니다.왜 GitHub Pages인가기술 블로그를 만들 수 있는 방법은 많습니다..
Jenkins vs GitHub Actions + Self-hosted Runner 비교 개요CI/CD 파이프라인 구축 시 가장 많이 사용되는 두 가지 방식을 비교합니다. 최근 Synology NAS에 GitHub Actions + Self-hosted Runner를 구성하면서 Jenkins와의 차이점을 정리했습니다.아키텍처 비교Jenkins 방식개발자 Push ↓Jenkins 서버가 웹훅으로 감지 ↓Jenkins가 빌드/배포 스크립트 실행 ↓배포 대상 서버에 결과물 전달Jenkins가 CI/CD 전체를 직접 관리하고 실행합니다.GitHub Actions + Runner 방식개발자 Push ↓GitHub Actions가 감지 (GitHub 클라우드) ↓워크플로우 정의 확인 (.github/workflows/*.yml) ↓Self-hosted Runner에게 작..
vada 취약점 점검 대응 /etc/hosts 등 외2 🔒 서버 취약점 조치 가이드 작성일: 2026-01-07 | 대상: Linux 서버 | 점검 항목: U-13, U-51 1. U-13 SUID, SGID 설정 파일점검 취약 내용 구분 파일 경로 현재 상태 취약1 /sbin/unix_chkpwd 퍼미션 중 4000 (SUID) 설정됨 ..
쿠버네티스(Node와 Cluster의 범위) 요약노드(Node) = 서버 1대 (물리/가상 구분 없이)클러스터(Cluster) = 노드들을 하나로 묶은 전체 시스템.컨트롤 플레인 + 워커 + 공용 네트워크/스토리지까지 포함“쿠버네티스 클러스터 하나 = 최소 1개 이상의 컨트롤 플레인 노드 + 여러 워커 노드”1. 노드(Node)정의: 쿠버네티스에서 워커(또는 컨트롤 플레인) 역할을 하는 물리 서버 혹은 VM 한 대특징: 각 노드에는 kubelet, kube-proxy, 그리고 (컨트롤 플레인이라면) API server, etcd 등이 실행됨의미: 즉, “호스트 1대 = 노드 1개”라는 개념2. 클러스터(Cluster)정의: 여러 개의 노드들을 하나의 집합으로 묶고, 쿠버네티스 컨트롤 플레인이 전체를 관리하는 논리적 단위구성 요소:컨트롤 플레인 노드..
kubectl nginx와 apache(httpd) 실행 vboxuser@MasterNodee:~$ kubectl run webserver --image=nginx:stable --port=80 vboxuser@MasterNodee:/etc/kubernetes$ kubectl get pods -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES webserver 1/1 Running 0 5h17m 10.244.2.2 workernode2 vboxuser@MasterNodee:/etc/kubernetes$ elinks 10.244.2.2 vbo..
보안적합성검사와 방송통신기자재 적합성 인증안적합성검사와 방송통신기자재 적합성 인증 IT보안인증사무국: cc 인증 조회 https://www.itscc.kr/certprod/listA.do국립전파연구원: 방송통신기자재 적합성 인증 조회 https://www.rra.go.kr/ko/license/A_c_search.do
kubernetes setting config flowchart TB %% styles classDef cp fill:#eaf2ff,stroke:#6c8ebf,stroke-width:1px; classDef worker fill:#f7f7f7,stroke:#888,stroke-width:1px; classDef note fill:#fff,stroke:#666,stroke-dasharray:3 3; %% Control Plane subgraph CP[Control Plane MasterNode: 192.168.88.31] APIServer(kube-apiserver) Controller[kube-controller-manager] Scheduler[kube-scheduler] ETCD[(etcd)] ..
쿠버네티스를 이루는 핵심 개념, 리소스 구조, 동작 원리를 관통하는 필수 개념 1. Kubernetes 핵심 컴포넌트 (Control Plane & Node)쿠버네티스의 "두뇌"와 "손발"을 구분해 이해해야 합니다.(1) Control Plane (마스터 노드)API Server: 모든 요청의 관문 (kubectl 명령이 먼저 도달하는 곳).etcd: 클러스터 상태 데이터를 Key-Value로 저장.Scheduler: Pod를 어느 노드에 배치할지 결정.Controller Manager: Desired State와 Actual State를 일치시키는 관리 엔진.Cloud Controller Manager: 클라우드 환경(Load Balancer 등)과 연동 담당.(2) Node 컴포넌트kubelet: Pod 생성·삭제·상태 관리.kube-proxy: 서비스와 Pod 간 네트워크 통..