オープンソースのクラウド基盤
    CloudStack技術解説
                ~ストレージ編~
         @OSC2013 Tokyo/Spring


  シトリックス・システムズ・ジャパン株式会社
  システムズエンジニア 島崎 聡史(@smzksts)
シトリックスについて
• クラウド & 仮想化 & ネットワーク製品ベンダー
ᵒ CloudPlatform powered by Apache CloudStack
ᵒ XenServer, XenDesktop, XenApp
ᵒ NetScaler
• OSS関連


ᵒ Apache Software Foundation プラチナスポンサー
ᵒ Linux Foundation ゴールドメンバー
CloudStackの本を出しました!

• CloudStack徹底入門

• 翔泳社 刊

• 日本CloudStackユーザー会 著
Agenda


1. CloudStackのストレージ概要

2. CloudStack と OpenStack Swift の連携
CloudStackのストレージ概要
2種類のストレージ:格納するデータの違い


• プライマリストレージ   • セカンダリストレージ
ᵒ インスタンスの…     ᵒ テンプレート
 • 起動ボリューム     ᵒ ISOイメージ
 • データボリューム    ᵒ スナップショット
プライマリストレージ

• クラスタ内のホストが共有するストレージ
• インスタンスの起動/データディスクを格納
• 基本的には以下のストレージタイプ
• NFS
• iSCSI
• Fibre Channel
• ローカルストレージも利用可能
• 高可用性が不要かつ
  I/Oスループットの最大化を図る場合
セカンダリストレージ

• ゾーン全体で共有するストレージ
• テンプレート、ISOイメージ、
  Snapshotを格納
• NFSストレージが必須
• または NFS + Swift
セカンダリストレージVM

• セカンダリストレージに関わる操作全般を受け持つ
• テンプレートのアップロード
• ゾーン間でのテンプレートのコピー
• インスタンスを初めて起動する際に、テンプレートを
 セカンダリストレージからプライマリストレージへコピー
• スナップショットをセカンダリストレージにコピー
• ボリュームのダウンロード
ストレージに関連した負荷の例

• セカンダリ→プライマリ
ᵒ テンプレートから
  インスタンスを作成
ᵒ ISOイメージから
  インスタンスを作成
• プライマリ→セカンダリ
ᵒ テンプレートを作成
ᵒ スナップショットを作成
ストレージに関連した負荷の例

• 外部→セカンダリ
ᵒ システムVMのダウンロード
  (初期設定時)
ᵒ ISOイメージの格納
• インスタンス→プライマリ
ᵒ インスタンスのI/O処理

                  download
                 .cloud.com
ストレージ構成のポイント – サイジング

•見積もり
ᵒ プライマリストレージ
 • ユーザー数、インスタンス数、ボリューム数、
   ボリュームサイズetc…提供するサービス規模を考慮
 • 性能(ディスクの性能、接続方式による性能)
 • システムVM(1つあたり2GB程度)
ᵒ セカンダリストレージ
 • ユーザー数、ユーザーごとの使用量を考慮
 • ユーザーが使用できる容量(デフォルトは50GB制限)
ストレージの構成ポイント – 物理資源との紐づけ

• ストレージネットワークのトラフィックラベル
ᵒ 実際に使用する物理NICとの紐づけ

• ストレージタグ
ᵒ 実際に使用するストレージ装置との紐づけ
ᵒ サービスメニューの展開
ᵒ コンピューティングオファリング、
  ディスクオファリングの作成時に使用
ストレージの構成ポイント – グローバル設定
パラメータ名                       説明                                             日本語訳(参考)                           デフォルト値
cluster.storage.allocated. Percentage (as a value between 0 and 1) of
                                                                            アラートが通知されるプライマリストレージ
capacity.notificationthres allocated storage utilization above which alerts 割り当てのしきい値(値は0~1で指定)  0.75
hold                       will be sent about low storage available.

cluster.storage.capacity.n Percentage (as a value between 0 and 1) of       アラートが通知されるプライマリストレージ
                           storage utilization above which alerts will be                        0.75
otificationthreshold       sent about low storage available.
                                                                            使用率のしきい値(値は0~1で指定)
                          Percentage (as a value between 0 and 1) of
                                                                            容量が少ないとみなし、プールへのインスタ
pool.storage.allocated.ca allocated storage utilization above which
                                                                            ンスの作成を無効にするプライマリストレー 0.85
pacity.disablethreshold   allocators will disable using the pool for low
                                                                            ジ使用率のしきい値(値は0~1で指定)
                          allocated storage available.
                          Percentage (as a value between 0 and 1) of
                                                                            容量が少ないとみなし、プールへのインスタ
pool.storage.capacity.dis storage utilization above which allocators will
                                                                            ンスの作成を無効にするプライマリストレー 0.85
ablethreshold             disable using the pool for low storage
                                                                            ジ使用率のしきい値(値は0~1で指定)
                          available.
                                                                           プライマリストレージのオーバープロビジョ
storage.overprovisioning. Used for storage overprovisioning calculation; ニングの倍率(空き容量は、実際のストレー
                          available storage will be (actualStorageSize * ジ容量 x この                               2
factor                    storage.overprovisioning.factor)                 storage.overprovisioning.factorとして計算
                                                                           される)
zone.secstorage.capacity. Percentage (as a value between 0 and 1) of セカンダリストレージの使用率がこのしきい
                          secondary storage utilization above which        値(割合)を上回るとアラートが通知される                 0.75
notificationthreshold     alerts will be sent about low storage available. (値は0~1で指定)
CloudStack と
OpenStack Swift の連携
OpenStack Swiftとは?


• OpenStackプロジェクトの1つ
ᵒ RackSpaceのCloudFilesをオープンソース化

• 分散オブジェクトストレージ
ᵒ オブジェクト(≒ファイル)
ᵒ スケーラブル
ᵒ 冗長性に優れる
CloudStackと何の関係が?

    • Cloud-Wide セカンダリストレージとして使える

             SSVM             Auth              Object
                             Server             Server

                                      Proxy    Container
                    クライアント
                                      Server    Server
             Zone


CloudStack                                     Account
   管理               クライアント                     Server
 サーバー        Zone



                    クライアント
             Zone
連携時の動作

•テンプレートとISOイメージが
 どのZoneからも利用可能に
•SnapshotはSwiftに格納されるものの、
 Snapshotの戻し先も同一のZoneに制限
•NFSはSwiftとデータをやり取りする際の
 一時領域として必要
ᵒ 通常よりNFSストレージの容量は減らせる
連携手順     ※ゾーン未作成であることが必須

①グローバル設定で swift.enableを有効化   ②管理サーバー再起動




③インフラストラクチャ > ゾーン > Swiftの有効化
連携手順(つづき)

④Swift接続用の情報を入力
連携後の画面 – テンプレート一覧

• テンプレートがSwiftに移動すると、ゾーン欄が空に(非同期)
連携後の画面 – テンプレート/ISOの詳細

• クロスゾーンがYesに→どのゾーンからでも利用可能
まとめ

•OpenStack SwiftはCloudstackの
 Cloud-Wideセカンダリストレージに利用可
•他にもCaringoの”CAStor”や
 Cloudian、Ceph、
 BashoのRiak CSなど
 サードパーティのストレージと連携
•詳しくはCloudStack徹底入門で!
本資料について
  • 本書に記載されている事柄は、予告なく変更されることがありますので、予めご了承ください。
  • 本書は「無保証」で提供され、市場性、特定の目的に対する適合性、または第三者の権利を侵害しないこ
    とを含むいかなる明示または暗示保証は一切付与されません。Citrix Systems, Inc. (以下「Citrix」といい
    ます) は、本書に含まれる技術的または編集上の誤りと欠落について、また、本書の内容の実行および使用
    に起因する直接的、付随的、二次的、およびその他のあらゆる損害について、Citrixがそのような損害の可
    能性について事前に知らされていた場合でも、一切責任を負いません。
  • 本書には著作権により保護されている情報が含まれています。内部での配布を除き、Citrix Systems, Inc.
    の事前の書面による許可なく、本書を、いかなる形式でも複写または複製することを禁じます。
  • Citrix製品の限定保証については、各製品の付属文書をご覧ください。Citrixは、Citrix製品のみを保証し、
    他社製品は一切保証いたしません。
  • 本書に記載されているその他のすべての商品名は、該当する各社の商標または登録商標です。


  • Copyright© 2012 Citrix Systems, Inc All rights reserved.


#osc13tk
#osc13tk

オープンソースのクラウド基盤 CloudStack技術解説~ストレージ編~