Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerFlex Gateway を登録する前に、以下のタスクを完了する必要があります。
Anypoint Platform 管理者に Runtime Manager での「Manage Servers (サーバーの管理)」権限と「Read Servers (サーバーの参照)」権限を要求します。
Anypoint Platform インスタンスから以下の情報を収集します。
Flex Gateway を実行する組織の組織 ID
組織 ID の見つけ方については、「組織 ID を見つける」を参照してください。
Flex Gateway を実行する Anypoint Platform 環境の登録トークン
Runtime Manager に移動して、左側のナビゲーションにある [Flex Gateway] を選択し、[Add Gateway (ゲートウェイを追加)] をクリックして、登録トークンを使用したコマンドブロックを含む命令セットを生成します。
Flex Gateway は、以下の Long Term Support (LTS) バージョンの Linux で動作します。
Amazon Linux 2023
CentOS 8
Debian (Buster、Bullseye、Bookworm)
Red Hat Enterprise Linux (8、9)
IBM Power (ppc64le) の Red Hat Enterprise Linux (8、9)
SUSE Linux Enterprise (SLES 15 SP2)
IBM Power (ppc64le) の SUSE Linux Enterprise (SLES 15 SP2)
Ubuntu (Bionic、Focal、Jammy)
Anypoint Platform で Flex Gateway を登録するには、登録コマンドに続いて開始コマンドを入力する必要があります。各コマンドには、Anypoint Platform インスタンスに特有の情報が含まれ、実行前に更新する必要があります。必要な情報の見つけ方については、始める前に[Before You Begin]を参照してください。
Flex Gateway インスタンスを登録する前に、次の登録コマンドオプションの情報を収集します。
--token
= Anypoint Platform の環境の登録トークン
--organization
= Anypoint Platform の組織 ID
--split
(省略可能) = 登録情報を複数のファイルに分割するかどうかを決定するフラグ。デフォルト値は false
です。
split
が true
に設定されている場合、登録情報は registration.yaml
と certificate.yaml
の 2 つのファイルに分割されます。false
の場合、すべての登録情報は 1 つの registration.yaml
ファイルに含まれます。
--output-directory
(省略可能) = 登録情報を出力するディレクトリ
my-gateway
= ゲートウェイクラスターに割り当てる名前
コマンドオプションについて収集したデータを使用して、Flex Gateway インスタンスを登録します。
flexctl register \
--token=<your-registration-token> \
--organization=<your-org-id> \
--output-directory=/usr/local/share/mulesoft/flex-gateway/conf.d \
my-gateway
このコマンドの実行時にファイル権限の問題が発生した場合は、sudo
を使用してください。
欧州では、--anypoint-url=https://eu1.anypoint.mulesoft.com フラグをコマンドに追加する必要があります。
|
出力ディレクトリに次の新しい登録ファイルが含まれます。
registration.yaml
certificate.yaml
(split
登録パラメーターが true
に設定されている場合にのみ生成。それ以外の場合、証明書情報は registration.yaml
に含まれる)
生成されるこれらのファイルは、Flex Gateway を接続するためのログイン情報です。これらのファイルを消失すると、Flex Gateway を接続できなくなります。 |
次のコマンドで Flex Gateway を開始します。
sudo systemctl start flex-gateway
Flex Gateway サービスが正常に実行されていることを確認します。
systemctl list-units flex-gateway*
flex-gateway.service
の状況が [active (アクティブ)]
である場合、Flex Gateway は正常に実行されています。
UNIT LOAD ACTIVE SUB DESCRIPTION
flex-gateway.service loaded active running Application
Flex Gateway は、次のいずれかのコンテナで使用するために登録して実行できます。
Anypoint Platform で Flex Gateway を登録するには、登録コマンドに続いて開始コマンドを入力する必要があります。各コマンドには、Anypoint Platform インスタンスに特有の情報が含まれ、実行前に更新する必要があります。必要な情報の見つけ方については、始める前に[Before You Begin]を参照してください。
Flex Gateway インスタンスを登録する前に、次の登録コマンドオプションの情報を収集します。
--token
= Anypoint Platform の環境の登録トークン
--organization
= Anypoint Platform の組織 ID
--split
(省略可能) = 登録情報を複数のファイルに分割するかどうかを決定するフラグ。デフォルト値は false
です。
split
が true
に設定されている場合、登録情報は registration.yaml
と certificate.yaml
の 2 つのファイルに分割されます。false
の場合、すべての登録情報は 1 つの registration.yaml
ファイルに含まれます。
--output-directory
(省略可能) = 登録情報を出力するディレクトリ
my-gateway
= ゲートウェイクラスターに割り当てる名前
コマンドオプションについて収集したデータを使用して、Flex Gateway インスタンスを登録します。
flex-registration という名前 (または同様の名前) の新しいディレクトリを作成し、この新しいディレクトリで登録コマンドを実行します。コマンドにより、この場所に登録ファイルが作成されます。
|
docker run --entrypoint flexctl \
-v "$(pwd)":/registration -u $UID mulesoft/flex-gateway \
register \
--token=<your-registration-token> \
--organization=<your-org-id> \
--output-directory=/registration \
my-gateway
このコマンドの実行時にファイル権限の問題が発生した場合は、sudo
を使用してください。
欧州では、--anypoint-url=https://eu1.anypoint.mulesoft.com フラグをコマンドに追加する必要があります。
|
出力ディレクトリに次の新しい登録ファイルが含まれます。
registration.yaml
certificate.yaml
(split
登録パラメーターが true
に設定されている場合にのみ生成。それ以外の場合、証明書情報は registration.yaml
に含まれる)
生成されるこれらのファイルは、Flex Gateway を接続するためのログイン情報です。これらのファイルを消失すると、Flex Gateway を接続できなくなります。 |
登録コマンドを実行したディレクトリで、次の開始コマンドを実行します。
docker run --rm \
-v "$(pwd)":/usr/local/share/mulesoft/flex-gateway/conf.d \
-p 8080:8080 \
mulesoft/flex-gateway
-e FLEX_NAME=<name-for-flex-replica> \ を含めて、Flex レプリカに割り当てる名前 (省略可能) を指定します。
|
出力ログには次の行が含まれます。
[flex-gateway-envoy][info] all dependencies initialized. starting workers
Anypoint Platform で Flex Gateway を登録するには、登録コマンドに続いて開始コマンドを入力する必要があります。各コマンドには、Anypoint Platform インスタンスに特有の情報が含まれ、実行前に更新する必要があります。必要な情報の見つけ方については、始める前に[Before You Begin]を参照してください。
Flex Gateway インスタンスを登録する前に、次の登録コマンドオプションの情報を収集します。
--token
= Anypoint Platform の環境の登録トークン
--organization
= Anypoint Platform の組織 ID
--split
(省略可能) = 登録情報を複数のファイルに分割するかどうかを決定するフラグ。デフォルト値は false
です。
split
が true
に設定されている場合、登録情報は registration.yaml
と certificate.yaml
の 2 つのファイルに分割されます。false
の場合、すべての登録情報は 1 つの registration.yaml
ファイルに含まれます。
--output-directory
(省略可能) = 登録情報を出力するディレクトリ
my-gateway
= ゲートウェイクラスターに割り当てる名前
コマンドオプションについて収集したデータを使用して、Flex Gateway インスタンスを登録します。
flex-registration という名前 (または同様の名前) の新しいディレクトリを作成し、この新しいディレクトリで登録コマンドを実行します。コマンドにより、この場所に登録ファイルが作成されます。
|
podman run --entrypoint flexctl --userns=keep-id \
-v "$(pwd)":/registration:Z -u $UID docker.io/mulesoft/flex-gateway \
register \
--token=<your-registration-token> \
--organization=<your-org-id> \
--output-directory=/registration \
my-gateway
このコマンドの実行時にファイル権限の問題が発生した場合は、sudo
を使用してください。
欧州では、--anypoint-url=https://eu1.anypoint.mulesoft.com フラグをコマンドに追加する必要があります。
|
出力ディレクトリに次の新しい登録ファイルが含まれます。
registration.yaml
certificate.yaml
(split
登録パラメーターが true
に設定されている場合にのみ生成。それ以外の場合、証明書情報は registration.yaml
に含まれる)
生成されるこれらのファイルは、Flex Gateway を接続するためのログイン情報です。これらのファイルを消失すると、Flex Gateway を接続できなくなります。 |
登録コマンドを実行したディレクトリで、次の開始コマンドを実行します。
podman run --rm \
-v "$(pwd)":/usr/local/share/mulesoft/flex-gateway/conf.d \
-p 8080:8080 \
docker.io/mulesoft/flex-gateway
-e FLEX_NAME=<name-for-flex-replica> \ を含めて、Flex レプリカに割り当てる名前 (省略可能) を指定します。
|
出力ログには次の行が含まれます。
[flex-gateway-envoy][info] all dependencies initialized. starting workers
Flex Gateway を登録し、Helm を使用して Flex Gateway をクラスターのノードにデプロイします。
ロールベースのアクセス制御 (RBAC) を有効にする Kubernetes クラスターに Flex Gateway をデプロイする場合、Flex Gateway で使用されるカスタムリソース定義 (CRD) のインストールを許可するクラスターレベルの権限が必要です。
次の手順を実行します。
通常、ローカルモードの Flex Gateway は、クラスターへの外部アクセスを管理するイングレスコントローラーとして機能します。Flex Gateway は、内部 (east-west) トラフィックのスタンドアロンゲートウェイとして機能することもできます。
このモードを使用する場合、作成および適用するリソースを把握して、kubectl apply
を使用して Kubernetes 対象およびリソース (API、ポリシー、Flex Gateway 関連のリソース) をゲートウェイにデプロイする必要があります。
Ingress
リソースを適用してゲートウェイルーティングルールを設定すると、Flex Gateway はイングレスコントローラーとして機能します。YAML ファイルを介してこの設定を行います。このファイルでは、ロードバランサーまたはプロキシサーバー、および HTTP と HTTPS トラフィックを転送するルール
を設定するための他のプロパティ (apiVersion
、kind
、metadata
、spec
など) がサポートされています。Flex Gateway での Ingress
リソースの管理方法についての詳細は、「ローカルモードでのイングレスコントローラーとしての Flex Gateway の設定」を参照してください。
Flex Gateway インスタンスを登録する前に、次の登録コマンドオプションの情報を収集します。
--token
= Anypoint Platform の環境の登録トークン
--organization
= Anypoint Platform の組織 ID
--split
(省略可能) = 登録情報を複数のファイルに分割するかどうかを決定するフラグ。デフォルト値は false
です。
split
が true
に設定されている場合、登録情報は registration.yaml
と certificate.yaml
の 2 つのファイルに分割されます。false
の場合、すべての登録情報は 1 つの registration.yaml
ファイルに含まれます。
--output-directory
(省略可能) = 登録情報を出力するディレクトリ
my-gateway
= ゲートウェイクラスターに割り当てる名前
コマンドオプションについて収集したデータを使用して、Flex Gateway インスタンスを登録します。
次のいずれかのコンテナランタイムを使用して登録できます。
Docker を使用して登録するには、次のコマンドを実行します。
docker run --entrypoint flexctl \
-v "$(pwd)":/registration -u $UID mulesoft/flex-gateway \
register \
--token=<your-registration-token> \
--organization=<your-org-id> \
--output-directory=/registration \
my-gateway
このコマンドの実行時にファイル権限の問題が発生した場合は、sudo
を使用してください。
欧州では、--anypoint-url=https://eu1.anypoint.mulesoft.com フラグをコマンドに追加する必要があります。
|
出力ディレクトリに次の新しい登録ファイルが含まれます。
registration.yaml
certificate.yaml
(split
登録パラメーターが true
に設定されている場合にのみ生成。それ以外の場合、証明書情報は registration.yaml
に含まれる)
生成されるこれらのファイルは、Flex Gateway を接続するためのログイン情報です。これらのファイルを消失すると、Flex Gateway を接続できなくなります。 |
Podman を使用して登録するには、次のコマンドを実行します。
podman run --entrypoint flexctl --userns=keep-id \
-v "$(pwd)":/registration:Z -u $UID docker.io/mulesoft/flex-gateway \
register \
--token=<your-registration-token> \
--organization=<your-org-id> \
--output-directory=/registration \
my-gateway
このコマンドの実行時にファイル権限の問題が発生した場合は、sudo
を使用してください。
欧州では、--anypoint-url=https://eu1.anypoint.mulesoft.com フラグをコマンドに追加する必要があります。
|
出力ディレクトリに次の新しい登録ファイルが含まれます。
registration.yaml
certificate.yaml
(split
登録パラメーターが true
に設定されている場合にのみ生成。それ以外の場合、証明書情報は registration.yaml
に含まれる)
生成されるこれらのファイルは、Flex Gateway を接続するためのログイン情報です。これらのファイルを消失すると、Flex Gateway を接続できなくなります。 |
Helm チャートで Flex Gateway、監視ツール、アプリケーションをインストールします。 Helm バージョン 3.0.0 以降が必要です。 設定オプションについては、Helm チャート設定を参照してください。
チャートの flex-gateway
という名前の Helm リポジトリを追加します。
helm repo add flex-gateway https://flex-packages.anypoint.mulesoft.com/helm
このコマンドにより、リポジトリが追加されます。その名前の Helm リポジトリがすでにマシンに存在する場合はこのプロセスはスキップされます。
新しいリポジトリの場合、コマンドで次のメッセージが返されます。
"flex-gateway" has been added to your repositories
リポジトリがすでに存在する場合、コマンドで次のメッセージが返されます。
"flex-gateway" already exists with the same configuration, skipping
helm repo up
を実行します。
コマンドで次のメッセージが返されます。
Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "flex-gateway" chart repository Update Complete. ⎈Happy Helming!⎈
マシンに複数の Helm リポジトリがある場合、ターミナルウィンドウのメッセージにすべてのリポジトリがリストされます。
ローカルモードでゲートウェイをデプロイするための Helm コマンドを実行します。
helm -n gateway upgrade -i --create-namespace \
--wait ingress flex-gateway/flex-gateway \
--set-file registration.content=registration.yaml
このコマンドにより、gateway
名前空間と ingress
という名前のリリースが作成されます (これらが存在しない場合)。名前空間とリリースには、任意の名前を使用できます。Helm リポジトリ名と Helm チャート名のコマンド構文は、<helm-repo-name>/<helm-chart-name>
です。
Flex Gateway をインストールすると、デフォルトでサービス種別 LoadBalancer
が作成されます。クラウドでロードバランサーを作成するには適切な権限が割り当てられている必要があります。ロードバランサーがプロビジョニングされないか、プロビジョニングプロセスで問題が発生する場合は、インストール時に service.type
プロパティを変更して別の種別を選択する必要があります。
このコマンドが成功すると、ingress
リリースへのアップグレードを示すメッセージが出力されます。
Release "ingress" does not exist. Installing it now. NAME: ingress LAST DEPLOYED: Mon Mar 20 21:36:19 2023 NAMESPACE: gateway STATUS: deployed REVISION: 1 TEST SUITE: None
同じ名前空間、リポジトリ、チャート名でこのコマンドを実行するたびに、ingress
リリースの REVISION
値が 1
ずつ増加します。たとえば、2 回コマンドを実行すると、新しいリビジョン番号が表示されます (REVISION: 2
)。LAST DEPLOYED
には、そのリビジョンの日付が反映されます。
新しい値でデフォルトの Helm 設定 (CPU やメモリ設定の resource
値など) を変更するには、「Helm チャートを介した Flex Gateway デプロイメントのポッド設定の更新. For additional Helm chart configurations, see Kubernetes デプロイメントの管理」を参照してください。
Flex Gateway デプロイメントの Helm チャートを変更する前に、デフォルトの Helm チャート設定を確認してください。
ArtifactHUB の flex-gateway ページを開く
ターミナルウィンドウから helm show values <repository-name>/<chart-name>
を実行します。
helm show values flex-gateway/flex-gateway
この例では、同じ名前のリポジトリおよびチャートのデフォルト値を返します。
Helm チャートの README
を表示するには、ターミナルウィンドウから helm show readme <repository-name>/<chart-name>
を実行します。
helm show readme flex-gateway/flex-gateway
Flex Gateway を登録し、Helm を使用して Flex Gateway をクラスターのノードにデプロイします。
ロールベースのアクセス制御 (RBAC) を有効にする Kubernetes クラスターに Flex Gateway をデプロイする場合、Flex Gateway で使用されるカスタムリソース定義 (CRD) のインストールを許可するクラスターレベルの権限が必要です。
OpenShift では、cluster-admin
ロールによってこのレベルのアクセスが提供されます。
コマンドラインからの OpenShift の手順と Kubernetes の手順は同じです。 次の手順を実行します。
通常、ローカルモードの Flex Gateway は、クラスターへの外部アクセスを管理するイングレスコントローラーとして機能します。Flex Gateway は、内部 (east-west) トラフィックのスタンドアロンゲートウェイとして機能することもできます。
このモードを使用する場合、作成および適用するリソースを把握して、kubectl apply
を使用して Kubernetes 対象およびリソース (API、ポリシー、Flex Gateway 関連のリソース) をゲートウェイにデプロイする必要があります。
Ingress
リソースを適用してゲートウェイルーティングルールを設定すると、Flex Gateway はイングレスコントローラーとして機能します。YAML ファイルを介してこの設定を行います。このファイルでは、ロードバランサーまたはプロキシサーバー、および HTTP と HTTPS トラフィックを転送するルール
を設定するための他のプロパティ (apiVersion
、kind
、metadata
、spec
など) がサポートされています。Flex Gateway での Ingress
リソースの管理方法についての詳細は、「ローカルモードでのイングレスコントローラーとしての Flex Gateway の設定」を参照してください。
Flex Gateway インスタンスを登録する前に、次の登録コマンドオプションの情報を収集します。
--token
= Anypoint Platform の環境の登録トークン
--organization
= Anypoint Platform の組織 ID
--split
(省略可能) = 登録情報を複数のファイルに分割するかどうかを決定するフラグ。デフォルト値は false
です。
split
が true
に設定されている場合、登録情報は registration.yaml
と certificate.yaml
の 2 つのファイルに分割されます。false
の場合、すべての登録情報は 1 つの registration.yaml
ファイルに含まれます。
--output-directory
(省略可能) = 登録情報を出力するディレクトリ
my-gateway
= ゲートウェイクラスターに割り当てる名前
コマンドオプションについて収集したデータを使用して、Flex Gateway インスタンスを登録します。
次のいずれかのコンテナランタイムを使用して登録できます。
Docker を使用して登録するには、次のコマンドを実行します。
docker run --entrypoint flexctl \
-v "$(pwd)":/registration -u $UID mulesoft/flex-gateway \
register \
--token=<your-registration-token> \
--organization=<your-org-id> \
--output-directory=/registration \
my-gateway
このコマンドの実行時にファイル権限の問題が発生した場合は、sudo
を使用してください。
欧州では、--anypoint-url=https://eu1.anypoint.mulesoft.com フラグをコマンドに追加する必要があります。
|
出力ディレクトリに次の新しい登録ファイルが含まれます。
registration.yaml
certificate.yaml
(split
登録パラメーターが true
に設定されている場合にのみ生成。それ以外の場合、証明書情報は registration.yaml
に含まれる)
生成されるこれらのファイルは、Flex Gateway を接続するためのログイン情報です。これらのファイルを消失すると、Flex Gateway を接続できなくなります。 |
Podman を使用して登録するには、次のコマンドを実行します。
podman run --entrypoint flexctl --userns=keep-id \
-v "$(pwd)":/registration:Z -u $UID docker.io/mulesoft/flex-gateway \
register \
--token=<your-registration-token> \
--organization=<your-org-id> \
--output-directory=/registration \
my-gateway
このコマンドの実行時にファイル権限の問題が発生した場合は、sudo
を使用してください。
欧州では、--anypoint-url=https://eu1.anypoint.mulesoft.com フラグをコマンドに追加する必要があります。
|
出力ディレクトリに次の新しい登録ファイルが含まれます。
registration.yaml
certificate.yaml
(split
登録パラメーターが true
に設定されている場合にのみ生成。それ以外の場合、証明書情報は registration.yaml
に含まれる)
生成されるこれらのファイルは、Flex Gateway を接続するためのログイン情報です。これらのファイルを消失すると、Flex Gateway を接続できなくなります。 |
Helm チャートで Flex Gateway、監視ツール、アプリケーションをインストールします。 Helm バージョン 3.0.0 以降が必要です。 設定オプションについては、Helm チャート設定を参照してください。
チャートの flex-gateway
という名前の Helm リポジトリを追加します。
helm repo add flex-gateway https://flex-packages.anypoint.mulesoft.com/helm
このコマンドにより、リポジトリが追加されます。その名前の Helm リポジトリがすでにマシンに存在する場合はこのプロセスはスキップされます。
新しいリポジトリの場合、コマンドで次のメッセージが返されます。
"flex-gateway" has been added to your repositories
リポジトリがすでに存在する場合、コマンドで次のメッセージが返されます。
"flex-gateway" already exists with the same configuration, skipping
helm repo up
を実行します。
コマンドで次のメッセージが返されます。
Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "flex-gateway" chart repository Update Complete. ⎈Happy Helming!⎈
マシンに複数の Helm リポジトリがある場合、ターミナルウィンドウのメッセージにすべてのリポジトリがリストされます。
ローカルモードでゲートウェイをデプロイするための Helm コマンドを実行します。
helm -n gateway upgrade -i --create-namespace \
--wait ingress flex-gateway/flex-gateway \
--set-file registration.content=registration.yaml
このコマンドにより、gateway
名前空間と ingress
という名前のリリースが作成されます (これらが存在しない場合)。名前空間とリリースには、任意の名前を使用できます。Helm リポジトリ名と Helm チャート名のコマンド構文は、<helm-repo-name>/<helm-chart-name>
です。
Flex Gateway をインストールすると、デフォルトでサービス種別 LoadBalancer
が作成されます。クラウドでロードバランサーを作成するには適切な権限が割り当てられている必要があります。ロードバランサーがプロビジョニングされないか、プロビジョニングプロセスで問題が発生する場合は、インストール時に service.type
プロパティを変更して別の種別を選択する必要があります。
このコマンドが成功すると、ingress
リリースへのアップグレードを示すメッセージが出力されます。
Release "ingress" does not exist. Installing it now. NAME: ingress LAST DEPLOYED: Mon Mar 20 21:36:19 2023 NAMESPACE: gateway STATUS: deployed REVISION: 1 TEST SUITE: None
同じ名前空間、リポジトリ、チャート名でこのコマンドを実行するたびに、ingress
リリースの REVISION
値が 1
ずつ増加します。たとえば、2 回コマンドを実行すると、新しいリビジョン番号が表示されます (REVISION: 2
)。LAST DEPLOYED
には、そのリビジョンの日付が反映されます。
新しい値でデフォルトの Helm 設定 (CPU やメモリ設定の resource
値など) を変更するには、「Helm チャートを介した Flex Gateway デプロイメントのポッド設定の更新. For additional Helm chart configurations, see Kubernetes デプロイメントの管理」を参照してください。
Flex Gateway デプロイメントの Helm チャートを変更する前に、デフォルトの Helm チャート設定を確認してください。
ArtifactHUB の flex-gateway ページを開く
ターミナルウィンドウから helm show values <repository-name>/<chart-name>
を実行します。
helm show values flex-gateway/flex-gateway
この例では、同じ名前のリポジトリおよびチャートのデフォルト値を返します。
Helm チャートの README
を表示するには、ターミナルウィンドウから helm show readme <repository-name>/<chart-name>
を実行します。
helm show readme flex-gateway/flex-gateway