パブリッククラウド(GCP)でEVE-NGを使う
EVE-NGはパブリッククラウドとしてGCP上のインスタンスへインストールして利用することが公式にサポートされています。今回はEVE-NGをGCP上で使うメリットや、インストールする手順について紹介したいと思います。
GCPで利用するメリット
GCPを利用するメリットとはなんでしょうか。前回の記事でVMware環境でのインストール手順について紹介しましたが、OVFファイルをDownloadして仮想マシン上に展開するだけなので、非常に簡単にセットアップを行うことが可能です。そう、これだけだと「オンプレでいいじゃん」ということになります。
しかし大前提として何かしらなVM環境が動くコンピュートリソースが必要です。手持ちのPCでも動くには動きますが、仮想ノードも機種によってはそれなりのスペックが必要です。先日手持ちのMacbook ProのVM fusion上でNexus9000vを動かしましたら歯車がクルクル回って操作できなくなりました。。
サーバにESXiを載せれば十分にEVE-NGを動かすことができるのですが、自由に利用できるサーバをお持ちでない方や、外部からEVE-NGの環境にリモートアクセスできない方もいらっしゃるかと思います。
そんなときにはGCPがオススメです。
あとパプリッククラウドにふれる機会がこれまでなかった方にとっては、パブリッククラウドってこんな感じなんだと勉強になったりもします。しかしデメリットとしては、使った分だけお金がかかることです。しかしGCPは初回登録時に300$相当の無料クレジット枠が付いてきます。
8 vCPUのインスタンスまでこの無料クレジットの対象のようです。8 vCPUあれば、それなりの大きい仮想環境を組むことができます。そして使う時にインスタンス起動、使わないときは停止(家の電気と同じですね)ってことをしていれてば、半年以上は無料で利用できると思います(無料の内容についてはこちらからご確認いただければ。アフィリエイトとかではありません笑)。
GCPを利用するにはもちろんGCPアカウントがあることが前提です。まだ登録されていない方は、無料クレジットもありますのでこの機会に登録をしてみましょう(クレジットカードの登録が必要です)。少し前置きが長くなりましたが、それではGCPへEVE-NGをインストールしていきましょう。
GCPへのインストール手順
まずはじめに公式サイトより、インストール手順をご紹介します。
公式ホームページのTOPメニューより“Documentation" -> “Installation" -> ”Google Cloud Install"に、GCP向けインストール手順のドキュメントページがあります。
GCPとなる”Google Cloud Install"以外にも、“Bare Install"はベアメタルサーバ向け、“Virtual Machine Install"はESXi, VMware Workstation向けの公式インストール手順をここから確認できます。
それではGCPでプロジェクトを作成して、”Google Cloud Install"のインストールを進めます。
プロジェクトの作成
まずGCPにログインして、新しいプロジェクトを作成します。名前は公式手順通り”EVE-NG”とします。
インスタンスとカスタムイメージの作成
作成したプロジェクトを選択。
次にEVE-NG用のVMインスタンスを作成します。メニューからVMインスンスを選択。
ここで作成をクリック。
インスタンス作成の画面となりますが、右上のCloud ShellボタンをクリックしてCloud Shell(テンポラリのシェル環境)を開き、ここからイメージを作成しましょう。
Cloud Shell上で以下のコマンドを入力します。「enable-vmx」ライセンスキーを使用し、仮想化を有効にしたUbuntuベースのカスタムイメージを作成します。
gcloud compute images create nested-ubuntu-xenial --source-image-family=ubuntu-1604-lts --source-image-project=ubuntu-os-cloud --licenses https://www.googleapis.com/compute/v1/projects/vm-options/global/licenses/enable-vmx
インスタンス作成画面に戻り、名前、リージョン、マシンタイプを設定していきます。ここでは東京リージョンで、n1-standard-8( 8vCPU, 30GBメモリ)を設定しています。
次に先ほど作成したカスタムイメージを選択します。まず以下のブートディスクで変更ボタンを押します。
ブートディスク画面からカスタムイメージを選択すると、先ほど作成したカスタムイメージ"neted-ubuntu-xenial"があるので選択。
ページ下部にディスク容量のボックスがあるので、ディスク容量を設定して選択ボタンを押しましょう。ここでは公式手順通り"100G"に変更しています。
再度インスタンス作成画面に戻りまして、ファイアウォール としてHTTPとHTTPSを許可(コミュニティバージョンのデフォルトはHTTPでのアクセスとなります)。そして作成ボタンを押します。
これでインスタンスが作成されます。また、同時に外部IPアドレスが割り当てられます。
EVE-NGのインストール
ここからインスタンスにEVE-NGをインストールしていきます。
外部IPアドレスの隣にある”SSH”ボタンを押して、インスタンスにSSHアクセスしましょう。
SSHセッションよりコマンドを入力していきます。公式手順にはPRO版とコミュニティ版で手順が分かれていますので、以下コミュニティ版の手順のみ抜粋しています。
#Step 2: Launch installation with 2.1 or 2.2:
sudo -i
#2.2 For EVE-NG Community start EVE-NG Community installation
wget -O - http://www.eve-ng.net/repo/install-eve.sh | bash -i
#Step 3: Update and upgrade your new EVE-NG
apt update
apt upgrade
#Step 4: Reboot EVE. Allow some time for reboot and then press “Reconnect”
reboot
reboot後にもう一度 SSHで再接続すると、以下のようなIP設定のウィザードが表示されます。
ここで一旦Press ctrl +c で抜けて、
sudo -i
でrootになると、また先ほどのIP設定ウィザードに戻ります。
そして、はじめに出てくる"Type the Root Passowrd"は、便宜上" eve" にしておきます。
あとは適当にエンターで飛ばしながらウィザードを進めてください。IP設定でDHCP(デフォルト)を選択されていることだけは注意してください。
設定が終わるとSSHが切断されますので、少し時間をおいてからSSHで再接続できることだけ確認しましょう。
これでインストールは完了です。
GCPインスタンスの外部IPを確認し、ブラウザ上で「http://外部IPアドレス」でアクセスすると、EVE-NGのログイン画面が表示されるはずです(デフォルトアカウントはadmin/eve)。
ファイアウォールルールの設定
さて、まだ設定作業が少し残っています。
ノードのtelnetやvncのためにファイアウォールの穴あけ設定を行いましょう。該当プロジェクトを選択した状態から、メニューよりVPCネットワークー>ファイアウォールルールを選択します。
ファイアウォールを作成をクリックしましょう。
まず上がりトラフィック向けの設定となります。
次に下りトラフィック向けの設定となります(下りはデフォルト全て許可なはずなので、念のための設定でしょう)。
上記エントリ入力後、ファイアウォールルール画面上に以下エントリが追加されているはずです。
これで全体の設定作業が完了です。
残りの作業は
さてEVE-NGにアクセスできるようになったところで、あとはクライアント側のセットアップと、仮想ノードのイメージ入手、追加、実際に仮想ノードを動かす手順についてはこちらをご参照ください。