120516openqrm deepdive

2,103 views

Published on

オープンクラウドキャンパス【第3回自作プライベートクラウド研究会】openQRM Deep Dive資料です

Published in: Technology

120516openqrm deepdive

  1. 1. openQRM Deep DIVE 2012/5/16 OSSラボ株式会社 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 1
  2. 2. アジェンダ 1.openQRM概説
     openQRMの概要を説明します。
   ・アーキテクチャ、用語開設
   ・特徴的なプラグイン 2.openQRM基礎
     openQRMを導入にあたって、必要と手順についてのポイントを説明します。
   ・動作環境
   ・インストール手順
   ・初期必須プラグインとおすすめプラグイン
   ・動作確認とトラブルシュート 3.リソース管理
     openQRMで管理するリソース管理について説明します。
   ・仮想サーバ、ストレージの考え方 4.デモンストレーション
   openQRMのユーザビリティーと機能についてデモンストレーションを行います。
   ・openQRMで、VMwareを管理する。 5.参考情報について 6.番外編
     様々なオープンソース群で、自動管理ツールについてのトピックスを
   お話しします。 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 2
  3. 3. もっと楽な方法ないの? • 非仮想化、ベアメタル(物理)サーバ • ローカルストレージ デプロイメント • パッチを当てたり、構成変えたり、再インストールしたり ##以下繰り返し 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 3
  4. 4. 1. openQRM概説  ・アーキテクチャ、用語解説
   ・特徴的なプラグイン 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 4
  5. 5. openQRMの位置づけ Nagios, Collectd, Zabbix ジョブ管理 openQRM クラウド管理コンソール アプリケーション・フレームワーク Puppet コマンド自動実行 アプリケーション構成 監視 Open vSwitch ネットワーク管理 初期設定/構成管理 Clonezilla Cobbler セルフサービス・ポータル OSインストール FAI/OPSI LinuxCOE 資源管理/プロビジョニング (クラウド/VM/実機) Linux/Windows 仮想化環境 VMware, Xen, KVM, lxc, OpenVZ 物理環境 クラウド環境 Intel/AMD x64アーキテクチャ Amazon, Eucalyptus等 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 5
  6. 6. openQRMシステム概要 openQRMサーバ プラグイン・マネージャ DHCP クラウド 管理者 PXE ブート DNS 構成情報取得 Linux Solaris Windows コンソール Linux Solaris Windows PXE 仮想化環境 サーバイメージ VMware, Xen, KVM, lxc, OpenVZ ユーザ その他 ダウンロード 管理者 tftpd, SAN 物理環境 プラグイン コンソール Local, 他 Intel/AMD x64アーキテクチャ API サーバイメージ・ストレージ Enterprise Cloud サーバイメージ変換 NFS SAN REST API クラウド・サービス iSCSI Local他 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 6
  7. 7. プラグイン アーキテクチャ   openQRMサーバは、プラグインの管理機能のみ   必要な機能は全てプラグインで提供   APIも提供されているため、カスタムプラグインの開発が可能 仮想化環境プラグイン ストレージプラグイン ネットワークプラグイン •  VMware ESX/ESXi •  Local LVM •  Dhcp •  Citrix XEN server •  tmpfs •  Dns •  XEN •  NFS •  Tftp •  kvm •  iSCSI •  Wake On Lan •  OpenVZ •  AOE (ATA over Ethernet) •  IPプール管理* •  lxc •  NetApp Filer •  ボンディング* •  Virtualbox •  Dell Equallogic •  Local Server (Bear Metal) •  Zfs HAサポートプラグイン 管理ツールプラグイン •  自動フェイルオーバークラウド管理プラグイン •  Nagios •  OpenQRM HA構成 •  セルフサービスポータル •  Collectd •  DRBD管理 •  ハイブリッド・クラウド •  Zabbix •  IPMI管理* •  イメージシェルフ •  Puppet Etc. •  ECサポート* •  LinuxCOE •  LDAP認証* *はエンタープライズ版提供機能 •  noVNC •  SSH-term120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 7
  8. 8. openQRMの管理単位 アプライアンス リソース システムが稼働する入れ物(物理サーバ/仮想マシン) カーネル openQRMが集中管理するためのブートローダ (PXELinux) サービスレベル アプライアンスへのリソースの割当等 構成情報 イメージ ファイルシステム、デプロイメント情報 ストレージ ルート オペレーティング・システムのrootファイル+サ ービスプログラム群120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 8
  9. 9. 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 9
  10. 10. ストレージ ストレージ ルート オペレーティング・システムのrootファイル +サービスプログラム群   起動ディスクそのもの   ファイルシステムは、OSに依存   中身が直接触れる、snapshot/clone一発!   使用できるデバイス   ローカルディスク   LVM   Block device   ネットワークストレージ   NFS   iSCSI   AoE (ATA over Ethernet)   組み合わせるリソースによって、管理方法(プラグイン)が異なる120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 10
  11. 11. イメージ イメージ ファイルシステム、デプロイメント情報 ストレージ ルート オペレーティング・システムのrootファイル +サービスプログラム群   ストレージに紐づく   ストレージから起動するシステムに関する管理情報   パスワード   ルートデバイス  (ストレージ名)   ルートファイルシステム (ext3等)   デプロイメント方法 (NFSからコピー、テンプレートやcobbler等を使用、等)120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 11
  12. 12. リソース リソース システムが稼働する入れ物(物理サーバ/仮想化環境)   openQRMの管理ネットワーク配下にある全てのマシン   物理サーバでも仮想化サーバでも、管理ネットワークに接続されたNICの MACアドレスで管理される120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 12
  13. 13. カーネル カーネル openQRMが集中管理するためのブートローダ (PXELinux)   リソースに紐づく   openQRMでは、管理下にある物理サーバ及び仮想化ホスト/ゲストのデプ ロイメントを動的に変更するために、ネットワークブート(PXE-boot)を使用す る   PXE-bootは元々nfs等のネットワークファイルシステムからブートするための プロトコルであるが、openQRMは次ページのシークエンスにあるように、設 定したアプライアンス(リソースの組み合わせ)とブートストレージをPXEプロ トコルで設定するため、ネットワークファイルシステムだけでなくローカルスト レージからのブートアップを指定できる   最初にNBPから読み出されるカーネルは、自動的に設定されるため、特に 設定は不要 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 13
  14. 14. アプライアンス アプライアンス リソース システムが稼働する入れ物(物理サーバ/仮想化環境) カーネル OpenQRMが集中管理するためのブートローダ (PXELinux)   イメージとリソースを組み合わせた、 サービスレベル アプライアンスへのリソースの割当等 稼働するシステム 構成情報 イメージ ファイルシステム、デプロイメント情報   CPU数、メモリ、リソースタイプ等、サ ルート ストレージ ービスレベル情報を設定できる オペレーティング・システムのrootファイル+サ ービスプログラム群   イメージとリソースは、柔軟に組み合 わせを変更できる 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 14
  15. 15. 2. openQRM基礎  ・動作環境
   ・インストール手順
   ・初期必須プラグインとおすすめプラグイン
   ・動作確認とトラブルシュート 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 15
  16. 16. 稼働環境 (3) ミドルウェア (1) 物理HW OpenQRMが動作するのに、サポートされるソフト OpenQRMが動作するのに、必要なプロセッ ウェアとバージョン サ/メモリ/ディスク • Apache 2.2以降 • Intel/AMD x86 2core、1.8Ghz • MySQL 5.1以降 • メモリ 1GB • PHP 5.3以降 • 20GB以上のフリーディスクスペース • 他、プラグインによって多数あるが、インストー (2) OS ル時に自動的に選択される (4) ネットワーク OpenQRMが動作する、オペレーティングシス OpenQRMが動作するのに、必要なネットワーク環 テムとバージョン 境 • Ubuntu / Debian Lucid以降 (推奨) • 管理/ストレージ用と公開用の別々の1Gbps • CentOS / Redhat EL 5.5以降 ネットワークを推奨 • 被管理サーバの管理/ストレージ用ネットワー クは、dhcp設定が必要(但し、OpenQRM側で 固定IPアドレス割当は可能) • 被管理サーバは、dhcp/PXEブートするために 管理サーバと同一のarpブロードキャストドメイ ンである事 • NTPが稼働している事(推奨) 111010 Copyright 2011(C) OSS Laboratories Inc. All Rights Reserved 16
  17. 17. サポート環境 ストレージ:OpenQRMが、管理できるストレージ OpenQRMが、管理できる環境   物理サーバ(Intel/AMD x86アーキテクチャ)   各サーバのローカルストレージ   VMware ESXi 4.1以降   LVM2   Citrix Xen Server V5.6以降   NFS4   Xen V3.5以降   iSCSI2   KVM kvm-62以降   AoE   OpenVZ   Dell Equallogic   Lxc   NetApp Filer   VirtualBox   Solaris/OpenSolaris ZFS サポートOS:OpenQRMが、管理できるOS   GlusterFS   Ubuntu   Debian   CentOS / Redhat EL   Fedora   SUSE/OpenSuse   Windows XP / 2000 server以降 111010 Copyright 2011(C) OSS Laboratories Inc. All Rights Reserved 17
  18. 18. システム構成 1.  最低構成(検証/開発用)   1台の物理サーバ上で、openQRM、ストレージサーバ、仮想化環境を稼働   Intel/AMD x86_64 2core VTサポートプロセッサ、1.8Ghz   メモリ 1GB   20GB以上のフリーディスクスペース+サーバイメージ保管用の別パーティション20GB以上   Ubuntu 10.04LTS(推奨)   LVM2, Xen又はKVM 2.  基本構成   3台以上の物理サーバ (openQRMサーバ、ストレージサーバ、被管理サーバ)   要件は、最低構成と同様 OpenQRMサーバ ストレージサーバ 被管理サーバ NFS/iSCSI/AoE 物理環境/3.  本番HA構成 VMware/Xen/KVM等   4台以上の物理サーバ (openQRMサーバx2、ストレージサーバ、被管理サーバ)   管理/ストレージ用ネットワークと公開用ネットワーク   要件は、最低基本構成と同様 OpenQRMサーバ ストレージサーバ 被管理サーバ HA構成 NFS/iSCSI/AoE 物理環境/120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 18 VMware/Xen/KVM等
  19. 19. インストール手順   Ubntu 10.04LTS server版をインストール   インストールオプションは作業用にOpenSSHをインストール、LAMP(Apache, MySQL, PHP等)は後でopenQRMと同時にインストールされるのではずしておく。   必要なソフトをインストール # apt-get -y install subversion make nfs-common nfs-kernel-server open-iscsi-utils iscsitarget   openQRMをインストール 随時最新版に更新されているので、SourceForgeからチェックアウトする # svn co https://openQRM.svn.sourceforge.net/svnroot/openQRM openQRM # cd openQRM/trunk/src/ # make && make install && make start   ストレージサーバを設定   被管理サーバを登録   詳しくは、「ハイブリッド・クラウド管理基盤 openQRMV4.9 クイックスタートガイド」を参照ください http://www.slideshare.net/sfunai/120210penqrm49quickstart120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 19
  20. 20. プラグインについて   必須プラグイン   ストレージプラグイン   dhcp   システムの置き場として   tftp   LVM-NFS or NFS   推奨プラグイン   仮想化プラグイン   dns   使用するものを有効化   Collectd   Novnc   ssh-term   WOL 被管理サーバは起動時にopenQRMサーバで有効化されているプラグインを自動的 にインストールする。 従ってプラグイン構成を変更した場合は、被管理サーバ上でopenQRMクライアントを 再起動する必要が有る。 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 20
  21. 21. ネットワーク構成のハマりどころ   openQRMは、インストール先のサーバに2つ以上のネ ットワークインターフェースがある場合、管理ネットワー クのインターフェースを選択可能になっているが、デフォ ルトのeth0以外を管理ネットワークとして選択した場合、 いろいろ追加設定が必要になる。  openQRM配下で管理されるサーバは、管理ネットワー クに接続されるNICがpxe対応のものが必要  また管理されるサーバの管理ネットワークに接続される NICもeth0に設定されていないと、都度いろいろ設定変 更が必要になる。 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 21
  22. 22. dhcp構成   openQRM管理ネットワーク上に、他のdhcpサーバは存在できない。  被管理サーバの管理ネットワークIFは、原則dhcp/pxe設定が必要。  しかし、openQRM側でアドレスは固定割り当てされる。  設定は、/usr/share/openqrm/plugins/dhcpd/etc/dhcpd.conf #  Standard  configuration  directives...   option  subnet-­‐mask  255.255.255.0;   /etc/network/interfaces の設定内容が自動的に option  broadcast-­‐address  10.0.0.255;   反映される option  routers  10.0.0.1;   初期値のため、環境に合 option  domain-­‐name  "oqnet.org";   わせて変更 option  domain-­‐name-­‐servers  10.0.0.1;   PXEサーバの指定、 ddns-­‐update-­‐style  ad-­‐hoc;   openQRMサーバのアドレ スが自動的に設定される next-­‐server  10.0.0.100;   ので変更不可 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 22
  23. 23. dhcp構成 続き #  Group  the  PXE  bootable  hosts  together   group  {    #  PXE-­‐specific  configuration  directives...    option  vendor-­‐encapsulated-­‐options  09:0f:80:00:0c:4e: 65:74:77:6f:72:6b:20:62:6f:6f:74:0a:07:00:50:72:6f:6d: 70:74:06:01:02:08:03:80:00:00:47:04:80:00:00:00:ff;    subnet  10.0.0.0  netmask  255.255.255.0  {      default-­‐lease-­‐time  21600;      max-­‐lease-­‐time  43200;         環境に合わせて、調整    #  the  ip  range  to  serve      range  10.0.0.10  10.0.0.199;      filename  "/pxelinux.0”;  120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 23
  24. 24. dns構成   必須ではないが、openQRMサーバ自身がdnsサーバとして使用できる。   Dnsが必須のプラグインもあるので、たてておいた方が良い   /etc/bind/named.conf.optionsの下記をコメントアウトし、0.0.0.0を外部DNS のアドレスに変更し保存する。 //  forwarders  {  //    0.0.0.0;  //  };     /usr/share/openqrm/plugins/dns/etc/openqrm-plugin-dns.conf の下記を編集、保存する。 #  plese  configure  your  domain  name  for  the  openQRM  network  here  ! OPENQRM_SERVER_DOMAIN="oqnet.org"    被管理物理サーバのNICが2枚以上あり、管理ネットワーク以外 のIFでdhcp設定されている場合は、dhcpclientによって resolv.confが書き換えられないように設定が必要。 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 24
  25. 25. openQRMの仕掛け openQRMサーバ WEBコンソール php bash、各種ツール群 MySQL コマンドキュー 各種API Dropbear ssh 監視/制御 被管理システム ハイパーバイザ: openQRM Client •  VMware ESXi bash、各種ツール群 •  Citrix XenServer •  Hybrid-cloud (AMI tools) • Linux ストレージ: • openSolaris/Solaris X86 •  NetApp • Windows •  Dell EquaLogic • Xen/KVM/OpenVZ/lxc/VirtualBox •  Coraid 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 25
  26. 26. openQRMの内部構造   重要なディレクトリ/ファイル   起動ファイル /etc/init.d/openqrm   設定ファイル   openQRM /usr/share/openqrm/etc/openqrm-server.conf   tftp /usr/share/openqrm/tftpboot/   dhcp /usr/share/openqrm/plugins/dhcpd/etc/dhcpd.conf   dns /usr/share/openqrm/plugins/dns/etc/openqrm-plugin-dns.conf   データベース /var/lib/mysql/openqrm   コマンドキュー /usr/share/openqrm/var/spool/   ログファイル /var/log/messages, /var/log/syslog120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 26
  27. 27. openQRMのディレクトリ構造   ホームディレクトリ /usr/share/openqrm ├── bin #openQRM制御プログラム ├── doc #リリースノート/ライセンス等 ├── etc #各種設定ファイル群 ├── include #openQRM制御プログラム ├── plugins #プラグインプログラム群 ├── sbin #openQRM制御プログラム ├── tftpboot #ネットワークブート設定ファイル、カーネル等 ├── var #コマンドキュー └── web #webポータル+各種ブートサービス用ファイル   プラグインデイレクトリ /usr/share/openqrm/plugins/プラグイン名 ├── bin #プラグインプログラム ├── etc #プラグイン設定ファイル ├── include #制御プログラム等 └── web #webポータル+各種ブートサービス用ファイル120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 27
  28. 28. openQRMのCLI   /ホームディレクトリ/openqrm/plugins/プラグイン名/bin/openqrm- プラグイン名 #  /usr/share/openqrm/plugins/kvm/bin/openqrm-­‐kvm   Usage  :  /usr/share/openqrm/plugins/kvm/bin/openqrm-­‐ kvm  start/stop/reboot/delete/list  <-­‐n  vm-­‐name>                  /usr/share/openqrm/plugins/kvm/bin/openqrm-­‐ kvm  setboot  <-­‐m  mac-­‐address>  <-­‐b  local/net>                  /usr/share/openqrm/plugins/kvm/bin/openqrm-­‐ kvm  create  <-­‐n  vm-­‐name>  <-­‐m  mac-­‐address>  <-­‐r   memory>  [-­‐d  disk-­‐size  ]  [-­‐c  cpus  ]  [-­‐v   vncpassword  ]   以下略  120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 28
  29. 29. そしてShellです root@openqrm2:~#  cat  /usr/share/openqrm/plugins/kvm/bin/openqrm-­‐kvm  #!/bin/bash  #  this  script  automatically  manages  kvm  #  #  This  file  is  part  of  openQRM.  #  #  openQRM  is  free  software:  you  can  redistribute  it  and/or  modify  #  it  under  the  terms  of  the  GNU  General  Public  License  version  2  #  as  published  by  the  Free  Software  Foundation.  #  #  openQRM  is  distributed  in  the  hope  that  it  will  be  useful,  #  but  WITHOUT  ANY  WARRANTY;  without  even  the  implied  warranty  of  #  MERCHANTABILITY  or  FITNESS  FOR  A  PARTICULAR  PURPOSE.    See  the  #  GNU  General  Public  License  for  more  details.  #  #  You  should  have  received  a  copy  of  the  GNU  General  Public  License  #  along  with  openQRM.    If  not,  see  <http://www.gnu.org/licenses/>.  #  #  Copyright  2011,  openQRM  Enterprise  GmbH  <info@openqrm-­‐enterprise.com>  120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 29
  30. 30. トラブルシューティング   サービスの稼働を確認   openQRMサーバ: # service openqrm status   被管理サーバ: # service openqrm-client status   まずはログ確認、   openQRMサーバと、被管理サーバ   # cat /var/log/syslog | grep プラグイン名 など   コマンドキューを確認(openQRMサーバ)   # ls /usr/share/openqrm/var/spool/   次に被管理サーバ上でCLI実行、ログを確認   # export RUN_IN_BACKGROUND=true   # bash -x /usr/share/..../openqrm-kvm-storage-vm create ..... 2> / tmp/kvms-create.log120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 30
  31. 31. 3. openQRMリソース管理   ・仮想サーバ、ストレージの考え方 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 31
  32. 32. openQRMでの基本ブートシークエンス openQRMサーバ ストレージ クライアント BIOSはネットワークブート (PXE boot)に設定 ①電源投入 ③アドレス割当 ②DHCP要求 PXEサーバ通知 ④PXE-NBP要求 ⑤カーネルファイル通知、送信 ⑥カーネルをtftpdダウンロード initrdマウント、ネットワーク初期化 イメージ/アプライ No アンスが割当済か? ⑧アイドル状態で待機 Yes ⑧Image-deployment hookを ダウンロード、マウント要求 ⑨マウント承認 ⑩カーネルモジュールとOpenQRMク ライアントをインストール、サーバ・イメ ージをRead Onlyで再マウント ⑪マウント承認 ⑫再マウントされたルートファイルシス テムでinitを実行、サービス開始120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 32
  33. 33. openQRMリソースの状態遷移   openQRMのブートシークエンスでは、実際のルート・ファイル・システムが使用できるよ うになる前にマウントされる初期ルート・ファイル・システムであるinitrdが展開された状 態をアイドル状態と呼ぶ   Initrdはカーネルにバインドされ、カーネル・ブート・プロシージャーの一部としてロードさ れ、initrd がロードされると、カーネルはこれを、実際のファイル・システムを使用可能に するためのモジュールをロードした状態になる   そして実際のルート・ファイル・システムの取得という 次段階ブート・プロセスを openQRMのアプライアンスマネージャの設定によって決定される WoL/IPMI マネージャ Sleep Wake up Power off リソースマ Reboot Stop Start アイドル アプライアンス 稼働 停止状態 ネージャ 状態 マネージャ 状態 Stop Start 仮想化 マネージャ Restart 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 33
  34. 34. アイドル状態のアプライアンス 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 34
  35. 35. openQRM client   VMware ESXiや、Cirtrix XenServer等、APIを使用す るもの以外の被管理システムでは、openQRM clientが 常駐しopenQRMサーバと通信、制御、監視を行う   openQRM clientをインストールし、openQRMサーバ管 理下にするためには、以下の方法がある。   物理サーバ:openqrm-local-server をインストール   VMware/KVM/Xen/Citrix VM:自動インストール   KVM-storage/Xen-storage/Citirix-storage/OpenVZ/lxc VM: openqrm-local-vm-clientをインストール120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 35
  36. 36. ネットワーク管理機能 コミュニティ版 エンタープライズ版 VMへのアドレス指定割 Dhcp.confの書き IP管理プラグインで 当 換え 可能 VMへのVLAN割当 不可 VMへネットワーク帯域 無し 割当 VLAN単位でのネットワ 無し ーク帯域割当 ファイアウォール機能 無し ロードバランサ機能 無し 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 36
  37. 37. ローカル・デプロイメントとネットワーク・デプロイメント   openQRMでは、アイドル状態から実際のルートファイルシステムを 取得する方法として、ローカル・デプロイメントとネットワーク・デプロ イメントの2種類のタイプがある   ネットワーク・デプロイメントは、通常のPXEブート同様ネットワークフ ァイルシステムからルートファイルをマウントしブートアップする   ローカル・デプロイメントは、起動するサーバのローカルストレージか らルートファイルをマウントしブートアップする   openQRMでは、ローカル・デプロイメントを使用するか、ネットワー ク・デプロイメントを使用するかによって、使用するプラグインが異な る120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 37
  38. 38. デプロイメントタイプとプラグインの組み合わせ ローカル・デプロイメント ネットワーク・デプロイメント 物理サーバ 物理サーバ 物理サーバ 物理サーバ 仮想 仮想 物理 CPU CPU CPU 仮想 仮想 物理 CPU CPU CPU 仮想 仮想 物理 disk disk disk 仮想 仮想 仮想 disk disk disk 共有ストレージ KVM-storage KVM, VMware-ESX, Citrix, Xen, Vbox XEN-storage local-storage + Citrix-storage tmpfs-storage Lvm-storage (nfs/iSCSI/AoE) Lxc-storage Nfs-storage, iSCSI-storage Openvz-storage Equallogic, Netapp, Sanboot, AOE, ZFS 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 38
  39. 39. ネットワーク・デプロイメント(1) Local-serverプラグイン openQRMサーバ solx86プラグイン Local-server/solx86プラグイン サーバ kvmプラグイン のopenqrm-clientを使用した、
 プラグイン vmware-esxプラグイン ネットワークストレージ
 Xenプラグイン 仮想化 ・デプロイメント プラグイン Citrixプラグイン, Vboxプラグイン nfs-storageプラグイン
 ストレージ iscsi-storageプラグイン プラグイン lvm-storageプラグイン zfs-storageプラグイン /rootの場所、起動方法の指定 ボリュームの作成/変更/削除 openqrm openqrm※被管理システムは、仮想化ホ -client -client ストだけでなく、物理サーバでも可能 nfs/iscsi VM lvm/zfs ※VMware ESXi/XenServerには、openqrm-clientをインストールできないため、APIを使用している 起動時にマ Swapのみ ウント /root 共有ストレージ 被管理システム(仮想化ホスト) Linux/Solaris x86システム 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 39
  40. 40. ネットワーク・デプロイメント(2) Local-serverプラグイン openQRMサーバ solx86プラグイン NASネイティブ・プラグイン
 サーバ kvmプラグイン を使用した、
 プラグイン vmware-esxプラグイン ネットワークストレージ
 Xenプラグイン 仮想化 ・デプロイメント プラグイン Citrixプラグイン, Vboxプラグイン ストレージ equallogic-storageプラグイン
 プラグイン netapp-storageプラグイン aoe-storageプラグイン /rootの場所、起動方法の指定 ボリュームの作成/変更/削除 openqrm API ※被管理システムは、仮想 -client 化ホストだけでなく、物理サーバでも可能 VM ※VMware ESXi/XenServerには、openqrm-clientをインストールできないため、APIを使用している 起動時にマ Swapのみ ウント /root Dell Equallogic
 Netapp FAS 被管理システム(仮想化ホスト) 共有ストレージ Coraid Etherdrive (AoE) NAS 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 40
  41. 41. ローカル・デプロイメント(1) ローカルストレージプラグインの Local-serverプラグイン openqrm-clientを使用した、
 openQRMサーバ solx86プラグイン ローカルストレージ
 サーバ プラグイン ・デプロイメント Local-storageプラグイン ストレージ tmpfs-storageプラグイン プラグイン /rootの場所、起動方法の指定 ボリュームの作成/変更/削除 openqrm -client swap
 内蔵ディスク /root 被管理システム(物理サーバ)120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 41
  42. 42. ローカル・デプロイメント(2) 仮想化ストレージプラグインを Local-serverプラグイン 使用した、
 openQRMサーバ ローカルストレージ
 サーバ プラグイン ・デプロイメント kvm-storageプラグイン
 仮想化 openvz-storageプラグイン ストレージ lxc-storageプラグイン プラグイン citrix-storageプラグイン xen-storageプラグイン /rootの場所、起動方法の指定 ボリュームの作成/変更/削除 nfs マウント、 iscsi 
 nfs exports, iscsi target イニシエータ等の設定 等の設定 管理 openqrm コンソール -client openQRMではない設定 nfs/iscsi VM lvm/zfs ※共有ストレージは、NASだけでな く、被管理システムからマウントでき 起動時にマ るストレージであれば、可 Swapのみ ウント /root ※kvm/OpenVZ/XenServer等で、 被管理システム(仮想化ホスト) 共有ストレージ Live-Migrationを行う場合は、全て のホストから同一のLUNをマウント NAS/SAN できるように設定が必要 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 42
  43. 43. NASの使用について   openQRMでストレージサーバを構成するには、以下の方法がある。 1.  Linux/Solaris x86システムを、ストレージサーバとして使う   ネットワーク・デプロイメント(1)、ローカル・デプロイメント(2)の方法が可能 2.  NASをストレージサーバとして使う   openQRMから直接管理できるNASは、Dell Equallogic、Netapp FAS、Coraid Etherdrive (AoE)のみのため、それ以外のNASはそれぞれのサーバ上で接続設定が 必要   Dell Equallogic、Netapp FAS、Coraid Etherdrive (AoE)では、ネットワーク・デプロイ メント(2)、ローカル・デプロイメント(2)の方法が可能   上記機種以外のNASでは、ローカル・デプロイメント(2)の方法が可能   ローカル・デプロイメント(2)の方法では、kvm, Citrix XenServer, OpenVZ, lxc等から 接続/管理が可能だが、VMware-ESXi用のプラグインは未提供。  従って、VMware-ESXiのストレージとしてNASを使用するには、次 ページの方法のようにNASヘッドとしてLinuxシステムを使用する。   openQRMサーバなどを、NASヘッドとして共用する事も可能だが、ネットワークに負荷が かかるため、実運用環境では推奨しない120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 43
  44. 44. NASとVMware ESXiの接続 openQRMサーバ サーバ Local-serverプラグイン プラグイン 仮想化 vmware-esxプラグイン プラグイン nfs-storageプラグイン
 ストレージ iscsi-storageプラグイン プラグイン lvm-storageプラグイン /rootの場所、起動方法の指定 ボリュームの作成/変更/削除 nfs マウント、 iscsi nfs exports, iscsi target イニシエータの設定 の設定 openqrm 管理 API -client コンソール openQRMではない設定 nfs/iscsi VM lvm/zfs Swapのみ 起動時にマ /root ウント VMware ESXi NASヘッド(Linux) 共有ストレージ NAS 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 44
  45. 45. システムの新規インストール方法 ストレージ リソース インストール方法 Cobbler/LinuxCOE/ 各ツールで作成したテンプレートかLocal-storage 物理サーバ FAI/OPSI らインストール local-storage Grabしたストレージからインストール Image-shelf NFS上のイメージにimport NFS/LVM-NFS 物理サーバ Install from nfs NFS上のイメージからコピー VMware VM ローカルディスク上のルートからコ KVM VM Install from local ピー Xen VM Install from nfs NFS上のイメージからコピー iSCSI/LVM-iSCSI/ Cirtrix VM AoE/LVM-AoE ローカルディスク上のルートからコ Install from local ピー Cobbler/LinuxCOE/ 各ツールで作成したテンプレートかKVM-storage KVM-storage VM FAI/OPSI らインストール Xen-storage Xen-storage VM ホスト上にマウントしたisoイメージかCitrix-storage Citrix-storage VM iso らインストール OpenVZ-storage OpenVZ VM ホスト上にマウントしたcd-romからLxc-storage Lxc VM cd-rom インストール 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 45
  46. 46. マイグレーション機能   既存システムをOpenQRM配下に追加   P2V/V2P(非仮想化仮想化環境)   V2V(仮想化環境A仮想化環境B)   P2P(非仮想化環境A非仮想化環境B)   ライブマイグレーション   ハイパーバイザに依存、異種仮想化環境間は不可   KVM, Xen, OpenVZをサポート111010 Copyright 2011(C) OSS Laboratories Inc. All Rights Reserved 46
  47. 47. 既存サーバのマイグレーション   既存サーバをopenQRM配下にするには、下記の方法が用意されている  既存物理サーバ   Local-serverプラグインを使用し、openQRMクライアントをインストールすることによって自動的に認識される   BIOS設定でDHCP/ネットワークブートに変更する必要があるが、IPアドレスは固定割当が可能で、起動もローカル ストレージのままで変わらない   システムを移動/複製するためには、Local-storageプラグイン(Clonezilla)を使用し、ルートファイルシステムをク ローニングする  既存仮想化ホスト   VMware ESXiとXenServer以外のKVM等の仮想化ホストは、上記既存物理サーバの手順でopenQRM配下にし てから、該当仮想化プラグインを用いて仮想化ホストを作成する   仮想化ホストシステムを移動/複製するためには、既存物理サーバと同様に、Local-storageプラグインを使用す る   VMware ESXiとXenServerは、VMware ESX/XENプラグインを使用してopenQRM配下に出来るが、仮想化ホス トシステムの移動/複製はできない(VMware ESXi/XenServerがPXEブートをサポートしない仕様のため)  既存仮想化ゲスト   仮想化ゲストは、ルートファイルシステムを共有ストレージサーバの新規作成したボリュームにコピーが必要である。 一旦openQRMのボリュームにコピーすれば、そのボリュームからイメージを作成し、他の共有ストレージ環境のサ ーバにマイグレーションする事が可能になる   既存仮想化ゲストからopenQRMの共有ストレージ環境へマイグレーションするには、新規作成した共有ストレージ サーバ上のLVMボリュームに、ローカルのルートファイルシステムをrsyncでコピーし、コピーしたボリュームをルー トとしてイメージを作成、アプライアンスを作成する120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 47
  48. 48. 自動インストレーションのツール Clonezilla/Partclone Local-storageプラグインに組み込まれている、Norton Ghost®に似 た、パーティションおよびディスククローンツール Cobbler LinuxCOE Local-storage/Kvm-storage/Citrix-storage/OpenVZ/lxcプラグイン と組み合わせて使用、殆どのディストリビューションのLinuxに対応 FAI OPSI Windowsプラグインと組み合わせて使用 Puppet アプライアンス毎に指定可能、OSインストール後のアプリケーション インストール/設定を自動実行 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 48
  49. 49. Cobbler+Puppetで全自動セットアップ   Cobblerは別途インストールが必要   openQRMサーバと同居可能だ(と思う)が、Ubuntu10.04では Cobblerを上手く設定できなかったので、別途Ubuntu11以上か、 CentOSのマシン(VMでも可)で作成するのが簡単   Cobblerサーバ上にはapache2(httpd)とtftpdが必須、dhcpは openQRMサーバを使うので動かしてはいけない  openQRMとの連携の仕組み 1.  openQRM上でイメージ作成時に、Cobblerのプロファイルを選択 2.  自動的にdhcpd.confのnext serverがcobblerサーバに変更される 3.  アプライアンスを起動すると、Cobblerからtftpブートされる 4.  Cobblerでのインストール完了後、openQRMサーバから再起動 5.  起動時にPuppetのマニフェストが実行される120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 49
  50. 50. Cobblerの設定(Debian/Ubuntu系OSの場合)   物理サーバにインストールする場合、openqrm-clientもインストー ルするために.preseedファイルに以下を追加する d-­‐i  preseed/late_command  string  wget    http://openQRMサーバアド レス/openqrm/boot-­‐service/openqrm-­‐cobbler-­‐autoinstall-­‐ client;  chmod  +x  ./openqrm-­‐cobbler-­‐autoinstall-­‐client;  mv   -­‐f  openqrm-­‐cobbler-­‐autoinstall-­‐client  /target;  chroot  / target  ./openqrm-­‐cobbler-­‐autoinstall-­‐client  openQRMサーバ アドレス  120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 50
  51. 51. Cobblerの設定(Redhat系OSの場合)   物理サーバにインストールする場合、openqrm-clientもインストールするた めに事前にopenQRMサーバ上の
 /usr/share/openqrm/plugins/cobbler/etc/templates/ openqrm_client_auto_install.snippets をCobblerサーバの
 /var/lib/cobbler/snippets/openqrm_client_auto_install.snippets
 にコピー   Cobbler manager > Configuration > Snippetsから選択、以下を編集
 @@@YOUR_OPENQRM_SERVER_IP@@@を、openQRMサーバのIP アドレスに入れ替えて保存、
 次に.ksファイルを編集し、%postに下記を追加
 ### # Install openQRM client $SNIPPET(openqrm_client_auto_install.snippets) 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 51
  52. 52. Puppetの設定   Puppetプラグインを有効化されると、自動的にインストールされる   初期設定では、以下のマニフェストが用意されている   basic-server A basic server profile   database-server A data-base server configuration (Mysql)   lamp A LAMP setup (Linux/Apache/Mysql/Php)   webmin has webmin installed and running   webserver A basic webserver profile (Apache)   マニフェストを追加する場合は、以下のフォルダに追加する /usr/share/openqrm/plugins/puppet/etc/default/manifests/   あとは、アプライアンスリストからpuppetアイコンをクリックし、設 定するマニフェストを選択し保存するだけ 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 52
  53. 53. HA機能   High-Availabilityプラグイン   N+1フェイルオーバー OpenQRM 従来のHA構成 N+1 フェイルオーバー 本番系 待機系 OpenQRM リソースプール   DRBD-MCプラグイン   DRBD Management Consoleを使用し、簡単にLinux-HA環境を 構築 111010 Copyright 2011(C) OSS Laboratories Inc. All Rights Reserved 53
  54. 54. ハイブリッドクラウド機能   複数のクラウド基盤とイメージをインポート/エキスポート   パブリッククラウドサービス   Amazon EC2   プライベートクラウド   Eucalyptus、Ubuntu Enterprise Cloud111010 Copyright 2011(C) OSS Laboratories Inc. All Rights Reserved 54
  55. 55. セルフサービスポータル機能   ユーザー管理   グループ/ユーザ毎の使用プロダクト設定   課金管理   セルフ登録/管理者登録   プロダクト管理   各リソースの課金単位設定   IPプーリング/VLAN設定(エンタープライズ版のみ)   セルフサービスポータル   GUIリソース管理   課金情報提供 クラウド管理者 OpenQRM ユーザー/グループ管理 リソースプール割当 リソースプール リソース作成 サービスレベル管理 構成設定/変更 課金管理 サービス起動/停止 構成DB システム担当者 プロビジョニング要求 111010 Copyright 2011(C) OSS Laboratories Inc. All Rights Reserved 55
  56. 56. デモ構成 OpenQRMサーバ ストレージサーバ VMware ESXi5 ベアメタル KVM-storage Xen-host Ubuntu10.04LTS NFS/iSCSI/AoE Ubuntu10.04LTS CentOS6.2 Cobbler Ubuntu10.04LTS Ubuntu11.10 120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 56
  57. 57. サーバ作成手順 1.  使用するストレージを作成(スナップショット/クローン) 2.  ストレージと使用する起動ファイルを指定して、イメージ を作成 3.  イメージとリソースを指定して、アプライアンスを作成 4.  アプライアンスの起動   システムのインストールから構成設定まで自動実行 ★リソースが足らなければ、ネットワークブート構成にしたシ ステムを接続するだけで自動的にリソースに追加される 111010 Copyright 2011(C) OSS Laboratories Inc. All Rights Reserved 57
  58. 58. デモ   Kvm-storage-cobbler-puppet   Vmware install   Image-shelf   Bear metal migration   Kvm-storage HA120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 58
  59. 59. リソース http://groups.google.com/group/openqrm-ja openqrm-ja@googlegroups.com 開発元:http://www.openqrm-enterprise.com/ OSSホーム:http://www.openqrm.com プロジェクト:https://sourceforge.net/projects/openqrm/ 日本語資料   製品紹介プレゼンテーション   クイックスタートガイド   プラグインガイド http://www.ossl.co.jp120516 OSS Laboratories Inc. Copyleft http://creativecommons.org/licenses/by/2.1/jp/ 59

×