Showing posts with label OpenStack. Show all posts
Showing posts with label OpenStack. Show all posts

Wednesday, July 24, 2013

書評: Software Defined Storage with OpenStack Swift


"Software Defined Storage with OpenStack Swift", Joe Arnold

昨今は、なんでもかんでも Software Defined ほげほげな世の中になってしまった。
本書でいう Software Defined な Storage は、Amazon でいうところの S3 に相当する Object Storage のことである。

著者の Joe Arnold 氏は、元CloudScaling所属で、現在は SwiftStack という自分の会社をやっている人である。SwiftStackには、Swift の PTL の John Dickinson も合流し、今、オブジェクトストレージ系では一押しのベンチャーではないかと思う。

この本は、要するに OpenStack Swift を使ってオブジェクトストレージの基盤を構築・運用するにあたり、SwiftStack のコントローラを使うと、うまくSoftware Define Storage のCプレーンの制御を実現できますよ…というストーリーで構成されている。

したがって、(残念ながら)オープンソース版のSwiftを使ってシステムを作って運用するのにあたって、この本の手順の通りに Swift を運用すればよいというわけでは「ない」。 しかし、それでも著者の豊富なSwift案件対応経験に基づいた、非常に示唆に富んだ本である。

本書の構成は以下の通りである。

1. 背景とSwiftの概要
2. Swiftの動産
3. Swiftの使い方
4. Swiftのインストール
5. SwiftStack コントローラによる Software Definrd Storage
6. SwiftStack クラスタの設定
7. SwiftStack クラスタの運用
8. SwiftStackと他コンポーネントのインテグレーション
9. テストとベンチマーク
10. チューニング

タイトルの Software Defined Storage ひ関連するくだりは、5章まで出てこない。しかも SDN について一般的に言われるのと同様に、制御面を分離して、集中制御しましょうと言っているだけである。ここで注意が必要なのは、オープンソースの Swift は制御される側であって、制御面にいるのは SwiftStack 社のコントローラだということだ。

Swift はシンプルで割り切った設計で、動きも理解しやすい。しかし、お客さんのデータを預かって、しかもそれなりな規模で運用するのに必要なノウハウを持つことと、ただ動かすのとは別次元の問題である。これを解決するのが SwiftStack のコントローラ…というわけだ。

Swift について、ring ファイル作成時の留意事項のレベルで理解している読者、具体的には例えば part_power と全体キャパシティの関係を理解している読者は、6章以降から読めば、システムの設計・構築・運用にあたって、充分に有意義な知見、またはヒントを得ることができるだろう。例えば、ストレージノード(account/container/object)のHDD故障の時とノード故障の時の挙動の違いや、留意事項、対処について解説した文献がこれまであっただろうか?その他、運用時に見るべき指標など、なぜこの本に書かれていることがベストプラクティスなのか、考えながら読むと、とても高いレベルまで達することができるように思う。
自分としても、この本を読んではじめて気が付いたことはたくさんあるので、具体的にまとめて公開したいところなのだが、それをやってしまうと「おっと誰か来...」てしまうので、このくらいにしておく。

Swift について学ぶところからはじめる読者は、英文は平易な上に分量もそんなに多くないので、普通に先頭から通読するのを薦めたい。

だいぶ不完全燃焼感があるのだが、このくらいで。

Thursday, December 20, 2012

おぷ☆すた女子部の設計と実装

これは OpenStack Advent Calendar 2012 JP の12/20分のエントリです。

昨日の岡さんのJOSUG 2012年のニュースベスト5!でも第二位に入っていましたが、日本OpenStackユーザ会にも女子部ができました :)

その顛末を研究発表スライド風にまとめてみましたw


Wednesday, December 12, 2012

Santa Claraの思い出~東日本大震災とOpenStackコミュニティ~

OpenStack Advent Calendar 2012 JP の 12/12分です。

今日はコミュニティネタです。
技術ネタを期待していたみなさん、ごめんなさい。

話は東日本大震災の一ヶ月後にさかのぼります。
OpenStack第4版 Diablo リリースに向けた Design Summit が、カリフォルニア州サンタクララで開催されていました。
こんな↓感じです。

http://www.openstack.org/blog/2011/04/openstack-conference-and-design-summit-day-4-recap/

あまり国内では知られていないように思うのですが、本家OpenStackコミュニティでは、東日本大震災の直後、

http://www.openstack.org/blog/2011/04/openstack-community-supports-japan-tsunami-relief-efforts/

に写真があるようなTシャツをつくってDesign Summit/Conferenceの会場で販売し、赤十字経由で東日本大震災の被災者に寄付を行っています。私も総額は聞いていないのですが、Tシャツ本体分以外の寄付もあわせてけっこうな金額になったとのこと。
感謝です... :)

余談ですが、現地でのお礼の挨拶は、NTTデータ(当時)の木原洋一さんがされています。
http://techtarget.itmedia.co.jp/tt/news/1106/23/news03.html (要・会員登録)


さて、渡米前の当時、テレビや新聞で刻一刻と流れていく被災地の情報をみながら、私の心をとらえた新聞記事がありました。
東北には「津波てんでんこ」という言い方があるというのです。
Wikipedia によると、こんな感じ↓の意味のようですが、
  http://ja.wikipedia.org/wiki/%E6%B4%A5%E6%B3%A2%E3%81%A6%E3%82%93%E3%81%A7%E3%82%93%E3%81%93

私は以下のように理解しました。

津波がくるとわかったら、家族のことも大事な人のことも構わず逃げなさい。
てんでばらばらに。
なぜなら、彼らを助けに行く時間はないから。
彼らもあなたと同じように行動すると信じなさい。
それが、家族やあなたの大事な人々がともに生き残る唯一の手段なのだから。

ここからが本題です。

ぶっちゃけて言うと、当時、とある事情により、本家 OpenStack コミュニティの雰囲気はとても悪かったように思います。一日に何通もケンカ腰のメールが飛び交っていました。

本家コミュニティからの東日本大震災支援に日本のユーザ会から何かお礼ができないか?と考えていた私は、ふと、この本家コミュニティの状況下、「津波てんでんこ」の話を紹介したらどうかと考えました。

そこでこんなLT↓をつくってみたのでした。



英語の添削は Community Manager(当時)の Stephen Spector さんが引き受けてくれました。:)


表紙・裏表紙あわせて13枚しかありませんので、ぜひ上のLTを観てみてほしいのですが、忙しい人のために流れをまとめるとこんな感じです。

スライド7までは上に書いた「津波てんでんこ」の説明です。
「家族全員が生き残る」という目標のためには「てんでばらばら」にでも逃げなくてはいけないよ…と。

スライド8は、ところで「家族ってGENE (遺伝子) を共有する集団だよね」と。
スライド9で「コミュニティって MEME を共有する集団だよね」と、方向を切り替えます。
スライド10は、端的に言えば「1つのコミュニティの中でも意見の相違(や時には争いも)はあるよね…」
と持っていき、最後にスライド11~12で
「でも、目標を共有して、(ばらばらでも)ベストを尽くせば、ゴールは達成できるよね!」
と、まとめてみました。

いかがでしょうか?

LTも、硬軟おりまぜつつも、通常はほぼすべて技術ネタなので、(しかも英語なので..)かなり緊張しましたが、趣旨は伝わったようでした。:)


こんなコミュニティ活動もあるんだ…という参考になれば幸いです。