최신글

more

istio circuit break

1. circuit break란?circuit break에 대해 다양한 관점이 있습니다. 이 글에서 말하는 circuit break는 쿠버네티스 pod 안정성 관점에서 circuit break입니다. pod 안전성 관점에서 circuit break는 pod가 죽지 않도록, 강제로 pod에 들어오는 요청을 거절합니다. 2. 왜 pod에 들어오는 요청을 거절할까요?요청을 거절하는 이유는 쿠버네티스 관점에서 pod가 죽지 않게 보호하기 위해서입니다.  pod가 처리할 수 있는 요청수보다 많은 요청을 받으면, pod는 재실행 될 수 있습니다. pod의 cpu, memory가 100%를 넘게 사용하는 상황이 발생하고 OOM 또는 probe검사 실패로 pod가 재실행됩니다. 만약 모든 pod가 재실행되는 경우 서비..

github action을 로컬에서 실행해보자

https://youtu.be/qQdUFjayxYA1. 로컬실행이란?github action 로컬실행은 git push를 하지 않고 workflow를 로컬에서 실행하는 방법입니다.  2. 로컬실행의 장점이전에 workflow 변동사항을 확인하기 위해 시간이 매우 많이 걸렸습니다. git push를 하고 workflow가 실행될 때까지 기다려야 했습니다. 로컬 실행은 이 과정을 모두 생략하고 로컬에서 worfklow를 바로 실행하여 시간을 절약합니다. 3. 제약사항github action이 주입하는 설정이 일부 없습니다. 예로 github.event객체의 일부 이벤트필드가 없습니다. 그리고 github 관리자페이지에서 설정한 github action environment, secrets을 가져올 수 없어 ..

github action workflow로 cron을 실행할 때 주의사항

https://youtu.be/zZ62M-qcX_8cron 사용방법github action worklfow는 cron을 지원합니다. 내가 정한 시간에 workflow를 실행할 수 있습니다. 사용방법은 트리거 조건인 on에 schedule필드를 설정하면 됩니다.on: schedule: - cron: "15 4,5 * * *" cron 주의사항cron을 운영환경에 사용할 때 3가지 주의사항이 있습니다. 치명적인거는 cron이 실행이 지연되거나 안될 수 있습니다.cron에 설정한 시간에 workflow가 실행이 안되고 지연될 수 있다.때때로 실행이 안될 수 있다.디폴트 브랜치(main)에 있는 workflow만 cron을 사용할 수 있다.

쿠버네티스 공부 기록

쿠버네티스 네트워크 스터디 1주차 1편: 컨테이너 격리

스터디 목차 1주차 컨테이너 격리 - https://malwareanalysis.tistory.com/248 네트워크 네임스페이스 - https://malwareanalysis.tistory.com/249 2주차 Flannel CNI: https://malwareanalysis.tistory.com/254 pause 컨테이너: https://malwareanalysis.tistory.com/255 3주차 calico 기본 통신과정: https://malwareanalysis.tistory.com/256 ccalico 모드: https://malwareanalysis.tistory.com/264 4주차 service와 kube-proxy iptables모드: https://malwareanalysis.ti..

연재 시리즈 2022.01.09 2

Helm 시작하기 - 1편. helm이란?

안녕하세요. 이 시리즈는 helm을 처음 공부하는 사람을 위한 입문서입니다. helm 시리즈 목차 1편 helm이란? : https://malwareanalysis.tistory.com/193 2편 helm 설치 : https://malwareanalysis.tistory.com/194 3편 helm차트 생성: https://malwareanalysis.tistory.com/195 4편 helm 차트 설치, 조회, 삭제: https://malwareanalysis.tistory.com/196 5편 helm 차트 템플릿 값 동적 수정: https://malwareanalysis.tistory.com/197 6편 values.yaml 오버라이딩: https://malwareanalysis.tistory.co..

연재 시리즈 2021.11.19 0

ArgoCD 1편 - 컨셉과 장단점

안녕하세요. 이 글은 ArgoCD시리즈입니다. 영상: https://youtu.be/cLgzqc_hwIg 1. 컨셉 ArgoCD는 공식문서 소개처럼 쿠버네티스를 위한 GitOps도구입니다. GitOps는 Git과 Operations의 합성어인데요! 현재 쿠버네티스 상태를 git으로 관리하는 문화입니다.즉, 쿠버네티스에 배포하려고 하는 상태를 Git에 저장하면 ArgoCD가 git에 있는 내용을 쿠버네티스 배포합니다. git에 저장되어 있는 내용은 쿠버네티스 사용자가 의도된 상태(Desired state)로 취급됩니다. 쿠버네티스 declarative와 동일한 개념입니다. ArgoCD는 의도된 상태를 쿠버네티스에 동기화하려면 조건이 필요합니다. 현재 상태와 의도된 상태와 차이가 있어야 합니다. 예를 들어 ..

연재 시리즈 2022.08.12 0

kustomize 1편 - kustomize란?

글이 이전되었습니다. 링크: https://malwareanalysis.tistory.com/402 안녕하세요. 이 글은 kustomize가 무엇인지 소개합니다. 1. Kustomize란? kustomize는 쿠버네티스 리소스(yaml파일)를 변경하지 않고 필드를 재정의하여 새로운 쿠버네티스 리소스를 생성하는 도구입니다. 2. 실습하면서 살펴보기 글로 보는 것보다 직접 실습하면 바로 어떤 도구인지 알 수 있을 것 같아요! 제 github repo(https://github.com/choisungwook/kustomize-example)를 다운로드 받고 example_1폴더에 있는 파일을 살펴봅시다. pod.yaml과 kustomization.yaml파일이 실습에 필요한 파일입니다. kustomizatio..

연재 시리즈 2022.08.02 0

도커이미지레이어 1편 - 이미지 레이어

목차 1편 도커 이미지 레이어 구조: https://malwareanalysis.tistory.com/213 2편 Dockerfile과 이미지 레이어 관계: https://malwareanalysis.tistory.com/234 3편 빌드캐시: https://malwareanalysis.tistory.com/236 4편 빌드과정에서 일어나는 일: https://malwareanalysis.tistory.com/222 1편에서는 도커 이미지 레이어를 설명합니다. 이 글은 영상으로도 만나 볼 수 있습니다. https://youtu.be/StsgkD71028 1. 준비 Dockerfile을 한번이라도 써봤다는 전제로 글을 설명합니다. 2. 레이어란? 도커 이미지는 레이어(layer)와 메타정보로 구성되어 있습..

연재 시리즈 2021.11.30 0