본문 바로가기

2018/0811

하이브 런칭기 #1 - 사내 환경 구성 초기 개발환경처음에 사내 개발환경은 위키에 작성된 매뉴얼에 따라 물리 머신에 개발에 필요한 각 프로그램을 다운받고 설치하여 구성을 하였습니다. 개발을 진행하면서 새로운 머신에 개발환경을 셋팅하는 일은 드물게 발생하진 않지만 새로 설치할 때마다 위키 매뉴얼을 참조하며 한땀한땀 환경을 구축해나가야 합니다. 매뉴얼 대로 문제없이 진행이 되면 좋겠지만 대부분의 경우에 구축할 때마다 어디선가 오류가 발생합니다. 이전에 봤던 오류였는데 메모를 제대로 해놓지 않아서 다시 구글링을 하기도 하고, 같은 과정을 반복하며, 환경 설정에만 하루 이틀의 시간을 낭비하며 보내게 됩니다. 환경을 구성하는 여러 프로그램들 중에서 버전업을 한다거나 설정을 변경해야하는 일이 발생한다면 그 때마다 위키 매뉴얼을 수정해주어야 하고 팀원들에.. 2018. 8. 15.
HashiCorp 밋업 - 왜 테라폼인가? 발표자신근우cypherCloudFormation과 비교AWS 인프라를 프로비저닝하기 위한 서비스여러개의 인스턴스를 구동시키기 위한 스크립트가 굉장히 복잡.유지보수도 어려움재사용 어려움템플릿이 S3에 올라가야함 (로컬 테스트 시에도)템플릿이 커질 수록 가독성이 떨어짐모듈화 어려움Terraformbuilding, changing, versioning 도구HCL 사용다양한 Provider 지원Built-in function이 강력함장점다른 사용자가 만든 모듈을 가져다 사용할 수 있음Private Registry는 테라폼 엔터프라이즈를 사용하거나 Registry API를 통해 직접 구성도 가능테라폼에서 State가 핵심기능이라 생각Remote backed를 사용할 수도 있음import 기능으로 다른 인프라 구성.. 2018. 8. 15.
HashCorp 밋업 - ZEPL 사용기 발표자박훈ZEPL아파치 제플린 커미터ZEPL에서 발생한 문제엔터프라이즈 서비스 시 고객들이 멀티 클라우드를 사용한다는 이슈가 발생이를 위해 멀티 클라우드 지원은 포기하고, 오케스트레이션 레이어를 정하고 컨테이너로 제공고객에게 제공할 인프라에 쿠버네티스 구성을 해야하는 이슈 발생어떻게 자동화 했나레이어 분리 인프라 - 쿠버네티스 - 어플리케이션InstallTerraformVersionning = S3Locking = DynamoAnsibleZK 클러스터링과 같은 프로비저닝에 사용kops쿠버네티스 설치HELM쿠버네티스로 구성된 어플리케이션 레이어의 설치MonitorCloudWatchAWSLOG (AWS Log Agent)인스턴스 구동 시 User Data에 부트스트랩 스크립트 실행을 넣어주어야함기본 영구저장.. 2018. 8. 15.
HashCorp 밋업 - 데브시스터즈 Valut 사용기 데브시스터즈에서 사용하는 HashiCorp 제품테라폼PackerValut기존 시스템의 문제점초기에는 모든 팀원이 공용비밀번호와 공용 SSH Key 발급 받아 사용퇴사자 발생 시 Key Rotate관리해야할 패스워드가 점점 많아져서 기억하기가 어려워짐패스워드가 필요한 환경이 많다보니 키교체의 일부 자동화는 가능하지만 완벽한 자동화가 어려움Valut를 통한 SSHValut는 SSH 기본 제공 인증서 기반믿을 수 있는 Secret StoreFlow클라이언트가 SSH Pulbic Key를 통해 Valut CA에 인증 요청Valut는 클라이언트에게 접근 허용을 하고 Expire 시간을 지정발급 받은 public key로 서버에 접근서버는 authorized_keys와 대조하여 접근 허용서버 셋업Valut 명령으로.. 2018. 8. 15.