hashicorpツールズ

69
udzura PHPカンファレンス福岡 Hashicorpと私(仮題)

Upload: uchio-kondo

Post on 06-Aug-2015

587 views

Category:

Internet


0 download

TRANSCRIPT

udzura

PHPカンファレンス福岡

Hashicorpと私(仮題)

me

Ruby厨です!!1

閑話休題

Hashicorp

DevOps

みなさん DevOpsしてますか?

DevOpsしとうと?

自動化しとう?

自動化で救われた話

注意: 内容はやや

省略しているところもあります

とあるWebサービス

#3分でサーバ台数 倍にできるようにして

まじ?

はい

アプリは某R⚪ils

bundle installが……

Asset Pipelineが……

PHPでも、今時は composerとか

gulpとかありますよね……

デプロイ時間かかる問題

先に「ビルド」して 配ればよくね?

中略

ビルドサーバー (本番とarchが同じ)

本番サーバー

本番サーバー

本番サーバー

s3とかswiftとかそういう オブジェクトストレージ

$ git clone $ bundle install $ rake asset:precomple $ tar zxf

なんかできたっぽい

「もっと速くできない?」

イメージをコピーしてしまえば速い

イメージ作りの問題点

「AMI焼いといて」 って言われてもさ~

動いてるサーバ、どれを基準にすればいいんだ……

コピーのコピー 秘伝のタレ™化

コンソールぽちぽちとか 手順が煩雑

確実に手順をコード化したい

Packer

イメージビルド手順を 自動化

プロビジョンのためのシェルスクリプトを流す

Puppetなどのマスター を用意し、プロビジョニング

※Puppetの質の確保、 Vagrantが役に立った

できたサーバに tgzをダウンロード、展開

初期化処理は cloud-initにお任せ

packer templateは履歴管理する

より簡単にするため、 MakefileやRubyと連携

※ イメージからの起動にTerraformを使おうと思いつつ未検証……

いろいろな問題が解決!

めでたい

それでも残る問題

リリースしたサーバ、ちゃんと動いてる?

動的に増やしても Nagiosの設定を手動で追加するんじゃ

………

Consul

サーバ連携をポンって するやつ

ヘルスチェックも自動

結果を一覧

通知

https://github.com/AcalephStorage/consul-alerts

起動後のサーバに 自動テストしてる感じ

失敗してたらその台数作り直せばOK!

サーバを増やすのが便利になった

> PR <

詳細は

PHP_EOL