SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

今さら聞けない! Amazon Web Servicesによるクラウド超入門

Amazon Web ServicesでサーバサイドJavaの実行環境を構築しよう

今さら聞けない! Amazon Web Servicesによるクラウド超入門 第4回

  • X ポスト
  • このエントリーをはてなブックマークに追加

Webアプリケーションサーバの構築/EC2(2)

Apache Tomcat 7の起動

 Tomcat 7のインストールおよび設定が完了したら、次のコマンドでTomcat 7サーバを起動します。

Tomcat 7の起動
$ sudo service tomcat7 start 
Starting tomcat7: [  OK  ]

 EC2インスタンスを再起動した後も、Tomcat 7を自動起動させるため、次のコマンドを実行します。

Tomcat 7の自動起動
$ sudo chkconfig tomcat7 on
$ chkconfig --list |grep tomcat
tomcat7        	0:off	1:off	2:on	3:on	4:on	5:on	6:off

 Tomcat 7のインストールが完了したら動作確認をします。

 Tomcat 7はポート番号8080を使用して通信を行いますので、次の書式でブラウザからアクセスします。

Tomcat 7の動作確認URL
Tomcat 7の動作確認URL

 例えば、EC2インスタンスのPublic IPが54.238.252.107のときは、次のようなアクセスになります。

Tomcat 7の動作確認
Tomcat 7の動作確認

Webアプリケーションのデプロイ

 まず、ダウンロードサンプルのwarファイルをEclipseなどのIDEで開きます。そして、サンプルのデータベース接続先のコードを次のように変更します。

TestModel.javaの抜粋
public class TestModel {
~中略~
// 1.データベースの接続先情報を指定
private final static String URI = "jdbc:mysql://(RDSのEndpoint):3306/testdb";

// 2.データベースに接続するときのユーザ名とパスワードを指定
private final static String DBUSER = "dbuser";
    private final static String PASSWORD = "password";

 コードの説明をします。

1.データベースの接続先情報を指定

 AWSのRDSに接続するための接続情報を次の書式で設定します。

RDSへの接続情報
RDSへの接続情報

 例えば、RDSのEndpointがtestdb.xxx.rds.amazonaws.comでデータベースの名前がtestdbの場合は、

jdbc:mysql://testdb.xxx.rds.amazonaws.com:3306/testdb

と指定します。

2. データベースに接続するときのユーザ名とパスワードを指定

 データベースに接続するためのユーザ名とパスワードを指定します。これはRDSインスタンスを生成したときに、AWSマネジメントコンソールで指定したMaster UsernameとMaster Passwordのことです。

 コードの修正が終わったら、warファイルを作成します。Eclipseを使用している場合、[ファイル]―[エクスポート]で作成できます。

 次に、このwarファイルをEC2インスタンスにデプロイします。デプロイとは、開発環境で作成したアプリケーションを実行環境に配置することです。TeraTermでTomcat 7をインストールしたEC2インスタンスにログインします。TeraTermのメニューで[ファイル]-[SSH SCP]を選択し、作成したAWSTest.warをアップロードします。

warファイルのアップロード
warファイルのアップロード

 EC2インスタンスで次のコマンドを実行し、アップロードしたAWSTest.warをTomcat 7インストールフォルダのwebapps配下にコピーします。

warファイルのデプロイ
$ sudo cp /home/ec2-user/AWSTest.war /usr/share/tomcat7/webapps/

 以上でWebアプリケーションのサーバへの配置が終わりました。

動作確認

 Web アプリケーションのデプロイとデータベースの作成が完了したら、サンプルWebアプリケーションの動作確認をします。

 次のURLにブラウザから次の書式でアクセスします。

Webアプリケーションへのアクセス
Webアプリケーションへのアクセス

 例えば、EC2インスタンスのPublic IPが54.238.184.158にインストールしたときは、次のようなアクセスになります。

 正しくアクセスできると、EC2上にデプロイしたサンプルアプリから、RDS上に登録されたデータが取得できているのが分かります。

サンプルアプリの動作確認
サンプルアプリの動作確認

おわりに

 今回の記事では、Amazon社が提供するクラウドサービスであるAWSの主要なサービスである、仮想サーバEC2と仮想リレーショナルデータベースRDSの使いかたを紹介しました。クラウドのIaaSサービスを上手に使うと、短時間で容易にWebシステムを構築できます。さらに、クラウドの持つ負荷分散機能やプライベートネットワーク構築機能/自動リソース増強機能などを組み合わせて使えば、さらに柔軟なインフラを構築することができます。これからも、クラウドを使って夢のあるシステムを作ってくださいね。

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
今さら聞けない! Amazon Web Servicesによるクラウド超入門連載記事一覧

もっと読む

この記事の著者

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるReact実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト 阿佐 志保(アサ シホ)

WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS Twitter: @yyamada(公式)、@yyamada/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/7875 2014/07/18 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング