#자격증
177 편의 글
AWS Certified Developer - Associate (DVA-C02) #10 Domain 3-2 배포: IaC와 서버리스 배포
DVA-C02 배포 도메인의 두 번째 글입니다. CloudFormation의 템플릿 구조(Resources,Parameters,Mappings,Outputs)와 스택,체인지셋,드리프트, 중첩 스택, 서버리스 배포를 단순화하는 SAM의 템플릿과 sam deploy,sam local, 그리고 Elastic Beanstalk의 배포 정책(All at once,Rolling,Immutable)과 .ebextensions까지 시험 수준으로 정리합니다.
Certified Kubernetes Administrator (CKA) #19 Networking 2: Ingress, IngressClass, TLS
Certified Kubernetes Administrator (CKA) 시리즈의 열아홉 번째 글입니다. Service만으로는 풀리지 않는 host,path 기반 라우팅과 TLS 종단을 Ingress로 모으는 방법을 정리하겠습니다. Ingress 규칙(pathType Prefix/Exact, rules/backend, defaultBackend), 여러 컨트롤러를 가르는 IngressClass, Ingress가 동작하려면 반드시 있어야 하는 Ingress Controller, 그리고 Secret을 참조하는 TLS 섹션을 운영 관점에서 다루겠습니다.
Certified Kubernetes Application Developer (CKAD) #14 ServiceAccount와 RBAC (앱 관점)
Certified Kubernetes Application Developer (CKAD) 시리즈 14편입니다. Pod 안에서 도는 앱이 쿠버네티스 API를 호출할 때 어떤 신원으로 인증하고 어떤 권한으로 인가받는지를 ServiceAccount와 RBAC 관점에서 정리합니다. SA 토큰 자동 마운트와 끄는 법, Role,RoleBinding으로 권한을 부여하는 법, kubectl auth can-i로 검증하는 법을 손에 익히겠습니다.
Certified Kubernetes Security Specialist (CKS) #12 Pod-to-Pod mTLS: Cilium
Certified Kubernetes Security Specialist (CKS) 시리즈의 열두 번째 글입니다. Minimize Microservice Vulnerabilities도메인의 마지막 주제로, Pod 사이 통신이 기본적으로 평문이라는 문제와 전송 중 암호화(encryption in transit)를 다룹니다. Service Mesh(Istio,Linkerd)의 사이드카 mTLS 개념, Cilium의 투명 암호화(WireGuard,IPsec)와 mTLS 방향, NetworkPolicy(L3,L4)와 mTLS(암호화,신원)의 차이, 그리고 CKS 관점에서 in-transit 암호화가 왜 필요한지를 개념 중심으로 정리하겠습니다.
Kubernetes and Cloud Native Associate (KCNA) #3 Kubernetes Fundamentals 2: API, 컨테이너, 스케줄링
쿠버네티스 API의 객체 모델(apiVersion,kind,metadata,spec,status)과 선언형,명령형 방식, 컨테이너 이미지와 런타임, kube-scheduler의 스케줄링 과정(nodeSelector,affinity,taint), 그리고 ConfigMap과 Secret으로 설정을 주입하는 방법을 정리하겠습니다. Domain 1 Kubernetes Fundamentals(46%)의 후반부를 마무리합니다.
Red Hat Certified Engineer (RHCE) #11 Role 작성과 사용
Red Hat Certified Engineer (RHCE) 시리즈 11편입니다. role의 표준 디렉터리 구조와 ansible-galaxy role init, roles 키와 include_role,import_role의 차이, defaults가 가장 낮은 role 변수 우선순위, meta/main.yml의 dependencies와 roles_path까지 정리하겠습니다. 시험 단골인 role을 작성해 playbook에서 호출하는 흐름을 예제로 익히겠습니다.
Red Hat Certified System Administrator (RHCSA) #8 패키지와 repository: dnf, modules, AppStream
Red Hat Certified System Administrator (RHCSA) 시리즈의 여덟 번째 글입니다. dnf로 패키지를 설치,제거,검색하고, repository를 추가하며, AppStream의 module stream과 profile을 다루는 방법을 정리하겠습니다. RHCSA 단골 출제인 특정 repository 추가 후 설치와 module stream 전환까지 명령 예제로 다루겠습니다.
AWS Certified CloudOps Engineer - Associate (SOA-C03) #3 Domain 1-2 모니터링: CloudWatch Logs, Logs Insights, 에이전트
SOA-C03 시리즈 세 번째 글로 CloudWatch의 로그 측면을 다룹니다. 로그 그룹과 로그 스트림의 구조, 보존 기간과 비용, CloudWatch Agent로 로그와 OS 지표를 수집하는 법, 로그에서 지표를 뽑는 지표 필터, Logs Insights 쿼리, 구독 필터로 로그를 실시간 전달하는 구성까지 운영 관점에서 정리하겠습니다.
AWS Certified Developer - Associate (DVA-C02) #9 Domain 3-1 배포: CI/CD
DVA-C02 배포 도메인의 첫 글입니다. AWS 개발자 도구의 역할 분담(CodeCommit,CodeBuild,CodeDeploy,CodePipeline,CodeArtifact)을 정리하고, CodeBuild의 buildspec.yml 단계와 환경변수, CodeDeploy의 appspec.yml과 배포 그룹,수명 주기 훅, CodePipeline의 스테이지 구성과 아티팩트 흐름까지 시험 수준으로 다룹니다. 어떤 도구가 어떤 일을 하는지 구분하는 것이 핵심입니다.
Certified Kubernetes Administrator (CKA) #18 Networking 1: Service (ClusterIP/NodePort/LoadBalancer/ExternalName)
Certified Kubernetes Administrator (CKA) 시리즈 18편입니다. Service가 selector로 Pod를 골라 Endpoints를 만들고 kube-proxy가 이를 노드의 규칙으로 구현하는 흐름을 따라가겠습니다. ClusterIP,NodePort,LoadBalancer,ExternalName 네 타입과 port/targetPort/nodePort의 구분, headless Service, k expose, 그리고 Service가 안 될 때 Endpoints로 원인을 추적하는 운영 감각까지 정리하겠습니다.
Certified Kubernetes Application Developer (CKAD) #13 ConfigMap과 Secret 심화: volume vs env, 자동 갱신
Certified Kubernetes Application Developer (CKAD) 시리즈의 열세 번째 글입니다. 설정과 민감 정보를 코드 밖으로 빼내는 ConfigMap과 Secret을 만들고, env(valueFrom,envFrom)와 volume 마운트로 주입하는 세 가지 방식을 실기 형식으로 다루겠습니다. 특히 env는 Pod 재시작 전까지 바뀌지 않고 volume은 일정 시간 후 자동 갱신되는 차이를 손에 익히겠습니다.
Certified Kubernetes Security Specialist (CKS) #11 격리: gVisor, Kata Containers, RuntimeClass
Certified Kubernetes Security Specialist (CKS) 시리즈의 열한 번째 글입니다. 컨테이너가 호스트 커널을 공유하기 때문에 격리가 약하다는 근본 문제를 짚고, 이를 보완하는 샌드박스 런타임을 정리하겠습니다. 유저 공간 커널로 시스템 콜을 가로채는 gVisor(runsc)와 경량 VM으로 워크로드를 분리하는 Kata Containers의 동작 원리를 비교하고, RuntimeClass로 핸들러를 선언해 Pod의 runtimeClassName으로 적용하는 방법, 보안과 성능,호환성의 트레이드오프, 그리고 시험에서 자주 나오는 RuntimeClass 생성과 Pod 지정 작업까지 직접 만들어 보며 다루겠습니다.