Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
How to use 
The NetApp Unified Driver 
For OpenStack 
Vol.001 
2014/10/17 
Takeshi Kuramochi
自己紹介 
•倉持健史(くらもち たけし) 
•現在のお仕事 
フラッシュメモリ技術 
BigData(Hadoop ディストリと組み合わせ) 
OpenStack(+NetApp インテグレーション) 
SNIA日本支部 教育委員会 副委員長...
はじめに 
•本文書は、OpenStack に関わる技術者向けになっています。 
•各 OpenStack プロジェクトをコードネームで表記しています。 
•コミュニティのドキュメントやベンダー提供のガイドも存在するが もっとわかりやすくステッ...
目次 
1.NetApp Unified Driver ってなに? 
2.NetApp Unified Driver を使うと何がいい? 
3.事前準備と前提、本書の構成 
4.設定方法 
5.確認方法 
6.参考情報 
7.予定
NetApp Unified Driver 
ってなに?
NetApp Unified Driver 
•Cinder のバックエンドストレージとしてNetAppストレージ を使うためのドライバ 
•コミュニティに提供されており、だれでも使える 
•以下の NetApp ストレージOSに対応 
–Da...
NetApp Unified Driver 
を使うと何がいいの?
NetApp Unified Driver を使うと・・・ 
•Cinder Volume に対して多くの付加価値をつけることができる 
–重複排除や圧縮処理が施されるボリューム 
–データミラーされているボリューム 
–QoS(性能制限)がか...
事前準備と前提 
本書の構成
事前準備と前提 
•OpenStack のプラットフォーム 
–少なくとも Keystone , Nova , Neutron , Glance , Cinder , Horizon が構成済みである事 
–マルチノード、オールインワンどちらの...
本書の環境 
•OpenStack はオールインワン構成 
–Fedora 20 
–RDO Icehouse Release -4 
•NetApp clustered Data ONTAP 8.2.1 使用 
•ざっくり概略図 
OpenS...
設定方法
設定方法 
以下2点の設定を行う。 
•Clustered Data ONTAP 側設定 
–NFS 設定(iSCSI 用は参考につける) 
–API アクセスロール作成 
•Cinder の設定 
–cinder.conf の設定 
–Typ...
Clustered Data ONTAP 側の設定 
以下、clustered Data ONTAP 上でのオペレーション 
•SVM を1つ作成 
•NFS 用の LIF を作成 
•NFS 用の「ノーマル」「重複排除用」「圧縮用」 「ミラー...
Clustered Data ONTAP 側の設定 
•NFS v4 , v4.1 の設定 
–NFS Copy Offload Client を使う場合は v4.x 以上が必要 
•API アクセス用のロール作成 
–NetApp Unifi...
Cinder の設定(NFS) 
[DEFAULT] 
# 中略 
enabled_backends=cdot-nfs 
[cdot-nfs] 
volume_backend_name=cdot-nfs 
volume_driver=cinde...
Cinder の設定(NFS) 
•cinder.conf を設定した後は cinder-volume を再起動 
•cinder-volume は設定したボリュームを自動的にNFSマ ウントする 
10.130.208.55:/vol5_pl...
Type と Extra-specs の設定 
•Cinder サービスリストの確認 
[root@tkstack (keystone_admin)]# cinder service-list 
+------------------+----...
Type と Extra-specs の設定 
•Extra-specs 設定 
[root@tkstack ~(keystone_admin)]# cinder type-key normal set storage_protocol=nfs...
確認方法
確認方法 
以下を実施し正しく構成できているかを確認します。実施 は Horizon UI からでもコマンドラインからでもどちらで もよい。 
•Type を指定して Cinder Volume を作成 
•Cinder Volume のスナッ...
Type を指定して Cinder Volume 作成 
下記はコマンドで実行した例を示す。 
•display-name : Volume 名 
•volume-type : gold (タイプ) 
•容量は1GB で作成 
[root@tk...
Type を指定して Cinder Volume 作成 
正しく作られている事を確認 
•”Status”が available となっていれば作成完了して使える状態 
•この「gold」タイプ の Cinder Volume はストレージ上で...
Cinder Volume のスナップショットの作成 
•Cinder Volume のスナップショット作成を実行した場合、NetApp Unified Driver により clustered Data ONTAP で FlexClone が...
Cinder Volume のスナップショットの作成 
•Clustered Data ONTAP のコンソールから diag 権限、 systemshell でクラスタノードにログインして下記のロ グを確認することにより、FlexClone ...
参考情報 
•OpenStack Deployment and Operations Guide 
–http://netapp.github.io/openstack-deploy-ops-guide/ 
•OpenStack Documen...
Cinder の設定(iSCSI) 
[DEFAULT] # 中略 enabled_backends=cdot-iscsi [cdot-nfs] volume_backend_name=cdot-nfs volume_driver=cinder...
予定 
•Vol.002 
–NFS Copy Offload Client の特徴と設定 
•Vol.003 
–“Glance , Nova” + Cinder での特徴 
•Vol.00X (未定) 
–Manila 
–E-Series
おしまい
Upcoming SlideShare
Loading in …5
×

OpenStack を 拡張する NetApp Unified Driver の使い方 Vol.001

2,567 views

Published on

How to use the NetApp Unified Driver
OpenStack を 拡張する NetApp Unified Driver の使い方 Vol.001

Published in: Technology
  • Be the first to comment

OpenStack を 拡張する NetApp Unified Driver の使い方 Vol.001

  1. 1. How to use The NetApp Unified Driver For OpenStack Vol.001 2014/10/17 Takeshi Kuramochi
  2. 2. 自己紹介 •倉持健史(くらもち たけし) •現在のお仕事 フラッシュメモリ技術 BigData(Hadoop ディストリと組み合わせ) OpenStack(+NetApp インテグレーション) SNIA日本支部 教育委員会 副委員長 •他への興味 データ分析・・・R、RStudo を使い始めた 囲碁・・・まだ 9路盤 の域を出ない超初心者 ゴルフ・・・とりあえずスタートは 160 Python・・・シンプルでいいと思い始めた SoC・・・ラズパイと Cubieboard がゴロゴロしてる
  3. 3. はじめに •本文書は、OpenStack に関わる技術者向けになっています。 •各 OpenStack プロジェクトをコードネームで表記しています。 •コミュニティのドキュメントやベンダー提供のガイドも存在するが もっとわかりやすくステップを踏まえて作成出来る流れにしていま す。 •本書では Linux ディストリビューションは Fedora 20 を使用して います。また、OpenStack のリリースは RDO Icehouse Release -4 を使用しています。 •Linux および OpenStack のオペレーションが含まれますが、個々 の詳細な解説はされておりません。 •NetApp のオペレーションが含まれますが、詳細な解説はされてお りません。
  4. 4. 目次 1.NetApp Unified Driver ってなに? 2.NetApp Unified Driver を使うと何がいい? 3.事前準備と前提、本書の構成 4.設定方法 5.確認方法 6.参考情報 7.予定
  5. 5. NetApp Unified Driver ってなに?
  6. 6. NetApp Unified Driver •Cinder のバックエンドストレージとしてNetAppストレージ を使うためのドライバ •コミュニティに提供されており、だれでも使える •以下の NetApp ストレージOSに対応 –Data ONTAP 7-Mode –Clustered Data ONTAP(本書はこちらを前提) –E-Series •NetApp Unified Driver と組み合わせた NFS Copy Offload Client のツールも存在するがそれは次回で解説
  7. 7. NetApp Unified Driver を使うと何がいいの?
  8. 8. NetApp Unified Driver を使うと・・・ •Cinder Volume に対して多くの付加価値をつけることができる –重複排除や圧縮処理が施されるボリューム –データミラーされているボリューム –QoS(性能制限)がかけられているボリューム –アーカイブ専用なボリューム –高速を求めるボリューム •ストレージが得意な処理をホストのリソースを使うことなく、つま り負荷をかけずに、且つユーザに透過的に行える –ボリュームのコピー、スナップショットやクローニングをストレージ 上で負荷軽減およびリソース無駄を排除 もともと NetApp Data ONTAP のコア技術 Snapshot は負荷をかけずにスナップショッ トを取ることができる
  9. 9. 事前準備と前提 本書の構成
  10. 10. 事前準備と前提 •OpenStack のプラットフォーム –少なくとも Keystone , Nova , Neutron , Glance , Cinder , Horizon が構成済みである事 –マルチノード、オールインワンどちらの構成でも可能 •NetApp FAS シリーズの物理配置と結線等完了済みであ る事 •Clustered Data ONTAP の初期セットアップ済み
  11. 11. 本書の環境 •OpenStack はオールインワン構成 –Fedora 20 –RDO Icehouse Release -4 •NetApp clustered Data ONTAP 8.2.1 使用 •ざっくり概略図 OpenStack Platform Clustered Data ONTAP Internet
  12. 12. 設定方法
  13. 13. 設定方法 以下2点の設定を行う。 •Clustered Data ONTAP 側設定 –NFS 設定(iSCSI 用は参考につける) –API アクセスロール作成 •Cinder の設定 –cinder.conf の設定 –Type , Extra-specs の設定
  14. 14. Clustered Data ONTAP 側の設定 以下、clustered Data ONTAP 上でのオペレーション •SVM を1つ作成 •NFS 用の LIF を作成 •NFS 用の「ノーマル」「重複排除用」「圧縮用」 「ミラーリング用」のボリュームを作成 –重複排除用と圧縮用では以下の設定を入れる volume efficiency on -vserver <SVM名> -volume <重複排除用Volume名> volume efficiency on -vserver <SVM名> -volume <圧縮用Volume名> volume efficiency modify -vserver <SVM名> -volume <圧縮用Volume名> -compression true -inline-compression true
  15. 15. Clustered Data ONTAP 側の設定 •NFS v4 , v4.1 の設定 –NFS Copy Offload Client を使う場合は v4.x 以上が必要 •API アクセス用のロール作成 –NetApp Unified Driver では ONTAP API を通じて clustered Data ONTAP にアクセスする、そのための専用のユーザおよびロールを作成 nfs modify -vserver demo-nfs-svm -v4.0 enabled -v4.1 enabled -v4.1-pnfs enabled NetApp Unified Driver からリクエストされる”コマンド”に対して”アクセスレベル”をロールに割り当てる # 各コマンドに必要なアクセスレベルは下記のテーブルに記載があるので参照 # http://netapp.github.io/openstack-deploy-ops-guide/icehouse/content/cinder.fas.configuration.html security login role create -role <ロール名> -cmddirname <コマンド> -access <アクセスレベル> 作成したロールを持つユーザを作成する security login create -username <ユーザ名> -application ontapi -authmethod password -role <ロール名>
  16. 16. Cinder の設定(NFS) [DEFAULT] # 中略 enabled_backends=cdot-nfs [cdot-nfs] volume_backend_name=cdot-nfs volume_driver=cinder.volume.drivers.netapp.common.NetAppDriver netapp_server_hostname=10.130.202.180 # cluster management lif のアドレス netapp_server_port=80 netapp_storage_protocol=nfs netapp_storage_family=ontap_cluster netapp_login=openstack # ロールとして新たに作ったAPI用のユーザ netapp_password=netapp123 # ロールとして新たに作ったAPI用のユーザのパスワード netapp_vserver=demo-nfs-svm # 対象のSVM nfs_shares_config=/etc/cinder/nfs.shares # ファイルを作る /etc/cinder.conf (cinder-volume が稼働しているホスト) <例>
  17. 17. Cinder の設定(NFS) •cinder.conf を設定した後は cinder-volume を再起動 •cinder-volume は設定したボリュームを自動的にNFSマ ウントする 10.130.208.55:/vol5_plain # 特別な設定はない通常のボリューム 10.130.208.55:/vol2_dedup # SVM上で条幅排除設定をしたボリューム) 10.130.208.55:/vol3_compressed # SVM上で圧縮設定をしたボリューム) 10.130.208.55:/vol4_mirrored # SVM上でミラー設定をしたボリューム) /etc/cinder/nfs.shares SVM の NFS 用 LIF : /各ボリュームジャンクションパス <例> [root@tkstack (keystone_admin)]# df –h (一部省略) 10.130.208.55:/vol4_mirrored 50G 1.1M 50G 1% /var/lib/cinder/mnt/7a2ad54f8ce5ac4c4f092e6cb1f1b39b 10.130.208.55:/vol2_dedup 100G 627M 100G 1% /var/lib/cinder/mnt/ea9ebfcad8827c2df164a5792194d80e 10.130.208.55:/vol5_plain 150G 832K 150G 1% /var/lib/cinder/mnt/980e55e4b6bcbba7ff1f0adc1016e52e 10.130.208.55:/vol3_compressed 100G 448K 100G 1% /var/lib/cinder/mnt/5fa24de47b0ced340706db7fde94ab64
  18. 18. Type と Extra-specs の設定 •Cinder サービスリストの確認 [root@tkstack (keystone_admin)]# cinder service-list +------------------+-------------------------------+------+---------+-------+----------------------------+-----------------+ | Binary | Host | Zone | Status | State | Updated_at | Disabled Reason | +------------------+-------------------------------+------+---------+-------+----------------------------+-----------------+ | cinder-scheduler | tkstack.sample.net | nova | enabled | up | 2014-08-08T09:07:36.000000 | None | | cinder-volume | tkstack.sample.net@cdot-nfs | nova | enabled | up | 2014-08-08T09:07:40.000000 | None | +------------------+-------------------------------+------+---------+-------+----------------------------+-----------------+ •Type 作成 [root@tkstack ~(keystone_admin)]# cinder type-create normal [root@tkstack ~(keystone_admin)]# cinder type-create gold [root@tkstack ~(keystone_admin)]# cinder type-create silver [root@tkstack ~(keystone_admin)]# cinder type-create bronze [root@tkstack ~(keystone_admin)]# cinder type-list +--------------------------------------+-----------+ | ID | Name | +--------------------------------------+-----------+ | 3f615755-fef0-46d4-b3d7-aa7d87977209 | normal | | 577d372e-9e6c-4468-ba8b-a4b0e11939f7 | silver | | 9081d1c7-5812-4e94-9ce9-fc1aa9118d5b | gold | | f6b87b16-0a08-4270-a5f0-1707ffcd68c0 | bronze | +--------------------------------------+-----------+
  19. 19. Type と Extra-specs の設定 •Extra-specs 設定 [root@tkstack ~(keystone_admin)]# cinder type-key normal set storage_protocol=nfs [root@tkstack ~(keystone_admin)]# cinder type-key gold set netapp_mirrored=true [root@tkstack ~(keystone_admin)]# cinder type-key silver set netapp_dedup=true [root@tkstack ~(keystone_admin)]# cinder type-key bronze set netapp_compression=true [root@tkstack ~(keystone_admin)]# cinder extra-specs-list +--------------------------------------+-----------+--------------------------------------------+ | ID | Name | extra_specs | +--------------------------------------+-----------+--------------------------------------------+ | 3f615755-fef0-46d4-b3d7-aa7d87977209 | normal | {u'storage_protocol': u'nfs'} | | 577d372e-9e6c-4468-ba8b-a4b0e11939f7 | silver | {u'netapp_dedup': u'true'} | | 9081d1c7-5812-4e94-9ce9-fc1aa9118d5b | gold | {u'netapp_mirrored': u'true'} | | f6b87b16-0a08-4270-a5f0-1707ffcd68c0 | bronze | {u'netapp_compression': u'true'} | +--------------------------------------+-----------+--------------------------------------------+
  20. 20. 確認方法
  21. 21. 確認方法 以下を実施し正しく構成できているかを確認します。実施 は Horizon UI からでもコマンドラインからでもどちらで もよい。 •Type を指定して Cinder Volume を作成 •Cinder Volume のスナップショットの作成
  22. 22. Type を指定して Cinder Volume 作成 下記はコマンドで実行した例を示す。 •display-name : Volume 名 •volume-type : gold (タイプ) •容量は1GB で作成 [root@tkstack ~(keystone_demo)]# cinder create --display-name myGold --volume-type gold 1 +---------------------+--------------------------------------+ | Property | Value | +---------------------+--------------------------------------+ | attachments | [] | | availability_zone | nova | | bootable | false | | created_at | 2014-08-08T09:21:05.783889 | | display_description | None | | display_name | myGold | | encrypted | False | | id | 2355d34e-eede-4c92-b609-aa4f6d3853b8 | | metadata | {} | | size | 1 | | snapshot_id | None | | source_volid | None | | status | creating | | volume_type | gold | +---------------------+--------------------------------------+
  23. 23. Type を指定して Cinder Volume 作成 正しく作られている事を確認 •”Status”が available となっていれば作成完了して使える状態 •この「gold」タイプ の Cinder Volume はストレージ上でミラーリ ングされているボリューム上に作られたもの [root@tkstack ~(keystone_demo)]# cinder list +--------------------------------------+-----------+----------------+------+-------------+----------+-------------+ | ID | Status | Display Name | Size | Volume Type | Bootable | Attached to | +--------------------------------------+-----------+----------------+------+-------------+----------+-------------+ | 2355d34e-eede-4c92-b609-aa4f6d3853b8 | available | myGold | 1 | gold | false | | +--------------------------------------+-----------+----------------+------+-------------+----------+-------------+ [root@tkstack ~(keystone_demo)]# df -h /var/lib/cinder/mnt/7a2ad54f8ce5ac4c4f092e6cb1f1b39b Filesystem Size Used Avail Use% Mounted on 10.130.208.55:/vol4_mirrored 50G 896K 50G 1% /var/lib/cinder/mnt/7a2ad54f8ce5ac4c4f092e6cb1f1b39b [root@tkstack ~(keystone_demo)]# ls -lR /var/lib/cinder/mnt # (略) /var/lib/cinder/mnt/7a2ad54f8ce5ac4c4f092e6cb1f1b39b: total 0 -rw-rw-rw- 1 nobody nobody 1.0G Aug 2 23:42 volume-2355d34e-eede-4c92-b609-aa4f6d3853b8
  24. 24. Cinder Volume のスナップショットの作成 •Cinder Volume のスナップショット作成を実行した場合、NetApp Unified Driver により clustered Data ONTAP で FlexClone が働 きファイルが作成される •/var/lib/cinder/mnt 以下の該当のボリュームが存在する場所に保 存される •Cinder の volume.log には NetApp Unified Driver が使用された 旨表示される(これは Cinder Volume 作成時にも出力される) 2014-09-01 10:09:31.087 25163 INFO cinder.volume.drivers.netapp.ssc_utils [-] Running stale ssc refresh job for server: 10.130.202.180 and vserver demo-nfs-svm 2014-09-01 10:09:31.450 25163 INFO cinder.volume.drivers.netapp.ssc_utils [-] Successfully completed stale refresh job for server: 10.130.202.180 and vserver demo-nfs-svm
  25. 25. Cinder Volume のスナップショットの作成 •Clustered Data ONTAP のコンソールから diag 権限、 systemshell でクラスタノードにログインして下記のロ グを確認することにより、FlexClone が動作したことを 確認可能 kuramochi-cdot-01% tail –f /mroot/etc/log/mlog/command-history.log 0000007f.00159fc7 01a5fc8f Mon Sep 01 2014 08:10:08 +00:00 [kern_command-history:info:958] ontapi :: 10.130.205.95 :: openstack :: <netapp xmlns="http://www.netapp.com/filer/admin" version="1.21" vfiler="demo-nfs-svm"><clone-create> <volume>vol2_dedup</volume><destination-path>snapshot-0b650160-b933-45e8-a67c-c589d590ebb4</destination-path><source-path> volume-4df54053-1e01-4e4c-bf32-392711577375</source-path></clone-create></netapp> :: Pending 0000007f.00159fc9 01a5fc8f Mon Sep 01 2014 08:10:08 +00:00 [kern_command-history:info:958] ontapi :: 10.130.205.95 :: openstack :: clone-create :: Success
  26. 26. 参考情報 •OpenStack Deployment and Operations Guide –http://netapp.github.io/openstack-deploy-ops-guide/ •OpenStack Documentation –http://docs.openstack.org/ •OpenStack@NetApp –http://netapp.github.io/openstack/ •NetApp Community – OpenStack Discussions –http://community.netapp.com/t5/OpenStack- Discussions/bd-p/openstack-discussions
  27. 27. Cinder の設定(iSCSI) [DEFAULT] # 中略 enabled_backends=cdot-iscsi [cdot-nfs] volume_backend_name=cdot-nfs volume_driver=cinder.volume.drivers.netapp.common.NetAppDriver netapp_server_hostname=10.130.202.180 #・・・・cluster management lif のアドレス netapp_server_port=80 netapp_storage_protocol=iscsi netapp_storage_family=ontap_cluster netapp_login=openstack #・・・ロールとして新たに作ったAPI用のユーザ netapp_password=netapp123 #・・・ロールとして新たに作ったAPI用のユーザのパスワード netapp_vserver=demo-iscsi-svm #・・・対象のSVM /etc/cinder.conf
  28. 28. 予定 •Vol.002 –NFS Copy Offload Client の特徴と設定 •Vol.003 –“Glance , Nova” + Cinder での特徴 •Vol.00X (未定) –Manila –E-Series
  29. 29. おしまい

×