25
シトリックス・システムズ・ジャパン株式会社 システムズエンジニア 島崎 聡史(@smzksts) オープンソースのクラウド基盤 CloudStack技術解説 ~ストレージ編~ @OSC2013 Tokyo/Spring

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

Embed Size (px)

DESCRIPTION

1.CloudStackのストレージ概要 2.OpenStack Swiftとの連携

Citation preview

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

シトリックス・システムズ・ジャパン株式会社 システムズエンジニア 島崎 聡史(@smzksts)

オープンソースのクラウド基盤 CloudStack技術解説

~ストレージ編~ @OSC2013 Tokyo/Spring

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

シトリックスについて

•クラウド & 仮想化 & ネットワーク製品ベンダー

ᵒ CloudPlatform powered by Apache CloudStack

ᵒ XenServer, XenDesktop, XenApp

ᵒ NetScaler

•OSS関連

ᵒ Apache Software Foundation プラチナスポンサー

ᵒ Linux Foundation ゴールドメンバー

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

CloudStackの本を出しました!

•CloudStack徹底入門

•翔泳社 刊

•日本CloudStackユーザー会 著

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

Agenda

1. CloudStackのストレージ概要

2. CloudStack と OpenStack Swift の連携

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

CloudStackのストレージ概要

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

2種類のストレージ:格納するデータの違い

•プライマリストレージ

ᵒ インスタンスの…

•起動ボリューム

•データボリューム

•セカンダリストレージ

ᵒ テンプレート

ᵒ ISOイメージ

ᵒ スナップショット

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

•クラスタ内のホストが共有するストレージ

•インスタンスの起動/データディスクを格納

•基本的には以下のストレージタイプ

•NFS

• iSCSI

•Fibre Channel

•ローカルストレージも利用可能 •高可用性が不要かつ

I/Oスループットの最大化を図る場合

プライマリストレージ

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

•ゾーン全体で共有するストレージ

•テンプレート、ISOイメージ、

Snapshotを格納

•NFSストレージが必須 •または NFS + Swift

セカンダリストレージ

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

•セカンダリストレージに関わる操作全般を受け持つ

•テンプレートのアップロード

•ゾーン間でのテンプレートのコピー

•インスタンスを初めて起動する際に、テンプレートを

セカンダリストレージからプライマリストレージへコピー

•スナップショットをセカンダリストレージにコピー

•ボリュームのダウンロード

セカンダリストレージVM

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

ストレージに関連した負荷の例

•セカンダリ→プライマリ

ᵒ テンプレートから

インスタンスを作成

ᵒ ISOイメージから

インスタンスを作成

•プライマリ→セカンダリ

ᵒ テンプレートを作成

ᵒ スナップショットを作成

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

ストレージに関連した負荷の例

•外部→セカンダリ

ᵒ システムVMのダウンロード

(初期設定時)

ᵒ ISOイメージの格納

•インスタンス→プライマリ ᵒ インスタンスのI/O処理

download

.cloud.com

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

ストレージ構成のポイント – サイジング

•見積もり ᵒプライマリストレージ •ユーザー数、インスタンス数、ボリューム数、

ボリュームサイズetc…提供するサービス規模を考慮

•性能(ディスクの性能、接続方式による性能)

•システムVM(1つあたり2GB程度)

ᵒセカンダリストレージ •ユーザー数、ユーザーごとの使用量を考慮

•ユーザーが使用できる容量(デフォルトは50GB制限)

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

ストレージの構成ポイント – 物理資源との紐づけ

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

•ストレージタグ ᵒ 実際に使用するストレージ装置との紐づけ

ᵒ サービスメニューの展開

ᵒ コンピューティングオファリング、

ディスクオファリングの作成時に使用

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

ストレージの構成ポイント – グローバル設定

パラメータ名 説明 日本語訳(参考) デフォルト値

cluster.storage.allocated.capacity.notificationthreshold

Percentage (as a value between 0 and 1) of allocated storage utilization above which alerts will be sent about low storage available.

アラートが通知されるプライマリストレージ割り当てのしきい値(値は0~1で指定)

0.75

cluster.storage.capacity.notificationthreshold

Percentage (as a value between 0 and 1) of storage utilization above which alerts will be sent about low storage available.

アラートが通知されるプライマリストレージ使用率のしきい値(値は0~1で指定)

0.75

pool.storage.allocated.capacity.disablethreshold

Percentage (as a value between 0 and 1) of allocated storage utilization above which allocators will disable using the pool for low allocated storage available.

容量が少ないとみなし、プールへのインスタンスの作成を無効にするプライマリストレージ使用率のしきい値(値は0~1で指定)

0.85

pool.storage.capacity.disablethreshold

Percentage (as a value between 0 and 1) of storage utilization above which allocators will disable using the pool for low storage available.

容量が少ないとみなし、プールへのインスタンスの作成を無効にするプライマリストレージ使用率のしきい値(値は0~1で指定)

0.85

storage.overprovisioning.factor

Used for storage overprovisioning calculation; available storage will be (actualStorageSize * storage.overprovisioning.factor)

プライマリストレージのオーバープロビジョニングの倍率(空き容量は、実際のストレージ容量 x このstorage.overprovisioning.factorとして計算される)

2

zone.secstorage.capacity.notificationthreshold

Percentage (as a value between 0 and 1) of secondary storage utilization above which alerts will be sent about low storage available.

セカンダリストレージの使用率がこのしきい値(割合)を上回るとアラートが通知される(値は0~1で指定)

0.75

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

CloudStack と OpenStack Swift の連携

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

OpenStack Swiftとは?

•OpenStackプロジェクトの1つ

ᵒ RackSpaceのCloudFilesをオープンソース化

•分散オブジェクトストレージ

ᵒ オブジェクト(≒ファイル)

ᵒ スケーラブル

ᵒ 冗長性に優れる

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

Zone

Zone

Zone

CloudStackと何の関係が?

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

Auth

Server

Proxy

Server

Object

Server

Container

Server

Account

Server

クライアント

SSVM

クライアント

クライアント CloudStack

管理

サーバー

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

連携時の動作

•テンプレートとISOイメージが

どのZoneからも利用可能に

•SnapshotはSwiftに格納されるものの、

Snapshotの戻し先も同一のZoneに制限

•NFSはSwiftとデータをやり取りする際の

一時領域として必要 ᵒ通常よりNFSストレージの容量は減らせる

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

連携手順 ※ゾーン未作成であることが必須

①グローバル設定で swift.enableを有効化

②管理サーバー再起動

③インフラストラクチャ > ゾーン > Swiftの有効化

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

連携手順(つづき)

④Swift接続用の情報を入力

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

連携後の画面 – テンプレート一覧

• テンプレートがSwiftに移動すると、ゾーン欄が空に(非同期)

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

連携後の画面 – テンプレート/ISOの詳細

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

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

まとめ

•OpenStack SwiftはCloudstackの

Cloud-Wideセカンダリストレージに利用可

•他にもCaringoの”CAStor”や

Cloudian、Ceph、

BashoのRiak CSなど

サードパーティのストレージと連携

•詳しくはCloudStack徹底入門で!

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

#osc13tk

• 本書に記載されている事柄は、予告なく変更されることがありますので、予めご了承ください。

• 本書は「無保証」で提供され、市場性、特定の目的に対する適合性、または第三者の権利を侵害しないことを含むいかなる明示または暗示保証は一切付与されません。Citrix Systems, Inc. (以下「Citrix」といいます) は、本書に含まれる技術的または編集上の誤りと欠落について、また、本書の内容の実行および使用に起因する直接的、付随的、二次的、およびその他のあらゆる損害について、Citrixがそのような損害の可能性について事前に知らされていた場合でも、一切責任を負いません。

• 本書には著作権により保護されている情報が含まれています。内部での配布を除き、Citrix Systems, Inc.の事前の書面による許可なく、本書を、いかなる形式でも複写または複製することを禁じます。

• Citrix製品の限定保証については、各製品の付属文書をご覧ください。Citrixは、Citrix製品のみを保証し、他社製品は一切保証いたしません。

• 本書に記載されているその他のすべての商品名は、該当する各社の商標または登録商標です。

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

本資料について

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

#osc13tk