複数のブロックストレージを同一ディレクトリにアタッチしてみよう

mex_icon

こんにちは。メックスです。大分蒸し暑くなってきましたね。暑くなってくると、臭いのエチケットが気になってきますね。普段から汗をかいていると、老廃物の循環があるので比較的抑えられるそうですよ。ブンブンメガトンパンチを振り回してどんどん汗をかきましょう!

さて、今回はGMOアプリクラウドで提供中のブロックストレージについての情報をお届け致します。ブロックストレージは、仮想サーバーにディスク領域を追加したい場合に利用する外部ディスクになります。(詳しくはこちらをご覧下さい。)

ブロックストレージは、必要なIOPSに応じてスペックを選択可能であり、かつディスク容量においても100GB、200GB、300GB、400GB、500GBの5種類のサイズからお選び頂けます。一つの仮想サーバーに対して3つまでアタッチする事が出来ますので、最大1.5TBのストレージを増やす事が可能です。

ブロックストレージは、コントロールパネルからのお申し込み後、任意のファイルシステムにフォーマットし、任意のディレクトリにマウントして使用します。 基本的には1つのディレクトリに対して1つのブロックストレージしかマウントできない為、3つのブロックストレージをそれぞれマウントしていくと、3箇所のマウントポイントが出来ることになります。アプリケーション側の設定でデータの参照や格納する際に、別々のディレクトリを参照する必要が出てきますので、設定が煩雑になってしまう事があります。その解決策として、複数のマウントポイントを一つにまとめる方法をお届けしたいと思います。

今回は、LVM(Logical Volume Manager)を使っての実装を記述します。LVMの詳しい説明は、他のサイトで沢山展開されていますのでここでの詳細は割愛させて頂きますが、「複数のディスクを仮想的に統合し、1つのディスクとして扱えるシステム」とお考え下さい。Linuxを含むUnixで広く利用されている機能です。

以下、今回の記述する環境です。尚、本記事は検証の上で記述致しておりますが、無保証となりますのでご理解をお願い致します。


仮想サーバータイプ N-0102

OS CentOS 6.7

ブロックストレージ 1000IOPS 500G *3


コントロールパネル(or API)経由で仮想サーバーは作成済みであり、かつブロックストレージが3つとも仮想サーバーにアタッチされている状態から記述致します。

以下手順となります。


①ディスクが認識されているか状況の確認

②PV(物理ボリューム)の作成

③VG(ボリュームグループ)の作成

④LV(論理ボリューム)の作成

⑤LV(論理ボリューム)のフォーマット、マウント


 

 

①ディスクが認識されているか状況の確認

# df -h

LVM8

df -hでディスク領域を確認してみると、コントロールパネルからブロックストレージをアタッチしただけの状態では、マウントされていない事が分かります。

# lsblk -l

LVM1

lsblk -lで、追加したブロックストレージがデバイスとして認識されているか確認する事が出来ます。どうやらアタッチは無事に出来ているようです。それぞれ、/dev/vdb  /dev/vdc  /dev/vdd というディスク名で認識されている事が確認出来ます。

②PV(物理ボリューム)の作成

# pvcreate /dev/vdb /dev/vdc /dev/vdd

LVM2

まずは、先程確認したディスク情報を元にPV(物理ボリューム)を作成します。pvcreate の引数に①で確認したディスク名を与えて実行します。成功すると、上記のようにsuccessfully createdと戻り値がきます。

# pvdisplay

LVM3

pvdisplayを入力しますと、PVの一覧を確認する事が出来ます。

③VG(ボリュームグループ)の作成

# vgcreate appPVgroup01 /dev/vdb /dev/vdc /dev/vdd

LVM4

続きまして、3つのPVをまとめたVG(ボリュームグループ)を作成します。VGを作成するには、vgcreateにVG名、PV名を引数として与え、実行します。上記のコマンド内のappPVgoroup01 は名前付けです。、VGに’appPVgroup01’という名称をつける事が出来ます。’appPVgroup01’の部分は任意となりますので、判断しやすい名称をつけて下さい。PV名は②で確認した通り入力して下さい。成功すると、上記のようにsuccessfully createdと戻り値がきます。

# vgdisplay

LVM5

VGdisplayを入力しますと、VGの一覧を確認する事が出来ます。約1.5Tの巨大なVGが出来ている事が確認出来ます。

④LV(論理ボリューム)の作成

# lvcreate -l 100%FREE -n applv appPVgroup01

LVM6

③で作成したVGからLV(論理ボリューム)を作成します。作成コマンドはlvcreateです。 -l 100%FREE と引数を渡す事で、指定したVGのボリューム全域を使用したLVを作成出来ます。また、-n applv と引数を渡す事で、LVに’applv’という名称をつける事が出来ます。’applv’の部分は任意になりますので、判断しやすい名称をつけて下さい。最後のappPVgroup01はVGの名称です。成功すると、createdと戻り値が来ます。

# lvdisplay

LVM7

lvdisplayを入力しますと、LVの一覧を確認する事が出来ます。

⑤LV(論理ボリューム)のフォーマット、マウント

# mkfs -t ext4 /dev/appPVgroup01/applv

LVM9

ここまで来たら、あとはブロックストレージをVMで使用する手順と一緒です。mkfsコマンドでフォーマットします。今回はCentOS6.7の環境下なので、デフォルトファイルシステムであるext4を指定します。LVの名称は④で確認した通りです。

# mount /dev/appPVgroup01/applv /mnt


LVM10

フォーマットが完了しましたら、mountコマンドで、任意のディレクトリにマウントします。今回は/mntにマウントしています。引数は、mount  ‘LV名’  ‘ディレクトリ名’の順番となりますのでご注意下さい。

# df -h

LVM11

mountが成功した場合、戻り値がありませんので本当に出来たのか実感が沸きませんが、df -hで確認すると、しっかりシステムからディスク領域として認識されている事が分かります。起動時にマウントをされたい場合は、別途 /etc/fstab にて自動マウントもご設定下さい。

※ストレージのフォーマット、マウントに関しましては、アプリクラウドの「ご利用ガイド」もご参照になさって下さい。

コントロールパネルログイン→ドキュメント→ご利用ガイド

以上となります。最初から大きなストレージが必要となる事が分かっている時は、LVMとブロックストレージを組み合わせる事で非常に便利にお使い頂けます。是非ご活用下さい。

カテゴリー: GMOアプリクラウド サービス・機能 | タグ: | 複数のブロックストレージを同一ディレクトリにアタッチしてみよう はコメントを受け付けていません。

Photon Serverをスケールアウトしてみよう

mex_icon

皆さんこんにちは。メックスです。メガトンパンチ、皆さんも撃てるようになりましたか?上手くいかない方、足の位置に注意してみてください。利き手と逆側の足を前に出し、重心を下のほうに持ってくる事を意識しながら、膝→腰→肩→腕の順番を意識してパンチしてみましょう。きっと素敵なフォームになるはずです。最初のうちは威力を出すことよりも傍目にカッコいいフォームになっているかどうかを意識すると良いかも知れません。

今回はPhoton Serverのスケールアウトについて、お届けさせて頂きます。

logo_GAC_Photon

Photon Serverは、1台のMasterServerに対し、複数台のGameServerがバランシングされている構成が一般的です。

kousei1

MasterServerはロビーの機能を果たし、GameServerに対するバランシングを行います。GameServerはルームの機能を果たします。

GameServerがどれぐらいの負荷に耐えられるか、という目安としては以下の通りとなります。

4vCPU/メモリ4GB
200メッセージ/秒  2000CCU(同時接続ユーザー数)

※あくまで参考値です。ご利用の際は負荷テストを実施の上、測定頂くことを推奨致しております。

サービスの規模に併せて、GameServerのスケールアウト(=VM数の増設)を行って頂く必要があります。クラウドサービス(Iaas)の大きなメリットとして、スケールアウトを行いやすい事が挙げられます。クラウドサービスのスケールアウトは、VMのイメージを作成し、新規VMとして展開する方法が一般的です。

GMOアプリクラウドでイメージ保存を行いますと、Linuxはbootディスク領域全体、WindowsはCドライブ全体をコピーします。コピー元のVMの中にある、バランシングの設定が記述されているGameServerの設定ファイルも、内容そのままにコピーされます。

例 C:\Photon\deploy\bin_Win64\PhotonServer.config

手動でPhoton Serverを構築する場合は、設定ファイルの書き換えを行わなければなりません。また、新しく構築したVMに対して外部からアクセス出来るよう、ポートフォワーディングの設定を行う必要が出てきます。なかなか面倒な作業です。

GMOアプリクラウドのPhoton Server専用カスタムサーバーは、GameServer用のVMをイメージから展開すると、矛盾が起きないように自動的にスケールアウトされたGameServerの設定ファイルの書き換えを行います。また、自動的にポートフォワーディングが行われ、外部と接続出来る状態で立ち上げる事が出来ます。工数を大幅に減らすことが出来る便利なサービスです。

以下、手順を追っていきましょう。

イメージを取りたいVMが停止しているのを確認し、「サーバー操作」からVMを選択し、「ブートディスクイメージ保存」をクリックします。

 

イメージ保存_1

イメージ名を任意で指定し、実行をクリックします。

イメージ保存_2

イメージコピーが開始されました。イメージ管理画面で、進行中であることが確認出来ます。属性がWindows+Photon Serverになっている事に注目です。

イメージ保存_3

しばらく待つと、「準備中」が「利用可能」に変わり、イメージが完成します。

イメージ保存_4

サーバー追加画面で「Windows + Photon Server」を選択すると、OS選択の項目に先程作成したイメージが現われます。この際、「Photon種別」で「Game」を選択する事を忘れないで下さいね。

イメージ保存_5

今回作成するGameSaverに紐付けるMasterServerを指定して、「次へ」をクリック。

イメージ保存_6

最終確認です。設定を確認し、問題がなければ「実行」をクリック。

イメージ保存_7

VMが作成されました。ログインしてbin_Win64フォルダを確認すると、Photon Serverのライセンスファイルもコピーされています。Photon Serverライセンスファイルは既存のGameServerと同一のものは使用出来ない為、手動で差し替えを行って下さい。尚、freeライセンスファイルは、同一でも使用可能です。

例 C:\Photon\deploy\bin_Win64

イメージ保存_8

ライセンスファイルの設置が終わったら、隠れているインジケーターを表示し、Photon Controlアイコンをクリック「LoadBalancing (MyCloud) 」を選択して 「Start as Application(アプリケーションとして起動)” を実行します。

イメージ保存_9

これでMasterServerの受け入れが出来る状態になり、GameServerのスケールアウトが終了しました。

続いて、外部からアクセス出来る状態になっているのか、ロードバランサのポート設定の確認です。GMOアプリクラウドコントロールパネル上の「サーバ操作」から新規に作成したVMのステータスを確認します。

イメージ保存_10

ネットワーク設定が完了している事が確認出来ます。

以上となります。GMOアプリクラウド×Photon Serverならセットアップだけでなく、GameServerのスケールアウト時の工数も大幅に減らす事が可能です。是非一度触ってみて下さい。

Photonライセンス+Serverの費用感が気になる方、導入を検討されていらっしゃる方は是非お気軽に弊社にお問い合わせ下さい。詳細はこちら!

GMOアプリクラウド×PhotonServer特設ページ

関連記事

業界初!! Photon Server 専用カスタムサーバーをリリースいたしました

PhotonServerをセットアップしてみよう

Photon ServerとUnityを接続してみよう

カテゴリー: GMOアプリクラウド サービス・機能 | タグ: | Photon Serverをスケールアウトしてみよう はコメントを受け付けていません。

Photon ServerとUnityを接続してみよう

mex_icon

皆さんこんにちは。メックスです。メガトンパンチのコツは体重移動です。腕の筋肉だけに頼らず、膝、腰、肩の関節の動きをうまくコントロールし体を回転させながら打つと驚くような威力のパンチになります。慣れないうちは、大きい鏡でゆっくりと自分の関節の動きを見ながら練習してみると良いでしょう。

さて、今回は前回作成したPhotonServerを、ゲームエンジンUnityと接続し、動作させるまでの手順をお届け致します。

PhotonServerをセットアップしてみよう

logo_GAC_Photon

・Photon Unity NetworkingをUnityに導入

UnityのAsset storeに、「Photon Unity Networking」というSDKが用意されていますので、こちらをお使いのUnityに導入します。Asset storeでは機能制限版の「Photon Unity Networking」と、機能解除版の[Photon PUN+」の2種類が提供されていますが、今回は「Photon Unity Networking」を使って解説します。

Unity1

Asset Storeでインポートしますと、ポップアップが表示され、導入するコンポーネント範囲を聞かれますが、特にいじらずimportを選択します。

Unity1

 

Importが完了すると、SetUpのポップアップが表示されます。PhotonCloudのIDかEmailアドレスの入力を求められますが、今回はPhoton Serverの利用なのでskipを選択します。

unity2

skipを選択すると、画面下のProjectに「Resources」が現れます。選択すると、「Photon Server Setting」が現れますので、クリックします。

unity3

「Photon Server Setting」をクリックすると、画面右側に「Inspector」が現れます。「Hosting」を選択し、「Self Hosted」を選択します。

unity_4

 

「Server Address」のボックスに、構築したサーバのGlobal IPを入力します。「Protocol」は「TCP」を選択し、「Server Port」は、アプリクラウドのコントロールパネルで作成した場合、Masterサーバの接続先ポートは「4530」となりますので、その通りに入力します。

Unity5

これでネットワーク設定は完了です。

 

・demoで動作確認

それでは、demoで動作確認を行ってみましょう。Photon Unity Networkingにプリセットされているdemoを使います。今回は3Dで描画されたMarcoPolo-Tutolialを動かしてみましょう。

画面左下、Assets→Demos→MarcoPolo-Tutolialを選択します。

Unity6

展開されたフォルダの中に「MarcoPolo-Scene」がありますので、ダブルクリックします。

unity7

Game画面が切り替わり、タイルのような画面になります。

unity8

画面上段の「→」をクリックすると、UnityとPhoton Serverが同期します。

unity8

同期に成功すると、Game画面の左上に。「Joined」と表示され、お化けみたいなキャラクターが現れます。

Unity10

これでPhotonServerのMasterサーバにログインした後、Gameサーバ上に作成されたルーム内に入っている状態になりました。このお化けは、カーソルキーでぐりぐり動かすことが出来ます。

別のPCでUnityを立ち上げ、同じようにPhotonServerに接続すると、同じルームにログインし動き回らせる事が可能です。

Unity12

以上、PhotonServerとUnityの接続の手順を解説致しました。非常に簡単に設定出来ますので、是非一度お試しになってみて下さい。

GMOアプリクラウド × Photon の特設サイト

カテゴリー: GMOアプリクラウド サービス・機能 | タグ: | Photon ServerとUnityを接続してみよう はコメントを受け付けていません。

PhotonServerをセットアップしてみよう

mex_icon 皆さん初めまして。(物理的な意味で)戦うエンジニアこと、技術支援のメックスです。持ち前の180cmを越える体躯と馬力でGMOアプリクラウドとソーシャルゲーム界隈を盛り上げるのが私のミッションです!

私は主に技術関係の記事をお届けして参ります。GMOアプリクラウドユーザーの皆様は勿論、電子の海を情報を求めて彷徨う皆様にもお役立ち出来る記事を提供出来るよう頑張りますので、何卒宜しくお願い致します。

logo_GAC_Photon

今回お届けするのは、PhotonServerのセットアップです。

既報通り、GMOアプリクラウドはPhotonServer専用カスタムサーバを提供致しております。コントロールパネル上の操作だけで、簡単にPhotonServerのセットアップが出来てしまう便利なサービスです。

作成したPhotonServerを実際に動作出来る状態にするまでの手順を、ハンズオン形式でお伝えしたいと思います。

業界初!! Photon Server 専用カスタムサーバーをリリースいたしました

カズさんの記事の続きから進めていきたいと思います。

1.Masterサーバにログイン、セットアップ

コントロールパネル上の操作で出来上がったMasterサーバにログインします。GMOアプリクラウドのコンソールでも作業出来ますが、作業効率を考えますと、リモートデスクトップの使用をお勧めします。リモートデスクトップを使用する場合は、アプリクラウドにて提供しておりますコントロールパネルからのネットワーク設定が必要となります。

サーバのパスを入力し、ログイン出来ましたら、2つの作業を行います。

  • ライセンスファイルのダウンロード・設置
  • Photonの起動

・ライセンスファイルのダウンロード・設置

PhotonのライセンスファイルをWebからダウンロードし、指定フォルダに設置します。今回は無償のトライアルライセンスを利用します。下記URLからPhotonServerトライアルライセンスファイルのダウンロードが可能です。ライセンスファイルをダウンロードするには登録が必要となります。

https://www.photonengine.com/ja-JP/OnPremise/Dashboard

無事ライセンスファイルがダウンロード出来ましたら、Photonが展開されているフォルダに置きます。

例 C:\Photon\deploy\bin_Win64

・Photonの起動

ライセンスファイルを指定フォルダに置いたら、次はPhotonにファイルを読み込ませ、起動させます。アプリクラウドのコントロールパネルからPhotonServerを作成した場合、立ち上げた時点で既にPhotonが起動していますので、ライセンスファイルを読み込ませる為に再起動させます。

Photon再起動

隠れているインジケーターを表示し、Photon Controlのアイコンを選択し、「Exit Photon Contorol」をクリック

Photonが終了したのを確認したら、PhotonControl.exeをクリック

例 C:\Photon\deploy\bin_Win64\PhotonControl.exe

先程と同じく、隠れているインジケーターを表示し、Photon Controlアイコンをクリック「LoadBalancing (MyCloud) 」を選択して 「Start as Application(アプリケーションとして起動)” を実行します。

Master Serverの設定は以上となります。

 

2.Gameサーバにログイン、セットアップ

続いてGameサーバの設定を行っていきます。やる事はMasterサーバとほぼ同じです。

  • ライセンスファイルのダウンロード・設置
  • Photonの起動

・ライセンスファイルのダウンロード・設置

Masterサーバ同様、ライセンスファイルをダウンロードし、指定フォルダに設置します。トライアルライセンスファイルは、Masterサーバと同一の物でも問題ありません。

※有料ライセンスの場合、Gameサーバ、Masterサーバそれぞれにライセンス購入が必要となりますのでご注意下さい。

https://www.photonengine.com/ja-JP/OnPremise/Dashboard

例 C:\Photon\deploy\bin_Win64

・Photonの起動

こちらも、Masterと同じ手順です。既に起動しているPhotonを隠れているインジケータから選択し、終了させた後、PhotonControl.exeをクリックし、ライセンスファイルが読み込まれている状態にします。

起動後、「LoadBalancing (MyCloud) 」を選択して 「Start as Application(アプリケーションとして起動)” を実行します。

以上で、Photon Serverのセットアップは完了です。実際にネットワーキング出来るようになりました。

とは言え、現在の状態では動作検証が出来ていませんので、実感が沸かないかと思います。次回は、ゲームエンジンUnityと接続を行い、実際にネットワーキングしているのか確認してみたいと思います。

カテゴリー: GMOアプリクラウド サービス・機能 | タグ: | PhotonServerをセットアップしてみよう はコメントを受け付けていません。

業界初!! Photon Server 専用カスタムサーバーをリリースいたしました


こんにちは、営業 兼 イベント担当のカズです。

本日は新サービスのご紹介です。
この度、GMOアプリクラウド(Ver3.0/3.1環境)において、Photon Server 専用カスタムサーバーをリリースいたしました。

logo_GAC_Photon

■Photon Serverとは
Photon Serverとは、リアルタイム、マルチプレイヤー、マッチメイキングなどのネットワーク機能をサーバー(Windows Server)にインストールして利用するネットワークエンジンです(既にご存知の方はこの項目は飛ばしてお読みください)。
サーバー不要で手軽に低コストではじめられる Photon Realtime と比較して、Photon Serverは Photonのコア部分に当たるバックエンドの部分をカスタマイズすることが可能です。自社環境でゲーム開発ができるため、カスタマイズが自在であり、サーバーログを取得して徹底的に分析を行いたいお客様に最適なプランです。

Photon Serverに関する詳細はこちらよりご確認ください。

■Photon Server 専用カスタムサーバーについて
前述の通り、Photon Server はサーバー(Windows Server)にインストールしてご利用いただくため、今までは下記フローでご用意いただく必要がありました。
(マスターサーバー、ゲームサーバー 個々に対応が必要です)

<Before>
STEP1 :コントロールパネルからサーバー(Windows Server)の作成
STEP2 :Photon SDK のダウンロード + 設置
STEP3 :LBのネットワーク設定(各サーバーへのTCP/UDPポート転送設定)
STEP4 :PhotonのConfigをSTEP3で設定した内容に沿って記述
STEP5 :ライセンス のダウンロード + 設置
STEP6 :Photon Application の起動

 
この度リリースされたPhoton Server 専用カスタムサーバーは、STEP1のサーバー(Windows Server)作成時にSTEP2~4の作業を全自動でセットアップいたします。

<After>
STEP1 :コントロールパネルからサーバー(Windows Server)の作成
STEP2 :ライセンス のダウンロード + 設置
STEP3 :Photon Application の起動

 
GMOアプリクラウドのコントロールパネルから、わずか数クリック・数分で Photon Serverがインストールされ、且つ、面倒なネットワーク設定・config設定が自動セットアップされたサーバーを立ち上げることが可能になりました。
これにより、Photon Server導入の敷居がグッと下がり、Windows Serverを使い慣れていないお客様にもご利用いただき易くなっております。
Photon Serverをご利用の際は、是非ご活用ください。

■コントロールパネル遷移
コントロールパネルの「サーバー追加」メニューから
1.Windows + Photon Serverを選択
2.マスターサーバー or ゲームサーバーを選択
3.タイプを選択(Photon推奨プラン:NW-0404)
4.OS(Windows Server)を選択
5.サーバー台数を選択
図1

6.プライベートIPを選択
7.グローバルIPを選択
図2

8.実行ボタンをクリック
図3

わずかこれだけの操作(数クリック)で、Photon Server セットアップ済みのサーバーが数分後に起動します。
Photon Server の導入が決まったら、GMOアプリクラウドを是非ご活用ください。

現在、GMOアプリクラウド × Photon の特設サイトを公開中です。
こちらも是非ご覧になってください。

カテゴリー: GMOアプリクラウド サービス・機能 | タグ: | 業界初!! Photon Server 専用カスタムサーバーをリリースいたしました はコメントを受け付けていません。