Enterprise Distributed Application Service (EDAS) を使用すると、Elastic Compute Service (ECS) クラスター内にアプリケーションを作成・デプロイできます。本ガイドでは、アプリケーションの作成、ランタイム環境の選択、パッケージのデプロイ、およびインターネット経由でのアプリケーション公開の手順を説明します。
前提条件
開始する前に、以下の条件を満たしていることを確認してください。
Auto Scaling を有効化し、他のクラウドサービスへのアクセス権限を付与済みであること。詳細については、「Auto Scaling への権限付与」をご参照ください。
ECS クラスターが存在すること。詳細については、「EDAS コンソールでの ECS クラスターの作成」をご参照ください。
アプリケーションの作成およびデプロイ
EDAS コンソールにログインします。
左側ナビゲーションウィンドウで、アプリケーション管理 > アプリケーション を選択します。
上部ナビゲーションバーで対象リージョンおよびマイクロサービス名前空間を選択し、アプリケーションの作成 をクリックします。
基本情報 ステップで、以下のパラメーターを設定し、次へ をクリックします。
パラメーター 説明 クラスタータイプ ECS クラスター を選択します。 アプリケーション実行環境 アプリケーションフレームワークおよびパッケージ形式に基づいてランタイムを選択します。詳細については、「ランタイム環境の選択」をご参照ください。 アプリケーション名 英字で始まる名前を入力します。使用可能な文字:英字、数字、アンダースコア (\_)、ハイフン (-)。最大長:36 文字。 アプリケーション説明 任意項目です。最大長:128 文字。 構成 ステップで、デプロイメントパッケージのソースおよびインスタンスのソースを指定し、次へ をクリックします。
パラメーター 説明 デプロイメントパッケージのソース カスタムプログラム — ローカルマシンから JAR、WAR、またはデプロイパッケージをアップロードするか、ホストされているパッケージのパブリック URL を入力します。ファイルアップロード方法 でアップロード方法を設定します。公式デモ — Spring Cloud、Apache Dubbo、または HSF フレームワークのアプリケーションデモペアをデプロイします。詳細については、「EDAS の使い始め」をご参照ください。デプロイしない — コードをデプロイせずにアプリケーションレコードのみを作成します。 インスタンスのソース インスタンスの購入 — EDAS が新しい ECS インスタンスをプロビジョニングします。既存のインスタンスの使用 — すでにクラスター内にあるアイドル状態のインスタンスを選択します。 環境 デフォルト環境 — 現在のリージョンにおけるデフォルトのクラスターおよび仮想プライベートクラウド (VPC) を使用します。カスタム環境 — マイクロサービス名前空間 および クラスター のドロップダウンリストから特定のマイクロサービス名前空間およびクラスターを選択します。該当するものが存在しない場合は、マイクロサービス名前空間の作成 または クラスターの作成 をクリックして作成します。 購入方法(新規インスタンスを購入する場合) 推奨仕様に基づく購入 — 仕様を選択し、数量 および ログインパスワード を設定し、Elastic Compute Service 利用規約|イメージ利用規約 に同意します。既存インスタンスの仕様に基づく購入 — テンプレートインスタンスの選択 セクションでテンプレートインスタンスを選択し、再利用モード、パスワード、および 数量 を設定し、利用規約に同意します。起動テンプレートに基づく購入 — 起動テンプレートを選択し、再利用モード および 数量 を設定し、利用規約に同意します。 詳細設定 ステップで、バージョン および アプリケーションヘルスチェック のパラメーターを設定し、アプリケーションの作成 をクリックします。
作成完了 ステップで、基本情報、構成、および 詳細設定 の設定内容を確認し、アプリケーションの作成 をクリックします。
デプロイメントの確認
基本情報 ページで、詳細の表示 をクリックして 変更の詳細 ページを開きます。デプロイメントには数分かかります。
デプロイメントが完了したら、インスタンス情報 タブに移動します。インスタンスステータスが 正常 と表示された場合、アプリケーションは正常に実行されています。
ランタイム環境の選択
アプリケーションのフレームワークおよびパッケージング形式に基づいてランタイム環境を選択します。
Dubbo または Spring Cloud アプリケーション
JAR パッケージ:
アプリケーション実行環境 を Java に設定します。
Java 環境 のドロップダウンリストから Java 開発キット (JDK) のバージョンを選択します。
カスタム OpenJDK バージョンを使用する場合は、カスタム OpenJDK を選択し、インストールコマンドを入力します。詳細については、「カスタム OpenJDK バージョンのインストール」をご参照ください。
OpenJDK 17 は Dubbo 2.7.14 以降または Dubbo 3.0.6 以降と互換性があります。「OpenJDK 17 の互換性」で検証済みのバージョン組み合わせをご確認ください。
WAR パッケージ:
アプリケーション実行環境 を Tomcat に設定します。
Java 環境 のドロップダウンリストから JDK バージョンを選択します。
コンテナバージョン のドロップダウンリストから Apache Tomcat のバージョンを選択します。
Apache Tomcat はデフォルトで /home/admin/ ディレクトリにインストールされます。このディレクトリは変更できません。
HSF アプリケーション
アプリケーション実行環境 を EDAS-Container (HSF) に設定します。
Java 環境 のドロップダウンリストから JDK バージョンを選択します。
Pandora バージョン のドロップダウンリストから Pandora バージョンを選択します。
Ali-Tomcat バージョン のドロップダウンリストから Ali-Tomcat バージョンを選択します。
インターネット経由でのアプリケーションの公開
VPC 内にデプロイされたアプリケーションは、デフォルトでパブリック IP アドレスを持ちません。アプリケーションをインターネット経由でアクセス可能にするには、インターネット向け Server Load Balancer (SLB) インスタンスをアプリケーションにバインドします。
EDAS では HTTP リスナーに対してセッション維持が有効化されています。この機能は無効化できません。
EDAS コンソールにログインします。
左側ナビゲーションウィンドウで、アプリケーション管理 > アプリケーション を選択します。
上部ナビゲーションバーでアプリケーションのリージョンおよびマイクロサービス名前空間を選択します。クラスタータイプ のドロップダウンリストで ECS クラスター をフィルターし、アプリケーション名をクリックします。
基本情報 タブの アプリケーション設定 セクションで、SLB(インターネット) の横にある 追加 をクリックします。
ロードバランシング(パブリック)の追加 ダイアログボックスで SLB のパラメーターを設定します。詳細については、「アプリケーション専用 SLB インスタンスの設定」をご参照ください。
SLB インスタンスのバインドが完了したら、パブリック IP アドレスおよびポート(例:39.XX.XX.65:81)をコピーし、ブラウザで開いてアプリケーションにアクセスします。
ECS インスタンスの構成制限事項
アプリケーション用 ECS インスタンスを構成する際は、以下の制限事項に従ってください。
admin ユーザーを削除しないでください。
/home/adminの構成を削除しないでください。以下のプロセスを停止しないでください。
/home/staragent/bin/staragentdcom.alibaba.edas.agent.AgentDaemon
以下の crontab エントリを削除しないでください。
bash /home/admin/edas-agent/bin/monitor.sh(root ユーザーの crontab)bash /home/admin/edas-agent/bin/rotator.sh(admin ユーザーの crontab)
ルートディスクパーティションに十分な空き領域を確保してください。
CentOS を使用する場合は、yum リポジトリが正しく設定されていることを確認してください。
High-speed Service Framework (HSF) アプリケーションを実行しており、複数のネットワークインターフェースコントローラー (NIC) を持つ ECS インスタンスでは、正しい IP アドレスを指定するために
-Dhsf.server.ipJVM パラメーターを設定します。これは、Docker などのツールが追加の NIC を追加する場合に適用されます。詳細については、「JVM -D 起動パラメーターを設定する」をご参照ください。システム時計の誤差を 15 秒以内に保ってください。それ以上の時刻ずれは EDAS レジストリとの通信を妨げます。
カスタム OpenJDK バージョンのインストール
EDAS では、ECS インスタンス作成時に指定したインストールコマンドが実行されます。

利用可能なバージョンは OS イメージによって異なります。以下の例では、aliyun_3_x64_20G_alibase_20210910.vhd イメージを使用しています。
ECS にデプロイされたアプリケーションの場合、JDK をインストールし、java または jar コマンドに環境変数を渡します。CLI でこれらのコマンドを実行して、インストールが正しく行われていることを確認してください。
利用可能な OpenJDK 8 バージョンの照会
ECS インスタンス上で、以下のいずれかのコマンドを実行します。
# JRE パッケージの検索
yum search --showduplicates java-1.8.0-openjdk
# JDK パッケージの検索
yum search --showduplicates java-1.8.0-openjdk | grep devel出力例:
java-1.8.0-openjdk-1:1.8.0.292.b10-0.1.al8.x86_64 : OpenJDK 8 実行環境
java-1.8.0-openjdk-1:1.8.0.302.b08-0.1.al8.x86_64 : OpenJDK 8 実行環境
java-1.8.0-openjdk-1:1.8.0.312.b07-2.al8.x86_64 : OpenJDK 8 実行環境
java-1.8.0-openjdk-1:1.8.0.322.b06-2.al8.x86_64 : OpenJDK 8 実行環境
java-1.8.0-openjdk-1:1.8.0.272.b10-1.1.al8.x86_64 : OpenJDK 実行環境 8特定バージョンのインストール
目的の OpenJDK 8 マイナーバージョンおよびその開発ツールをインストールします。
yum install -y java-1.8.0-openjdk-1:1.8.0.302.b08-0.1.al8.x86_64 java-1.8.0-openjdk-devel-1:1.8.0.302.b08-0.1.al8.x86_64java -version を実行してインストールを確認します。コマンドの出力に OpenJDK のバージョンが表示された場合、インストールは成功しています。
OpenJDK 17 の互換性
以下の表は、OpenJDK 17 と Dubbo および Spring Boot の検証済みバージョン組み合わせを示しています。
| Dubbo バージョン | Spring Boot バージョン | Nacos クライアントバージョン | API 呼び出し | ARMS モニタリング | サービス一覧 |
|---|---|---|---|---|---|
| 2.7.14 | 2.7.9 | 1.4.4 | OK | OK | OK |
| 2.7.14 | 2.7.9 | 2.1.2 | OK | OK | OK |
| 2.7.14 | 2.7.9 | 2.2.0 | OK | OK | OK |
| 2.7.22 | 2.7.9 | 1.4.4 | OK | OK | OK |
| 2.7.22 | 2.7.9 | 2.1.2 | OK | OK | OK |
| 2.7.22 | 2.7.9 | 2.2.0 | OK | OK | OK |
| 3.0.6 | 2.7.9 | 1.4.4 | OK | OK | OK |
| 3.0.6 | 2.7.9 | 2.1.2 | OK | OK | OK |
| 3.0.6 | 2.7.9 | 2.2.0 | OK | OK | OK |
| 3.1.7 | 2.7.9 | 1.4.4 | OK | OK | OK |
| 3.1.7 | 2.7.9 | 2.1.2 | OK | OK | OK |
| 3.1.7 | 2.7.9 | 2.2.0 | OK | OK | OK |