Install

리눅스 서버에 주로 설치되고 사용되는 vault 는 다른 서비스와 마찬가지로 여러가지 설치 방법을 지원한다.

  • 패키지 관리자를 통해 다운받아 설치
  • 미리 빌드된 패키지를 다운받아 설치
  • 바이너리 소스를 직접 빌드하여 설치

패키지 관리자를 통한 방법

가장 손쉽다는 장점이 있지만 최신 버전을 지원안할 가능성이 높다.
명령어가 안될 때는 이 곳을 참고

Ubuntu/Debian

$ curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -
$ sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
$ sudo apt-get update && sudo apt-get install vault

CentOS/RHEL

$ sudo yum install -y yum-utils
$ sudo yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
$ sudo yum -y install vault

미리 빌드된 패키지를 다운받아 설치하는 방법

간단하면서도 공식 홈페이지에서 제공하는 것을 직접 사용하는 것이기에 신뢰성도 보장 받아 가장 추천하는 방법이다.
최신 버전을 사용하고 싶다면 이 곳을 참고

$ sudo wget https://releases.hashicorp.com/vault/1.7.0/vault_1.7.0_linux_amd64.zip
$ sudo unzip vault_1.7.0_linux_amd64.zip
$ sudo mv vault /usr/bin/

바이너리 소스를 직접 빌드하여 설치하는 방법

모든 코드에 대한 신뢰성을 가질 수 있다는 장점이 있지만, 개인적으로 nginx처럼 빌드 이전에 여러 옵션을 구성할 수 있는 경우가 아니라면 이 정도까지는 크게 고려하지 않아도 될 듯 싶다.
vault 는 go 언어로 작성되있기때문에 go언어 설치가 사전에 필요하다. git version 이 낮으면 빌드가 안되는 이슈가 있었기에 가급적 최신 버전을 설치해주자.
설치 과정은 대략 아래와 같다. 자세한 방법은 이 곳을 참고. 빌드 시간이 제법 오래 걸린다.

$ mkdir -p $HOME/project/go
$ export GOPATH=$HOME/project/go
$ export PATH=$PATH:$GOPATH/bin
$ cd $HOME/project/go
$ mkdir -p $GOPATH/src/github.com/hashicorp && cd $_
$ git clone https://github.com/hashicorp/vault.git
$ cd vault
$ make bootstrap
$ make dev