Utilización de una instancia de recinto de pruebas

Puede conectar aplicaciones cliente a una instancia de recinto de pruebas para su desarrollo y realización de pruebas. En función de cómo el administrador de clúster le haya indicado que cree Service y los detalles de configuración del clúster, los puertos que deben utilizarse varían.

Tras crear una instancia de recinto de pruebas, es visible en Red Hat® OpenShift® o Kubernetes como un objeto WaziSandboxSystem y puede consultarse o manipularse desde la línea de mandatos como cualquier objeto Kubernetes. A continuación se muestra un ejemplo.

$ oc get wazisandboxsystems
NAME          AGE
sample-adcd   36m

Cada instancia de recinto de pruebas (sandbox) crea uno o más recursos de Service (Servicio) que tienen un nombre similar al nombre del recinto de pruebas. En función de la configuración de los parámetros de configuración portProfiles, zPorts y service, los servicios creados varían. Pero todos los servicios creados están etiquetados con app.kubernetes.io/name=ibm-wazi-developer-sandbox-system y app.kubernetes.io/instance donde el valor es el nombre de la instancia de recinto de pruebas (sandbox).

Por ejemplo, para una instancia denominada sample, se pueden crear los servicios siguientes:

  • Un servicio ClusterIP llamado igual que la instancia de recinto de pruebas, sample
  • Un servicio NodePort llamado con el nombre de la instancia seguido de -nodeport, por ejemplo, sample-nodeport. Es posible que el nombre se trunque si es demasiado largo.
  • Un servicio NodePort creado mediante el parámetro service en desuso, denominado svc- y el nombre de la instancia, por ejemplo, svc-sample. Es posible que el nombre se trunque si es demasiado largo.

Cada servicio tiene la etiqueta app.kubernetes.io/instance=sample.

Es posible que también se creen uno o más recursos Route, que tienen el nombre de la instancia seguido del nombre del puerto al que se conecta la ruta. Por ejemplo, sample-rse-api. Es posible que el nombre se trunque.

Puede obtener la información en la consola web de Red Hat OpenShift según la perspectiva de desarrollador.

  1. Seleccione Desarrollador y pulse Topología.
    Topología
  2. Pulse el despliegue del recinto de pruebas.

    Despliegue del recinto de pruebas
  3. Utilice uno de los métodos siguientes para conectarse a la instancia de recinto de pruebas (sandbox):
    • De otro Pod del clúster a un puerto del servicio ClusterIP: fácil.

      Utilice el nombre del servicio (posiblemente calificado con el espacio de nombres si se conecta desde un espacio de nombres diferente) o la IP de clúster y el puerto que se muestran en el despliegue para conectarse. Por ejemplo, si utiliza CodeReady Workspaces, puede utilizar este método.

    • Externamente a través de una Route: relativamente fácil.

      Utilice la ubicación que se muestra en el despliegue y el puerto 443. Si los desarrolladores utilizan Zowe™ desde su propio sistema con perfiles zosmf o rse-api, pueden utilizar este método. Para obtener más información sobre la conexión, consulte Ejemplo: Conexión a una instancia de recinto de pruebas.

    • Externamente a través de NodePort.

      Pulse Resources (Recursos) y seguidamente pulse el enlace para el servicio con nombre.

      El siguiente ejemplo muestra la información de un NodePort tipo Service.

      $ oc describe service sample-adcd-nodeport
      Name:                     sample-adcd-nodeport
      Namespace:                wazi-sandbox
      Labels:                   app.kubernetes.io/instance=sample-adcd
                                app.kubernetes.io/managed-by=ansible
                                app.kubernetes.io/name=ibm-wazi-developer-sandbox-system
                                app.kubernetes.io/part-of=ibm-wazi-developer-sandbox
                                app.kubernetes.io/version=v1.4.0
      Annotations:              <none>
      Selector:                 app.kubernetes.io/instance=sample-adcd,app.kubernetes.io/name=ibm-wazi-developer-sandbox-system
      Type:                     NodePort
      IP:                       172.30.155.88
      Port:                     ssh  22/TCP
      TargetPort:               22/TCP
      NodePort:                 ssh  30459/TCP
      Endpoints:                10.254.12.188:22
      Port:                     local-vtam  3270/TCP
      TargetPort:               3270/TCP
      NodePort:                 local-vtam  30093/TCP
      Endpoints:                10.254.12.188:3270
      Session Affinity:         None
      External Traffic Policy:  Cluster
      Events:                   <none>
      

      En el ejemplo anterior, los puertos de z/OS se correlacionan con los puertos expuestos en el clúster. El nombre del puerto ofrece una breve descripción de la función del puerto. Port es el puerto en z/OS y NodePort muestra el puerto en el clúster. Por ejemplo, ssh es el Secure Shell en el puerto 22 en z/OS y está disponible a través del servicio NodePort en el puerto 30459.

      El host o la dirección IP que debe utilizarse para conectarse depende del tipo de Service y de dónde procede el acceso. Dentro del clúster, se puede utilizar la IP mostrada anteriormente, o la clusterIP en el archivo YAML para el Service. Fuera del clúster, si los nodos están directamente expuestos, o para type: LoadBalancer, puede utilizarse esta misma dirección.

      Si el clúster sólo está expuesto a través de un proxy, el administrador del clúster debe proporcionar la dirección de proxy que debe utilizarse.

      Para obtener más información sobre los puertos conocidos que Sandbox puede exponer, consulte las tablas de la Referencia de configuración. Para clientes específicos, consulte su documentación para determinar qué puertos utilizan.

Ejemplo

Si necesita conectar un cliente IDE de Wazi Developer a la instancia de z/OS suministrada por el recinto de pruebas, siga las instrucciones de Conexión a una instancia de recinto de pruebas.