Dev

Terraform으로 IAM 계정 설정하기

Terraform으로 IAM 계정 설정하는 방법을 설명하였다. Terraform을 사용해서 IAM 계정을 설정하기 위해서 필요한 terraform `resource`들은 아래와 같다...

Read
Dev

S3로 Terraform State file 관리하기

S3로 Terraform State file 관리하기

Read
Dev

Terraform 소개

2000년 초반까지만 하더라도 많은 소프트웨어 개발 회사들은 많은 비용과 시간을 서버 등등의 하드웨어를 빌드 하는데 사용했다. 시스템 엔지니어 혹은 ops 팀이라고 하는 서버 관리 팀이 따로 있는게 대부분 이었다. 개발자들이 빌드한 애플리케이션을 ops팀에게 넘기면 ops팀이 서버에 디플로이하는 과정을 담당했었다. 그리고 이러한 과정은 많은 부분이 수동 작업이었다. 당연히 비용과 시간이 많이 걸렸으며 문제도 많이 생겼었다. 개발자가 자기 dev box에서는 다 작동하는걸 확인하고 ops 팀에 넘겼는데 실제 프로덕션 서버에서는 문제가 발생했던 적은 예전에는 흔치 않게 겪었던 일이다. 하지만 AWS를 필두로한 클라우드 서비스가 널리 퍼지면서 회사들은 점차 서버를 직접 관리하지 않게되었고 그러면서 개발팀 과 ops팀의 구분이 모호해지기 시작했다. 개발자가 코딩 부터 서버 실행 및 디플로이 까지 전부 다 충분히 할 수 있는 환경이 주어진것이다. 그러면서 DevOps 운동이 일어나기 시작했다. 많은 devops 들이 생겨나고 devops 분야가 발전하면서 IAC (Infrastructure As Code) 도 같이 많은 주목을 받기 시작했다. IAC는 단어 그대로 서버 등등의 인프라스트럭쳐를 코드로 표현 한다는 의미로, AWS UI를 통해 수동으로 서버를 운영하는게 아니라 코드로 서버 생성, 운영 및 관리 하는 것이다. 애플리케이션과 마찬가지로 인프라도 코드로 정의하고 출시, 운영, 관리 심지어 테스트 까지 하는게 IAC 이다...

Read
Dev

Vim & Tmux에서 Mac/리눅스 클립보드(clipboard)로 copy & paste 하기

Vim을 처음 사용하는 유저들은 몇가지 불편한점들이 있는데 그 중 가장 자주 언급되는것이 바로 vim에서 다른 프로그램(예를 들어, 크롬 브라우저)으로 텍스트 복사나 붙이기가 안된다는 것이다. Vim에서 `y`키로 yank를 해도 크롬 브라우저에서 paste가 안되거나 크롬 브라우저에서 코드를 복사해도 vim상에서 `p`로 paste가 안되는것이다. (Macvim 이나 Gvim 처럼 해당 OS 호환성을 높인 vim에서는 `command+c` 나 `command+c` 같은 해당 OS의 복사나 붙이기 키를 사용하는 우회적인 방법이 있기는 하다.)...

Read

Python을 위한 ctags 세팅

Vim과 ctags를 같이 사용하면 왠만한 IDE 부럽지 않은 생산성을 낼수 있다. 나 같은 경우에는 Scala 코드를 짤때도 오직 Vim만 사용하는데, ctags를 사용해서 code navigation를 하고 있다. 파이썬 또한 ctags를 사용해서 쉽게 코드 navigation을 할수 있다. 예를 들어, `C-]` 커맨드를 사용하여 클라스 나 함수의 정의 부분으로 점프 할수 있다. 같은 이름의 함수 나 클라스가 여러게가 있다면 `g]`커맨드를 사용하여 리스트를 생성시키고 그 중 하나를 골라서 점프 할수도 있다...

Read