Sandbox インスタンスの使用

クライアント・アプリケーションを Sandbox インスタンスに接続して、開発およびテストを行うことができます。 使用するポートは、Service の作成に関してクラスター管理者から受けた指示と、クラスター・セットアップの詳細によって異なります。

作成した Sandbox インスタンスは、Red Hat® OpenShift® または Kubernetes で WaziSandboxSystem オブジェクトとして表示され、 Kubernetes オブジェクトのようにコマンド・ラインから照会または操作することができます。 以下に例を示します。

$ oc get wazisandboxsystems
NAME          AGE
sample-adcd   36m

各 Sandbox インスタンスは、Sandbox の名前に類似した名前を持つ 1 つまたは複数のサービスリソースを作成します。 作成されるサービスは、portProfileszPorts、および service 構成パラメーターの構成によって異なります。 ただし、作成されるすべてのサービスは、app.kubernetes.io/name=ibm-wazi-developer-sandbox-system および app.kubernetes.io/instance と示されます。ここで、この値は Sandbox インスタンスの名前です。

例えば、sample という名前のインスタンスの場合は、以下のサービスが作成されると考えられます。

  • sample という名前の Sandbox インスタンスと同じ名前の ClusterIP
  • インスタンス名の後に -nodeport が続く名前の NodePort サービスです。例えば、sample-nodeport となります。 名前が長すぎる場合は、名前が切り捨てられる可能性があります。
  • 非推奨の service パラメーターによって作成された svc- という名前の NodePort サービスです。インスタンス名は、例えば、svc-sample となります。 名前が長すぎる場合は、名前が切り捨てられる可能性があります。

各サービスには app.kubernetes.io/instance=sample というラベルが付けられます。

1 つまたは複数のルートリソースが作成される場合もあります。これには、インスタンスの名前の後に経路が接続するポートの名前が続く名前が付けられます。 例えば、sample-rse-api などとなります。 名前は切り捨てられる場合があります。

Red Hat OpenShift Web コンソール内の情報は、「開発者」パースペクティブを使用して入手できます。

  1. 「開発者」を選択し、「トポロジー」をクリックします。
    トポロジー
  2. Sandbox のデプロイメントをクリックします。

    Sandbox のデプロイメント
  3. 以下のいずれかの方法を使用して、Sandbox インスタンスに接続します。
    • クラスター内の別のポッドから ClusterIP サービス内のポートに接続: 簡単

      サービス名 (異なる名前空間から接続している場合は名前空間で修飾される可能性があります)、または接続するデプロイメントに表示されているクラスター IP とポートを使用します。 例えば、CodeReady Workspace を使用する場合は、このメソッドを使用できます。

    • ルートを介して外部から接続: 比較的簡単

      デプロイメントおよびポート 443 に表示されているロケーションを使用します。 開発者が自身のコンピューターから、zosmf プロファイルまたは rse-api プロファイルを使用して Zowe™ を使用する場合は、この方法を使用できます。 接続についての詳細は、 例: Sandbox インスタンスへの接続を参照してください。

    • NodePort を介して外部から接続します。

      「リソース」をクリックし、指定されたサービスのリンクをクリックします。

      以下のサンプルは、NodePort タイプの 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>
      

      上のサンプルでは、z/OS® 上のポートがクラスター上で公開されているポートにマップされています。 ポートの名前によって、ポートの機能の簡単な説明が示されています。 Port は z/OS 上のポートであり、NodePort はクラスター内のポートを示しています。 例えば、ssh は z/OS のポート 22 のセキュア・シェルであり、ポート 30459 ではノード・ポート・サービスを介して使用できます。

      接続に使用するホストまたは IP アドレスは、Service のタイプと、アクセス元によって異なります。 クラスター内では、上記の IP か、Service の YAML ファイル内の clusterIP を使用できます。 クラスターの外では、ノードが直接公開されている場合、または type: LoadBalancer の場合には、これと同じアドレスを使用できます。

      クラスターがプロキシー経由でのみ公開されている場合は、使用するプロキシー・アドレスをクラスター管理者が指定する必要があります。

      Sandbox で公開できる予約済みポートについては、構成リファレンスにある表を参照してください。 個別のクライアントについては、それぞれの資料を調べ、使用するポートを確認してください。

Wazi Developer の IDE クライアントを Sandbox によってプロビジョンされた z/OS インスタンスに接続する必要がある場合は、Sandbox インスタンスへの接続に記載の手順に従ってください。