watsonx.aiRuntime サービスのエンドポイントを管理する

最終更新: 2025年3月27日
watsonx.aiRuntime サービスのエンドポイントを管理する

サービス・エンドポイントを使用してクラウド・サービスに安全にアクセスするために、 IBM Cloud 接続オプションを使用できます。 watsonx.aiRuntime サービス・インスタンスをプロビジョニングする際、デフォルト設定であるパブリック・インターネット経由でサービスにアクセスするか、IBM Cloudプライベート・ネットワーク経由でアクセスするかを選択できます。

サービスエンドポイントへのアクセス方法は、使用しているクラウドプラットフォームによって異なります。

エンドポイントへのアクセス IBM Cloud

「サービス・プロビジョニング」ページを使用して、以下のオプションからデフォルト・エンドポイントを選択できます。

詳しくは、 IBM Cloud サービス・エンドポイントを参照してください。

パブリック・ネットワーク

パブリックネットワークのエンドポイントを使用して、パブリックネットワーク上のwatsonx.aiRuntime サービスインスタンスに接続できます。 ご使用の環境に、接続するためのインターネット・アクセスがなければなりません。

プライベート・ネットワーク

You can use private network endpoints to connect to your IBM watsonx.ai Runtime service instance over the IBM Cloud Private network. プライベートエンドポイントを使用するようにwatsonx.aiRuntime サービスを設定すると、サービスは公共のインターネットからアクセスできなくなります。

watsonx.aiランタイムのプライベートURL

各地域のwatsonx.aiランタイムのプライベートURLは以下の通り:

IBM Cloud サービスを使用してプライベートエンドポイントを有効にする

クラスターでプライベート・ネットワーク・エンドポイントを有効にするには、以下の手順を実行します。

  1. IBM Cloud CLI を使用して、アカウントで IBM Cloud サービス・エンドポイントを使用できるようにします。
  2. プライベートエンドポイントを持つwatsonx.aiRuntime サービスインスタンスをプロビジョニングします。

サービスエンドポイント(ダラス、フランクフルト、東京、ロンドン)のプロビジョニング

IBM CloudUI またはIBM CloudCLI を使用して、サービス・エンドポイントを持つwatsonx.aiRuntime サービス・インスタンスをプロビジョニングできます。

IBM Cloud UI を使用したサービス・エンドポイントのプロビジョニング

IBM watsonx.aiRuntime サービス・インスタンスのエンドポイントを設定するには、IBM Cloudカタログ・ページのEndpointsフィールドを使用します。 パブリック・ネットワーク、プライベート・ネットワーク、または混合ネットワークを構成できます。

サービス・カタログからのエンドポイントの構成

IBM CloudCLI

IBM CloudCLIを使用して「IBM「watsonx.aiRuntimeサービスインスタンスをプロビジョニングする場合は、コマンドラインオプションservice-endpointsを使用して「watsonx.aiRuntimeエンドポイントを構成する。 値 public (デフォルト値)、 private、または public-and-privateを指定できます:

ibmcloud resource service-instance-create <service instance name> pm-20 <plan_name> <region>  --service-endpoints <private/public/public-and-private>

次に例を示します。

ibmcloud resource service-instance-create wml-instance pm-20 standard us-south -p  --service-endpoints private

または

ibmcloud resource service-instance-create wml-instance pm-20 standard us-south --service-endpoints public-and-private

サービス・エンドポイントのプロビジョニング(シドニーとトロント)

シドニーまたはトロント地域の watsonx.ai Runtime インスタンスのサービス・エンドポイントをプロビジョニングするには、プライベート・カタログへのアクセスをリクエストする必要があります。 リクエストが承認されると、仮想プライベート・エンドポイントとしてエンドポイントを共有できます。

プライベート・カタログへのアクセス要求

プライベート・カタログへのアクセスをリクエストするには、以下の手順に従ってください:

  1. IBM Cloud CLI を使用して、アカウントで IBM Cloud サービス・エンドポイントを使用できるようにします。
  2. IBM サポートに連絡し、 watsonx.ai Runtime チームにプライベートカタログへのアクセスを提供するよう依頼し、リクエストを送信してください。 IBM Cloud accountID。
  3. watsonx.ai Runtimeチームが顧客のアカウントIDにプライベートカタログへのアクセスを提供すると、 IBM Cloud コンソールの Manage>Catalogs>Share requestsから、完了したリクエストとカタログの詳細を表示できます。 その後、仮想プライベート・エンドポイント・ゲートウェイを作成することができる。
  4. カタログタイプとして Virtual Provate Endpoint を選択します。 例 : IBM Cloud コンソールからのリクエストの共有
  5. 手順に従って、 VPC用の仮想プライベートエンドポイントゲートウェイを作成します。 シドニーとトロントのデータセンターのプライベート・カタログ表示名として、以下を使用する:
    • シドニー : mcsp-wml-sydprod
    • トロント : mcsp-wml-torprod

シェアリクエストの確認

IBM Cloud CLIから共有リクエストを確認するには、以下のコマンドを使用します:

ibmcloud catalog account get-approval-list-source --object-kind vpe --approval-state pending
{
"first": "/api/v1-beta/shareapproval/vpe/access/source/pending?limit=100",
"limit": 100,
"resource_count": 1,
"resources": [
{
"_id": "-acct-fc3acf288b1b451e8cb981b2b9423b14:apr-acct:ba083c5877a64197a36b55d259812dfa:vpe:account",
"_rev": "1-6703f335f8ca2330aa22a7e542700d58",
"account": "fc3acf288b1b451e8cb981b2b9423b14",
"account_type": 3,
"approval_state": "pending",
"created": "2025-02-26T01:15:21.513749288-05:00",
"id": "-acct-fc3acf288b1b451e8cb981b2b9423b14",
"target_account": "ba083c5877a64197a36b55d259812dfa",
"target_kind": "vpe"
}
]
}

シェアリクエストの承認

共有リクエストの承認には、 IBM Cloud UIまたはCLIを使用できます。 共有リクエストを承認するオプションがUIで利用できない場合は、 IBM Cloud CLIを使用してリクエストを承認できます。

IBM Cloud CLIから共有リクエストを承認するには、以下のコマンドを使用します:

ibmcloud catalog account set-approval-state-source --object-kind vpe --approval-state approved -account-ids "<account ID>"

承認の確認

顧客が共有要求を受け入れたことを確認するには、以下のコマンドを使用する:

ibmcloud catalog account get-approval-list-source --object-kind vpe --approval-state approved
{
"first": "/api/v1-beta/shareapproval/vpe/access/source/approved?limit=100",
"limit": 100,
"resource_count": 1,
"resources": [
{
"_id": "<account id>",
"_rev": "2-93907d1b7d449c1a82914dfde604f316",
"account": "fc3acf288b1b451e8cb981b2b9423b14",
"account_type": 3,
"created": "2025-02-26T01:15:21.513749288-05:00",
"id": "<account id>",
"target_account": "ba083c5877a64197a36b55d259812dfa",
"target_kind": "vpe"
}
]
}

このコマンドは、アカウントIDとターゲットアカウントIDを含む、承認されたリクエストのリストを返す。

プライベート・エンドポイントへのアクセス AWS

AWS からプライベートエンドポイントにアクセスするには、SDNLB(Service Distributed Network Load Balancer)を使用して、VPE(Virtual Private Endpoint)をセットアップし、管理する。 サービス ID を作成し、許可リストを指定した後、 IBM Cloud コンソール上にプライベート・エンドポイントをリストアップして共有するためのカタログを作成します。

  1. サービスIDの作成と操作 」の手順に従って、SDNLBのサービスIDを作成してください。

  2. ibmcloud-service-dnlb チャネルに以下の情報を提供して、 ServiceID の許可リストを作成する:

    Service name: MCSP-Production
     Service contact name and email: (Name, email@*.ibm.com)
     Service account name: (Account where this service is needed)CloudRock Production's Account
     Service account ID: xxx (Account ID)
     Service ID: sdnlb-mcsp-prod (ServiceId-xxxx)
     Env: production (cloud.ibm.com)or (test.cloud.ibm.com)
    
  3. serviceID、以下のようにAPIKeyを作成し、アクセスを許可する:

        VPC Infrastructure Services All Editor      
        Resource group only Default resource group  Viewer      
        All Account Management services All Viewer      
        Resource group only CloudRock resource group    Viewer      
        Catalog Management  All Viewer, Editor, Publisher
    
  4. 以下のように、プライベート・カタログ・オブジェクトを作成する:

    {
     "dns_domain": "private.au-syd.ml.cloud.ibm.com",
     "endpoint_type": "vpe",
     "fully_qualified_domain_names": [
         "private.au-syd.ml.cloud.ibm.com"
     ],
     "service_crn": "crn:v1:bluemix:public:mcsp-wml-sydprod:au-syd:::endpoint:private.au-syd.ml.cloud.ibm.com"
    }
    
  5. kube-system 名前空間に SDN のシークレットクラスタを作成する。 シークレット、名前空間 kube-systemsdnlb-config という名前を付け、 sdnlb.toml という名前のファイルに存在させなければなりません。 ./sdnlb.toml 、以下の情報を含むように作成する:

     account_id = "user@xx.xxx.com"
     service_id = "service-account-ID"
     service_apikey = "service-account-apiKey"
    
     kubectl create secret generic -n kube-system sdnlb-config --from-file ./sdnlb.toml
    
  6. 例 1: シングルポートの SDNLB の手順に従って、 LoadBalancer をデプロイメントします。 例えば、この設定ファイルは、シドニーのデータセンターにあるサーバーにアクセスするために設定されたロードバランサーを示している。

    create SDNLB service 
    apiVersion: v1
    kind: Service
    metadata:
    labels:
       app: router
       type: sdnlb
    name: private-ingress-sdnlb-mcspsydprod
    namespace: openshift-ingress
    annotations:
      service.kubernetes.io/ibm-load-balancer-cloud-provider-enable-features: "service-dnlb"
      service.kubernetes.io/ibm-load-balancer-cloud-provider-ip-type: "private"
      service.kubernetes.io/ibm-load-balancer-cloud-provider-vpc-service-crn: "crn:v1:bluemix:public:mcsp-wml-sydprod:au-syd:::endpoint:private.au-syd.ml.cloud.ibm.com"
    spec:
      type: LoadBalancer
      selector:
        ingresscontroller.operator.openshift.io/deployment-ingresscontroller: default
     ports:
       - name: http
         port: 80
       - name: https
         port: 443
    
  7. このコマンドを使用して、前のステップで指定した NodePort が利用可能かどうかをチェックする。

    kubectl describe service  private-ingress-sdnlb -n openshift-ingress
    

    NodePort が利用できない場合は、このコマンドを使ってポートを開く:

    kubectl get service private-ingress-sdnlb -n openshift-ingress –o wide
    
  8. プライベート・エンドポイント用のサービスを作成する。 次に例を示します。

    apiVersion: v1
    kind: Service
    metadata:
      name: wmlproxyserviceprivateonly
      namespace: swml-prod-default
    spec:
      ports:
        - port: 443
          targetPort: 8443
    selector:
     app: wmlproxyprod
    type: ClusterIP
    
  9. プライベート・エンドポイント用に、 wmlproxyserviceprivateonly サービスに基づくルートを作成する。 次に例を示します。

    oc create route passthrough --service wmlproxyserviceprivateonly --hostname private.au-syd.ml.cloud.ibm.com -n swml-prod-default
    
    
  10. watsonx.ai Runtimeクラスタ・リソース・グループにVPE Gatewayを作成します。 次に例を示します。

    VPEゲートウェイの例

  11. VPE を作成したら、クラスタからプライベート・エンドポイントが動作することを確認します。 ポッドを開き、以下のようにプライベート・エンドポイントにアクセスする:

    [wmluser@wmlproxyprod-85bd985475-g564h /]$ curl -k https://private.au-syd.ml.cloud.ibm.com/heartbeat
    {"message": "Proxy is running!"}
    

親トピック: AI 資産の展開と管理