[68]AWS Webアプリの動作確認 -未完成

Tomcat8が起動したら、動作確認をします。

コマンドは、

http://ec2-52-197-160-7.ap-northeast-1.compute.amazonaws.com:8080/WebAPSample/top.jsp

すると、、お、、何か出てきた。

Capture_2016_07_15_23_19_50_867

あれ???でないなあ。。。。

Capture_2016_07_15_23_22_40_328

失敗かな??????再度!!!

 

(7/16)検証してみるか、、、、

$ cd /usr/share/tomcat8/webapps/WebAPSample

に、connectDBが無い!って怒られたので、、、見ると。。。

Capture_2016_07_16_05_22_55_178

あーーー、無いわーーー。これじゃDBにつながらないね。。。

サンプルあるかな?

 

 

[67]AWS TomcatのGUIツールを使ったデプロイ

Tomcatの管理ツールを使うと、WebのGUIからもアプりをデプロイできます、、、と。管理ツールは、次のコマンドでインストールできます、と。

sudo yum -y install tomcat8-admin-webapps

では、やってみましょう!

Capture_2016_07_15_22_25_57_467

って、あっというまに終わった、Complete!

インストールが完了したら、管理ユーザを作成します。

/usr/share/tomcat8/conf配下に、

設定ファイルtomcat-users.xmlがあるので、

管理ユーザの認証情報を追加します、、、と。

(もう、言われるまま、、、、、悲)

あーーあった!

Capture_2016_07_15_22_30_05_881

では、viエディタで修正。

どうやら、

<user username=”tomcat” password=”s3cret roles=””manager-gui”/>

を追加するみたい。。。。

あれ、、でも管理者でないとダメ!だって。。。。

Capture_2016_07_15_22_43_31_612

どうすっかな???

めんどいから、このままやっちゃうか。(編集できないけど。。)

いや、だめだ。。GUIの画面でID、Passを聞かれるって。。

じゃ調べるか。。。

$ sudo vi ファイル名

で良い????なんだよ、、、あっさり行ったよ!

Capture_2016_07_15_22_56_24_702

では、追加を。

Capture_2016_07_15_23_02_01_101

編集したら、、、

Capture_2016_07_15_23_02_43_326

編集されたようだ!

tomcat8を再起動する、、、、と。

$ sudo service tomcat8 restart

OK!?かな???

Capture_2016_07_15_23_04_54_811

じゃ、EC2インスタンスのPublicDNSの8080ポートにアクセスします。今回のオレのは、

http://ec2-52-197-160-7.ap-northeast-1.compute.amazonaws.com:8080/manager

おお、認証を聞いてきた!確か、、、、

tomcat, s3cretだったな?

Capture_2016_07_15_23_08_42_623

入れてみると、、、入れた!っぴーーーーーうれぴー!

Capture_2016_07_15_23_09_48_922

 

[66]AWS Tomcat8の起動

では、いよいよTomcat8サーバを起動します。。

緊張するなあ。起動しなかったらどうしよう。。。。

コマンドプロンプトへ。

$ sudo service tomcat8 start

Capture_2016_07_15_21_47_40_834

あれ??動いたのかな???OKはでたけど。。。。

Capture_2016_07_15_21_48_39_601

次に、EC2ンスタンスを再起動したときにもTomcat8を自動起動させるため、次のコマンドを。。。。

$ sudo chkconfig tomcat8 on

Capture_2016_07_15_21_50_44_473

??

チェックできるみたい。

$ chkconfig –list |grep tomcat

すると、、、

Capture_2016_07_15_21_51_41_256

おお、ON/OFFが教科書どおりになっとる。(いいのかな?)

 

[65]AWS Webアプリのデプロイ2

続きでーす。はたしてうまくいくかの??

前回より、

Tomcatの場合は、作成したwarファイルを実行フォルダに置くことでデプロイできますって!

TeraTermでTomcat8をインストールしたEC2インスタンすにログインします。。。。

なので、

Tomcat8をインストールしたEC2インスタンすは、[62]を読み返すと

グループ名:WebAPSample20160712

Capture_2016_07_15_21_31_50_509

なので、これにShellを右クリックで立ち上げる!

秘密鍵で入れました!(よく覚えとるん?)

Capture_2016_07_15_21_33_34_368

で、コマンドだけど、TeraTermのメニューで、

「ファイル」「SSH SCP」を選択し、

①fromに作成したサンプルのWebAPSampleを指定し、

②「Send」ボタンをクリックして

アップロードを行う、、、、と。

ここでは、ずるして、もともとのサンプルファイルを指定。

Capture_2016_07_15_21_38_02_252

なんか、一瞬何かやった感じだけど。。。。。

まいいか!?

次に、EC2インスタンスでコマンド実行らしい。。。。

EC2のホームディレクトリにアップローどしたWebAPSample.warをTomcat8インストールフォルダのwebapps配下にコピーすると。。

なので、コマンドは、

$ sudo cp /home/ec2-user/WebAPSample.war /usr/share/tomcat8/webapps

とな????やってみるか?

Capture_2016_07_15_21_41_47_312

あれ??終わった?

Capture_2016_07_15_21_43_00_269

おおー。コピーされとる。。。

これで、デプロイは完了した、、、、らしい。。

実感なし。。。。

次は、Tocmcat8の起動。。。。

 

 

 

 

 

[64]AWS Webアプリのデプロイ

WebアプリをTomcatに配置していく、、、と。

まずは、DLしたwarファイルをEclipseで開く、、と。どうやんだろ。。

サンプルwarファイルのインポート!!だと。

Eclipseの「ファイル」「Web」「次へ」、、、と。

Capture_2016_07_13_21_01_25_950

インポートするwarファイルを指定する。

インポート中!

Capture_2016_07_13_21_03_39_743

サンプルのWebアプリは、JNDIでDBサーバにアクセスします、と。そこでサンプルのWebアプリにRDSの接続情報を設定します、、と。

何のこっちゃ???

まあ、マニュアル本どおりに!

Capture_2016_07_13_21_06_49_827

プロパティを修正する、、、とな。。

WebContentのWEB-INFのcontext.xmlを修正、、、と。

Capture_2016_07_13_21_14_28_859

うまくできるかな?。。。

なんかいじらなくとも、そのままでいいかも????

Eclipseで今度はエクスポート??

Capture_2016_07_13_21_22_02_20

エクスポートされた??

Capture_2016_07_13_21_24_05_542

サンプルアプリのデプロイ、、、

修正したアプリをEC2インスタンスにデプロイします。。

デプロイは、開発環境で作成したアプリを実行環境に配置することですって!

Tomcatの場合は、作成したwarファイルを実行フォルダに置くことでデプロイできますって!

TeraTermでTomcat8をインストールしたEC2インスタンすにログインします。。。。

 

 

 

[63]AWS Tomcatのインストール

TeraTermでログインするそうな。。。EclipseからTeraTermの起動設定と。

そんなことできるのかあ、、、、ウィンドウの設定クリック!

AWS Toolkitの外部ツールをクリック!

Capture_2016_07_12_22_12_44_909

設定は、TeraTermの場所とユーザ名:ec2-userで。

Capture_2016_07_12_22_16_32_95

これで設定完了、と。次にTeraTermでリモートアクセスすると。

では、EclipseのExplorerでインスタンスを指定する。右クリックでOpen Shellを!

Capture_2016_07_12_22_20_38_725

TeraTermの接続ダイアログが出てくる!!OK!!!

同じように秘密鍵を使って接続、、、、できました!

Capture_2016_07_12_22_22_40_934

では、このままコマンドインストールで JavaとApache Tomcatをインストールします。。。

$ java -version

$ sudo yum -y install java-1.8.0-openjdk-devel

Capture_2016_07_12_22_26_23_188

Complete !! 成功!!!

javaのバージョンをいつでも使える設定があるらしいい。。。

$ sudo alternatives –config java

Capture_2016_07_12_22_28_26_312

これで、いつでも1.8.0のじゃばでーーーす。

Tomcatのインストールです、、、と。

$ sudo yum -y install tomcat8

Capture_2016_07_12_22_30_27_728

Complete!  OK!!

次に、JDBCドライバのインストール!!

$ sudo yum install -y mysql-connector-java

Capture_2016_07_12_22_32_31_585

Compelete! OK!

Tomcatのインストールされたところにコピーが必要らしい。めんどいな!

$ sudo cp /usr/share/java/mysql-connector-java.jar /usr/share/tomcat8/lib/

OKみたいね。。。

 

[62]AWS TomcatによるWebAPサーバ構築

次に、Apache Tomcatをインストールして、サンプルアプリを動かす!

では、またeclipseのAWS Toolkitアイコンから操作!!

「EC2 Security Groups」を選ぶ、、、とな。。。

Capture_2016_07_12_21_46_46_136

で、「新規グループ」をクリック!!!

グループ名:WebAPSample20160712

でゴー!次にAddPermission設定!

Capture_2016_07_12_21_49_19_22

port:22と8080を許可!!

Capture_2016_07_12_21_50_36_630

これで、「WebAPSample20160712」という名前のセキュリティグループが作成できました!!!

ECインスタンスを起動しましょう。ここでは、AWSマネージメントコントロールでもできるようだが、AWS Toolkitから操作してみよう!!!!(本の通りなんだけど。。。)

「Launch Amazon EC2 Instances」クリック!なんか出てきた?!Capture_2016_07_12_21_54_04_501

AMIを選択せよ!と。Amazon Linuxのバージョンがこれみたいなので、、わからんが、、、言うがままに、、、

Capture_2016_07_12_21_55_20_927

いろいろ、設定して、、、と。

Capture_2016_07_12_21_58_12_814

完了!を押すと、、、少し時間がかかるみたい、、、、。

Instancesを見ると、、、「WebAPSample20160712」がRunningになってる!

うまく動いたようだ!

AWSマネジメントコンソールからEC2メニューからも!

Capture_2016_07_12_22_05_38_18

、、、「WebAPSample20160712」があります!!!良かった!

パブリックDNS、IPアドレスでつなげてみると、、、??

ec2-52-197-160-7.ap-northeast-1.compute.amazonaws.com
52.197.160.7
Capture_2016_07_12_22_10_10_998
 おーーーと。まだTomcatインストールしてないから

アクセス不可だわ!!!!(恥ずかしい)

[61]AWS RDSのアクセスポイント確認

本ではここでMySQLのダウンロードだけどすでにDL済みなのでスキップ!

なので、RDSのアクセスポイント確認を!

AWSマネジメントコントロールでRDSを指定!

Capture_2016_07_12_21_22_45_305

ダッシュボードを選択!

Capture_2016_07_12_21_23_28_797

サンプルDBを指定すると、、詳細画面が!

Capture_2016_07_12_21_24_02_441

では、コマンドプロンプトからDBにアクセスしてみよう!!

コマンドは、エンドポイントのURL

エンドポイント:

sampledb.cahi3cjevfcf.ap-northeast-1.rds.amazonaws.com:3306
を使うらしい、、、ので、

$ mysql -h sampledb.cahi3cjevfcf.ap-northeast-1.rds.amazonaws.com -p 3306 -u dbuser -p

になるらしい!

では、!入れると、Passを聞かれる。。。。passwordと。あれれ!?

Capture_2016_07_12_21_31_43_729

接続できないな、、、、おかしい???

$ mysql -h sampledb.cahi3cjevfcf.ap-northeast-1.rds.amazonaws.com -P 3306 -u dbuser -p

”P”が大文字だった!修正したらアクセス成功!!!!

Capture_2016_07_12_21_35_18_891

コマンド打ってみよう!show databases;

Capture_2016_07_12_21_37_01_939

sampledbが見えました!

テーブルもuse すれば、select * from table;でみれました!漢字が出ないけど。。

Capture_2016_07_12_21_40_04_951

まあ、、良しとしよう!!!

[60] AWS -DB- RDS Toolkitでの実行

DBサーバを構築できたところで、RDSに作成したsampledbデータベースにサンプルアプリ用のデータを登録します、、、と。

では、Eclipseへ。

AWS Toolkitアイコンから配下の「Show AWS ExplorerView」をクリック!

Capture_2016_07_12_21_04_15_54

前項で作成したDB「sampledb」を選択!

Capture_2016_07_12_21_05_23_617

ユーザ名:dbuser、パス:password(P.162参照)だったのでそれを入力!

Capture_2016_07_12_21_07_17_418

DB接続できたようだ!!

Capture_2016_07_12_21_08_09_678

では、続いてDB読み込み!サンプルSQLを開く、して、読み込み!

Capture_2016_07_12_21_12_17_120

SQLが読み込みできたので、すべてを実行してみよう!

SQLスクラップブックにコピペしないとダメ(SQL動かない)みたい。。。

なんか、SQLうごいてテーブルとか作ってるみたい。。

Capture_2016_07_12_21_16_32_663

なんかデータを登録できたみたい。。。

[59] AWS MySQL によるデータベースサーバ構築

AWSでMySQLのサーバ構築、、と。XAMPPのようにはいかないかな??まずはやってみましょう!

Capture_2016_07_10_21_53_10_141

まずは、セキュリティグループの作成と。このグループで、RDSのルールをインスタンスの適用することで、必要なアクセスだけに限定できる、、、よと。。。

ここで、またEclipse

Capture_2016_07_10_21_58_42_321

で、EclipseのAWSToolkitアイコンをクリックして、メニューから

EC2 Security Groupsをクリックする。

Capture_2016_07_10_22_01_17_728

Viewが表示されました。。

Nameを「RDSSample」、説明を「RDSSampleGroup」とします。

Capture_2016_07_10_22_03_24_989

できた!(IDと秘密鍵をカンマ区切り間違えて入れてた!!笑)

Capture_2016_07_10_22_16_17_96

で、!?ポート設定か。確かMySQLで3306使ってたのでは??

まっやってみるかーーー・

Capture_2016_07_10_22_18_44_639

AWSコンソールからRDSを選んで。。

Capture_2016_07_10_22_21_43_432 Capture_2016_07_10_22_21_53_248

パラメータグループの作成を実施。。

Capture_2016_07_10_22_24_28_448

出来たみたい。。。だが動くかな???

Capture_2016_07_10_22_25_00_816

コードをいくつかutf8にセット変更して保存。いよいよRDSのインスタンスを生成します!!!!

AWSコンソールから「RDS」を起動!

Capture_2016_07_10_22_29_32_412

DBインスタンスの起動をクリック!

すると、、おおお、DBたちが設定待ちされとる。。。

Capture_2016_07_10_22_30_25_163

MySQLを選択と!細かい設定に入ります。。。。

Capture_2016_07_10_22_32_14_17 Capture_2016_07_10_22_33_33_612 Capture_2016_07_10_22_34_13_301 Capture_2016_07_10_22_34_52_118 Capture_2016_07_10_22_36_42_26 Capture_2016_07_10_22_36_48_112

いろいろやって数分かかると。。。(まだ作成中、5分くらい)

Capture_2016_07_10_22_39_53_56

お、バックアップ中に変わった!

Capture_2016_07_10_22_40_59_446

おおおおお!利用可能になった!!

Capture_2016_07_10_22_44_35_160 Capture_2016_07_10_22_44_42_118

一回ここまでで、次回はデータの登録やろっか!?

ではでは!