분류 전체보기 719

CodeBuild 로컬 실행방법

유투브 영상: https://youtu.be/wE1ETdbTVZ0 1. CodeBuild 로컬 실행(Agent)이란? CodeBuild 로컬 실행은 CodeBuild가 실행할 코드를 내 PC에서 실행하는 방법입니다. 정식용어는 CodeBuild Agent입니다. 코드를 CodeBuild에서 실행하기 전, 로컬에서 코드를 디버깅할 때 사용합니다. 2. 장점 시간과 비용을 엄청 많이 절약합니다. CodeBuild는 코드를 실행하기 까지 대기시간이 필요하고 사용 비용을 지불해야합니다. 그래서 내가 작성한 코드가 오류가 있는지 확인하려면 불필요한 시간과 비용이 필요합니다. CodeBuild 로컬 실행은 내 PC에서 바로 코드를 실행할 수 있어서 시간과 비용을 절약합니다. 3. 원리 CodeBuild 로컬 실행은..

2년차때 나와 3년차때 나를 비교

문득 올해 3년차 데브옵스 엔지니어가 되면서 작년 2차년차인 나를 비교를 해봤습니다. 어떤 것이 달라졌을까요? 놀랍게도 기술 성장은 아주 조금 있었다고 생각합니다. 많이 달라진 건 의사결정 선택을 하고 선택에 대한 책임을 지는 업무를 점점 하고 있다고 생각합니다. 그 이유는 올해 7월 이직하면서 근무환경이 바뀐 영향이 있습니다. 이전 회사에서는 SI파견업체 였기 때문에 계약된 범주안에서 일을 하면 됬습니다. 그래서 책임질 일을 할 일이 거의 없었습니다. 그리고 SI업체는 알다시피 협력보다는 각자도생이기 때문에 협력으로 하는 없무가 많이 없었습니다. 하지만, 지금 이직한 곳은 협력이 필수입니다. 그래서 제가 하는 일이 다른 사람에게 영향을 미칩니다. 일을 늦게하면 팀원에게 지장있습니다. 제가 잘못된 선택으..

회고모음 2023.11.01

Copilot을 이용한 소스코드 분석

들어가며 이번 주에 copilot을 1년 결재 했습니다. 문득 Copilot을 소스코드 분석에 활용할 수 없을까라는 생각이 들었습니다. 그래서 바로 실행을 옮겼습니다. 실습 IDE vscode 분석할 소스 External DNS controller가 어떻게 Route53 record를 삭제하는지 궁금했습니다. 그래서 External DNS controller에 있는 aws.go파일을 대상으로 테스를 진행했습니다. 소스코드 링크: https://github.com/kubernetes-sigs/external-dns/blob/master/provider/aws/aws.go 첫 번째 테스트 Route53 record를 삭제하는 함수를 찾아달라고 부탁했습니다. Copilot은 record를 직접 delete하..

Argocd가 겪는 문제: 닭이 먼저냐, 닭걀이 먼저냐

음... 스크린샷 화질을 높이는 방법을 생각 중입니다. 1. 닭이 먼저냐, 달걀이 먼저냐 문제란? gitops 닭이 먼저냐 달걀이 먼저냐(chicken and eggs)용어는 gitops방법론을 사용할 때 겪는 어려움을 말합니다. 이 어려움은 gitops에서 관리 주체를 어떻게 관리할 것인가에 대한 어려움입니다. Argocd에서는 "Argocd appliation을 어떻게 관리할 것인가"에 대한 고민이 있습니다. Argocd는 git에 있는 내용을 쿠버네티스에 반영하기 위해 Argocd application이 필요합니다. 문제는 git 저장소에 코드를 푸시해도 Argocd application이 자동으로 생성되지 않습니다. 따라서 사용자가 수동으로 Argocd application을 만들어야 하며, 필요..

istio가 무엇인지 쉽게 이해해보자!

istio는 가상 네트워크 istio는 서비스 메시(service mesh)입니다. 하지만, 처음 서비스 메시를 들으면 무슨 뜻인지 매우 이해하기 어렵습니다. 그래서 저는 istio를 서비스 메시라고 표현하는 것보다, 다른 말로 바꿔서 istio를 해석했습니다. istio는 “내 마음대로 네트워크를 제어하는 가상 네트워크”입니다. 마음대로 제어하는 의미는 istio컨셉 3가지에서 설명합니다. 기능1. 트래픽 관리(Traffic Management) istio가 istio네트워크 트래픽을 마음대로 제어하는 것을 트래픽 관리(Traffic Management)라고 합니다. 트래픽 관리는 로드 밸런싱, 서킷 브레이크, 커스텀 HTTP 헤더 추가 등을 지원합니다. 예를 들어보겠습니다. A 서비스와 B 서비스가 ..

istiod 관리자 대시보드 여는 방법

istiod pod는 관리자(controlz) 대시보드를 가지고 있습니다. 대시보드는 로깅 레벨 즉시 변경, 메모리 사용량 보기 등 디버깅시 매우 유용합니다. istioctl dashboard를 사용하면 매우 쉽게 대시보드를 엽니다. 명령어 실행 원리는 istiod pod에 port-foward를 합니다. istioctl dashboard controlz deployment/istiod.istio-system istioctl 명령어가 없는 경우 수동으로 istiod pod에 port-foward합니다. kubectl port-forward -n istio-system deploy/istiod 15000:15000