本文へジャンプします。

ニフティクラウド ユーザーガイド

クラウド トップ>ユーザーガイド>Automation>アプリサーバーだけのスタック作成

Automation:ステップ2:アプリサーバーだけのスタック作成

サーバー1台だけの簡単なアプリサーバースタックを作成してみましょう。

サーバーはグローバルIPアドレスを持ち、ユーザーはこのIPアドレスにリクエストを送ります。
アプリのソースコードは外部リポジトリに保存されており、そこからサーバーにデプロイされます。

スタックについては技術仕様にてご確認ください。

Automation利用イメージ

下記ではコントロールパネルからスタックを作成しアプリをデプロイする方法を説明します。
今回はサーバーをPHPアプリサーバーとして設定します。

スタックの作成

Automationのダッシュボードを表示します。

「スタック追加」をクリックします。ダイアログが立ち上がり、「01 基本設定」タブが表示されます。

下記の基本設定情報を入力します。入力が終わったら「次へ進む」ボタンをクリックします。

「01 基本設定」タブ

項目名 説明 入力・選択例
スタック名 スタックの名前です。アルファベット(a-z)で5文字まで入力します。
スタック名はサーバーの命名規則にも利用されます。
mystk
メモ スタックについてのメモを入力します。 任意のテキスト
OS イメージ スタック内で起動させる標準OSを選択します。 CentOS 6.3 64bit Plain
リージョン スタックのリージョンです。1度設定すると変更することができません。 east-1
ゾーン スタックのゾーンです。1度設定すると変更することができません。 east-13
SSH キー タック内サーバーにログインするためのSSHキーを選択します。
キーが1つも存在しない場合はコントロールパネルのSSHで作成してください。
お客様が作成した任意のキー

「02 Chef設定」タブでは、Chefの設定に関する情報を入力します。
今回はすべてデフォルトのままで「次へ進む」ボタンをクリックします。

「02 Chef設定」タブ

「03 確認」タブで、入力した内容を確認します。
修正が必要であれば、「戻る」ボタンをクリックすることで前のタブに戻ることができます。問題がなければ、「作成する」ボタンをクリックします。

「02 Chef設定」タブ

ダイアログが閉じ、作成されたスタックのトップページに遷移します。

PHPアプリレイヤーの追加

サーバーは、直接スタックへ追加するのではなく、レイヤーを追加してその中にサーバーを追加します。

今回は例として、mystkスタックへのPHPアプリレイヤー追加します。

Automationのダッシュボードを表示し、mystkスタックをクリックします。

左メニューから「レイヤー」を選択し、レイヤーの一覧を表示します。

レイヤーの一覧

左上の「レイヤー新規作成」をクリックすると、ダイアログが立ち上がり「01 基本設定」タブが表示されます。

下記を参考に基本設定情報を入力します。入力が終わったら「次へ進む」ボタンをクリックします。

「01 基本設定」タブ

項目名 説明 入力・選択例
タイプ 8つのデフォルトレイヤータイプとカスタムレイヤータイプの中から1つを選択します。 アプリケーションサーバー(PHP)
カスタムファイアウォールグループ レイヤー内のサーバーに適用するファイアウォールグループを指定できます。
指定しない場合は、デフォルトのファイアウォールグループが設定されます。
選択しない
メモ スタックついてのメモを入力することができます。 任意

「02 Chef設定」タブでは、Chefの設定についての情報を入力します。
今回は、特に入力せず「パッケージ設定へ」ボタンをクリックします。

「02 Chef設定」タブ

「03 パッケージ設定」タブでは、パッケージ情報を入力します。
今回は、特に入力せず「ディスク設定へ」ボタンをクリックします。

「03 パッケージ設定」タブ

「04 ディスク設定」タブでディスク情報を入力します。
今回は、特に入力せず「確認へ」ボタンをクリックします。

「04 ディスク設定」タブ

「05 確認」タブで、入力内容を確認します。
修正が必要であれば、「戻る」ボタンをクリックすることで前のタブに戻ることができます。
問題がなければ、「作成する」ボタンをクリックします。

「05 確認」タブ

ダイアログが閉じ、レイヤー一覧に作成されたレイヤーが表示されます。

PHPアプリレイヤーへのサーバー追加

サーバーにはいくつかの基本的な項目のみ設定します。
サーバーの持つ機能については、サーバーの所属するレイヤーに設定された項目(インストールされるパッケージの一覧や、ディスクの設定など)が適用されます。

Automationからサーバーを追加すると、サーバーにはエージェントがインストールされます。
レイヤーに設定された機能をサーバーへ追加するために、エージェントにChefのレシピを実行するよう指示します。
Chefのレシピが実行されることによって、アプリケーションやパッケージがインストールされたり、設定ファイルが書き出されたりします。

Automationは、サーバーのライフサイクル・イベント毎にレシピを実行します。
サーバーの起動が完了してChefのレシピを実行できる状態になったらSetupレシピを実行し、お客様がアプリケーションをデプロイする際にはDeployレシピを実行します。

今回は例として、mystkスタックのPHPアプリレイヤーに、サーバーを追加します。

Automationのダッシュボードを表示し、mystkスタックをクリックします。

左メニューから「サーバー」を選択し、レイヤー毎のサーバーの一覧を表示します。

レイヤー毎のサーバーの一覧

php-appレイヤー左下の「サーバー新規作成」をクリックします。
ダイアログが立ち上がり、「01 基本設定」タブが表示されます。

下記を参考に基本設定情報を入力します。入力が終わったら「次へ進む」ボタンをクリックします。

「01 基本設定」タブ

項目名 説明 入力・選択例
ホスト名 サーバーのホスト名です。
デフォルトではスタック名とレイヤーの種別によって自動的に名前が割り振られています。
お客様が任意のホスト名に変更することも可能です。
mystkapp301
ゾーン サーバーが作成されるゾーンです。スタックに設定したゾーンによって決まります。 east-13
サーバータイプ サーバーのスペックを表すタイプです。 mini
料金コース サーバーの料金コースです。従量/月額から選択できます。 従量
SSHキー サーバーにログインする際のSSHキーです。デフォルトではスタックに設定したSSHキーが表示されています。 お客様が作成した任意のキー
OSイメージ サーバーのOSです。 CentOS 6.3 64bit Plain
メモ サーバーについてのメモです。 任意

「05 確認」タブで、入力内容を確認します。
修正が必要であれば、「戻る」ボタンをクリックすることで前のタブに戻ることができます。
問題がなければ、「作成する」ボタンをクリックします。

「05 確認」タブ

ダイアログが閉じ、php-appのサーバー一覧に作成されたサーバーが表示されます。

ここまでで、サーバー設定情報の入力が完了しました。
サーバーを起動することで、実際にサーバーが作成されます。
作成されたサーバーには、スタック・レイヤーに設定した構成情報が適用されます。

作成されたサーバーの右にある「?」ボタンをクリックします。「サーバー起動」ダイアログが表示されます。

「サーバー起動」ダイアログで料金を確認します。
問題がなければ「起動する」にチェックを入れ「OK」ボタンをクリックします。

「サーバー起動」ダイアログ

「サーバー起動」ダイアログが閉じると、mystkapp301のステータスが「停止」から「リクエスト済み」に変わります。
ステータスが「オンライン」になるまで10分程度お待ちください。起動処理が進むにつれてステータスは下記の表のように変化していきます。

ステータスが「停止」から「リクエスト済み」に変わります。

ステータス 説明
リクエスト済み Automationがサーバ起動のリクエストを受け付けました。
起動中 サーバーを起動中です。
セットアップ中 AutomationのエージェントがレイヤーのSetupレシピ・Deployレシピを実行しています。
Setupレシピによりサーバー内の初期設定が行われ、Deployレシピにより既存のアプリがサーバーへデプロイされます。
オンライン サーバーは利用可能な状態です。

アプリの作成とデプロイ

mystkスタックをもっと便利に使うために、PHPアプリサーバーへアプリをデプロイしてみましょう。
アプリのソースコードはGitなどの外部リポジトリに置き、下記の手順でアプリの作成とデプロイを行います。

  • ※サーバーの初回起動時には、自動で既存アプリをデプロイしますが、アプリを新規作成したり設定変更を行った場合には、手動で既存サーバーにアプリをデプロイする必要があります。

今回は例として、簡単なサンプルアプリを、パブリックなGitリポジトリからアプリサーバーへと手動でデプロイする手順を紹介します。
サンプルアプリは下記で公開しております。今回の例では「version1ブランチ」をデプロイします。

Automationのダッシュボードを表示し、mystkスタックをクリックします。

左メニューから「アプリ」を選択します。アプリの一覧が表示されます。

アプリの一覧

左上の「アプリ新規作成」をクリックします。ダイアログが立ち上がり、「01 基本設定」タブが表示されます。

下記を参考に基本設定情報を入力します。入力が終わったら「リポジトリ設定へ」ボタンをクリックします。

「01 基本設定」タブ

項目名 説明 入力・選択例
アプリ名 アプリの名前です。 SimplePHPApp
タイプ アプリの種類です。 PHP
ドキュメントルート アプリのドキュメントルートの場所を/srv/www/${アプリ名}/からの相対パスで指定します。
入力しない場合、/srv/www/${アプリ名}/がドキュメントルートになります。
入力しない
メモ サーバーについてのメモです。 任意

下記を参考に「02 リポジトリ設定」タブでリポジトリに関する情報を入力します。入力が終わったら「SSL証明書設定へ」ボタンをクリックします。

「02 リポジトリ設定」タブ

項目名 説明 入力・選択例
リポジトリ種別 リポジトリの種別です。 Git
リポジトリURL リポジトリのURLです。 git://github.com/NIFTYCloud/automation-demo-php-simple-app.git
リポジトリSSHキー Gitリポジトリをダウンロードするのに必要なSSHキーを入力します。 入力しない
ブランチまたはリビジョン名 リポジトリのブランチまたはリビジョン名です。 version1

「03 SSL 証明書設定」タブでSSL証明書に関する情報を入力します。
今回は、特に入力せず「ドメイン設定へ」ボタンをクリックします。

「03 SSL 証明書設定」タブ

「04 ドメイン設定」タブでドメインに関する情報を入力します。特に入力せず「確認へ」ボタンをクリックします。

「04 ドメイン設定」タブ

「05 確認」タブで入力内容を確認します。
修正が必要であれば、「戻る」ボタンをクリックすることで前のタブに戻ることができます。
問題がなければ、「作成する」ボタンをクリックします。

「05 確認」タブ

ダイアログが閉じ、アプリ一覧に作成されたアプリが表示されます。

左メニューから「デプロイ」を選択すると、デプロイの履歴が表示されます。

デプロイの履歴

左上の「アプリデプロイ」をクリックします。ダイアログが立ち上がります。

下記を参考にアプリのデプロイに必要な情報を入力します。入力が終わったら「デプロイ」をクリックします。

「アプリデプロイ」ダイアログ

項目名 説明 入力・選択例
アプリ デプロイ対象のアプリです。 SimplePHPApp(php)
コマンド デプロイコマンドの種別です。 Deploy
コメント デプロイに関するコメントです。 任意
カスタムJSON デプロイによって発行されるコマンドJSONを、カスタマイズするためのJSONを入力します。 入力なし
対象サーバー デプロイ対象のサーバーです。 mystkapp301(online)

ダイアログが閉じ、実施したデプロイの履歴が表示されます。
ステータスがrunningからsuccessfulに変化するまで待ちます。

デプロイが完了したらSimplePHPAppを起動してみます。
「サーバー一覧」からmystkapp301のグローバルIPアドレスを取得し、ブラウザのアドレスバーに入力してEnterキーを押してください。
下記のようなページが表示されればデプロイは成功です。

サンプルアプリ画面

推奨画面サイズ 1024×768 以上