20131230_CloudStack Advent Calendar VPCを作ってみよう
Upcoming SlideShare
Loading in...5
×
 

20131230_CloudStack Advent Calendar VPCを作ってみよう

on

  • 1,491 views

2013年 CloudStack Advent Calendar の12月30日分です (・∀・) (http://atnd.org/events/45595) ...

2013年 CloudStack Advent Calendar の12月30日分です (・∀・) (http://atnd.org/events/45595)

NTTコミュニケーションズのクラウド・エヌとさくらクラウドを使って、CloudStackでVPC環境を簡単に構築する方法をご紹介します

Statistics

Views

Total Views
1,491
Views on SlideShare
1,477
Embed Views
14

Actions

Likes
2
Downloads
13
Comments
0

1 Embed 14

https://twitter.com 14

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

20131230_CloudStack Advent Calendar VPCを作ってみよう 20131230_CloudStack Advent Calendar VPCを作ってみよう Presentation Transcript

  • CloudStack Advent Calendar 2013 VPCを作ってみよう 2013/12/30
  • わたし 大削 緑/Midori Oge みろりん @star76popin ☆某SI会社 → 某通信事業者 → NTTコミュニケーションズで の開発を担当しています ☆こんな記事を書いてます オープンソースの「クラウド基盤ソフトウェア」を比較する【第1回】 機能を徹底比較! ∼Eucalyptus、CloudStack、OpenStack オープンソースの「クラウド基盤ソフトウェア」を比較する【第2回】 【徹底比較】Eucalyptus、CloudStack、OpenStackの仮想マシン性能 ☆いろんなユーザ会にいます @副会長
  • CloudStack実践ガイド インプレスR&D社より 絶賛発売中 前 編 1. 2. 3. 4. ! 後 編 5. 6. 7. 8. 9. CloudStackってなぁに? CloudStackのしくみ つくってみよう: CloudStackのインストール つかってみよう: CloudStackの基本操作 もっとつかってみよう1: APIでもっと便利 もっとつかってみよう2: 自分だけのテンプレートを作ろう もっとつかってみよう3: Virtual Private Cloud(VPC)を使おう あたらしい機能たち I♡CloudStack CloudStackの青本登場!
  • CloudStack ユーザ会 これまで 勉強会 ラジオ出演 AdventCalendar2012 翻訳会 19 11 その他イベント 回 読書会 1ヶ月で27の ブログ記事を公開 回 この他にも多数のイベントを予定しています
  • 今日のテーマ V・P・C! (・∀・)b
  • VPCってなぁに? ★VPCとは ユーザがCloudStack上に独自のクラウドを構築できる機能 CloudStack ユーザAのVPC サブネット … サブネット … ユーザBのVPC サブネット … サブネット … ・ユーザ側で使いたいIP空間(VPC) を作成できる ! ・VPCにユーザがサブネットを 切ることができる ! ・サブネット単位で アクセスリストが設定できる
  • VPCで何ができるの? ・別ロケーション(オンプレミスやデータセンタなど) とのハイブリッド環境を簡単に構築できる → VPCがユーザ環境の一部にみえるため、 社内システムやソフトウェアの移行が簡単に! → 既存の環境を、IPアドレス体系を変更することなく CloudStackに移行できる! ユーザ環境 VPC R
  • VPCで何ができるの? ・柔軟なネットワークの設定が可能 → サブネットワーク単位で外部からの アクセスコントロールが可能なため、 用途をわけられる! VPC サブネット1 ◯ Web http ◯ × サブネット2 一般ユーザ VPN ◯ Application/DB 開発担当者 ◯ ◯ VPN 運用担当者
  • 作ってみよう NTTコミュニケーションズの 「クラウド・エヌ Compute(VPCタイプ OpenNW)」※ を使って、簡単にVPC環境を構築してみましょう♪ ※ を基盤に採用しています
  • 基本的な構成 例えばこんな感じ! 擬似ローカル環境 VPC(VPC-test) Subnet1 192.168.0.0/16 172.16.200.0/24 DHCP 192.168.100.0/24 153.146.159.210 VM 192.168.100.72 Internet VPN GW VPN 133.242.48.93 Vyatta 172.16.200.10 VM HUB 172.16.200.50 CloudStack VPC とローカル環境のルータをVPNで接続! 2つのネットワークを繋いでみよう(^^♪
  • つくりかた 1. 2. 3. 4. 5. 6. 7. VPCを作成 サブネットを作成 インスタンスを作成 VPNゲートウェイを作成 VPNカスタマーゲートウェイを作成 VPN接続 接続確認
  • まずはローカル環境を 用意しよう
  • ローカル環境の用意 今回は、ローカルの擬似環境 として、さくらクラウドを 使用しました。 (VPNがはれるルータとサーバ があれば何でもOK!) ありがとう 桜葉愛ちゃん 擬似ローカル環境 172.16.200.0/24 DHCP 133.242.48.93 Vyatta 172.16.200.10 HUB VM 172.16.200.50 ・VM×2 - Vyatta6.5 + NIC追加 - Ubuntu12.04.3 ・仮想Switch ×1
  • ローカル環境の用意 さくらクラウドのコントロールパネル vyattaサーバを作ります Vyatta を選択
  • ローカル環境の用意 さくらクラウドのコントロールパネル
  • ローカル環境の用意 さくらクラウドのコントロールパネル 正常にvyattaサーバが作成されているのを確認し、 サーバをシャットダウンします
  • ローカル環境の用意 さくらクラウドのコントロールパネル サーバをシャットダウンしている間に、 スイッチを追加します。
  • ローカル環境の用意 さくらクラウドのコントロールパネル 停止したvyattaサーバで NICを追加します 「接続を編集」をクリック
  • ローカル環境の用意 さくらクラウドのコントロールパネル スイッチに接続します
  • ローカル環境の用意 さくらクラウドのコントロールパネル サーバを起動して、コンソール画面を表示します sshd を起動します
  • ローカル環境の用意 さくらクラウドのコントロールパネル 今度はVMを作ります
  • ローカル環境の用意 さくらクラウドのコントロールパネル 「スイッチに接続」を選択
  • ローカル環境の用意 Vyattaの設定 $ show interfaces Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down Interface IP Address S/L Description -------------------- ----------- eth0 133.242.48.93/24 u/u eth1 u/u lo 127.0.0.1/8 u/u ::1/128 インタフェース の設定確認 ! $ configure # set interfaces ethernet eth1 address 172.16.200.10/24 eth1にアドレスを付与 ! $ show interfaces Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down Interface IP Address S/L Description -------------------- ----------- eth0 133.242.48.93/24 u/u eth1 172.16.200.10/24 u/u lo 127.0.0.1/8 u/u ::1/128
  • ローカル環境の用意 Vyattaの設定 $ configure ! # # # # # # # DHCPサーバの設定 edit service dhcp-server shared-network-name m-private set subnet 172.16.200.0/24 default-router 172.16.200.10 set subnet 172.16.200.0/24 dns-server 133.242.0.3 set subnet 172.16.200.0/24 dns-server 133.242.0.4 set subnet 172.16.200.0/24 start 172.16.200.100 stop 172.16.200.200 set subnet 172.16.200.0/24 static-mapping server01 ip-address 172.16.200.50 set subnet 172.16.200.0/24 static-mapping server01 mac-address 9C:A3:BA:21:2D:BB ※ ! # exit ※コントロールパネルで設定済みの場合は省略可 MAC Addressはコントロールパネルから確認できます
  • ローカル環境の用意 Vyattaの設定 # set vpn ipsec ipsec-interfaces interface eth0 ! # # # # # # # set set set set set set set vpn vpn vpn vpn vpn vpn vpn ipsec ipsec ipsec ipsec ipsec ipsec ipsec ike-group ike-group ike-group ike-group ike-group ike-group ike-group IKE-POLICY IKE-POLICY IKE-POLICY IKE-POLICY IKE-POLICY IKE-POLICY IKE-POLICY lifetime proposal proposal proposal proposal proposal proposal '86400' 1 encryption 'aes256' 1 hash 'sha1' 1 dh-group '2' 2 encryption '3des' 2 hash 'md5' 2 dh-group '2' # # # # # set set set set set vpn vpn vpn vpn vpn ipsec ipsec ipsec ipsec ipsec esp-group esp-group esp-group esp-group esp-group ESP-POLICY ESP-POLICY ESP-POLICY ESP-POLICY ESP-POLICY lifetime proposal proposal proposal proposal '3600' 1 encryption 'aes256' 1 hash 'sha1' 2 encryption '3des' 2 hash 'md5' ! ! # commit # exit IKEグループの 設定 ESPグループの 設定
  • 1.VPCを作成 擬似ローカル環境 VPC(VPC-test) 192.168.0.0/16 172.16.200.0/24 DHCP 133.242.48.93 Vyatta HUB 172.16.200.10 Cloudnに「VPC-test」という名前のVPCを作成します (192.168.0.0/16) VM 172.16.200.50
  • 2.VPCを作成
  • 3.サブネットを作成 VPCが作成された
  • 3.サブネットを作成 擬似ローカル環境 VPC(VPC-test) Subnet1 192.168.0.0/16 172.16.200.0/24 DHCP 192.168.100.0/24 133.242.48.93 Vyatta 172.16.200.10 作成したVPCの中に、「Subnet1」という名前の サブネットワークを作ります(192.168.100.0/24) サブネットワークのアドレスレンジは、 VPCのCIDRの範囲内である必要があります HUB VM 172.16.200.50
  • 3.サブネットを作成
  • 4.インスタンスを作成 擬似ローカル環境 VPC(VPC-test) Subnet1 192.168.0.0/16 172.16.200.0/24 DHCP 192.168.100.0/24 133.242.48.93 VM 192.168.100.72 Vyatta 172.16.200.10 HUB VM 172.16.200.50 作成したサブネットワークの中に、インスタンスを作ります
  • 4.インスタンスを作成 クリック
  • 4.インスタンスを作成
  • 4.インスタンスを作成
  • 4.インスタンスを作成
  • 4.インスタンスを作成
  • 4.インスタンスを作成
  • 4.インスタンスを作成
  • 4.インスタンスを作成
  • 5.VPNゲートウェイを作成 擬似ローカル環境 VPC(VPC-test) Subnet1 192.168.0.0/16 172.16.200.0/24 DHCP 192.168.100.0/24 153.146.159.210 VM 192.168.100.72 133.242.48.93 VPN GW Vyatta 172.16.200.10 HUB VM 172.16.200.50 Cloudn側のVPNの終端となる「VPNゲートウェイ」を作成します
  • 5.VPNゲートウェイを作成 「SITE-TO-SITE VPNS」をクリック
  • 5.VPNゲートウェイを作成 VPNゲートウェイができた
  • 5.VPNゲートウェイを作成 Vyattaの設定 $ configure ! set set set set set set set vpn vpn vpn vpn vpn vpn vpn ipsec ipsec ipsec ipsec ipsec ipsec ipsec site-to-site site-to-site site-to-site site-to-site site-to-site site-to-site site-to-site peer peer peer peer peer peer peer 153.146.159.210 153.146.159.210 153.146.159.210 153.146.159.210 153.146.159.210 153.146.159.210 153.146.159.210 authentication mode pre-shared-secret authentication pre-shared-secret vpnkey ike-group IKE-POLICY default-esp-group ESP-POLICY local-address 133.242.48.93 tunnel 1 local prefix 172.16.200.0/24 tunnel 1 remote prefix 192.168.0.0/16 vyattaサーバにVPNの設定をします
  • 6.VPNカスタマーゲートウェイを作成 擬似ローカル環境 VPC(VPC-test) Subnet1 192.168.0.0/16 172.16.200.0/24 DHCP 192.168.100.0/24 153.146.159.210 VM 192.168.100.72 133.242.48.93 VPN GW Vyatta 172.16.200.10 HUB VM 172.16.200.50 ローカル側のVPN終端となる「VPNカスタマーゲートウェイ」を 設定します
  • 6.VPNカスタマーゲートウェイを作成 「VPNカスタマーゲートウェイ」をクリック 鍵共有アルゴリズムの強度は グループ2と5が使えます
  • 6.VPNカスタマーゲートウェイを作成 VPNカスタマーゲートウェイができた
  • 7.VPN接続 擬似ローカル環境 VPC(VPC-test) Subnet1 192.168.0.0/16 172.16.200.0/24 DHCP 192.168.100.0/24 153.146.159.210 VM 192.168.100.72 VPN GW Internet VPN Cloudn側からVPNをはります 133.242.48.93 Vyatta 172.16.200.10 HUB VM 172.16.200.50
  • 7.VPN接続 「SITE-TO-SITE VPNS」をクリック
  • 7.VPN接続 「VPN接続」をクリック
  • 7.VPN接続 VPN接続ができた
  • 8.接続確認 # run show vpn ike sa Peer ID / IP -----------153.146.159.210 ! ! ! State ----up Encrypt ------aes256 Hash ---sha1 Local ID / IP ------------- 133.242.48.93 D-H Grp ------2 # run show vpn ipsec sa Peer ID / IP -----------153.146.159.210 ! Tunnel -----1 State ----up Bytes Out/In ------------0.0/0.0 NAT-T ----no A-Time -----1028 L-Time ------ 86400 Local ID / IP ------------- 133.242.48.93 Encrypt ------aes256 Hash ---sha1 NAT-T ----no A-Time -----937 L-Time -----3600 Proto ----- all
  • 8.接続確認 vyatta→Cloudn $ ping -c 3 192.168.100.72 PING 192.168.100.72 (192.168.100.72) 56(84) bytes of data. 64 bytes from 192.168.100.72: icmp_req=1 ttl=62 time=22.9 ms 64 bytes from 192.168.100.72: icmp_req=2 ttl=62 time=22.3 ms 64 bytes from 192.168.100.72: icmp_req=3 ttl=62 time=22.1 ms ! --- 192.168.100.72 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2002ms rtt min/avg/max/mdev = 22.139/22.481/22.991/0.367 ms ! $ ssh cloudn@192.168.100.72 cloudn@192.168.100.72's password: Welcome to Ubuntu 12.10 (GNU/Linux 3.5.0-17-generic x86_64) ! ! ! ! ! * Documentation: https://help.ubuntu.com/ System information as of Mon Dec 30 21:08:08 JST 2013 System load: Usage of /: Memory usage: Swap usage: 0.07 8.3% of 12.51GB 2% 0% Processes: 70 Users logged in: 1 IP address for eth0: 192.168.100.72 Graph this data and manage this system at https://landscape.canonical.com/ Last login: Mon Dec 30 21:07:57 2013 from 172.16.200.50
  • 8.接続確認 Cloudn→ローカル $ ping -c 3 172.16.200.50 PING 172.16.200.50 (172.16.200.50) 56(84) bytes of data. 64 bytes from 172.16.200.50: icmp_req=1 ttl=62 time=22.5 ms 64 bytes from 172.16.200.50: icmp_req=2 ttl=62 time=22.1 ms 64 bytes from 172.16.200.50: icmp_req=3 ttl=62 time=22.2 ms ! --- 172.16.200.50 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2003ms rtt min/avg/max/mdev = 22.176/22.309/22.515/0.226 ms ! $ ssh ubuntu@172.16.200.50 ubuntu@172.16.200.50's password: Welcome to Ubuntu 12.04.3 LTS (GNU/Linux 3.8.0-29-generic x86_64) ! ! ! ! ! * Documentation: https://help.ubuntu.com/ System information as of Mon Dec 30 21:04:26 JST 2013 System load: Usage of /: Memory usage: Swap usage: 0.0 5.8% of 17.73GB 6% 0% Processes: 84 Users logged in: 1 IP address for eth0: 172.16.200.50 Graph this data and manage this system at https://landscape.canonical.com/ Last login: Mon Dec 30 21:03:57 2013 from 192.168.100.72
  • 応用例1 CloudnのVPNゲートウェイをHUBにするパターン 擬似ローカル環境 VPC(VPC-test) Subnet1 192.168.0.0/16 172.16.200.0/24 DHCP 192.168.100.0/24 153.146.159.210 VM VPN GW 133.242.48.93 VPN Vyatta Internet 192.168.100.72 VPN 172.16.200.10 133.242.54.62 Vyatta 172.16.210.10 HUB VM 172.16.200.50 172.16.210.0/24 DHCP VM 172.16.210.50 対地となる環境をもう1セット用意します (VMは同じものを使ってNICを足してもOK)
  • 応用例1 VPN接続 VPNカスタマーゲートウェイを作って VPN接続! VPN接続が できた
  • 応用例2 Cloudnで複数サブネットを持つ構成 VPC(VPC-test) Subnet1 192.168.0.0/16 192.168.100.0/24 153.146.160.108 R VM 192.168.100.72 ◯ Private ◯ Internet × 192.168.200.0/24 VM 192.168.200.4 柔軟なセキュリティ設定が可能 ※注意 2013年12月30日現在で は、CloudnにおいてACL のルール設定はできな い仕様となっています。 以下は、参考まで
  • 応用例2 Cloudnで複数サブネットを持つ構成 VPC(VPC-test) Subnet1 192.168.0.0/16 (1)Global IPの追加 192.168.100.0/24 153.146.160.108 VM 192.168.100.72 ◯ Private (2)ポート 転送 R ◯ Internet × 192.168.200.0/24 ACL※ VM 192.168.200.4 ※ACLは「Private」サブネットを作る前に 作成しておく必要があります あとでACLの変更はできない (ルールの追加削除は可能)ので注意! 柔軟なセキュリティ設定が可能
  • 応用例2 ※ACLの設定 「NETWORK ACL LISTS」をクリック
  • 応用例2 ※ACLの設定 「Add ACL LISTS」をクリック デフォルトでは「default_allow」「default_deny」の2つが用意されている ACLが追加された
  • 応用例2 ※ACLの設定 サブネット「Subnet1」のアドレスからくるパケット(Port22とICMP)のみ許可
  • 応用例2 Cloudnで複数サブネットを持つ構成 VPC(VPC-test) Subnet1 192.168.0.0/16 (1)Global IPの追加 192.168.100.0/24 153.146.160.108 VM 192.168.100.72 ◯ Private (2)ポート 転送 R ◯ Internet × 192.168.200.0/24 ACL※ VM 192.168.200.4 ※ACLは「Private」サブネットを作る前に 作成しておく必要があります あとでACLの変更はできない (ルールの追加削除は可能)ので注意! 柔軟なセキュリティ設定が可能
  • 応用例2 (1)Global IPの追加 「新しいIPアドレスの取得」 IPアドレスが追加された
  • 応用例2 (2)ポート転送 「構成」タブ
  • 応用例2 (2)ポート転送 ルールを追加する 例) →2222番ポートにきたパケットをVM「mvm-pri」の22番ポートに転送 →80番ポートにきたパケットをVM「mvm-pri2」の80番ポートに転送 など
  • 来年もどうぞよろしくね