Functionsの概要

Oracle Functions is a fully managed, multi-tenant, highly scalable, on-demand, Functions-as-a-Service platform. It is built on enterprise-grade Oracle Cloud Infrastructure and powered by the Fn Project open source engine. Use Oracle Functions (sometimes abbreviated to just Functions) when you want to focus on writing code to meet business needs.

Oracle Functionsのサーバーレスおよびエラスティック・アーキテクチャは、実行する必要があるインフラストラクチャ管理やソフトウェア管理がないことを意味します。コンピュート・インスタンスをプロビジョニングまたはメンテナンスすることはなく、オペレーティング・システムのソフトウェアのパッチやアップグレードは自動的に適用されます。Oracle Functionsでは、アプリケーションの可用性を高め、スケーラブルかつセキュアで、モニターすることが簡単にできます。Oracle Functionsを使用すると、Java、Python、Node、GoおよびRubyでコードを作成できます(また、高度なユース・ケースの場合は、独自のDockerfileおよびGraal VMを使用できます)。その後、コードのデプロイ、そのコードの直接コール、イベントへのレスポンスによるトリガー、および実行中に消費したリソースに対してのみ請求されるようにすることができます。

Oracle Functionsは、Fn Projectに基づきます。Fn Projectは、任意のクラウドまたはオンプレミスで実行できる、オープン・ソース、コンテナ・ネイティブ、サーバーレスのプラットフォームです。Fn Projectは簡単に使用でき、拡張可能で、パフォーマンスに優れています。Fn Projectのオープン・ソース配布をダウンロードしてインストールし、ファンクションをローカルで開発およびテストしてから、同じツールを使用してそのファンクションをOracle Functionsにデプロイできます。

コンソール、CLIおよびREST APIを使用してOracle Functionsにアクセスできます。CLIを使用するか、署名付きHTTPリクエストを行うことによって、Oracle Functionsにデプロイするファンクションを呼び出すことができます。

Oracle Functionsは、ネイティブOracle Cloud Infrastructureのアイデンティティ機能を簡単に認証できるように、Oracle Cloud Infrastructure Identity and Access Management (IAM)と統合されています。Oracle Cloud Infrastructure Identity and Access Managementの概要を参照してください。

Oracle Functionsを設定して迅速に実行するには、ファンクションQuickStartガイドを参照してください。関連する開発者チュートリアルも多数用意されています。

Fn ProjectのCLIをアップグレードするための 必須要件の重要な事前通知、2021年4月

Fn ProjectのCLIをインストールし、それを使用してファンクションを初期化、ビルドおよびデプロイしている場合は、2021年5月1日以前にFn ProjectのCLIをアップグレードする必要があります。詳細は、Fn ProjectのCLIのアップグレードを参照してください

Oracle Cloud Infrastructureへのアクセス方法

Oracle Cloud Infrastructureには、コンソール(ブラウザベースのインタフェース)またはREST APIを使用してアクセスできます。コンソールおよびAPIのための手順は、このガイド全体を通してトピックに含まれています。使用可能なSDKのリストは、ソフトウェア開発キットとコマンドライン・インタフェースを参照してください。

コンソールにアクセスするには、サポートされているブラウザを使用する必要があります。コンソールのサインイン・ページに移動するには、このページ上部のナビゲーション・メニューを開き、「インフラストラクチャ・コンソール」をクリックします。クラウド・テナント、ユーザー名およびパスワードの入力を求められました。

REST APIの使用についての一般情報は、REST APIを参照してください。

イベントを使用した自動化の作成

イベント・タイプ、ルールおよびアクションを使用して、Oracle Cloud Infrastructureリソースに対する状態変更に基づいて自動化を作成できます。詳細は、イベントの概要を参照してください。

次のOracle Functionsリソースからイベントが発生します:

  • アプリケーション
  • ファンクション

他のサービスでのイベントでOracle Functionsのファンクションを呼び出すこともできます。その他のOracle Cloud InfrastructureサービスからのOracle Functionsの呼出しを参照してください。

リソース識別子

ほとんどのタイプのOracle Cloud Infrastructureリソースには、Oracle Cloud ID (OCID)と呼ばれるOracleによって割り当てられた一意の識別子があります。OCIDのフォーマットおよびリソースを識別するその他の方法の詳細はリソース識別子を参照してください。

認証と認可

Oracle Cloud Infrastructureの各サービスは、すべてのインタフェース(コンソール、SDKまたはCLI、およびREST API)の認証および認可のためにIAMと統合されています。

組織の管理者は、どのユーザーがどのサービスとリソースにアクセスできるか、およびアクセスのタイプを制御する、グループコンパートメントおよびポリシーを設定する必要があります。たとえば、ポリシーは、新しいユーザーの作成、クラウド・ネットワークの作成と管理、インスタンスの起動、バケットの作成、オブジェクトのダウンロードなどを実行できるユーザーを制御します。詳細は、ポリシーの開始を参照してください。異なる各サービスに対するポリシーの記述の詳細は、ポリシー・リファレンスを参照してください。

会社が所有するOracle Cloud Infrastructureリソースを使用する必要がある通常のユーザー(管理者ではない)の場合は、ユーザーIDを設定するよう管理者に連絡してください。管理者は、使用する必要があるコンパートメントを確認できます。

Oracle Functionsの機能および制限

リージョンに作成できる関数およびアプリケーションの数は、Oracle Functionsのサービス制限によって制御されます(関数の制限を参照)。デフォルトのサービス制限は、支払方法によって異なります。容量を増やす必要がある場合は、デフォルトのサービス制限を引き上げるリクエストを送信できます(サービス制限の引上げのリクエストを参照)。

ファンクション(ファンクションのリクエスト・ペイロード)に送信できるデータの最大量は6 MBです。ファンクションがリクエストに応答して返すことができるデータの最大量(ファンクションのレスポンス・ペイロード)は6 MBです。これらの制限は固定されており、変更できません。

他のOracle Functionsの機能および制限も固定されています。ただし、変更可能な数値もあります。デフォルトのメモリーおよびタイムアウト設定の変更を参照してください。

必要なIAMサービス・ポリシー

Oracle Cloud Infrastructureを使用するには、管理者によってポリシーでセキュリティ・アクセス権が付与されている必要があります。このアクセス権は、コンソール、あるいはSDK、CLIまたはその他のツールを使用したREST APIのいずれを使用している場合でも必要です。権限がない、または認可されていないというメッセージが表示された場合は、自分がどのタイプのアクセス権を持っているか、およびどのコンパートメントで作業するかを管理者に確認してください。

ポリシーを初めて使用する場合は、「ポリシーの開始」「共通ポリシー」を参照してください。

Oracle Functionsのポリシーの詳細は、次を参照してください: