arukas

Moved from Arukas to hyper.sh

Arukasのベータサービスが終了したので移住先を探さねばなりません。 Arukas βサービス提供終了に関するお知らせ – Arukas そこで、少し前に会社のSlackでDockerマンが呟いてるのを見てオッとなったhyper.shを使ってみます。 Hyper.sh - On-demand Container, Per-Second Billing hyper.shもArukasのようなContainer-as-a-Serviceで、特徴は通常のLinuxコンテナは同一ホスト上のカーネルから複数立ち上げるのに対し、hyper.shはコンテナ毎に独立したカーネル上で動かしている点です。これにより、セキュアなコンテナ環境の提供を可能にしているようです。 また、コンテナの利点である起動スピードを殺さないように特別なハイパーバイザが使われているようです。 What is Hyper.sh | Hyper.sh User Guide あとはDockerボリュームを使えるのがありがたい(Arukasはβ版なのもありボリュームを使えなかった)

terraform

Add annotation to Mackerel when changed infrastructure with Terraform

mackerelにグラフアノテーション機能が追加されました。 グラフアノテーションをリリースしました! ほか - Mackerel ブログ #mackerelio Mackerel API ドキュメント(v0) - Mackerel API ドキュメント (v0) グラフアノテーション機能とは先日のmackerelミートアップでも紹介があった通り、デプロイや何かしらの事象をmackerelのグラフ上で注釈することができる機能です。 Mackerel Meetup #9 Tokyo #mackerelio 今回はterraformで特定のリソースに変更があった場合、それをグラフ上に表示させてみます。 まずは普通にAPIを叩いてみる 鬼のようなcurlを実行します。 できた。 Terraformと連携させる方法を考える 今回は例として、DigitalOceanのtagリソースに変更が加えられた場合、グラフに注釈を入れるようにしてみます。 「tagリソースに変更が加えられた場合何かを実行する」

terraform

Read access key from Vault with Terraform

ここ最近terraformのvaultプロバイダについて試していました。 terraformのvaultプロバイダを試す terraformでvaultから値を取得する方法 Solved Vault data source error その成果として、terraformで管理している個人サーバのアクセスキーをvaultで管理し、terraformで利用してみます。 これまで main.tfのあるディレクトリでdirenvを使い、アクセスキーを環境変数で設定していました。 export DIGITALOCEAN_TOKEN="XXXXXXXX" これから vaultにアクセスキーを格納し、terraformから呼び出すようにしました。 data "vault_generic_secret" "digitalocean"

terraform

Solved Vault data source error

terraformからvaultを使う際にうまくいかなかった問題が解決できたっぽいのでメモ。 terraformのvaultプロバイダを試す これ。* Resource 'data.vault_generic_secret.test' does not have attribute 'data' for variable 'data.vault_generic_secret.test.data' vaultのバージョンを0.6.0から0.6.4に上げたら解消した! terraformのvaultプロバイダのコードを見るとvaultのapiライブラリをインポートして使っている。 terraform/data_source_generic_secret.

vault

Get value from Vault with Terraform

この前terraformのvaultプロバイダを使おうとした所うまくいきませんでした。 terraformのvaultプロバイダを試す そこで、もう少し単純なコードで書き直して検証してみたところ、うまくvaultから値を取ってこれたのでその方法をメモしておきます。 準備 MacでVaultを起動しておきます。検証なのでdevモードで起動します。起動したら、出力に出るRoot Tokenの値をメモしておきます。 brew install vault vault server -dev 環境変数に必要な値をセットしておきます。 export VAULT_ADDR="http://127.0.0.1:8200" export VAULT_TOKEN="

terraform

Vault provider by Terraform v0.8

terraform 0.8がリリースされました。 Terraform 0.8 | HashiCorp 幾つかの新機能が追加さました!!!その中でVaultとの連携を試してみます。 が、うまく動きませんでした。orz できた。✨ → Read access key from Vault with Terraform やったところまで書く。 Vault providerが提供する2つの機能 vault providerが提供する機能は2つあります。 terraformからvaultそのものを変更する機能(新しいkey/valueの追加とか) vaultから機密情報をreadし、terraformで使う機能(シークレットキーを取得したりとか) 注意事項 vaultと連携することによって、

arukas

Deploy Docker images to Heroku

herokuに好きなコンテナデプロイ出来るようになったらしいので試した!! この記事を受けて試してみた 会社で遊んでた(定時後ですよ!)ので社内向けのqiita teamに書いたんだけどべつに機密でもないので個人ブログに移す! 先に結論 herokuはあくまでPaaSであり、CaaSではない! 確かに好きなコンテナプッシュできるが、 あくまでWebアプリケーションのデプロイ方法の1つとして提供された機能 であり、 なんでもかんでも動かせるわけではなさそうだった(dnsサーバー立てたりvault立てたりはできなそう。pushまではできるけど) ※ もし動かせたらすまん → 動いたw ↓ 結論を書いたものの… コメントでvault動いた報告 (´°̥̥̥̥̥̥̥̥ω°̥̥̥̥̥̥̥̥`) 感謝 (´°̥̥̥̥̥̥̥̥ω°̥̥̥̥̥̥̥̥`) CaaSじゃねーか!(怒) 以下(早とちりした)結論に至るまでの道のり 任意のコンテナをプッシュしてみる ほんとに任意のコンテナプッシュできるのか!?vault乗ったコンテナプッシュしちゃうよ! https://devcenter.heroku.

ansible

Using HashiCorp's Vault with Ansible

ansibleのプレイブック内にある機密情報(dbのパスワードとか)をVault by HashiCorpを使ってvaultの管理下に置いてみようと思う イメージ的には、今までプレイブックにこんな感じで平文で書かれていたものを、 password="1234abcd" こんな感じでプレイブック内に書かないようにしたい password="{{vaultからいい感じに取ってくる何か}}" 確かにこれでプレイブックには含まれなくなるけど、外部のデータストアに機密情報置くことになるけどそこは安全なのか問題がここで発生する でもvaultはそんな悩みを解決するためのツールだからいい感じに かつ安全に機密情報を管理してアプリケーションからいい感じに機密を使えるであろうことを激しく期待!禿北!! 準備 Ansible Lookup Plugin Lookup Pluginを使ってみる Lookup Pluginとは外部ソース(ローカルのファイルや外部のデータストア等)からansible内のデータへのアクセスを可能にしてくれるプラグイン機能 vaultのapiを叩いてその値を利用できそうな雰囲気を醸し出している 探したらあった!

docker

Vault on Arukas

Vaultをdockerで動かしてみた GitHub - Lorentzca/vault_on_docker: use vault on docker DockerHub - lorentzca/vault_on_docker これをプロダクションぽい感じで動かしたくって、herokuを使って見ようと思ったんだけど色々制約があり(というか好きに作ったコンテナを動かすのはherokuの使い方じゃない感じ)のでなんかないかな〜と思ったらArukas|Dockerホスティングサービスなるものが! まだβ版で恐らく今後は有料になりそうなプランもまだ無料で使える こんな感じ 簡単にコンテナを動かせるのでいい感じだった dockerhubにあるvaultのイメージを指定したりポートを指定したり。環境変数やコマンドも必要なら設定できる 立ち上がるとurlが発行される こんな感じでvaultが使えるようになる! $ curl -s -X