ページの先頭行へ戻る
Enterprise Service Development Platform V1.0.0 操作ガイド
FUJITSU Software

5.1.4 Container Management上でIngressの作成

Ingressを作成することで、API ProxyからのHTTP通信を、Serviceにルーティングすることができます。ここでは、my-serviceという名前のServiceを例にして、Ingressの作成方法を説明します。

  1. Ingressリソースを作成するためのyamlファイルを作成します。

    ingress.yml

    apiVersion: extensions/v1beta1
    kind: Ingress
    metadata:
      name: test-ingress
      annotations:
          nginx.ingress.kubernetes.io/rewrite-target: /
    spec:
      rules:
      - host: app.example.com
        http:
          paths:
            - path: /testpath
              backend:
                serviceName: my-service
                servicePort: 80
    パラメーター 説明
    metadata.name このIngressリソースの名前を指定します。
    metadata.annotations.nginx.ingress.kubernetes.io/rewrite-target

    リクエストのURLを書き換えるためのルールを指定します。

    spec.rules.http.paths.pathで指定されたURLを、本パラメーターで指定したURLに書き換えることができます。 本パラメーターの指定は任意です。 本例のように指定し、"/testpath"にアクセスすると、my-serviceの"/"にアクセスします。 なお指定しない場合、"/testpath"にアクセスすると、my-serviceの"/testpath"にアクセスします。

    spec.rules.host アプリケーションのドメイン名を指定します。
    spec.rules.http.paths.path

    Serviceへ転送するパスを指定します。

    指定したパスでリクエストを受け付けると、spec.rules.http.paths.backendに指定したServiceに転送します。

    本例の場合、app.example.com/testpathで受け付けたリクエストが転送されます。

    spec.rules.http.paths.backend.serviceName

    転送先のServiceの名前を指定します。

    Serviceのmetadata.nameと同じ値を指定する必要があります。

    spec.rules.http.paths.backend.servicePort

    転送先のServiceのポート番号を指定します。

    Serviceのspec.ports.portと同じ値を指定する必要があります。

    参考

    Ingressの詳細についてはKubernetesの公式ページを参照してください。
  2. Ansibleサーバにログインして、以下のコマンドを実行します。
    # kubectl apply -f ingress.yml