Function Computeでサービスバージョンのエイリアスを作成できます。 バージョン管理機能を使用して、さまざまなバージョンのサービスをリリースできます。 これは、ソフトウェア開発プロセス中に継続的統合 (CI) および継続的配信 (CD) を実装するのに役立ちます。 このトピックでは、エイリアスの概念と、Function Computeコンソールでエイリアスを管理する方法について説明します。
エイリアスとは何ですか?
Function Computeでは、サービスバージョンのエイリアスを作成できます。 エイリアスは、サービスの特定のバージョンへのポインタとみなすことができる。 エイリアスを使用して、バージョンの公開、ロールバック、またはカナリアリリースを簡単に実行できます。 エイリアスは、サービスまたはバージョンに依存します。 エイリアスを使用して1つまたは複数のサービスにアクセスする場合、Function Computeはエイリアスを特定のサービスバージョンとして解析します。
たとえば、HTTPトリガーにはエイリアスがありません。 新しいバージョンがロールアウトされるたびに、トリガーに関連付けられているバージョンを手動で変更する必要があります。 これは、クライアント上のユーザ体験を悪化させ得る。 エイリアスを使用してバージョンを管理すると、バージョンのスムーズな更新を実装できます。 次の図は、バージョン公開プロセスを示しています。 この例では、エイリアスPRODはバージョン1を指すように設定されています。 クライアントが要求を受信すると、クライアントは、エイリアスがPRODであるバージョン1のサービスの関数を呼び出す。
バージョン1が公開された後、最新バージョンに基づいて新しい機能を開発し続けることができます。 クライアントはエイリアスを使用して、関連バージョンのサービスの関数を呼び出します。 バージョン2を公開するには、エイリアスPRODの指定をバージョン2に変更するだけです。 クライアントが関数を呼び出すと、バージョン2が解析されます。 このように、バージョンは反復され、更新される。 さらに、エイリアスが指すバージョンを変更することもできます。 たとえば、エイリアスPRODが指すバージョンをバージョン1より前のバージョンに変更できます。 これにより、クライアントのユーザーエクスペリエンスを低下させることなくバージョンを公開できます。
前提条件
エイリアスの作成
Function Computeコンソールにログインします。 左側のナビゲーションウィンドウで、[サービスと機能] をクリックします。
上部のナビゲーションバーで、リージョンを選択します。 [サービス] ページで、目的のサービスをクリックします。
左側のナビゲーションウィンドウで、[エイリアス] をクリックします。 [エイリアス] ページで、[エイリアスの作成] をクリックします。
[サービスのエイリアスの作成] パネルで、パラメーターを設定し、OK をクリックします。
次の表に、エイリアスの作成に使用されるパラメーターを示します。
パラメーター
説明
名前
作成するエイリアスの名前を入力します。
説明
エイリアスの説明を入力します。
Majorバージョン
エイリアスのメジャーバージョンを指定します。
カナリアリリースの有効化
カナリアリリースバージョンを有効にするかどうかを指定します。 カナリアリリースを有効にするには、[はい] を選択し、ビジネス要件に基づいて次のパラメーターを設定します。
Canary Releaseバージョン
エイリアスのカナリアリリースバージョンを指定します。
カナリアリリースタイプ
カナリアリリースタイプを選択します。[ランダム] または [ルール別] です。
ランダム: トラフィックの一部をカナリアリリースバージョンに転送する重みを指定します。
[ルールによって]: カナリアリリースの実行に基づくルールを指定します。
説明By Rulesは、HTTPトリガーを使用してエイリアスを呼び出す場合にのみ有効になります。
Canary ReleaseバージョンWeight
カナリアリリースのバージョンの重みを指定します。 このパラメーターは、CanaryリリースタイプをRandomに設定した場合に必要です。
このパラメーターの値は、カナリアリリースバージョンに転送されるトラフィックの割合を指定します。 たとえば、値を5% に設定した場合、Function Computeは5% のトラフィックをカナリアリリースバージョンに、95% のトラフィックをメジャーバージョンに転送します。
ルールモード
ルールモードを指定します。 このパラメーターは、カナリアリリースタイプを [ルール別] に設定した場合に必要です。
このパラメーターは、指定されたルールに一致するモードを指定します。 有効な値:
すべて
会いなさい
ルール
ルールを指定します。 このパラメーターは、カナリアリリースタイプを [ルール別] に設定した場合に必要です。
各ルールには次のフィールドがあります。
パラメータタイプ: パラメータのタイプを指定します。 有効な値: Header、Cookie、およびQuery。
パラメーター: カナリアリリースの制御に使用されるパラメーターの名前を指定します。
条件: 比較の条件を指定します。 リクエストが送信されると、Function Computeは、parameterのパラメーターの実際の値と、指定された条件に基づいて指定したパラメーター値を比較します。 条件が一致した場合、リクエストはカナリアリリースバージョンにルーティングされます。 有効な値:
=, ! =, >, <, >=, <=
: 比較演算子。 たとえば、Conditionを=
に設定した場合、リクエストパラメーターの実際の値が指定された値に等しい場合にのみ、リクエストはカナリアリリースバージョンにルーティングされます。Include
: 文字列一致条件。 リクエストパラメーターの実際の値がvalueの値に含まれている場合にのみ、リクエストはカナリアリリースバージョンにルーティングされます。値の分布
: 指定されたパラメーター値の分布に基づいてカナリアリリースを実行します。 たとえば、Parameter TypeをHeaderに、Parameterをuser-id
に、Valueを20
に設定した場合、20% のHTTPリクエストは、リクエストヘッダーuser-id
の値の分布に基づいてカナリアリリースバージョンにルーティングされます。
値: カナリアのリリースを制御するために使用されるパラメーター値を指定します。
[+ ルールの追加] をクリックすると、ルールを追加できます。
高度な設定
プロビジョニング済みインスタンスのCanaryリリース重み
プロビジョニングモードのインスタンスのカナリアリリースの重みを制御する割合を指定します。 プロビジョニングされたインスタンスの数が1より大きい場合、Function Computeは指定された重みに基づいてインスタンスを生成します。 このパラメーターを指定しない場合、デフォルトの重みは1% です。
重要このパラメーターの値は、プロビジョニングされたインスタンスの数が1より大きい場合にのみ有効です。
[エイリアス] ページに、作成したエイリアスが表示されます。 不要になったエイリアスを変更または削除することもできます。 [操作] 列の目的のエイリアスに対応する [Logstore] をクリックすると、[Simple Log Serviceコンソール] に移動してログを表示できます。
エイリアスを削除すると、エイリアスのみが削除されます。 エイリアスが指すバージョンと、エイリアスを指すトリガーが保持されます。
詳細情報
Serverless Devsを使用して、サービスバージョンのエイリアスを構成することもできます。 詳細については、「Serverless Devsコマンド」をご参照ください。