クラウドネイティブ API ゲートウェイは、認証、トラフィック制御、セキュリティ保護などの機能のための組み込み拡張プラグインを提供します。また、カスタムプラグインをアップロードして、ゲートウェイの機能を柔軟に拡張することもできます。このトピックでは、プラグインのインストール、有効化、アンインストール方法について説明します。また、プラグインのバージョン管理、シームレスなホットアップデート、アップグレードまたはダウングレードについても説明します。
プラグインの概要
クラウドネイティブ API ゲートウェイのプラグインは、ソースに基づいて次の 3 種類に分類されます。
公式プラグイン: Higress によってリリースされたプラグイン。
コミュニティプラグイン: Higress コミュニティによって提供されたプラグイン。
カスタムプラグイン: ユーザー自身が使用するためにアップロードするプラグイン。
プラグインのインストールと有効化
プラグインをインストールするには、クラウドネイティブ API ゲートウェイでプラグインを選択し、ゲートウェイインスタンスにインストールします。プラグインを有効にするには、プラグインをインストールし、そのルールを設定して有効化する必要があります。クラウドネイティブ API ゲートウェイでは、プラグインをインストールするために 2 つのメソッドが提供されています。
MCP/ルーティングレベルのプラグインルール: これらのルールはルートに適用されます。これらのルールは、リクエストが特定のルートに一致した場合に有効になります。
ドメインレベルのプラグインルール: これらのルールはドメイン名に適用されます。特定のドメイン名のルールは、ワイルドカードドメイン名のルールよりも優先度が高くなります。
インスタンスレベルのプラグインルール: これらのルールはゲートウェイにグローバルに適用されます。ルーティングレベルまたはドメインレベルのルールが一致しない場合に、これらのルールが一致します。
方法 1: ゲートウェイインスタンスの外部からインストールする
クラウドネイティブ API ゲートウェイコンソールの プラグインページに移動します。トップメニューバーで、リージョンを選択します。
[プラグイン] ページで、[クイックナビゲーション] セクションを使用してプラグインの種類を選択するか、名前でプラグインを検索します。プラグインカードの [インストール] をクリックします。[プラグインのインストール] ダイアログボックスで、ターゲットゲートウェイインスタンスを選択し、[OK] をクリックします。
[設定] セクションで、ターゲットゲートウェイインスタンスを見つけ、[アクション] 列の [ルールの設定] をクリックします。ルール設定ページで、[範囲] を選択します。
[MCP/ルーティングレベルのプラグインルール] または [ドメインレベルのプラグインルール] を選択した場合は、[ルールの追加] をクリックします。[ルーティングレベルルールの追加] または [ドメインレベルルールの追加] ページで、[有効ステータス] スイッチをオンにし (デフォルトで有効)、[ターゲット] を選択し、[プラグインルール] を設定して、[OK] をクリックします。
[インスタンスレベルのプラグインルール] を選択した場合は、[有効ステータス] スイッチをオンにし (デフォルトで有効)、[プラグインルール] を設定して、[保存] をクリックします。
方法 2: ゲートウェイインスタンス内からインストールする
クラウドネイティブ API ゲートウェイコンソールの インスタンスページに移動します。トップメニューバーで、リージョンを選択します。
ターゲットインスタンスの詳細ページに移動します。左側のナビゲーションウィンドウで、[プラグイン] をクリックします。
[プラグインのインストール] をクリックします。[プラグインのインストール] ページで、[クイックナビゲーション] セクションを使用してプラグインの種類を選択するか、名前でプラグインを検索します。プラグインカードをクリックします。ダイアログボックスで、[インストールと設定] をクリックします。
[ルールの設定] ダイアログボックスで、選択したプラグインのルールを設定し、範囲を選択します。[OK] をクリックします。
(オプション) ゲートウェイインスタンスページで、左側のナビゲーションウィンドウで [プラグイン] を選択します。プラグインリストで、目的のプラグインの [アクション] 列にある [ルールの設定] をクリックして、そのルールと範囲を設定します。
[MCP/ルーティングレベルのプラグインルール] または [ドメインレベルのプラグインルール] を選択した場合は、[ルールの追加] をクリックします。[ルーティングレベルルールの追加] または [ドメインレベルルールの追加] ページで、[有効ステータス] スイッチをオンにし (デフォルトで有効)、[ターゲット] を選択し、[プラグインルール] を設定して、[OK] をクリックします。
[インスタンスレベルのプラグインルール] を選択した場合は、[有効ステータス] スイッチをオンにし (デフォルトで有効)、[プラグインルール] を設定して、[保存] をクリックします。
プラグインのアンインストール
背景
ゲートウェイ上のプラグインが不要になった場合は、アンインストールして完全に削除できます。クラウドネイティブ API ゲートウェイでは、プラグインをアンインストールするために 2 つのメソッドが提供されています。
有効なルールを持つプラグインをアンインストールする前に、まずそれを無効にする必要があります。プラグインが有効になっていない場合、アンインストールすると設定されているすべてのルールも削除されます。
方法 1: ゲートウェイインスタンスの外部からアンインストールする
クラウドネイティブ API ゲートウェイコンソールの プラグインページに移動します。トップメニューバーで、リージョンを選択します。
[プラグイン] ページで、[クイックナビゲーション] セクションを使用してプラグインの種類を選択するか、名前でプラグインを検索します。アンインストールするプラグインのカードをクリックします。
[設定] タブをクリックします。プラグインをアンインストールするゲートウェイインスタンスを見つけ、[アクション] 列の [アンインストール] をクリックします。
確認ダイアログボックスで、[OK] をクリックします。成功メッセージが表示されます。
方法 2: ゲートウェイインスタンス内からアンインストールする
クラウドネイティブ API ゲートウェイコンソールの インスタンスページに移動します。トップメニューバーで、リージョンを選択します。
ターゲットインスタンスの詳細ページに移動します。左側のナビゲーションウィンドウで、[プラグイン] をクリックします。
プラグインリストで、アンインストールするプラグインを見つけ、[アクション] 列の [アンインストール] をクリックします。
確認ダイアログボックスで、[OK] をクリックします。成功メッセージが表示されます。
カスタムプラグインにバージョンを追加する
Lua カスタムプラグインは例外であり、バージョン管理をサポートしていません。
バージョンを追加すると、カスタムプラグインへの各変更に対して新しいバージョンレコードが作成されます。これにより、変更の管理、履歴の追跡、リリースの制御が可能になります。次のステップに従ってください。
クラウドネイティブ API ゲートウェイコンソールの プラグインページに移動します。トップメニューバーで、リージョンを選択します。
[プラグイン] ページで、[クイックナビゲーション] セクションを使用して [プラグインタイプ] を [カスタム] に設定するか、名前でプラグインを検索します。プラグインカードの [バージョンの追加] をクリックします。[バージョンの追加] パネルで、[バージョン情報] を設定します。
バージョン番号: プラグインのバージョン識別子を入力します。バージョン番号は、
1.0.1のようにセマンティックバージョニング (SemVer) 仕様に準拠する必要があります。バージョン説明: このバージョンの機能や変更点の簡単な説明を入力します (例:
Added rate limiting feature)。WASM ファイル: ゲートウェイでプラグインロジックを実行する、コンパイル済みの
.wasmファイルをアップロードします。実行フェーズ: プラグインが実行されるリクエスト処理フローのフェーズを選択します (例:
Default Phase)。実行優先度: プラグインの実行順序を指定する数値を入力します。数値が大きいほど、優先度が高くなります。
互換性のあるゲートウェイバージョン: このプラグインと互換性のあるゲートウェイエンジンのバージョン番号を入力して、正しく実行されることを確認します。
説明このプラグインをインストールできる最小ゲートウェイバージョン。
プラグインのバージョンを変更する
スムーズなアップグレードを確実にするために、新しいバージョンが現在のバージョンのルール設定と互換性があることを確認してください。
クラウドネイティブ API ゲートウェイコンソールの インスタンスページに移動します。トップメニューバーで、リージョンを選択します。
ターゲットインスタンスの詳細ページに移動します。左側のナビゲーションウィンドウで、[プラグイン] をクリックします。
プラグインリストで、ターゲットプラグインを見つけ、[アクション] 列の [バージョンの変更] をクリックします。
[バージョンの変更] ダイアログボックスで、ターゲットバージョンを選択し、[OK] をクリックします。
バージョンを削除する
クラウドネイティブ API ゲートウェイコンソールの プラグインページに移動します。トップメニューバーで、リージョンを選択します。
[プラグイン] ページで、[クイックナビゲーション] セクションを使用して [プラグインタイプ] を [カスタム] に設定するか、名前でプラグインを検索します。プラグインカード上で、マウスのポインターを
アイコンの上に移動します。[プラグインの削除] をクリックし、削除するバージョンを選択して、[OK] をクリックします。