Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

15.5.3. サービスの設定

サービスの作成または変更時に nodePort のポート番号を指定します。ポートを手動で指定しない場合は、システムが代わりにこれを割り当てます。

  1. マスターノードにログインします。
  2. 使用予定のプロジェクトが存在しない場合には、サービス用に新規プロジェクトを作成します。

    $ oc new-project <project_name>

    以下に例を示します。

    $ oc new-project external-ip
  3. サービス定義を編集して spec.type:NodePort を指定し、オプションで 30000-32767 範囲のポートを指定します。

    apiVersion: v1
    kind: Service
    metadata:
      name: mysql
      labels:
        name: mysql
    spec:
      type: NodePort
      ports:
        - port: 3306
          nodePort: 30036
          name: http
      selector:
        name: mysql
  4. 以下のコマンドを実行してサービスを作成します。

    $ oc create -f <file_name>

    以下に例を示します。

    $ oc create -f mysql.yaml
  5. 以下のコマンドを実行して新規サービスが作成されていることを確認します。

    $ oc get svc
    
    NAME             CLUSTER_IP       EXTERNAL_IP   PORT(S)                      AGE
    mysql            172.30.89.219    <none>        3306:30036/TCP               2m

    外部 IP は <none> として一覧表示され、ノードのポートが一覧表示されることに注意してください。

<NodeIP>:<NodePort> アドレスを使用してサービスにアクセスできるはずです。