chefのdata_bagを暗号化する

f:id:komeiy:20140820204528p:plain

chef serverだとdata baseのcreate時に--secret-file オプションで暗号化が簡単に可能ですが、chef solo / knife solo環境data bagでも実はknife-solo_data_bagを使うと簡単に実現可能です。

knife-solo_data_bagインストール

gem install knife-solo_data_bag

or

Gemfiles & bundle install

使い方などは以下を参照すると

  • usage & Version Support

https://github.com/thbishop/knife-solo_data_bag

秘密鍵の作成

今回、RSAの2048bitで作成します。

$ openssl genrsa -aes256 2048 | tr -d '\r\n' > .chef/data_bag_key

knife設定とその他

--secret-file .chef/data_bag_keyでも可能ですが、毎回指定していると忘れるので書いておきます。

$ vim .chef/knife.rb
encrypted_data_bag_secret ".chef/data_bag_key"
$ vim ~/.bash_profile
export EDITOR='vim'

knife soloでdata bagの作成

作成はknife solo data bag createです。

$ knife solo data bag create s3 test
{
  "id": "test",
  "keys": {
    "key_1": "12345",
    "key_2": "54321"
  }
}

作成されたデータを覗くとdata部分が暗号化されているかと思います。 ファイルはeditor経由ではなくknife solo editで編集します。


シェアして頂けると嬉しいです。
参考になったという方がいれば是非お願いしますm(_ _ )m
モチベーション維持の観点で非常に励みになります。

このエントリーをはてなブックマークに追加

Chef実践入門 ~コードによるインフラ構成の自動化 (WEB+DB PRESS plus)

Chef実践入門 ~コードによるインフラ構成の自動化 (WEB+DB PRESS plus)

Chef活用ガイド コードではじめる構成管理

Chef活用ガイド コードではじめる構成管理