Azure Toolkit for Eclipse からHello Worldをデプロイ(おまけでVisual Studioの暗号化を確認)
新規⇒その他
動的Webプロジェクト⇒次へ
プロジェクト名"WebAppTest"としておきました。
JSPファイルを新規作成したい。 WebAppTestを右クリックし、再度その他
ファイル名をindex.jspに変えました。
せっかくなので
に<% out.println("Hello World!"); %>
Publish
事前にリソースグループ、Appserviceがなくてもデプロイ時の画面で選べます。
配置準備が整いましたね
あら、簡単。
AzurePortalを開くことなく、ResourceGroup,AppservicePlan,実際のアプリデプロイまでできました。
ただ、リソースマネージャへの通信は暗号化されてますが、アプリの配置としてバックグラウンドで動いてるのはFTPの平文なのでWireSharkで見ると簡単にユーザー名、パスワードが見えちゃいます。
覚えておいた方がいいかもですね。
ちなみに Visual Studio 2017からASP.NETをWeb Appsにデプロイすると 何も考えなくても暗号化されてました!
Azure Toolkit for Eclipse をWindows10 に入れてみました。
5年ぶりくらいにJAVAを復習してたんですよね。 基礎からやり直しということでEclipseの開発環境を作ったのですが、せっかくなので何処かデプロイ環境も作りたい。
今回はWindows10端末に Azure Toolkit for Eclipse をインストールします。
事前にEclipseは導入済みです。 Eclipse 日本語化 | MergeDoc Project Pleiades - Eclipse プラグイン日本語化プラグイン より Eclipse 4.6 Neonを選択。
ヘルプの新規ソフトウェアのインストールを選択。
"作業対象"に次のアドレスを入力。
- "Azure Toolkit for Java "をチェック。
- "必須更新ソフトウェアを検索するためにインストール中にすべての更新サイトに接続する(C)"のチェックを外す。
PaaSへのデプロイで使いそうなものが一通り入ってる感じですね。
ライセンスも確認しておきましょう。
ソフトウェアのインストールがバックグランドで実行されます。
1分くらいで完了です。はやいですね!
Eclipse再起動するとHDInsight用の追加のScala Pluginを入れてくれということです。
自動インストールに失敗したので手動で入れてくれとのこと。
なるほど、互換性がないようです。 当面はHDInsightを利用する予定はないのですが注意が必要かもしれません
調べてみましたが、下記SampleでもNeonを利用していることから詳細調査が必要かも。今は先送りです。
docs.microsoft.com
2018/4/24 Pleiadesの Eclipse 4.7 Oxygenで試したところScalaも導入できました。
何はともあれHDInsight以外は問題なく導入できたようなので サイン・イン
Automated ⇒ 新規を選択します。
先進認証ですね。
User配下に接続ファイルが保存されるようです。
正常に取得できましたね。
取得したてのファイルでアクセスです。
あとはShow Azure Explorerとか便利に使えます。
とりあえずここまでです。
次はWebAppsにHello Worldとかデプロイしてみたい!
Azure Service Fabricを試そう その5 マニフェストって何?
さて、久しぶりにJAVA開発環境とか整えてたらService Fabric触れてなかった。。。反省。
まだ使いこなせていないけれど Service Fabricの醍醐味はマニフェストファイルだと思っています。 docs.microsoft.com
前回デプロイしたディレクトリ構成を確認すると、 VotingにApplicationManifest.xmlが配置されています。
そして、FrontとなるazurevotefrontPkgの中にはServiceManifest.XMLが確認できます。(DB側にもあります。)
見たところ、Web層がStatelessで動いているのはいいとして DBがStatelessもで動いていますね。
また、Webの待ち受けポートが80番です。
次回以降、 1. DBがステートを持たないのはいかがなものかと思いますので、 Statefullなサービスを試してみましょう。
2. Webフロントでhttpsを提供する構成を考えてみましょう。
SSLに関してはややこしければ、オフロードしてあげてもいいような気もしますが。 一応やり方は抑えといたほうがいいよね!ってことで。
Web AppsのApp Serviceプランを分割、ダウングレード
Web Appsって手軽でいいですよね!
詳細は下記をどうぞ!
Azure Web Apps のドキュメント - チュートリアル、API リファレンス | Microsoft Docs
課金はApp Serviceプランという箱によって発生し、 一つApp serviceのプランに複数のアプリケーションを割り当てることもできます。
Standardで作成したアプリケーションを 後からFreeに分割しつつダウングレードすることがAzure Portalからできるようになってました!便利!
- Web App (App Serviceプラン Standard) を作成
- App service のFree Plan を作成
- Web Appを Free Planに紐づけ
Web App (App Serviceプラン Standard) を作成
Azure PortalからWeb Appを作成します。
アプリ名:standard001
プラン:standard
ResouceGroup:Appservice
standard002も作っておきました。
1つの1App Service Planに2つのサービスです。
App service のFree Plan を作成
App Service プランだけを作成することもできるのです。
アプリはまだありません。
Web Appを Free Planに紐づけ
standard002にて ”App Service プランの変更" を選択
さっき作ったFreeが見えるので選択。
クリックするとすぐに処理が始まります。
Freeプランにアプリが移ってきましたね!
URL(DNS名)も引き継がれます。便利!
Service Fabricも面白いけど手軽にhttpsのサイトが 提供できるのは本当にいいですね!
Azure Service Fabricを試そう その4 CloudShellからサンプルアプリをデプロイ(RHEL7.3)
今回は以下の公式ドキュメントをアレンジしつつ サンプルアプリをSFCにデプロイしていきます 。
公式ブログではAzureCLIをインストールすることが前提になっていますが、せっかくなのでCloud Shellを使えばもっと気軽に試せます。
CloudShellにクラスタ証明書を準備する
クラウドシェルを選択
アップロードはGUIから操作できる
ls コマンドで 既定のClouddriveと追加された証明書を確認
pfx形式をpemに交換します。
成功したらメッセージが出ます。
再度lsで確認するとpemが増えています。
sfctl cluster select --endpoint https://kuronerhel.westus.cloudapp.azure.com:19080 --pem sfcRHEL.pem --no-verify
接続ができていればsfctl node listなどで情報取得が可能です。
GitHubからアプリを入手しデプロイする
Git Cloneを確認します。
git clone https://github.com/Azure-Samples/service-fabric-containers.git
cd service-fabric-containers/Linux/container-tutorial/Voting/
./install
アプリケーションがデプロイできました。
動作を確認する
Service Fabric Explorer を確認すると、APPLICATIONのカウント1となったことが確認できます。
2層構造のWebアプリですが、
サービスは2ノードタイプ(PRIME・FRONT)のうち、FRONTで動作していることがわかります。
FRONTのロードバランサに割り当てられたパブリックIPにブラウザからhttpでアクセスすると、Votingアプリで遊べます。
以上です。
RHEL7.3でも問題なくLinuxのサンプルアプリで遊べそうです。
いったんここで一区切りとなります。
次は気が向いたらサンプルアプリのマニフェストファイルをいじってみようかな?
Azure Service Fabricを試そう その3 作業端末からExplorerにアクセス(RHEL7.3)
rさて、それでは作成したService Fabric Clusterにサンプルアプリをあげて遊んでみようかと思います。
何はともあれ、Service Fabric Clusterにアクセスを試してみましょうか。
- 作業端末に証明書の導入
- Service Fabric Explorerにアクセス
証明書の導入
準備として作業端末に証明書をインポートしときます。
セキュリティとしては作業アクセスのための証明書は別に発行しておいて利用した方がいいと思います。 安易にKeyVaultからクラスター証明書をエクスポートしないほうがいいとも思いますが、 とりあえずクラスターの証明書を利用して接続確認を取ります。m( )m
KeyVaultが作成されていることを確認
Service Fabricをデプロイ時に指定した証明書を確認。
クリックするとPFX/PEM形式でダウンロードできます。
ダウンロード出来たら端末にインポートしましょうか。
パスワードが聞かれますが、空のまま次へ
規定値でインポートします
完了
Service Fabric Explolerにアクセス
Service Fabric Explolerのアドレスにアクセスしてみます。
自己署名のため、警告が出ます。 確認して進みましょう。
非推奨ですが・・・
アクセスできました!7ノードのポンデリn・・・( ^ω^)・・・
SYSTEMにてクラスターサービスを維持するためのサービス群が動作してることが確認できます。
次回こそはアプリを挙げてみるぞ。
Azure Service Fabricを試そう その2 Azure Portalから作成(RHEL7.3)
Azure Service Fabricを試してみます。
まずはAzure Portal から Service Fabricクラスターを選択
いつの間にかRHEL7.3が選べるようになってました!
次はノードタイプ数、各種設定を選びます。
ノードタイプは一つのVMSS+LBのセットです。とりあえず使ってみるということで適当に。
AzurePortalからは1~3まで選ぶことができますが、テンプレートデプロイなどパラメーターを編集すれば必要に応じて追加できる感じですかね。
Service Fabricをデプロイすると、クラスタ管理サービスが追加されてWEB管理、API管理ができるようになりますが既定のポート番号を変更できるようになっているようです。
とりあえず2ノードタイプでサイズを変えてみました。
セキュリティの標準はKeyVaultの自己証明書ようです。
Service Fabric作成手順内でKeyVaultの作成と証明書発行が実施可能ですね。
アクセスポリシーの詳細を編集しAzure Virtual Machineへのアクセスを有効にします。
自己証明書を作成。
さぁデプロイです。
一通りAzureのデプロイが完了した後も、Azure Service Fabricのデプロイ処理があり、
しばらく時間がかかります。(時間はインスタンスサイズが影響すると思われます)
準備完了!
ノードが見えます(^^)/
さて、オプション設定などは特にいじらず作ってみましたが、
次は、いろいろ遊んでみようかなと思います。