一度に追加出来るサーバーの数が増えました!コントロールパネルアップデートのお知らせ

mex_icon

みなさんこんにちは。技術支援担当のメックスです。

今回はアップデートのお知らせです。GMOアプリクラウドのVer3.0/3.1環境において、コントロールパネル上から一度に追加出来る仮想サーバー数が増えました。

今までは、コントロールパネル経由のオペレーションで一度に作成出来るサーバー数が、今回のアップデートにより一度に30台まで作成出来るようになりました。これにより、作業効率を大幅に上げることが可能となりました。

詳細を簡単に画像つきでご紹介させて頂きます。

server追加

左メニューより「サーバー追加」をクリックすると、新規サーバー追加画面になります。
仮想LS(日単位)仮想LS(時間単位)仮想L(日単位)仮想L(時間単位)仮想N(日単位)仮想N(時間単位)専用サーバーの中から、任意のプランを選択頂き、タイプ(サーバースペック)を決めます。
任意のOSを選択し、「個数」のチェックボックスをクリックすると作成するサーバーの台数を選択出来ます。
この「個数」項目が30台まで増強されました。

確認画面

サーバー個数を選択した後に「次へ」をクリックすると確認画面になります。
この画面で、個別にOSを選択する事と、プライベートIPの指定を行う事が出来ます。
さらに「次へ」をクリックすると、新規サーバーが作成されます。

以上となります。当然ながらサーバーは作成すれば作成しただけ費用が発生致しますので、くれぐれもオペレーションミスにはお気をつけ下さい。
GMOアプリクラウドは一番使いやすいクラウドサービスを目指して、アップデートを重ねて参ります。

カテゴリー: GMOアプリクラウド サービス・機能 | タグ: | 一度に追加出来るサーバーの数が増えました!コントロールパネルアップデートのお知らせ はコメントを受け付けていません。

オブジェクトストレージをファイルシステムとして使ってみよう

mex_icon

みなさんこんにちは。技術支援担当のメックスです。
この前ポケモンGoで弱いコイキングを捕獲した際に手がすべって進化させてしまい、とんでもなくCPが低いギャラドスが出来上がってしまいました。また1からコツコツコイキングのアメ集め頑張りたいと思います。

今回はGMOアプリクラウドで提供中のオブジェクトストレージに関する情報です。

オブジェクトストレージの活用術を公開しました

オブジェクトストレージは、容量無制限のストレージです。ファイルをストレージにアップするとデータを自動で複製、分散保存する安全性の高い構造となります。ブロックストレージやローカルストレージと比較してコストパフォーマンスに優れていますので、データを蓄積するストレージとして優れた性能を持っています。

オブジェクトストレージはOpenStack Swiftベースで提供されています。主にRest API経由で操作を行う仕様となり、curlでリクエストを行ったり、Swiftクライアントを利用してデータの参照やアップロード、ダウンロード等を行います。

都度curlやswiftで操作するのは取り扱いづらい、と感じられる方もいらっしゃるかも知れません。今回はオブジェクトストレージの活用法として、Linuxのファイルシステムとして使用する方法を共有させて頂きます。

今回は、cloudfuseを使った方法を記述致します。cloudfuseはFUSEを利用したオープンソースです。REST API経由での操作を仮想的にファイルシステムに置き換えてくれます。

今回記述する環境は以下の通りです。尚、本記事の手順は一例であり、動作を保障するものではございませんので、お客様環境におきましては導入前に検証の上、ご利用下さい。


実行仮想サーバータイプ N-0102
OS CentOS 6.7


以下、手順となります。


①Cloudfuseのインストール
-前提となるプログラムをインストール
-Cloudfuseをビルド
-設定ファイルを記述

②cloudfuseのアタッチ
-ファイルシステムとしてマウント
-アタッチされている事を確認

①cloudfuseのインストール

-前提となるプログラムをインストール

#cloudfuseのインストールに必要なプログラムをインストール
yum install gcc make fuse-devel libxml2-devel openssl-devel  json-c-devel curl-devel -y

2016年10月現在、cloudfuseは残念ながらyumやrpm等のパッケージ管理ソフトウェア経由でのインストールが出来ません。必要なソフトウェアをインストールし、ビルドする必要があります。前提となるプログラムをインストールします。

-cloudfuseをビルド

#cloudfuseをダウンロード
wget https://github.com/redbo/cloudfuse/archive/master.zip
#master.zipをunzipで解凍
unzip master.zip
#cloud-masterディレクトリに移動
cd cloudfuse-master/
#Cloudfuseをビルド
./configure
make
make install

githubからcloudfuseの元ファイルをダウンロードし、展開後、インストールします。

-設定ファイルを記述

#ルートディレクトリに.cloudfuseファイルを作成し認証情報を記述する
vi ~/.cloudfuse
username='アカウント情報'
tenant='テナント名'
password='パスワード情報'
authurl='認証エンドポイント'
verify_ssl=True

オブジェクトストレージに接続する為の情報を.cloufuseファイルに記述します。このファイルは新しく作成する必要があります。入力情報はアカウント毎に異なります。テナント名と認証エンドポイントの情報はコントロールパネルのAPI情報で確認が出来ます。少々分かりにくいので、下記画像をご参照頂き記述して下さい。紛らわしいのですがオブジェクトストレージエンドポイントは記述しません。

情報

②cloudfuseのアタッチ
-ファイルシステムとしてマウント

#オブジェクトストレージを/mntディレクトリにマウント
cloudfuse /mnt

ビルドが無事完了し、.cloudfuseに正しく情報を記述出来ていれば、cloudfuseコマンドが使用出来るようになっています。mountコマンドと同じ要領でシステムにオブジェクトストレージをマウントする事が出来ます。
尚、LプランやLSプランのVMにマウントする場合は/mntディレクトリは別のストレージがマウントされている為アタッチできませんのでご注意下さい。

-アタッチされている事を確認

#ファイルシステム情報の確認
df -h

cloudfuse  8.0T  21M  0.1T 1% /mnt

アタッチ出来ていれば、dfコマンドを入力する事で上記のように8Tのストレージがマウントされている事が確認出来ます。便宜上8Tになっていますが、無制限のストレージです。比較的廉価とは言え従量制となりますので、ご利用の際はご注意下さい。

 

以上となります。近年、大容量ストレージのニーズが高まりつつありますので、オブジェクトストレージの便利な使い方を紹介させて頂きました。便利かつ安全にご利用頂く事が出来ますので、オブジェクトストレージを是非ご活用下さい。

カテゴリー: GMOアプリクラウド サービス・機能 | タグ: | オブジェクトストレージをファイルシステムとして使ってみよう はコメントを受け付けていません。

ネットワーク設定作業がより効率的に!コントロールパネルアップデートのお知らせ

mex_icon

みなさんこんにちはメックスです!大分秋めいて参りました。2016年という響きにやっと慣れたと思ったら年の瀬が見えて来るこの感覚、1年は本当にあっと言う間です。1日1日を大事に頑張りたいと思います。

さて、アップデートのお知らせです。GMOアプリクラウドのコントロールパネルがさらに使いやすくなりました。具体的な内容としては、「サーバー操作」メニューから選択出来るサーバーの詳細情報画面で、ロードバランサーの設定解除を行えるようになりました。

GMOアプリクラウドは仕様により、「ネットワーク設定」画面の「グローバル設定一覧」では、プライベートIPの情報を確認することが出来ません。「サーバー操作」メニューから選択出来るサーバーの詳細情報画面に記載されているバランシング情報を確認しながら、「ネットワーク設定」メニューでバランシングルールを探し出し、ひとつづつ解除していくという工程が必要でした。

また、バランシング設定されている(グローバルIPからの転送先として設定されている)サーバーは削除を行う事が出来ませんので、削除を行う際にはバランシングルールを全て外す必要があり、コントロールパネル操作でバランシング設定されている複数台のサーバーを削除する際には手間がかかってしまうという問題がありました。

その問題を解決する為に、サーバーの詳細情報画面上から、バランシング設定を解除出来るように致しました。

それでは設定画面のスクリーンショットをご覧ください。

バランシング削除1

「サービス」→「サーバー操作」→「サーバー名」とクリックすると上記のようなサーバー詳細情報画面になります。画面右下に「設定解除」というボタンがあるのが分かるかと思います。

確認

こちらをクリックしますと、確認画面に移行しますので、実行ボタンをクリックすることで、バランシング設定を解除することが出来ます。

以上となります。さらに使いやすいコントロールパネルを目指してアップデートを重ねて参ります。ご利用の皆様におかれましては、改善して欲しいポイントが御座いましたらサポート、または担当営業までご遠慮なくお申し付け下さい。

カテゴリー: GMOアプリクラウド サービス・機能 | ネットワーク設定作業がより効率的に!コントロールパネルアップデートのお知らせ はコメントを受け付けていません。

API経由で外部に接続するサーバーを作ってみよう

mex_icon

みなさんこんにちは。技術支援のメックスです。馬には乗ってみよ人には添うてみよ、と言いますがクラウドサービスは使ってみよと言ったところでしょうか。使えば使うほど理解が深まるように感じます。

今回はAPIシリーズです。API経由で外部ネットワークに接続するサーバーを作成してみましょう。

GMOアプリクラウドのAPIを叩いてみた
GMOアプリクラウドのAPIを使ってみよう(認証編)
GMOアプリクラウドのAPIで仮想サーバー(ローカルディスクプラン)を作ってみる
GMOアプリクラウドのAPIで仮想サーバー(外部ディスクプラン)を作ってみる
API操作用のトークンIDを変数に入れてみよう
自分で保存したイメージを使用して、API経由で仮想サーバーを作成してみよう(ローカルディスクプラン編)
ロードバランサーをAPI経由で操作してみよう

WEBサーバーやAPPサーバー等、外部からの通信リクエストを直接さばくサーバーはその性質上、どうしても負荷が高まる事が多いです。また、負荷が高くなってボトルネックになってしまう時に、サーバーを増強する事で負荷分散を行う事もデータベースやキャッシュサーバーと比較すると容易である為、スケールを考えやすいといえます。

構築用のスクリプトを予め組んでおけば、緊急時に素早い対応が可能です。また、負荷を感知してのサーバー増加、サーバー減少を自動で行うオートスケール等、出来る事が格段に広がります。GMOアプリクラウドではサーバー作成、削除を全てAPI経由で行える仕様になっています。

今回は外部サーバーを作成するサンプルスクリプトを共有させて頂きます。今回の記述する環境は以下の通りです。尚、本記事の手順は一例であり、動作を保障するものではございませんので、お客様環境におきましては導入前に検証の上、ご利用下さい。


実行仮想サーバータイプ LS-0102
OS CentOS 6.7

作成仮想サーバータイプ  N-0404
OS    CentOS6.7


#!/bin/sh

#アカウント情報
ACCOUNT='アカウント情報'
PASSWORD='パスワード情報'
TENANTID='テナントID'

#、USERTOKEN変数に入れる
USERTOKEN=`curl -i '認証エンドポイント/tokens' -X POST -H 'Accept: application/json' -H 'Content-Type: application/json' -d "{\"auth\":{\"passwordCredentials\":{\"username\":\"$ACCOUNT\",\"password\":\"$PASSWORD\"},\"tenantId\":\"$TENANTID\"}}" | sed -e '1,7d' | jq -r '.access.token.id'`

#N0404(時間課金)を作成
#centOS6.7をベースにボリュームの作成
curl -X POST -H "X-Auth-Token: $USERTOKEN" -H Content-Type:application/json -d '{"volume": {"name": "test-name","size": "30","volume_type": "os_boot_v2","imageRef":"014ab971-6162-456e-b95c-27985ec56a8f"}}' ボリュームエンドポイント/volumes

#ボリューム一覧を呼び出し、任意のIDを切り出して、VOLUMESID変数に入れる
VOLUMESID=`curl -i -X GET -H "Accept: applicationjson" -H "X-Auth-Token: $USERTOKEN" ボリュームエンドポイント/volumes/detail | sed -e '1,7d' | jq '.volumes[] | select(.name == "test-name")' | jq -r .id`

#ボリュームが出来上がるまで10秒待つ
sleep 10s

#新規VMの作成
curl -X POST -H "X-Auth-Token: $USERTOKEN" -H Content-Type:application/json -d "{\"server\":{\"name\":\"Ntest-vm\",\"flavorRef\":\"204041\",\"networks\":[{\"fixed_ip\":\"eth0ローカルIPアドレス\"},{\"fixed_ip\":\"eth1ローカルIPアドレス\"}],\"block_device_mapping\":[{\"volume_id\":\"$VOLUMESID\"}]}}" サーバー操作エンドポイント/servers

#VMが出来上がるまで30秒待つ
sleep 30s

#新規VMをロードバランサのバランシング対象にする
curl -i -X POST -H "X-Auth-Token: $USERTOKEN" -H "Content-Type: application/json" -H "Accept: application/json" -d '{"member": {"protocol_port": "80", "address": "eth0ローカルIPアドレス","pool_id": "PoolID","admin_state_up": true}}' ネットワークエンドポイント/lb/members

それでは解説していきましょう。

#!/bin/sh

#アカウント情報
ACCOUNT='アカウント情報'
PASSWORD='パスワード情報'
TENANTID='テナントID'

#、USERTOKEN変数に入れる
USERTOKEN=`curl -i '認証エンドポイント/tokens' -X POST -H 'Accept: application/json' -H 'Content-Type: application/json' -d "{\"auth\":{\"passwordCredentials\":{\"username\":\"$ACCOUNT\",\"password\":\"$PASSWORD\"},\"tenantId\":\"$TENANTID\"}}" | sed -e '1,7d' | jq -r '.access.token.id'`

トークン情報を変数に入れる記述です。API操作用のトークンIDを変数に入れてみようで解説した内容と同一ですので詳しくはそちらをご覧下さい。

#N0404(時間課金)を作成
#centOS6.7をベースにボリュームの作成
curl -X POST -H "X-Auth-Token: $USERTOKEN" -H Content-Type:application/json -d '{"volume": {"name": "test-name","size": "30","volume_type": "os_boot_v2","imageRef":"014ab971-6162-456e-b95c-27985ec56a8f"}}' ボリュームエンドポイント/volumes

#ボリューム一覧を呼び出し、任意のIDを切り出して、VOLUMESID変数に入れる
VOLUMESID=`curl -i -X GET -H "Accept: applicationjson" -H "X-Auth-Token: $USERTOKEN" ボリュームエンドポイント/volumes/detail | sed -e '1,7d' | jq '.volumes[] | select(.name == "test-name")' | jq -r .id`

外部ディスクプランのVMを作成する為に、まずはボリュームを作成します。前回VMの作成を解説した際は、ローカルディスクプランでしたのでボリュームを作成する必要がなかったのですが、カズさんが以前記述した通り外部ディスクプランで作成する場合は、予めボリュームを作成する必要があります。
name名は任意です。
014ab971-6162-456e-b95c-27985ec56a8fは、CentOS6.7イメージを作成する際のIDです。イメージIDは予めAPI経由で確認してください。もちろん自分で作成したイメージIDも使えます。ボリュームエンドポイントはコントロールパネル上から確認して下さい。ボリューム作成後、ボリューム一覧を呼び出し、ボリューム作成時に命名したname名をフックにIDをVOLUMESIDに入れます。name名を変更した場合は、ここもボリューム作成時と同じname名に変更して下さい。

#ボリュームが出来上がるまで10秒待つ
sleep 10s

#新規VMの作成
curl -X POST -H "X-Auth-Token: $USERTOKEN" -H Content-Type:application/json -d "{\"server\":{\"name\":\"Ntest-vm\",\"flavorRef\":\"204041\",\"networks\":[{\"fixed_ip\":\"eth0ローカルIPアドレス\"},{\"fixed_ip\":\"eth1ローカルIPアドレス\"}],\"block_device_mapping\":[{\"volume_id\":\"$VOLUMESID\"}]}}" サーバー操作エンドポイント/servers

続いてVMの作成です。
外部ディスクプランの自動作成スクリプトを記述する際に気をつけるべき点としては、ボリューム作成のAPIを叩いた後、1テンポ置く事です。すぐにVMを作成しようとするとまだボリュームが出来上がっておらず、エラーが出てしまいます。今回はちょっと長めに10秒間、sleepコマンドで時間を置いています。

充分に時間を置き、ボリュームが完成した後VMの作成です。
nameは任意です。
fravorRefは作成したいサーバーのスペックIDです。こちらを参考に作成したいVMスペックを事前に調べ、IDを記述して下さい。今回はN-0404の時間課金タイプですので、204041と記述しています。
今回はローカルIPアドレスを指定して作成しています。必ずeth0とeth1を併記するようにして下さい。

#VMが出来上がるまで30秒待つ
sleep 30s

#新規VMをロードバランサのバランシング対象にする
curl -i -X POST -H "X-Auth-Token: $USERTOKEN" -H "Content-Type: application/json" -H "Accept: application/json" -d '{"member": {"protocol_port": "80", "address": "eth0ローカルIPアドレス","pool_id": "PoolID","admin_state_up": true}}' ネットワークエンドポイント/lb/members

VMが出来上がりましたら、外部から通信を受けられるようにロードバランサーに紐付けします。

先程のボリューム作成時と同じ理屈で、APIを叩いた後すぐに紐付けを行おうとしますと、VMがまだ出来上がっておらずエラーが出ます。sleepコマンドでしばらく間を置きましょう。

ロードバランサーへの紐付けはこちらの記事が参考になるかと思います。

以上となります。シェルスクリプトは組むのは少し面倒ではありますが、一度組んでしまえば非常に作業効率を上げる事が出来るので、是非お試しになってみて下さい。

カテゴリー: GMOアプリクラウド サービス・機能 | タグ: , | API経由で外部に接続するサーバーを作ってみよう はコメントを受け付けていません。

ロードバランサー操作コントロールパネルアップデートのお知らせ

mex_icon

みなさんこんにちは。技術支援のメックスです。ポケモンGOで連れて歩いているポケモンはカメールです。尻尾が素敵ですよね。

さて、今回はGMOアプリクラウドサービスアップデートのお知らせです。
Ver3.0/3.1環境においてロードバランサーのグローバル側ポート設定を一括で行えるようになりました。

GMOアプリクラウドでは、アプライアンス型のロードバランサー(共用)を標準提供しています。こちらの記事で紹介している通り、ロードバランサーと外部とのネットワーク設定はコントロールパネル上から行う必要が御座います。この操作を大幅に簡便化致しました。

それでは実際に変更点をスクリーンショットと共に解説させて頂きます。

ネットワーク設定

左メニューの「ネットワーク設定」→「グローバル側設定追加」を選択しますと、上記のような画面になります。従来はグローバルIP対して、一個づつ外部ポートの設定を行う仕様でしたが、今回のアップデートで同時に最大10個の外部ポートを設定する事が出来るようになりました。

複数登録の仕方は2種類御座います。

カンマ

[10001, 10003,10005]

ひとつは、上記のようにポート番号を整数で入力後、「,」(カンマ)で区切る方法です。

ハイフン

[10001-10010]

もうひとつは、上記にようにポート番号を「-」(ハイフン)で繋げる方法です。指定するポート番号が並びの数字である必要があります。

グローバルIPを選択後、任意のポート番号を入力し、「設定」ボタンを押すことで外部ポートを開ける事が出来ます。

ウェルノン

また、頻繁に使用される22(SSH)、80(http)、443(HTTPS)、3306(MySQL)、3389(リモートデスクトップ)ポートを開ける際はチェックボックスにチェックを入れ、「設定」ボタンを押すだけで設定可能です。(これらのポート番号を整数で入力して開ける事も出来ます。)

解説は以上となります。GMOアプリクラウドはより使いやすいサービスを提供する事を目指し、アップデートを重ねて参ります。

カテゴリー: GMOアプリクラウド サービス・機能 | ロードバランサー操作コントロールパネルアップデートのお知らせ はコメントを受け付けていません。