전공영역 공부 기록 405

쿠버네티스 job오류 제어

이번 글은 쿠버네티스 job에러가 발생했을 때, 유용하게 에러를 처리할 수 있는 방법을 소개합니다. 혹시 쿠버네티스 job에 대해 모르신 분은 이전 글(https://malwareanalysis.tistory.com/151)을 참고해주시길 바랍니다. 1. 들어가며 공식문서(https://kubernetes.io/docs/concepts/workloads/controllers/job/#job-termination-and-cleanup)에도 언급하고 있는 것처럼 쿠버네티스 job이 실패했을 때, 어떻게 에러처리를 할지는 매우 중요한 문제입니다. 상황마다 에러 처리하는 방법이 다르므로 어느 에러처리방법이 정답이라는 것은 없습니다. 이 글의 에러처리 시나리오는 다음과 같습니다. job에러가 발생해도 정상종료로 ..

쿠버네티스 잡(job)

안녕하세요. 이 글은 쿠버네티스 job에 대해 설명합니다. 예제 코드는 github(https://github.com/choisungwook/kubernetes-job)에서 확인할 수 있습니다. 글 수정 이력 ● 2021.8.22 backofflimit 설명 수정 ● 2021.8.22 job오류와 pod오류 처리 설명 수정 1. job이해 1.1 job이란? job은 쿠버네티스 ①pod를 이용해서 ②일회성 또는 정기적인 작업을 실행할 때 사용합니다. pod와 다른점은 종료되는 것을 기대하고 작업 실행결과를 알려줍니다. 일반적으로 pod는 시작되면 항상 실행되는 것을 기대합니다. 예를 들어서 웹 애플리케이션처럼요. 이와 다르게 job은 실행되면 몇 분 또는 몇 시간, 몇일 뒤에 종료되는 것(또는 주기적으로..

윈도우에서 미니큐브(minikube) 설치

안녕하세요. 이 글에서는 윈도우에서 미니큐브(minikube)를 설치하는 방법을 설명합니다. 1. 준비 먼저 WSL2와 docker desktop이 설치되어 있어야합니다. WSL2, docker desktop은 설치 방법은 제 이전 글(https://malwareanalysis.tistory.com/134)을 참고해주시면 감사합니다. 또는 영상으로도 볼 수 있습니다. https://youtu.be/sPaJnpEbNSg 2. 미니큐브 설치 docker desktop 설정에서 미니큐브 체크박스를 선택하면 설치가 끝납니다. 미니큐브는 docker 컨테이너로 실행됩니다. docker desktop에서 어떤 미니큐부관련된 컨테이너가 실행되는지 확인할 수 있습니다. 3. 설치 확인 WSL2 터미널을 실행합니다. 그..

SQL Achemy 2편 - ORM

이 글은 1편에 이어 SQL Alchemy를 이용해서 ORM을 사용하는 방법을 다룹니다. 1편: https://malwareanalysis.tistory.com/141 2편: https://malwareanalysis.tistory.com/149 영상으로도 만나볼수 있습니다.https://youtu.be/kS1J_QwnIgs 1. ORM 이란? ORM(Object Relational Mapper)은 쿼리를 객체처럼 다루는 것을 의미합니다. 객체를 쿼리로 매핑하다는 의미에서 매퍼(Mapper)라는 단어가 포함되어 있는 것 같습니다. 기존에 쿼리문을 직접 작성 sql alchemy에게 쿼리실행을 맡겼었습니다. ORM은 쿼리 대신 객체와 관련된 작업을 넘겨주면 sql alchemy가 객체를 쿼리문으로 변경해서..

NVM으로 여러 개의 node버전 관리

node버전 별로 관리할 상황이 생기는데요. 이럴 때 좋은 도구가 nvm(Node Version Manager)입니다. 지원되는 플랫폼은 유닉스, 맥, 윈도우 WSL에서 지원합니다. 윈도우가 아닌 윈도우 WSL이 필요해서 약간 아쉽습니다. 1. nvm 설치 설치 방법은 매우 간단합니다. 참고 - 공식문서: https://github.com/nvm-sh/nvm#install--update-script curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XD..

vagrant이용한 vuejs 프로젝트 생성

nvm을 사용해서 버전오류를 해결했습니다. 아래 글은 과거에 해결했던 방법입니다. 이 글에서는 제가 vuejs프로젝트 생성을 vagrant에서 했던 경험을 소개합니다. vagrant내용은 github에서 보실수 있습니다. github: https://github.com/choisungwook-vagrant/vuejs-vagrant.git 1. vagrant를 사용한 이유 npm 패키지 다루는게 서툴어서 로컬 개발환경 버전이 꼬였습니다. ㅜ.ㅜ 그래서 고민하다가 생각한 해결방법이 vagrant를 이용하는 방법이었습니다. vagrant에서 프로젝트를 생성과 git push까지 완료하고 로컬환경에서 git clone을 했더니 잘 되었습니다. 2. vagrant 사용 예 vagrant up명령어를 node가 설..