OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)

Preview:

DESCRIPTION

アジェンダ: ーOpenStackの概要 ーHorizonへのアクセス ーインスタンスにディスクを追加 ー仮想マシンイメージの登録 ーイメージの登録手順 ーSSH認証鍵の作成と登録 ーインスタンスの起動 ーファイアウォールの設定 ーインスタンスにアクセス ーFloating IP

Citation preview

OpenStackで始める クラウド環境構築入門

(Horizon 基礎編)

日本仮想化技術株式会社

VirtualTech.jp

日本仮想化技術株式会社 概要

•  社名:日本仮想化技術株式会社 –  英語名:VirtualTech Japan Inc. –  略称:日本仮想化技術/VTJ

•  設立:2006年12月 •  資本金:20,000,000円 •  本社:東京都渋谷区渋谷1-8-1 •  取締役:宮原 徹(代表取締役社長兼CEO) •  伊藤 宏通(取締役CTO) •  スタッフ:9名(うち、8名が仮想化技術専門エンジニアです) •  URL:http://VirtualTech.jp/ •  仮想化技術に関する研究および開発

–  仮想化技術に関する各種調査 –  仮想化技術に関連したソフトウェアの開発 –  仮想化技術を導入したシステムの構築

ベンダーニュートラルな独立系仮想化技術 専業会社

2

導入・移行

仮想化環境構築をトータルサポート

設計

•  戦略立案 –  コスト削減、社内標準化、将来プランのコンサルティング

•  設計 –  要求仕様の策定 –  サーバ、ストレージからネットワークまでアプリケー

ションまで考慮した設計最適化 –  キャパシティプランニング(ベンチマーク)

•  導入 –  仮想化ソリューションパッケージの提供 –  仮想化統合(P2V既存環境移行)

•  運用保守 –  エンジニア教育

–  技術サポートの提供 –  OSSソースコードレベルサポート

運用保守

ベンダーニュートラルなワンストップ・サポートをご提供

戦略立案

3

OpenStackへの取り組み

•  お客様向けOpenStack評価環境の構築 •  ベアメタルOpenStackの開発

– 仮想環境と物理環境をOpenStackで一括管理 – 単一のイメージで仮想マシンと物理マシンの

双方を起動可能 –  2013年4月リリースのGrizzlyで本体にマージ

•  某OpenStackクラウドサービス評価 – 機能検証・性能検証

4

OpenStackの概要

OpenStackの構成要素(1)

•  Nova – コンピュータ(計算機)インフラ – 仮想マシンやネットワークを管理

•  Swift – オブジェクトストレージ – クラウドストレージを提供

•  Glance – イメージ管理 – 仮想マシンのイメージを登録

6

OpenStackの構成要素(2)

•  Neutron – 仮想ネットワークインフラを提供

•  Horizron –  Dashboardとも呼ばれる –  Web管理インターフェース

•  Keystone – 認証系サービス –  Identity/Token/Catalog/Policy

•  Cinder – ブロックストレージを提供

7

CinderとSwift

•  Cinder –  iSCSIストレージにアクセスしてボリューム作成 – 作成したボリュームを仮想マシンに提供

•  Swift – インターネット経由でアクセスできる保存領域 – HTTPベースのREST方式でデータをやり取り – データは複数のストレージに複製 – Amazon S3のようなクラウドストレージを提供

8

OpenStackの構成要素(3)

Havanaから追加されたコンポーネント •  Ceilometer

– 雲高計・雲量計 – クラウドリソースの利用量を計測するAPI – 課金システムと連動させる

•  Heat – 自動化を支援するAPI – ChefやPuppetとも連動 – AWS CloudFormationと互換性

9

OpenStack 概要

10

仮想マシン ネットワーク ストレージ

Web管理画面

IaaS環境を実現するソフトウェアスタック

OpenStack 概要

11

仮想マシン ネットワーク ストレージ

Web管理画面

IaaS環境を実現するソフトウェアスタック

Horizonについて

Horizonとは

•  OpenStackのWeb管理インターフェイス –  VMwareでいうところのvSphere Web Client

•  プロジェクト名はHorizon •  製品名はOpenStack Dashboard •  Webブラウザで管理・操作

– インスタンス – ネットワーク – ファイアウォール – インスタンスイメージ –  リソース使用量

13

Horizon ログイン画面

14

空きリソース状況の確認画面

15

リリース使用状況画面

16

インスタンス画面

17

インスタンスの操作

18

ネットワークトポロジー画面

19

ネットワークトポロジー画面

20

外部ネットワーク 内部ネットワーク

ルーター インスタンス

サービス状態の確認

21

フレーバーの管理

22

ユーザーの管理

23

ロール(権限)の管理

24

プロジェクトの管理

25

所属ユーザーの管理

26

クォーターの管理

27

仮想マシンイメージの登録

イメージの登録手順

•  OpenStackでお好みのOSインスタンスを利用できます。

1.  Cloud Imageをダウンロード (もしくはLinux KVMで独自VMイメージを作成)

2.  Horizonに管理者でログイン 3.  管理画面からイメージを登録

29

配布イメージを使う場合

•  任意のCloud Imageをダウンロード – Ubuntu – Fedora – CentOS

•  Cloud ImageをOpenStackに登録 •  認証鍵をOpenStackに登録

30

独自イメージを使う場合

•  仮想マシンをLinux KVMに作成 •  仮想ディスク

– ストレージボリューム形式をraw/qcow2 •  ゲストOSをインストール

– OpenSSH Server –  cloud-init

•  イメージをOpenStackに登録

31

Virt Managerの例

32

仮想マシンイメージの登録手順

1.イメージの作成を押す

34

2.イメージ情報を入力

35

URL指定も可能

36

イメージの場所を指定

URLを指定

3.イメージの登録完了

37

SSH認証鍵の作成と登録

キーペアの登録画面

39

コマンドで作成

•  SSH接続するクライアントで認証鍵を作成  $ cd ~/.ssh!$ ssh-keygen -f id_rsa -t rsa!Enter passphrase:!Enter some passphrase again: !$ ls |grep id_rsa!id_rsa id_rsa.pub!

40

公開鍵をエディタで開く

•  公開鍵(*.pub)をエディタで開く    ssh-­‐rsa  (中略)3mlh35NKnVHOc3rzVZzUXatqKW3uRR6bEk5PczQ0A8Uz0KeBeKawYpoBDHaw==  

•  公開鍵をコピー&ペースト

41

Horizonで作成する

42

キーペアの登録手順

•  コマンドで作成した鍵を使うユーザーでHorizonにログイン

•  「管理→アクセスとセキュリティ」画面を開く •  「キーペア」タブを開く •  「キーペアの取り込み」ボタンをクリック •  キーの名前と公開鍵を入力 •  「キーペアの取り込み」ボタンをクリックして

登録 43

キーペアの登録完了

44

キーペアの割り当て画面

45

インスタンスの起動

インスタンスの作成手順

1.  Horizonにログイン 2.  「プロジェクト」タブをクリック

3.  「インスタンス」を選択 4.  「インスタンスの起動」ボタンをクリック 5.  「イメージ」から使用したいイメージを選択 6.  インスタンスの定義を入力 7.  「起動」ボタンをクリック

47

インスタンス画面

48

インスタンスの構成画面

49

イメージの選択画面

•  イメージはインスタンスの起動時に選択

50

キーペアの割り当て画面

51

ネットワークの割り当て画面

52

カスタマイズ・スクリプト画面

53

パスワード認証する

•  クラウドイメージはパスワード認証不可 •  カスタマイズ・スクリプトで設定できる

•  https://help.ubuntu.com/community/CloudInit •  http://cloudinit.readthedocs.org/en/latest/topics/examples.html

54

【参考】

#cloud-­‐config    password:  vmpass  chpasswd:  {  expire:  False  }  ssh_pwauth:  True

インスタンスの定義

項目 内容

インスタンス名 インスタンスに付ける名前を入力

フレーバー インスタンスに割り当てる性能を選ぶ

インスタンス数 一度に作成するインスタンス数を設定

インスタンスのブートソース インスタンスソースを選択

キーペア 鍵認証によってログインする場合に利用。あらかじめキーを発行しておく

セキュリティグループ セキュリティ関連の設定を定義したグループの中から任意のものを選択

ネットワーク 利用するネットワークを割り当て

カスタマイズ・スクリプト

Amazon EC2のUserDataのようにインスタンスに対してスクリプトや設定を渡すことが可能。またメモ書き用としても使われる

55

インスタンス作成中

56

インスタンス作成完了

57

ファイアウォールの設定

58

ポートの開放

•  デフォルトでは多くのポートが閉じた状態 –  defaultセキュリティグループ

•  セキュリティグループを設定して必要なポートを開ける

•  今回は以下のポートを開けてみます –  ICMP – SSH – HTTP

59

ポートの開放手順

•  「アクセスとセキュリティ→セキュリティグループ」から設定

•  許可するサービスを追加

•  アクセス許可するクライアントの対象範囲などを指定

許可するサービス 追加するルール

Ping ICMP

SSHリモートアクセス TCP/22

Webサーバへのアクセス HTTP

60

セキュリティルールの追加

61

ルール設定例

62

インスタンスにアクセス

インスタンスの利用

•  パスワード認証ができる場合はOpenStackのVNCコンソールから操作可能

•  公開鍵認証ができる場合はSSH接続すると操作可能 – セキュリティグループでSSHを許可 – インスタンスにFloating IPを割り当て – SSHコマンドに-iオプションで鍵を指定 – SSHログイン

64

VNC Consoleで接続

65

SSHで端末からアクセス

66

インスタンスにディスク追加

ボリュームの追加手順

1.  インスタンスを起動 2.  Horizonでボリュームを追加 3.  インスタンスにボリュームを接続

68

ボリュームの追加

69

ボリューム作成完了

70

ストレージの確認

71

ボリュームの接続

72

ボリューム接続完了

※これ以降はOSにディスクを追加する手順と同様です。

73

Linuxの場合の設定例

Linuxの場合

1. インスタンスを(再)起動!2. dmesg | grep vd 3. fdisk /dev/vdc!4. mkfs –t ext4 /dev/vdc1!5. mkdir /backup!6. mount /dev/vdc1 /backup!7. /etc/fstab (→永続化)!

75

追加したストレージの確認

76

•  /dev/vdcがインスタンスに認識されていることを確認

インスタンスにマウント

77

【参考】

Floating IPについて

Floating IP 概要

•  インスタンスにはFIXED IPが割り当て •  インスタンス同士は疎通可能

79

サービス

クライアント ③

インスタンス

① ○×

Floating IP 概要

•  Floating IPを割り当て –  リモートアクセス可能に

•  静的NAT

80

サービス

クライアント ③

インスタンス

手順概要

1.  Floating IPを発行 2.  インスタンスにFloating IPを割当 3.  アクセスに必要なポートを開放

–  SSH接続は22/TCP –  Ping許可はICMP –  WebアクセスはHTTP(or 80/TCP)

81

Floating IPを発行

1.  「プロジェクト→アクセスとセキュリティ」を開く 2.  「Floating IP」タブをクリック 3.  「Floating IPの確保」をクリック 4.  プールを選択して「IPの確保」をクリック

82

Floating IPを発行

4.  Floating IPが発行される –  このIPをインスタンスに割り当て

–  外部PCからアクセスが可能になる

83

Floating IPを割当

1.  「プロジェクト→インスタンス」を開く 2.  Floating IPを割当てるインスタンスを選択

3.  アクションメニューから「Floating IPの割り当て」ボタンを押す

84

Floating IPを割当

4.  割り当てるIPアドレスを選択(もしくは追加)して「割り当て」ボタンを押す

85

Floating IPを割当

6.  インスタンスにFloating IPが設定される

86

Floating IPを割当

7.  リモートアクセス可能になる

87

Instance

Pingコマンドの実行

$ ping -c 4 172.17.14.212!PING 172.17.14.212 (172.17.14.212): 56 data bytes!64 bytes from 172.17.14.212: icmp_seq=0 ttl=62 time=17.162 ms!64 bytes from 172.17.14.212: icmp_seq=1 ttl=62 time=9.467 ms!64 bytes from 172.17.14.212: icmp_seq=2 ttl=62 time=7.640 ms!64 bytes from 172.17.14.212: icmp_seq=3 ttl=62 time=8.759 ms!!--- 172.17.14.212 ping statistics ---!4 packets transmitted, 4 packets received, 0.0% packet loss!round-trip min/avg/max/stddev = 7.640/10.757/17.162/3.755 ms!

88

インスタンスにSSH接続

$ ssh -i ~/.ssh/id_dsa ubuntu@172.17.14.212!The authenticity of host '172.17.14.212 (172.17.14.212)' can't be established.!RSA key fingerprint is ...!Are you sure you want to continue connecting (yes/no)? yes!Welcome to Ubuntu 12.04.4 LTS (GNU/Linux 3.2.0-58-virtual i686)!:!Last login: Tue Mar 4 06:14:11 2014!$ cat /etc/os-release|grep PRETTY_NAME!PRETTY_NAME="Ubuntu precise (12.04.4 LTS)"!

89

Webサーバーにアクセス

1.  インスタンス上でApacheを実行 $ sudo apt-get install apache2!

2.  クライアントからサーバーにアクセス

90

Recommended