メインコンテンツへスキップ
Connect Gateway はオンプレミスのゲートウェイであり、Docker コンテナとして実行するか、Helm を介して Kubernetes にデプロイできます。ゲートウェイは、会社のファイアウォール、プライベートネットワーク、または Virtual Private Cloud (VPC) の内側にあるデータと、Connect AI のクラウドベースのサービスとの間を安全なリバーストンネルで接続します。これにより、データをインターネットに直接公開することなく、Connect AI がデータにアクセスできます。
Connect Gateway Architecture
各ゲートウェイは、個々の接続設定の中で Connect AI のユーザーインターフェースに登録します。複数の場所にゲートウェイを配置することが可能です。場所ごとに Connect AI にゲートウェイを登録する必要があります。 Connect Gateway は、同一の場所とアカウント Id を指す複数のゲートウェイインスタンス(複数の Docker コンテナ、または Kubernetes デプロイメントのレプリカ)をサポートすることで、高可用性を実現します。1 つのインスタンスが停止した場合、リクエストは残りのゲートウェイインスタンスに自動的にルーティングされます。 次の図は、Connect Gateway が複数の場所と複数のデータソースをどのようにサポートするかを示しています。
Connect Gateway Architecture Advanced
現在、Connect AI は Connect Gateway で次のコネクタをサポートしています: Connect Gateway で別のコネクタが必要な場合は、CData サポートにお問い合わせください。 Connect Gateway のセットアップには、次の 3 つの主要なステップがあります:
2
オンプレミスデータが存在する各場所でオンプレミスゲートウェイをインストールして実行します。Docker で Connect Gateway をデプロイするか、Kubernetes で Connect Gateway をデプロイするかのいずれかを選択できます。
3
Connect AI でConnect Gateway セットアップを完了し、ゲートウェイをテストしてコネクションを完成させます。

Connect AI に Connect Gateway を登録する

Connect AI に Connect Gateway を登録するには、次の手順に従います:
1
Sources に移動し、新しいコネクションの場合は Add Connection をクリックするか、既存のコネクションを編集します。
2
Add/Edit Connection ページで Gateways タブをクリックします。
3
GatewaysAdd をクリックします。Add Gateway ダイアログが表示されます。
Add Gateway
4
ゲートウェイがインストールされている場所を識別するための説明的な場所名を入力し、Confirm をクリックします。Gateways リストに場所が表示され、キーと Pending ステータスが示されます。目のアイコンをクリックしてキーを確認できます。
Gateways List
オンプレミスゲートウェイに必要な次の値をコピーしてください(コピーアイコンをクリックします):
  • Account Id–オンプレミスゲートウェイの ACCOUNT_ID 環境変数です。
  • Location Id–オンプレミスゲートウェイの GATEWAY_LOCATION_ID 環境変数です。
  • Key–オンプレミスゲートウェイの GATEWAY_API_KEY 環境変数です。

Docker で Connect Gateway をデプロイする

オンプレミスゲートウェイは、ネットワーク内で動作する軽量なサービスで、Connect AI とローカルデータソースの間を安全なリバーストンネルで接続します。ゲートウェイは起動時に Connect AI に自己登録します。その後、Azure Relay テクノロジーを使用して受信接続を待機しますが、パブリックインターネットに公開されることはありません。 ゲートウェイはプロトコルに依存しません。データベースプロトコル(MySQL、PostgreSQL、SQL Server など)を認識せずに生のバイトをそのまま転送するため、TCP ベースのデータソースと互換性があります。

前提条件

Connect Gateway を Docker コンテナとして実行するには、次のものが必要です:
  • ホストマシンに Docker がインストールされていること。
  • cloud.cdata.com へのネットワークアクセスがあること。
  • Connect AI でゲートウェイが作成されていること。

環境変数

ゲートウェイを実行するには、次の環境変数が必要です:
変数説明
GATEWAY_LOCATION_IDこのゲートウェイインスタンスの一意の識別子です。Connect AI の Gateways リストで、ユーザーが定義した Location Name の下に表示される値をコピーします。
GATEWAY_API_KEYこのゲートウェイを Connect AI で認証するためのシークレット API キーです。Connect AI の Gateways リストの Key の下に表示される値をコピーします。
ACCOUNT_IDCData Connect AI のアカウント識別子です。組織固有の値です。Connect AI の Gateways リストの Account Id をコピーします。

Docker でゲートウェイを実行する

次のようにゲートウェイを実行します:
docker run \
    --name my-onprem-gateway \
    -e GATEWAY_LOCATION_ID=<gateway_location_id> \
    -e GATEWAY_API_KEY=<gateway_api_key> \
    -e ACCOUNT_ID=<account_id> \
    connectaipublic.azurecr.io/connectgateway:latest
docker run は、Docker イメージがホストにまだ存在しない場合、レジストリからイメージをプルします。

Docker ログを確認する

docker logs -f my-onprem-gateway

ゲートウェイを停止する

docker stop my-onprem-gateway
docker rm my-onprem-gateway

Docker Compose

次の内容をコピーして docker-compose.yml として保存します:
version: "3.8"

services:
  onprem-gateway:
    image: connectaipublic.azurecr.io/connectgateway:latest
    container_name: my-onprem-gateway
    restart: unless-stopped
    environment:
      GATEWAY_LOCATION_ID: <gateway_location_id>
      GATEWAY_API_KEY: <gateway_api_key>
      ACCOUNT_ID: <account_id>

ゲートウェイを起動する

docker compose up
docker compose up は、Docker イメージがホストにまだ存在しない場合、レジストリからイメージをプルします。

ログを確認する

docker compose logs -f

ゲートウェイを停止する

docker compose down

Kubernetes で Connect Gateway をデプロイする

Connect Gateway の Kubernetes Helm チャートは GitHub リポジトリで公開されています。 Kubernetes へのデプロイには次のものが必要です:
  • Kubernetes 1.25 以降
  • Helm 3.10 以降
  • クラスタに Metrics Server がインストールされていること(メモリベースのオートスケーリングに必要)
  • クラスタから cloud.cdata.com へのネットワーク送信
  • Connect AI の Account IdLocation Id、および Key。これらの値の場所についてはConnect AI に Connect Gateway を登録するを参照してください。

クイックスタート

Helm リポジトリを追加します:
helm repo add cdata https://cdatasoftware.github.io/connect-gateway-helm
helm repo update
チャートをインストールします:
helm install connect-gateway cdata/connect-gateway \
  --set gateway.locationId=<location-id> \
  --set gateway.accountId=<account-id> \
  --set gateway.apiKey=<api-key> \
  -n connect-gateway --create-namespace
GitHub リリースから直接インストールすることもできます。これは、エアギャップ環境や Helm リポジトリを追加したくない場合に便利です。以下の URL のバージョンは、最新のリリースに置き換えてください。
helm install connect-gateway \
  https://github.com/CDataSoftware/connect-gateway-helm/releases/download/v1.0.0/connect-gateway-1.0.0.tgz \
  --set gateway.locationId=<location-id> \
  --set gateway.accountId=<account-id> \
  --set gateway.apiKey=<api-key> \
  -n connect-gateway --create-namespace
本番環境では、ゲートウェイ認証情報を含む Kubernetes Secret を作成し、--set gateway.apiKey=… の代わりに --set existingSecret=<secret-name> を渡してください。--set で API キーを渡すと、シェルの履歴と Helm リリースに保存される values に書き込まれます。シークレット管理のパターンについては Helm チャートの Readme ファイルを参照してください。

ゲートウェイが動作していることを確認する

ゲートウェイの Pod が準備完了になっていることを確認し、ログを表示します:
kubectl get pods -n connect-gateway
kubectl logs -n connect-gateway -l app.kubernetes.io/name=connect-gateway -f

ゲートウェイをアップグレードする

helm repo update
helm upgrade connect-gateway cdata/connect-gateway -n connect-gateway

ゲートウェイをアンインストールする

helm uninstall connect-gateway -n connect-gateway
インストールオプション、設定値、シークレット管理パターンの完全なリストについては、Helm チャートの Readme ファイルを参照してください。

Connect Gateway セットアップを完了する

Connect AI に戻り、Connect Gateway のセットアップを完了します。
1
Docker で Connect Gateway をデプロイするまたは Kubernetes で Connect Gateway をデプロイするのステップが完了したら、Gateways に追加したゲートウェイをテストできます。Add/Edit Connection ページの Connect Gateway タブをクリックします。Test Gateways をクリックします。すべてのゲートウェイのセットアップが完了すると、StatusSuccess に変わります。
コネクション全体をテストするには、引き続き Save & Test をクリックする必要があります。
2
コネクションの Basic Settings タブに戻ります。Connection TypeConnect Gateway を選択します。
3
ドロップダウンリストから使用する Connect Gateway の場所を選択します。
Basic Settings
4
コネクタの Documentation ペインに従って、コネクタの Authentication の手順を入力します。
5
Save & Test をクリックしてコネクタを認証します。