OpenStack 管理者入門
日本仮想化技術株式会社http://VirtualTech.jp
自己紹介• 本名:宮原 徹• 1972 年 1 月 神奈川県生まれ• 1994 年 3 月 中央大学法学部法律学科卒業• 1994 年 4 月 日本オラクル株式会社入社
– PC サーバ向け RDBMS 製品マーケティングに従事– Linux 版 Oracle8 の日本市場向け出荷に貢献
• 2000 年 3 月 株式会社デジタルデザイン 東京支社長および株式会社アクアリウムコンピューター 代表取締役社長に就任– 2000 年 6 月 (株)デジタルデザイン、ナスダック・ジャパン
上場( 4764 )• 2001 年 1 月 株式会社びぎねっと 設立• 2006 年 12 月 日本仮想化技術株式会社 設立• 2008 年 10 月 IPA 「日本 OSS 貢献者賞」受賞• 2009 年 10 月 日中韓 OSS アワード 「特別貢献賞」受賞
2
日本仮想化技術株式会社 概要• 社名:日本仮想化技術株式会社
– 英語名: VirtualTech Japan Inc.– 略称:日本仮想化技術/ VTJ
• 設立: 2006 年 12 月• 資本金: 2,000 万円• 売上高: 1 億 3,573 万円( 2013 年 7 月期)• 本社:東京都渋谷区渋谷 1-8-1• 取締役:宮原 徹(代表取締役社長兼 CEO )• 伊藤 宏通(取締役 CTO )• スタッフ: 8 名(うち、 6 名が仮想化技術専門エンジニアです)• URL : http://VirtualTech.jp/• 仮想化技術に関する研究および開発
– 仮想化技術に関する各種調査– 仮想化技術に関連したソフトウェアの開発– 仮想化技術を導入したシステムの構築– OpenStack の導入支援・新規機能開発
ベンダーニュートラルな独立系仮想化技術のエキスパート集団
3
4
情報サイト:EnterpriseCloud.jp
• OpenStack で始めるエンタープライズクラウドの情報サイト
• OpenStack 導入手順書のダウンロード
• 各種プレゼン資料• その他ブログ記事
5
OpenStack 最新情報セミナー開催中
• OpenStack に関する最新情報セミナーを隔月開催– 第 4 回:『 OpenStack 環境構築入門』&『ネットワーク仮
想化の最新動向 – Software Defined Infrastructure(SDI) を目指して』( 2014 年 4 月 10 日 ( 木 ) )
– 第 5 回:『 OpenStack 環境構築入門』&『 OpenStack のストレージ』( 2014 年 6 月 5 日 ( 木 ) )
– 第 6 回:『 OpenStack 管理者入門』&『 OpenStack ディストリビューションの現在』( 2014 年 8 月 7 日 ( 木 ) )
• 費用:無償• 資料もすべて公開中• Ustream 中継もやってます• 詳細は EnterpriseCloud.jp をご覧下さい
6
@IT :たまおきの OpenSatck Watch
• OpenStack を中心にクラウド関係の最新情報を @IT にて毎月発信
• たまおき@ VTJ 責任編集
http://bit.ly/1areUHP
7
本日のアジェンダ• スタッフ募集のお知らせ• OpenStack 環境のおさらい• ユーザー、テナントの管理• ネットワークの管理• OS イメージの管理• コンピュートノードの追加
• 『 OpenStack 環境構築手順書 Havana 版』に従って構築した環境を想定しています
• 環境は構築したけど、という方向けの次の一歩です
スタッフ募集のお知らせ
大事なことは最初に話します
日本仮想化技術株式会社は
• 仮想化技術のエキスパート集団• 進取の精神• 豊富な検証機材で新技術を追求• 自由な雰囲気の職場
募集している職種は
• サーバー・ネットワークエンジニア– LPIC 、 CCNA などの保有者歓迎
• プログラマー– オブジェクト指向言語が理解できている事– OpenStack のコードを読んだり、書いたり
• 営業・企画・マーケティング– SE 、 PL 、 PM経験者大歓迎
募集条件
•実力主義•年齢・経験不問•チャレンジ大歓迎
勤務先は?
•渋谷駅より徒歩 5分•全員がゆったりデスクとアーロンチェア
13
オフィスは渋谷駅至近日本仮想化技術
オフィス
ハチ公
渋谷駅東口
交差点信号
渋谷駅
ヒカリエの中を通ると雨の日にあまり濡れません
渋谷郵便局
優れた環境が優れた成果を生む
渋谷駅徒歩 5分の新オフィス
幅 140cm のゆったりデスクとアーロンチェアMacBook Pro/Air と大型液晶モニタが標準キーボード・マウスも自由
充実の検証環境最新機材で作業
15
充実の福利厚生
• マッサージチェア• 充実のフリードリンクコーナー
– 各種お茶類、ネスプレッソなど各種取り揃え
• 誕生日はケーキでお祝い• 雑誌年間購読制度
–何でも好きな雑誌を年間購読• 書籍購入支援制度
–好きな書籍(漫画も可)を 1 万円/年購入
17
お待ちしております
18
ユーザー、テナントの管理
19
テナント demo
OpenStack のアカウント構造• テナントは複数のユーザーを束ねるグループのような役割– 従来はプロジェクト
• ユーザー権限はロールとして各ユーザーに権限付与
• ロールの定義はpolicy.json に記述
テナント adminユーザー
admin
ロールadmin
Member
権限付与demo
service
20
テナント(プロジェクト)の作成
1. Web 管理画面に admin でログイン2. admin プロジェクトを選択3. 「管理」タブを選択4. 「認証パネル」→「プロジェクト」をクリッ
ク5. 「+プロジェクトの作成」ボタンをクリック6. 「名前」を入力7. 「プロジェクトの作成」ボタンをクリック8. プロジェクトが作成されたことを確認
21
ユーザーの追加
1. Web 管理画面に admin でログイン2. 「管理」タブを選択3. 「認証パネル」内の「ユーザー」をクリッ
ク4. 「+ユーザーの作成」ボタンをクリック5. ユーザー名、パスワード等を入力6. 主プロジェクトを選択7. ロールを選択8. 「ユーザーの作成」ボタンをクリック
22
新しいユーザーでログイン
1. ユーザー admin をログアウトさせる2. 新規に作成したユーザーでログインする3. 「イメージとスナップショット」をクリック
– パブリックなイメージのみ存在する事を確認
4. 「ネットワークの管理」内の「ネットワークトポロジー」をクリック– ext-net のみ存在する事を確認
5. 「ネットワーク」、「ルーター」をクリック– 何も設定されていないことを確認
23
テナントのリソース制限
クォータの設定でリソース制限が可能1. Web 管理画面に admin でログイン2. 「管理」タブを選択3. 「プロジェクト」をクリック4. 制限したいプロジェクトのアクションから「クォータの変更」を選択
5. クォータの値を変更6. 「保存」ボタンをクリック
参考
24
ネットワークの管理
25
ネットワーク構成図
controllerノード
networkノード
compute1ノード
インスタンス
クライアント
管理系( eth0 )
サービス系( eth1 )
eth0 eth0 eth0仮想スイッチセグメント
eth1
26
仮想ネットワーク図
demo-net
ext-net
ext-net-subnet(10.0.0.0/24)
インスタンス
demo-net-subnet(10.5.5.0/24)
demo-router
10.5.5.1
Floating IP(10.0.0.200/24〜 10.0.0.250/24)
Fixed IP(10.5.5.2/24〜 10.5.5.254/24)
クライアント
10.0.0.x
27
新規ネットワークの作成1. 「ネットワーク」をクリック2. 「+ネットワークの作成」ボタンをクリック3. 「ネットワーク名」を入力
– 例)テナント名 -net
4. 「サブネット」タブをクリック5. 「サブネット名」を入力
– 例)テナント名 -net-subnet
6. 「ネットワークアドレス」を入力– 例) 10.5.6.0/24
7. 「サブネットの詳細」タブをクリック8. 「 DNS 」を入力9. 「作成」ボタンをクリック10. 「ネットワークトポロジー」をクリックし、確認
28
新規ルーターの作成
1. 「ルーター」をクリック2. 「+ルーターの作成」ボタンをクリッ
ク3. 「ルーター名」を入力
–例)テナント名 -router
4. 「ルーターの作成」ボタンをクリック5. ルーターの作成を確認
29
ルーターと外部ネットワークの接続
1. 「ゲートウェイの設定」ボタンをクリック
2. 「外部ネットワーク」を選択–例) ext-net
3. 「ゲートウェイの設定」ボタンをクリック
4. 「ネットワークトポロジー」をクリックし、確認
30
ルーターと内部ネットワークの接続
1. ルーターの名前部分のリンクをクリック2. 「+インターフェースの追加」ボタンをク
リック3. 「サブネット」を選択
–例)テナント名 -net: ネットワークアドレス ( テナント名 -net-subnet)
4. 「インターフェースの追加」ボタンをクリック
5. 「ネットワークトポロジー」をクリックし、確認
31
ネットワーク動作の確認
1. インスタンスを起動– 新規に作成したネットワークを選択– 設定した Fixed IP アドレスの割当を確認
2. Floating IP アドレスを割り当て– Floating IP は外部ネットワークを共有して
いるので demo テナントと同じネットワークアドレス
3. 外部からインスタンスに接続
32
OS イメージの管理
33
参考:イメージ登録と cloud-init
• 各種公式 OS イメージのダウンロード– http://docs.openstack.org/image-guide/
content/ch_obtaining_images.html
• 独自 OS イメージを作った場合は cloud-init を導入すると良い– https://launchpad.net/cloud-init
• さらに設定の自動化を行うのであればHeat の利用、 Chef 、 Puppet との連動も
34
Cinder の動作
controller compute1
インスタンス
eth0 eth0
/dev/vda
LVM volume
ボリューム
iscsidtgt
Glance
イメージ
イメージからボリュームを作成し、そのボリュームから起動することも可能
35
Ubuntu Server イメージの登録
• Ubuntu Server のイメージをダウンロードし、登録します( P21 )
• Ubuntu Server は m1.small以上のフレーバー設定が必要
• メモリ、ディスク制限の設定オプション–起動時に底上げされるわけではない– --min-ram メモリ (MB)– --min-disk ディスク (GB)
36
キーペアの作成
• Ubuntu Server のイメージは SSH の公開鍵・秘密鍵を自動登録可能
• キーペアは新規作成のほか、既存のSSH 公開鍵を取り込む事も可能
• プロジェクト画面の「アクセスとセキュリティ」→「キーペア」タブを選択
• 登録したキーペアはインスタンス起動時に設定可能
参考
37
コンピュートノードの追加
38
コンピュートノードの追加
• CPU 、メモリリソースを増設したい時に実施
• 仮想マシンインスタンスの起動はスケジューラーが自動的に空きコンピュートノードを選択–ノード指定が行えるスケジューラーもある
• Open vSwitchへの接続が必要
39
compute2 の作成
1. OS は compute1同様にインストール–ホスト名は compute2 とする
2. IP アドレスは独自に設定( P39 )– eth0 : 192.168.0.12– eth1 : 10.0.0.12
3. /etc/hosts も書き換え( P40 )– 192.168.0.12 compute2– その他のノードにも追加すること
40
Nova 、 Neutron の設定
1. /etc/nova/nova.conf を一部修正( P42 )– my_ip=compute2– vncserver_proxyclient_address=compute2
2. /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini を一部修正( P44 )– local_ip = 192.168.0.12
41
動作確認
1. ホスト compute2 を起動し、ログイン2. Open vSwitch の接続を確認
– # ovs-vsctl show– GRE トンネルが他のホストと接続されていることを確認
3. インスタンスを起動– compute1 のメモリ容量を上回る合計量のインス
タンスを同時に起動
4. Floating IP を割り当て– 各ノード上のインスタンスへの接続を確認
42
まとめ(宿題)• コマンドのマニュアルを読もう
– http://docs.openstack.org/cli-reference/content/• ストレージ系の管理についてはまた今度
– 複数のストレージを Cinder で使い分けるとか• ネットワーク系はもう少し詰める必要があ
る?– テナント毎の分離度を高める設計など
• イメージを 1から作る手順– CentOS 7 とか、新しいディストリビューションを
サポートするために