• Like
RDOを使ったOpenStack Havana - Neutron 構築編
Upcoming SlideShare
Loading in...5
×

RDOを使ったOpenStack Havana - Neutron 構築編

  • 18,863 views
Uploaded on

日時:2014/02/06 …

日時:2014/02/06
タイトル:RDOを使ったOpenStack Havana - Neutron 構築編
概要:
OpenStack最新情報セミナーのために用意していた資料「RDOを使ったOpenStack Havana - Neutron 構築編」を公開いたします。
- RHEL系のLinuxをインストール
- RDOリポジトリーの追加
- RDOでOpenStackをインストール
- RDOでOpenStackをカスタムインストール
- コマンドでOpenStackを設定

補足資料はこちらにあります。
http://www.slideshare.net/VirtualTech-JP/140204-rdo-quickstart

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
18,863
On Slideshare
0
From Embeds
0
Number of Embeds
7

Actions

Shares
Downloads
208
Comments
0
Likes
11

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. RDOを使ったOpenStack Havana Neutron 構築編 日本仮想化技術株式会社
  • 2. OpenStack構成図 2
  • 3. RDOとは • Red Hatベースプラットフォームで OpenStackを利用するユーザーのた めのコミュニティ • OpenStack環境をクイックインストール • Packstackを利用 • Pythonで書かれている
  • 4. お品書き 1. RHEL系のLinuxをインストール 2. RDOリポジトリーの追加 3. RDOでOpenStackをインストール 4. RDOでOpenStackをカスタムインストール 5. コマンドでOpenStackを設定
  • 5. 事前準備
  • 6. ソフトウェア要件 • Red Hat Enterprise LinuxおよびRHEL 派生OS 6.4以降 • Fedora 19以降
  • 7. ハードウェア要件 • CPU 2Core以上 – VT-x / AMD-V • メモリー4GB以上 • 最低1つのNIC – Privateネットワーク用はloインターフェイスを利 用可能。 • インターネットにアクセスできる環境
  • 8. Linuxのインストール STEP1
  • 9. Linuxをインストール • 次のバージョン以降のOS – RHEL 6.4 – Fedora 19 – CentOS 6.4 – Scientific Linux 6.4 ※本例ではScientific Linux 6.5をインス トールしています。
  • 10. あらかじめ設定 # vi /etc/sysctl.conf #設定を確認 net.ipv4.ip_forward = 1 net.bridge.bridge-nf-call-ip6tables = 0 net.bridge.bridge-nf-call-iptables = 0 net.bridge.bridge-nf-call-arptables = 0 #設定を追記 net.ipv4.conf.all.forwarding = 1 net.ipv4.conf.all.rp_filter = 0 #設定を変更 net.ipv4.conf.default.rp_filter = 0 # sysctl -e -p /etc/sysctl.conf (設定を反映)
  • 11. IPアドレスの固定化 • eth0に固定IPアドレスを割り当て
  • 12. RDOリポジトリーの追加 STEP2
  • 13. リポジトリーの追加 • 公式の手順に従ってコマンドを実行 • アップデートの実施 # yum install -y http://rdo.fedorapeople.org/openstack- havana/rdo-release-havana.rpm # yum -y update
  • 14. パッケージのインストール • Packstackおよび必要パッケージをイン ストール # yum install -y openstack-packstack python- netaddr
  • 15. SELinux • 公式の手順にしたがってオフにします。 • /etc/selinux/configファイル SELINUX=permissiveの設定も行う。 # setenforce 0 # getenforce Permissive
  • 16. RDOでOpenStackをインストール STEP3
  • 17. OpenStackをインストール • インストールするには次のコマンドを 実行するだけ • しばらく待つ • ログインしてみる # packstack --allinone
  • 18. OpenStack ログイン画面
  • 19. Web Interfaceで操作
  • 20. デフォルトの構成 • プライベートネットワーク – 10.0.0.0/24 • パブリックネットワーク – デモ用 – 外部接続不可 • ユーザー – demo – admin
  • 21. RDOでOpenStackをカスタム インストール STEP4
  • 22. カスタムインストールの方法 • packstackはアンサーファイルを用意 することでカスタム可能 • packstackコマンド実行に指定 – カスタム構成でOpenStackが構築できる
  • 23. 実行前に • 必要パッケージがインストール済みか 確認 # rpm -q openstack-packstack openstack-packstack-2013.2.1- 0.29.dev956.el6.noarch
  • 24. アンサーファイルの作成 • packstackコマンドでアンサーファイル を作成 ※アンサーファイルはバージョンによっ て追加があるので使い回す際は注意 # packstack --gen-answer-file=answer.txt (answer.txtという名前のファイルを作成する場合)
  • 25. アンサーファイル例 # vi answer.txt [general] CONFIG_MYSQL_INSTALL=y CONFIG_GLANCE_INSTALL=y CONFIG_CINDER_INSTALL=y CONFIG_NOVA_INSTALL=y CONFIG_NEUTRON_INSTALL=y CONFIG_HORIZON_INSTALL=y CONFIG_SWIFT_INSTALL=y (略) CONFIG_NOVA_COMPUTE_PRIVIF=lo CONFIG_NOVA_NETWORK_PRIVIF=lo CONFIG_NOVA_NETWORK_PUBIF=eth0 CONFIG_KEYSTONE_ADMIN_PW=admin CONFIG_PROVISION_DEMO=n
  • 26. アンサーファイルの編集 • 自分の環境に合わせて修正 • 最低設定するのは – 導入コンポーネント – Private用NIC – Public用NIC – adminユーザーのパスワード
  • 27. OpenStackをインストール • インストールするには次のコマンドを 実行するだけ • しばらく待つ # packstack --answer-file=/root/answers.txt
  • 28. ブリッジの設定 STEP6
  • 29. NICの設定変更 • eth0をpublic用にする • br-ex用のポートとしてeth0を使う • Neutron Pluginの設定 ※具体的な設定は次のスライドで
  • 30. ifcfg-eth0 # vi /etc/sysconfig/network- scripts/ifcfg-eth0 DEVICE=eth0 ONBOOT=yes HWADDR=xx:xx:xx:xx:xx:xx TYPE=OVSPort DEVICETYPE=ovs OVS_BRIDGE=br-ex
  • 31. ifcfg-br-ex # vi /etc/sysconfig/network-scripts/ifcfg- br-ex DEVICE=br-ex ONBOOT=yes DEVICETYPE=ovs TYPE=OVSBridge BOOTPROTO=static IPADDR=192.168.1.140 # Old eth0 IP NETMASK=255.255.255.0 # Your netmask GATEWAY=192.168.1.1 # Your gateway DNS1=8.8.8.8 # DNS Server DNS2=8.8.4.4
  • 32. Neutron Pluginの設定変更 • 以下を追記する • 一旦OpenStackホストを再起動 # vi /etc/neutron/plugin.ini (略) network_vlan_ranges = physnet1 bridge_mappings = physnet1:br-ex
  • 33. ovs-vsctlコマンドで確認 • br-exにeth0が追加されたことを確認 # ovs-vsctl show 016948ac-32eb-4dc3-89bc-81b96a343d06 Bridge br-ex Port phy-br-ex Interface phy-br-ex Port br-ex Interface br-ex type: internal Port "qg-2aaf420a-c9" Interface "qg-2aaf420a-c9" type: internal Port "eth0" Interface "eth0"
  • 34. コマンドでOpenStackを設定 STEP7
  • 35. 実施項目 • OS設定の次は「OpenStack」の設定 1. ルーターを作成 2. ネットワークを作成 3. ネットワークサブネットを作成 4. 外部と内部ネットワークの接続 5. OpenStack利用ユーザーの追加
  • 36. 事前準備 • keystonercを読込む • 設定を確認 [root@openstack]# source keystonerc_admin [root@openstack ~(keystone_admin)]# コマンド 確認できる項目 keystone tenant-list テナント neutron net-list ネットワーク neutron router-list ルーター
  • 37. ルーターの作成 • 次例のように実行 # neutron router-create router1 (router1を作成) # neutron router-list (コマンドを実行して確認)
  • 38. Publicネットワークの作成 • 次例のように登録 • TENANT-IDはkeystone tenant-list コマンドで確認 • 「--router:external=True」オプション で「外部ネットワーク」として登録 # neutron net-create public --tenant-id TENANT-ID --router:external=True # neutron net-list (コマンドを実行して確認)
  • 39. Privateネットワークの作成 • 次例のように登録 • TENANT-IDはkeystone tenant-list コマンドで確認 • 「--shared」オプションで他のユーザーと ネットワークを共有できる # neutron net-create demo-net --tenant-id TENANT-ID --shared # neutron net-list (コマンドを実行して確認)
  • 40. サブネットの登録 • ネットワークにサブネットを登録 # neutron subnet-create --name public_subnet --enable_dhcp=False --allocation- pool=start=192.168.1.241,end=192.168.1.254 -- gateway=192.168.1.1 public 192.168.1.0/24
  • 41. Privateネットワークに追加 • 次の構成でPrivateネットワークにサブ ネットを追加してみよう 項目 設定 名前 demo-net_subnet ネットワーク demo-net DHCP 有効 IPアドレス割り当て範囲 10.0.0.0/24 ゲートウェイ 10.0.0.1 【問題】
  • 42. 正解は • 次例のようにサブネットを登録 ※アロケーションプールはゲートウェイ を考慮すること # neutron subnet-create --name demo- net_subnet --enable_dhcp=True --allocation- pool=start=10.0.0.2,end=10.0.0.254 -- gateway=10.0.0.1 demo-net 10.0.0.0/24
  • 43. ゲートウェイの設定 • 作成したルーター(router1)とパブリッ クネットワークを接続 ※ROUTER-IDはneutron router-listコマンド、 PUBLIC-NETWORK-IDはneutron net-listコマンドで確 認できます。 # neutron router-gateway-set ROUTER-ID PUBLIC-NETWORK-ID
  • 44. 外部と内部ネットワークの接続 • プライベートネットワークを割り当てた インスタンスがFloating IPを割り当て られたときに外に出られるようにする ために「ルーターにインターフェイスの 追加」を行います
  • 45. コマンドの実行 • 次例のように実行 ※ROUTER-IDはneutron router-listコマンド、サブネット はneutron subnet-listコマンドで確認できます。 • 実行例 # neutron router-interface-add b195f4e5-c8f5- 4dbd-b265-14e1736faefb subnet=demo-net_subnet # neutron router-interface-add ROUTER-ID INTERFACE
  • 46. ユーザーの追加 • OpenStackの利用ユーザーを追加 • パラメータは--helpを参照 • テナントはkeystone tenant-listコマンド で確認できる # keystone user-create --name demo --pass demo --tenant services --enabled true
  • 47. コマンドでOpenStackを操作 STEP8
  • 48. 実施項目 1. セキュリティグループの設定 2. インスタンスの起動
  • 49. セキュリティグループの設定 • neutron security-group-listコ マンドで対象を確認 • neutron security-group-rule- createコマンドで定義 # neutron security-group-rule-create --protocol icmp GROUP- ID # neutron security-group-rule-create --protocol tcp --port- range-min FROM-PORT --port-range-max TO-PORT GROUP-ID # neutron security-group-rule-create --protocol udp --port- range-min FROM-PORT --port-range-max TO-PORT GROUP-ID
  • 50. インスタンスの起動 • インスタンス起動に必要な情報を確認 – nova flavor-list – nova image-list – neutron net-list • nova listコマンドでインスタンスの 稼働状況を確認
  • 51. コマンドの実行 • 次例のように実行 • 実行例 # nova boot --flavor FLAVOR-NAME --image IMAGE-NAME --nic net-id=NETWORK-ID VMNAME # nova boot --flavor m1.tiny --image CirrOS-- nic net-id=10af861b-e640-4db8-ad56- a4d398d2b66c VM1
  • 52. Novaの設定変更 STEP9
  • 53. 設定変更のポイント • 仮想化としてQEMUを利用するように 設定される場合がある • 速さはQEMU < KVM • libvirt_typeの設定を確認
  • 54. 対応しているか確認 • Linux KVMに対応しているか確認 # lsmod | grep kvm kvm_intel 54285 6 kvm 332980 1 kvm_intel (Intel CPUの場合) kvm 332980 1 kvm_amd (AMD CPUの場合)
  • 55. nova.conf設定の確認 • libvirt_typeの設定を確認 • 対応ならkvmが選択されているはず # vi /etc/nova/nova.conf (略) libvirt_type=kvm #libvirt_type=qemu (qemuからkvm利用に設定変更)
  • 56. Enjoy! STEP9
  • 57. インスタンスを操作
  • 58. FAQ
  • 59. ステータスの確認について • ステータスを確認するには? ↓ 1. サービスの稼働状況を確認 – lsof , ps ax – nova-manage service list – neutron agent-list など 2. openstack-statusコマンドの実施 – ただし、Fedoraベースで構築した場合はうまく表示 できません
  • 60. サービスが動かない(1) • アップデート後ホストを再起動したとこ ろ、うまく動かなくなりました。 ↓ • カーネルを更新してホストを再起動す るとbr-exがリセットされる • 再度packstackを実行する必要がある
  • 61. サービスが動かない(2) • Fedoraベースで構築したところ、再起 動したら色々なサービスが動かなくな りました ↓ • packstackを再実行すれば復旧? – CentOSやScientific Linuxをオススメします。
  • 62. キーボード関連 • 日本語キーボードが使えない ↓ • コンピュートノードのnova.confに追記 – vnc_keymap=ja と設定 – 「openstack-nova-compute」サービスを再起動 • 日本語キーボードが使えるかどうかはOS 次第 – Cirrosは英語キーマップで利用可 – 多くの場合loadkeys jp106コマンドで利用可
  • 63. パスワード認証したい • こう設定してインスタンスを起動!
  • 64. マルチノード構成にするには • 次の手順を参考に – http://openstack.redhat.com/Adding_a_compute_node • 手動で構築したほうが簡単? – http://www.server- world.info/query?os=CentOS_6&p=openstack_havana &f=10
  • 65. 参考URLなど • RDO Quick Start – http://openstack.redhat.com/Quickstart • RDO Quick Start Neutron – http://openstack.redhat.com/Neutron-Quickstart • Neutronと外部ネットワーク – http://openstack.redhat.com/Neutron_with_existing _external_network • RDO ドキュメント一覧 – http://openstack.redhat.com/Docs