코드 리뷰(Code Review)의 목적에 대해서 이야기해 본 적이 있다. 코드 리뷰의 목적에 대해 말하면서 다음 번에는 코드 리뷰를 잘 하는 방법에 대해 이야기 하기로 했다. 그래서 코드 리뷰를 잘하기 위한 방법에 대해 공유해 보고자 한다. 가장 먼저 하고 싶은 이야기는 '숙제 검사 이야기'다. 코드 리뷰를 처음 접하는 사람들이 리뷰를 숙제 검사로 받아들이는 경우가 많았다. 어떤 일이 주어지면 그 것에 대한 기능을 개발하고나서 결과를 검사해 달라는 의미로 리뷰를 요청하였다. 보통 이런 경우는 몇 가지 특징이 있다. 예상 일정의 마감 직전에 풀 리퀘스트(PR; Pull Request)가 올라온다. 그리고 거기에는 꽤 많은 양의 코드가 포함되어 있다. 또한 코드에 대한 설명이 별로 없다. 보통 이런 코드 ..
2021년, AWS에서 제공하는 카오스 엔지니어링 서비스인 장애 주입 실험기(Fault Injection Simulator, FIS)를 출시하였다. 그래서 서비스 장애 주입 실험기를 활용하는 카오스 엔지니어링 테라폼 예제(https://github.com/Young-ook/terraform-aws-fis/)를 만들었다. EC2 오토스케일링 그룹, EKS 컨테이너 클러스터, RDS 데이터베이스 클러스터, Redis 클러스터, VPC 네트워크를 대상으로 장애를 주입하는 카오스 엔지니어링을 직접 실습 해볼 수 있다.카오스 엔지니어링(Chaos Engineering)이라는 이름만 들었다면, 여러가지 상상이 떠오를 것이다. 아니다, 어쩌면 모든 사람이 같은 생각을 떠 올렸을 수도 있다. 우주가 탄생하기 전 혼돈의..
멀티 클라우드(Multi-Cloud)는 문자를 그대로 해석했을 때, 여러 개의 클라우드 컴퓨팅 환경을 뜻한다. 보통 이런 경우, 대부분 규모가 큰 업체를 떠올리게 된다. 멀티 클라우드 전략이라는 말을 들었을 때 아마도 아마존(Amazon), 구글(Google), 마이크로소프트(Microsoft)를 떠올렸을 것이다. 레드햇(Redhat), 오라클(Oracle) 까지 생각해보면 클라우드 제공 업체들은 많다. 그러나 멀티 클라우드가 이러한 여러 업체를 두 개 이상 사용하는 것만을 의미하지는 않는다. 많이 이상하게 들리겠지만 AWS(Amazon Web Services)에서 EC2 인스턴스와 ECS 컨테이너(Container)를 복합적으로 사용하는 것도 멀티 클라우드라고 볼 수 있다. 클라우드라는 것은 서비스를 ..
지금은, 할야드(Halyard)를 이용해서 쉽고 간편하게, 사용자인증, 데크 및 게이트 노출을 처리하고 있다. 지금은 아래 설정 방법을 직접 할 필요는 없다. 할야드를 사용하면 알아서 적절한 위치에 관련 설정을 잘 적용해 주기 때문이다. 다음은 OAuth2 인증을 적용하는 예제를 보여준다. 공식적으로는 구글(Google), 깃헙(Github), 애저(Azure)를 지원하고 있지만, 다른 사용자정보 제공자(IdP, Identity Provider)도 사용할 수 있다. 그럴 경우에는 PROVIDER 부분에 OTHER라고 입력한다. 그 외 나머지 정보는 프로바이더에서 제공하는 URL을 알맞게 연결해주면 된다. CLIENT_ID=myClientId CLIENT_SECRET=myClientSecret PROVID..
버전 관리(Version Control)는 문서, 프로그램, 웹 페이지 등 어떠한 형태의 정보 집합이든지 그 변화를 기록하고 관리하는 것을 뜻한다. 이렇게 변화의 내용을 관리하면, 결과물의 편집본과 최종본을 쉽게 관리할 수 있으며, 여러 사람이 함께 공동으로 작업할 수 있게 해준다. 아마도 대부분의 사람들이 파일(File)의 이름을 바꿔가면서 이력관리 해본 경험이 있을 것이다. 이 방법이 가장 직관적이며 쉽게 떠올 릴 수 있는 방법이기 때문이다. 그러나 회사에서 여러 사람들과 공동의 작업을 진행하는 경우에도 같은 방법을 사용하게 되면 많은 불편함을 겪게 된다. 누가 작업하고 있는 것이 최종인지 확인이 어렵기 때문이다. 취합본이라는 메일을 받아 본 기억을 떠올려 보자. 현재 자신이 작업 중인 문서와 메일로..