2014年2月22日土曜日

Linux スタティックルート(static route)の設定方法

サーバが複数のネットワークセグメントに接続している場合、デフォルトゲートウェイの設定だけでは正しくアクセスできない場合があります。

インターネットからのアクセスはDMZに、社内からのアクセスはメンテナンスセグメントにルーティングされるようにネットワークインターフェース別にスタティックルートの設定方法を記載します。

routeコマンドだけでは、OS再起動時に設定がクリアされてしまうため、恒久的にルーティング設定を行う方法も記載します。

OS: RedHat EL 6.4(64-bit)


■ネットワーク概要


今回想定しているネットワーク概要は上記図のとおりです。
デフォルトゲートウェイはInternet側を向いています。

■設定前のルーティングテーブル情報

[root@dcf-web-a ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.5.116.0      *               255.255.255.0   U     1      0        0 eth0
10.5.117.0      *               255.255.255.0   U     1      0        0 eth1
default         10.5.116.254    0.0.0.0         UG    0      0        0 eth0
[root@dcf-web-a ~]#
このままだと、たとえば、192.168.xxx.xxxのPCからのアクセスもDMZセグメントに返してしまう。
よって通信できない。

■メンテナンスセグメント側のゲートウェイを設定

[root@dcf-web-a ~]# route add -net 10.0.0.0 gw 10.5.117.254 netmask 255.0.0.0 eth1
[root@dcf-web-a ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.5.116.0      *               255.255.255.0   U     1      0        0 eth0
10.5.117.0      *               255.255.255.0   U     1      0        0 eth1
10.0.0.0        10.5.117.254    255.0.0.0       UG    0      0        0 eth1
default         10.5.116.254    0.0.0.0         UG    0      0        0 eth0
[root@dcf-web-a ~]#
10.0.0.0/8からのネットワークへのルーディング設定を追加してみました。
ゲートウェイを10.5.117.254と想定したが、実は10.5.117.170だった…。
このあたりはそれぞれの環境に応じて設定ください。

■スタティックルートの削除

[root@dcf-web-a ~]# route del -net 10.0.0.0 gw 10.5.117.254 netmask 255.0.0.0 eth1
[root@dcf-web-a ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.5.116.0      *               255.255.255.0   U     1      0        0 eth0
10.5.117.0      *               255.255.255.0   U     1      0        0 eth1
default         10.5.116.254    0.0.0.0         UG    0      0        0 eth0
[root@dcf-web-a ~]#

■改めてメンテナンスセグメント側のゲートウェイを設定

[root@dcf-web-a ~]# route add -net 10.0.0.0 gw 10.5.117.170 netmask 255.0.0.0 eth1
[root@dcf-web-a ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.5.116.0      *               255.255.255.0   U     1      0        0 eth0
10.5.117.0      *               255.255.255.0   U     1      0        0 eth1
10.0.0.0        10.5.117.170    255.0.0.0       UG    0      0        0 eth1
default         10.5.116.254    0.0.0.0         UG    0      0        0 eth0
[root@dcf-web-a ~]#
上記の設定はOS再起動時にはクリアされてしまいます。

■スタティックルート恒久設定

[root@dcf-web-a ~]# vi /etc/sysconfig/network-scripts/route-eth1
[root@dcf-web-a ~]# cat /etc/sysconfig/network-scripts/route-eth1
10.0.0.0/8 via 10.5.117.170
192.168.0.0/16 via 10.5.117.170
[root@dcf-web-a ~]#
route-eth1を手動で作成

■設定反映

[root@dcf-web-a ~]# /etc/init.d/network restart
インターフェース eth0 を終了中:  デバイスの状態: 3 (切断済み)
                                                           [  OK  ]
インターフェース eth1 を終了中:  デバイスの状態: 3 (切断済み)
                                                           [  OK  ]
ループバックインターフェースを終了中                       [  OK  ]
ループバックインターフェイスを呼び込み中                   [  OK  ]
インターフェース eth0 を活性化中:  アクティブ接続の状態: アクティベート済み
アクティブ接続のパス: /org/freedesktop/NetworkManager/ActiveConnection/5
                                                           [  OK  ]
インターフェース eth1 を活性化中:  アクティブ接続の状態: アクティベート済み
アクティブ接続のパス: /org/freedesktop/NetworkManager/ActiveConnection/6
                                                           [  OK  ]
[root@dcf-web-a ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.5.116.0      *               255.255.255.0   U     1      0        0 eth0
10.5.117.0      *               255.255.255.0   U     1      0        0 eth1
192.168.0.0     10.5.117.170    255.255.0.0     UG    0      0        0 eth1
10.0.0.0        10.5.117.170    255.0.0.0       UG    0      0        0 eth1
default         10.5.116.254    0.0.0.0         UG    0      0        0 eth0
[root@dcf-web-a ~]#

OS再起動時も上記設定が反映されます。この情報がお役にたてれば幸いです。

2014年2月16日日曜日

VMware ESXiにOVFテンプレートのデプロイで仮想マシンを作成

VMware ESXiにOVFテンプレートからデプロイして仮想マシンを作成する手順です。
仮想マシン名はデプロイ設定の中で自由に変更することが可能です。

デプロイした仮想マシンはネットワーク関連設定(仮想MACアドレス等)を修正する必要があります。
そのあたりの手順も少し紹介したいと思います。

ESXi: 5.0.0


■OVFテンプレートのエクスポート


■ソース


■OVFテンプレートの詳細


■名前と場所
"centos64-custom" に変更してみました。


■ストレージ


■ディスクのフォーマット
シックプロビジョニング(Lazy Zeroed)
指定したサイズを初めから確保します。仮想ディスク作成時にはゼロで初期化しないため作成時間は短くてすみます。現場では最も多く利用されているタイプです。
シックプロビジョニング(Eager Zeroed)
最初の段階でゼロ初期化を行うので作成には時間がかかります。データをディスクに書き込む際にはゼロで初期化済みなので最もパフォーマンスの良い方式です。
シンプロビジョニング
仮想OSの使用量のみがデータストア上で専有するタイプのフォーマットで容量を節約できます。 

■ネットワークのマッピング


■終了準備の完了


■デプロイ中・・・


■MACアドレスの確認
VI Clientにて仮想マシンを右クリック
デプロイした仮想マシンを起動する前にMACアドレスをメモりましょう。
OSのデバイスファイルを変更する必要があります。


■ネットワーク接続でeth0を選択
GUIがあれば、システム > 設定 > ネットワーク接続
CUIの場合は、/etc/sysconfig/network-scripts/ifcfg-eth0 を修正。


■System eth0 の編集
デバイスのMACアドレスとIPアドレスを修正してください。

以上で、デプロイした仮想マシンを利用できるようになると思います。
その他、必要に応じてホスト名等を変更してください。


OVFテンプレートを利用すると一から仮想マシンを作成する場合に比べ非常に効率的です。
まぁ、AWSのAMI機能には遠く及ばない気もしますが・・・。

こちらの情報が何かのお役に立てましたら幸いです。サイト継続のご協力ありがとうございます。m(_ _)m


2014年2月15日土曜日

VMware ESXi上の仮想マシンをOVFでエクスポート

VMware ESXi上の仮想マシンをOVFでエクスポートする手順です。
OVF(Open Virtualization Format)とは、VMware独自のフォーマットと思われがちですが、
異なる仮想化ソフト同士で仮想マシンのイメージ・ファイルを相互にやりとりできるようにするための
標準フォーマットです。

今回はOSがCentOS6.4で仮想ディスクに16GBを割り当てた仮想マシンをWindows7のPCにOVF
テンプレートでエクスポートしてみます。

ESXi: 5.0.0


■OVFテンプレートのエクスポート
対象の仮想マシンを選択した状態で、画面のメニューを実行してください。


■OVF関連ファイル名を設定
デフォルトで仮想マシン名が表示されますが、変更することも可能です。
OVFテンプレート関連ファイルの保存先も任意に指定できます。


■ダウンロード中・・・
ネットワーク環境やディスク回転速度にもよりますが、今回は約10分程度でダウンロード完了しました。


■OVF関連ファイルのサイズ
仮想マシンに割り当てたサイズは16GBですが、エクスポートされたファイルサイズはそれより小さいです。
今回は約1.7GBでした。仮想マシンの使用済みディスクサイズに関連するようです。
centos64.mf                 (1KB)
centos64.ovf                (6KB)
centos64-disk1.vmdk (1,748,084KB)

次回はOVFテンプレートから仮想マシンをデプロイして作成する手順を記載したいと思います。
こちらの情報が何かのお役に立てましたら幸いです。サイト継続のご協力ありがとうございます。m(_ _)m

2014年2月8日土曜日

ESXi上の仮想マシン起動時にBIOS画面を表示

仮想マシンであっても起動順序の調整等でBIOS画面をいじりたくなる場合が多々、いえ、時々あります。忘れがちなので設定方法のメモを残しておきます。



■仮想マシン起動時にBIOS画面表示
対象の仮想マシンを右クリックして「設定の編集」画面を表示
オプションタブ > 強制的にBIOSセットアップ > 次回仮想マシンの起動時に・・・にチェック

※このチェックは1度きりで外れます。次々回はBIOS画面ではなく普通にOSが起動します。

仮想マシンを起動するとコンソールにBIOS画面が表示されます。


以上です。こちら情報が何かのお役にたてれば幸いです。m(_ _)m

2014年2月7日金曜日

VMware ESXiに直接SSHでログインする方法

以前はサーバルームの鍵を借りて、物理サーバの前まで行って、キーボードとディスプレイをつないで、"unsupported"コマンドなるものを打っていましたが、ESXi 5系からはvSphere ClientでSSHを有効化できるようになったので今さらですがメモを残しておきます。



■vSphere Clientの設定
構成 > ソフトウェア > セキュリティプロファイル > サービス > プロパティ


SSH(停止)を選択してオプションボタン


開始 > OKボタン


SSHが実行中になったことを確認して、OKボタン

以上で設定完了です。


■SSHでログインしてみる
putty等でLinux VMに接続するのと同じようにESXiサーバのIPを指定してSSHログイン。
Using username "root".
Server refused our key
Using keyboard-interactive authentication.
Password:
The time and date of this login have been sent to the system logs.

VMware offers supported, powerful system administration tools.  Please
see www.vmware.com/go/sysadmintools for details.

The ESXi Shell can be disabled by an administrative user. See the
vSphere Security documentation for more information.
~ # pwd
/
~ # ls -l
lrwxrwxrwx   1 root   root       49 Feb 10 13:31 altbootbank -> /vmfs/volumes/56a9157c-ead5c024-c408-3aff00d6f9ce
drwxr-xr-x   1 root   root      512 Feb 10 13:30 bin
lrwxrwxrwx   1 root   root       49 Feb 10 13:31 bootbank -> /vmfs/volumes/6f9e437d-5e7ca139-8701-cb7a8ae27e15
drwxr-xr-x   1 root   root      512 Feb 10 13:52 dev
drwxr-xr-x   1 root   root      512 Feb 10 13:49 etc
drwxr-xr-x   1 root   root      512 Feb 10 13:30 lib
drwxr-xr-x   1 root   root      512 Feb 10 13:30 lib32
drwxr-xr-x   1 root   root      512 Feb 10 13:30 lib64
-r-x------   1 root   root    13884 Apr 30 21:16 local.tgz
lrwxrwxrwx   1 root   root        6 Feb 10 13:31 locker -> /store
drwxr-xr-x   1 root   root      512 Feb 10 13:30 opt
drwxr-xr-x   1 root   root   131072 Feb 10 13:52 proc
lrwxrwxrwx   1 root   root       23 Feb 10 13:31 productLocker -> /locker/packages/5.0.0/
drwxr-xr-x   1 root   root      512 Feb 10 13:30 sbin
lrwxrwxrwx   1 root   root       49 Feb 10 13:31 scratch -> /vmfs/volumes/4fa9b24f-cd223c10-7347-3c4a927216ed
lrwxrwxrwx   1 root   root       49 Feb 10 13:31 store -> /vmfs/volumes/2dc678ef-40e5d96b-90bf-855aab9c5547
drwxr-xr-x   1 root   root      512 Feb 10 13:30 tardisks
drwxrwxrwt   1 root   root      512 Feb 10 13:43 tmp
drwxr-xr-x   1 root   root      512 Feb 10 13:30 usr
drwxr-xr-x   1 root   root      512 Feb 10 13:31 var
drwxr-xr-x   1 root   root      512 Feb 10 13:30 vmfs
drwxr-xr-x   1 root   root      512 Feb 10 13:30 vmimages
lrwxrwxrwx   1 root   root       18 Feb 17  2012 vmupgrade -> /locker/vmupgrade/


こちら情報が何かのお役にたてれば幸いです。m(_ _)m