このドキュメントでは、オーケストレーションテンプレートを使用して Windows アプリケーションを作成する方法について説明し、ASP.NET アプリケーションを実行するためのデプロイメントとサービスを作成します。 デプロイメントはアプリケーションのポッドをプロビジョニングするもので、サービスはバックエンドでアプリケーションポッドへのアクセスを許可します。

始める前に

  • Windows ノードが作成済みである必要があります。 詳細については、「Windows を実行するノードプールの作成」をご参照ください。
  • ASP.NET アプリケーションの実行に必要なリソースオブジェクトは、Container Service for Kubernetes (ACK) コンソールのオーケストレーションテンプレートを使用して作成されます。 これらのリソースオブジェクトは、ラベルセレクターなどのメカニズムを使用してプロビジョニングできます。

手順

  1. ACK コンソールにログインします。
  2. 左側のナビゲーションウィンドウで、[クラスター] をクリックします。
  3. [クラスター] ページで、管理するクラスターの名前をクリックするか、または[操作] 列で [詳細] をクリックします。 クラスターの詳細ページが表示されます。
  4. 詳細ページの左側のナビゲーションウィンドウで、[ワークロード] > [デプロイメント] を選択します。
  5. [デプロイメント] タブの右上隅にある [テンプレートから作成] をクリックします。
  6. パラメーターを設定して [作成] をクリックします。
    • クラスター: リソースオブジェクトがデプロイされるクラスターを選択します。
    • 名前空間: リソースオブジェクトが属する名前空間を選択します。 デフォルトの名前空間は "default" です。 ノードや永続ストレージボリュームのような基本的なコンピューティングリソースを除いて、ほとんどのリソースオブジェクトは名前空間上で実行される必要があります。
    • リソースタイプ: Alibaba Cloud Container Service は、多くのリソースタイプの Kubernetes YAML サンプルテンプレートを提供しています。これにより、リソースオブジェクトのデプロイを迅速に行えます。 Kubernetes YAML オーケストレーションのフォーマット要件に基づいて、独自のテンプレートを作成し、定義するリソースタイプを記述することができます。
    • デプロイの追加: この機能により、YAML テンプレートを素早く定義できます。
    • 既存のテンプレートによるデプロイ: 既存のテンプレートをテンプレート設定ページにインポートできます。
    テンプレートの設定
    次のサンプルテンプレートは、ACK が提供するオーケストレーションテンプレートから作成されています。 このサンプルテンプレートでは、ASP.NET アプリケーションのデプロイメントの作成例を提供します。
    ACK では YAML 構文がサポートされています。 テンプレートで複数のリソースオブジェクトを宣言する場合は --- 記号でリソースオブジェクトを区切ります。
    apiVersion: v1
    kind: Service
    metadata:
      name: aspnet-svc
    spec:
      ports:
        - port: 80
          protocol: TCP
          targetPort: 80
      selector:
        app: aspnet
      type: LoadBalancer
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: aspnet
    spec:
      selector:
        matchLabels:
          app: aspnet
      template:
        metadata:
          labels:
            app: aspnet
        spec:
          containers:
            - image: 'mcr.microsoft.com/dotnet/samples:aspnetapp'
              name: aspnet
          nodeSelectors:
            kubernetes.io/os: "windows"
          tolerations:
          - key: "os"
            value: "windows"
    イメージ mcr.microsoft.com/dotnet/samples:aspnetapp は、Microsoft が提供するサンプルイメージです。 詳細については、「 NET サンプル」をご参照ください。
  7. [作成] をクリックします。 デプロイメントのステータスを示すメッセージが表示されます。 デプロイメントが完了したら、[デプロイメント] タブでデプロイメントを表示できます。
  8. ASP.NET アプリケーションにアクセスします。
    1. ACK コンソールの左側のナビゲーションウィンドウで、[クラスター] をクリックします。
    2. [クラスター] ページで、管理するクラスターの名前をクリックするか、または [操作] 列で [詳細] をクリックします。 クラスターの詳細ページが表示されます。
    3. 詳細ページの左側のナビゲーションウィンドウで、[サービスと Ingress] > [サービス] を選択します。
    4. [サービス] ページで、[ASPNET-SVC] という名前のサービスがアプリケーション用に作成されています。 外部エンドポイントもページに表示されます。
    5. [aspnet-svc] サービスの外部エンドポイントをクリックして、ASP.NET アプリケーションにアクセスします。