Knife-Zero まとめ
前回のData Bagの記事に加え、サーバー構成管理ツールKnife-Zeroおよび関連ツールの使い方を備忘録として記します。 なおRecipeの書き方については今回割愛させていただきます。
Knife-Zeroについて
Chef-Serverなどを介さずに直接サーバーにChefのインストール、Cookbook(サーバーをよしなにセットアップしてくれるやつ)を実行してくれるものです。素でChefを使うよりも楽に管理できると先輩氏から聞いています。
弊社のサーバー構成管理ツール群の中でのKnife-Zeroの立ち位置は以下となります。
- Capistrano…Railsの管理
- Knife-Zero…AWSで定義したサーバーの中で動くソフトウェア(nginxなど)の管理
- Terraform…AWSの管理
Knife-Zeroで秘密情報管理:Data Bagの使い方
弊社ではサーバーの構成管理技術の一つとしてKnife-Zeroを使用しています。 その中で秘密情報を管理できるData Bagと呼ばれるものがあります。こいつの使い方を毎回忘れるので備忘録として記します。
続きを読むKatana + log4netによるWeb APIのロギング
ASP.NET MVCでRails::Rack::Logger
みたいなことできないかなという話。Katana + log4netでの実装とtipsについて以下述べていきます。
tl;dr
- Katanaを使ってログ用のカスタムミドルウェアを作る
- リクエストからの一連の処理を一意に識別するためにGUIDを使う
ASP.NETのミドルウェア
ASP.NETにRubyでいうRackのようなものであるOwinが搭載されました。
OWINは Open Web Interface for .Netの略で、 Webサーバに依存しないWebアプリを実現するための規格のようです。 この規格を満した開発を実現するため、Microsoftが複数コンポーネントを提供しています。 このコンポーネント群をKatana Projectと呼んでいます。
(via yamamotoさん@社内Advent Calendar)
Owin&KatanaによりASP.NETでもRackミドルウェアのようなものが差し込め、認証やロギング周りの実装がいい感じにできるようになりました。
続きを読む