本トピックでは、Function Compute でのサービスの概念を説明します。
サービス
サービスは、Function Compute のリソースを整理して管理するのに役立つ単位です。サービス内のすべての関数は、サービスの権限やログ設定といった設定を共有します。各サービスは複数の関数を作成することができ、Logstore やロールといったサービスのリソースを共有します。サービスには次の利点があります。
ビジネスコンポーネントをより適切に整理することができます。
アプリケーションをサービスと表すことができます。アプリケーション内で使用する関数を 1 つのサービスにまとめることができます。
サービス間でリソースを共有することはできません。つまり、各サービスは互いに独立しています。
サービスごとにリソースを管理するのに役立ちます。
プロパティ
サービスを作成する際には、次のプロパティを指定します。
(必須) サービス名: サービス名を示します。サービス名は Alibaba Cloud アカウント内で一意であり、次の要件を満たす必要があります。
- 名前には半角英数字、アンダースコア(_) およびハイフン(-)のみを使用します。
- 名前の頭文字は、英字またはアンダースコア(_)にします。
- 名前の大文字小文字は区別されます。
- 名前の長さは 1〜128 字にします。
(オプション) 説明: 指定されたサービスの説明が表示されます。
(オプション) ロール: 特定の関数を実行するための許可を Function Compute に付与します。たとえば、
- Log Service にアクセスするための権限を Function Compute に付与し、Function Compute が関数の実行ログを保存し、分析できるようにします。
- 他のクラウドリソースにアクセスする関数を実行するための権限を Function Compute に付与します。
- ロールに関する詳細は、「権限の概要」をご参照ください。
(オプション)ログ設定: Log Service のログプロジェクトおよび Logstore を設定して、関数実行ログを保存し、分析します。
- 本プロパティが設定されていない場合、関数実行ログは表示されません。Log Service を有効にし、本プロパティを設定することを推奨します。
- 詳細は、「関数のログ」を参照。
注意: ここでは、Alibaba Cloud の Log Service を使用します。Log Service は一定のリソースを確保するため、ログが生成されない場合でも、サービスに対して料金をお支払いいただく必要があります。詳細は、課金方法 をご参照ください。
(オプション) VPC 設定: 関数が指定された VPC にアクセスできるようにします。
(オプション)インターネットアクセス: 本プロパティを true に設定すると、関数はパブリックネットワークにアクセスできます。
サービス名以外のプロパティは後で変更することができます。
fcli を使用してサービスを作成および更新
fcli をシェルモードで実行すると、mks
またはups
コマンドを実行してサービスを作成または更新することができます。 info
コマンドを実行するとサービスのプロパティが表示されます。
次の例では、サービス「my-service」を作成し、説明とログ設定プロパティを更新します。Function Compute がログにアクセスできるよう許可を付与します。
サービスを作成します。
mks my-service
注意:サービス作成時に、サービスの説明を追加、設定します。ここでのサービスの説明や設定は、更新操作を説明するためのものに過ぎません。
ログプロジェクトおよび Logstore を作成します。
mkl -p fc-log-project -s fc-log-store
サービスを更新します。
ups my-service -d "this is my service" -p fc-log-project -l fc-log-store
サービスを確認します。
info my-service