Gestión del punto final del servicio watsonx.ai Runtime

Última actualización: 27 mar 2025
Gestión del punto final del servicio watsonx.ai Runtime

Puede utilizar las opciones de conectividad IBM Cloud para acceder a los servicios en la nube de forma segura mediante el uso de puntos finales de servicio. Cuando aprovisiona una instancia de servicio de watsonx.ai Runtime, puede elegir si desea acceder a su servicio a través de la Internet pública, que es la configuración predeterminada, o a través de la red privada IBM Cloud.

La forma de acceder a los puntos finales del servicio depende de la plataforma en la nube que esté utilizando.

Acceso a puntos finales en IBM Cloud

Puede utilizar la página de aprovisionamiento de servicios para elegir un punto final predeterminado entre las siguientes opciones:

Para obtener más información, consulte Puntos finales del servicio IBM Cloud.

Red pública

Puede utilizar puntos finales de red pública para conectarse a la instancia de servicio watsonx.ai Runtime en la red pública. Para que el entorno se pueda conectar, debe tener acceso a Internet.

Red privada

Puede utilizar puntos finales de red privada para conectarse a su instancia de servicio IBM watsonx.ai Runtime a través de la red IBM Cloud Private. Después de configurar su servicio watsonx.ai Runtime para utilizar puntos finales privados, el servicio no es accesible desde la Internet pública.

URL privadas para el tiempo de ejecución de watsonx.ai

Las URL privadas de watsonx.ai Runtime para cada región son las siguientes:

Uso del servicio IBM Cloud para habilitar puntos finales privados

Sigue estos pasos para habilitar puntos finales de red privada en tus clusters:

  1. Utilice IBM Cloud CLI para habilitar su cuenta para utilizar puntos finales de servicio IBM Cloud.
  2. Aprovisionar una instancia de servicio watsonx.ai Runtime con endpoints privados.

Aprovisionamiento con puntos finales de servicio (Dallas, Fráncfort, Tokio, Londres)

Puede aprovisionar una instancia de servicio watsonx.ai Runtime con un punto final de servicio mediante IBM Cloud UI o IBM Cloud CLI.

Aprovisionamiento de un punto final de servicio con IBM Cloud UI

Para configurar los puntos finales de su instancia de servicio IBM watsonx.ai Runtime, puede utilizar el campo Puntos finales en la página del catálogo IBM Cloud. Puede configurar una red pública, privada o mixta.

Configurar el punto final desde el catálogo de servicios

CLI de IBM Cloud

Si aprovisiona una instancia de servicio Runtime ' IBM ' watsonx.ai utilizando la CLI ' IBM Cloud, utilice la opción de línea de comandos service-endpoints para configurar los endpoints Runtime ' watsonx.ai. Puede especificar el valor public (el valor predeterminado), private o public-and-private:

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

Por ejemplo:

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

o

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

Aprovisionamiento de un punto final de servicio (Sídney y Toronto)

Para aprovisionar un punto final de servicio para una instancia de watsonx.ai Runtime en la región de Sídney o Toronto, debe solicitar acceso a un Catálogo Privado. Una vez aprobada la solicitud, puede compartir el endpoint como un Endpoint Privado Virtual.

Solicitar acceso a un catálogo privado

Para solicitar acceso a un Catálogo Privado, siga estos pasos:

  1. Utilice IBM Cloud CLI para habilitar su cuenta para utilizar puntos finales de servicio IBM Cloud.
  2. Póngase en contacto con IBM Support y envíe una solicitud, pidiendo al equipo de watsonx.ai Runtime que le proporcione acceso a un Catálogo Privado. Debe adjuntar a la solicitud su dirección IBM Cloud accountID.
  3. Cuando el equipo de watsonx.ai Runtime proporcione acceso al Catálogo Privado al ID de cuenta del cliente, podrá ver la solicitud completada y los detalles del catálogo desde Gestionar>Catálogos>Compartir solicitudes en la consola IBM Cloud. A continuación, puede crear una puerta de enlace virtual privada.
  4. Seleccione Virtual Provate Endpoint como tipo de catálogo. Por ejemplo: Compartir una solicitud desde la consola IBM Cloud
  5. Siga los pasos para crear una puerta de enlace virtual privada para VPC. Utilice los siguientes nombres para los centros de datos de Sydney y Toronto:
    • SYDNEY : mcsp-wml-sydprod
    • TORONTO : mcsp-wml-torprod

Revisar una solicitud de acción

Para revisar la solicitud de uso compartido desde la CLI de IBM Cloud, utilice el siguiente comando:

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"
}
]
}

Aprobar una solicitud de participación

Para aprobar las solicitudes de uso compartido, puede utilizar la interfaz de usuario IBM Cloud o la CLI. Si la opción de aprobar solicitudes de uso compartido no está disponible en la interfaz de usuario, puede utilizar IBM Cloud CLI para aprobar la solicitud.

Para aprobar una solicitud de uso compartido desde la CLI de IBM Cloud, utilice el siguiente comando:

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

Verificación de la autorización

Para comprobar que el cliente ha aceptado la solicitud de uso compartido, utilice el siguiente comando:

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"
}
]
}

Este comando devuelve una lista de solicitudes aprobadas, incluyendo el ID de cuenta y el ID de cuenta de destino.

Acceso a puntos finales privados desde AWS

Para acceder a endpoints privados desde AWS se utiliza un Service Distributed Network Load Balancer (SDNLB) para configurar y gestionar un Virtual Private Endpoint (VPE). Después de crear un ID de servicio y especificar una lista de permitidos, se crea un catálogo en la consola IBM Cloud para listar y compartir endpoints privados.

  1. Siga los pasos descritos en Crear y trabajar con ID de servicio para crear un ID de servicio para su SDNLB.

  2. Cree una lista de permitidos para ServiceID proporcionando la siguiente información al canal ibmcloud-service-dnlb :

    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. Cree una APIKey para serviceID y conceda acceso, como se indica a continuación:

        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. Cree un objeto de catálogo privado, como se indica a continuación:

    {
     "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. Cree el clúster secreto para la SDN en el espacio de nombres kube-system . El clúster secreto debe llamarse sdnlb-config en el espacio de nombres kube-system y residir en un archivo llamado sdnlb.toml. Cree ./sdnlb.toml para que contenga la siguiente información:

     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. Cree la página LoadBalancer para cada implantación específica, siguiendo los pasos del Ejemplo 1: SDNLB de puerto único. Por ejemplo, este archivo de configuración muestra un loadbalancer configurado para acceder a un servidor en un centro de datos de Sydney.

    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. Utilice este comando para comprobar si la dirección NodePort especificada en el paso anterior está disponible.

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

    Si NodePort no está disponible, utilice este comando para abrir el puerto:

    kubectl get service private-ingress-sdnlb -n openshift-ingress –o wide
    
  8. Crear el servicio para un endpoint privado. Por ejemplo:

    apiVersion: v1
    kind: Service
    metadata:
      name: wmlproxyserviceprivateonly
      namespace: swml-prod-default
    spec:
      ports:
        - port: 443
          targetPort: 8443
    selector:
     app: wmlproxyprod
    type: ClusterIP
    
  9. Cree una ruta basada en el servicio wmlproxyserviceprivateonly para el punto final privado. Por ejemplo:

    oc create route passthrough --service wmlproxyserviceprivateonly --hostname private.au-syd.ml.cloud.ibm.com -n swml-prod-default
    
    
  10. Cree un Gateway VPE en el grupo de recursos de clúster watsonx.ai Runtime. Por ejemplo:

    Ejemplo de pasarela VPE

  11. Después de crear el VPE, confirme que los endpoints privados funcionan desde el clúster. Abra un pod y acceda al endpoint privado, como se indica a continuación:

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

Tema principal: Implementación y gestión de activos de IA