本ページでは、回帰テストを使用してサービスの機能を検証する方法について説明します。

テストドメインの設定

Kubernetes クラスターでは、クラスター内のサービス間で通信が可能となるようにポートマッピングを設定してできます。また、クラスターの外部からサービスへの接続が可能となるよう Ingress を設定できます。

Ingress を設定する際、本番ドメインやテストドメインなどの複数のドメインを設定できます。 通常、本番ドメインは ICP ファイリングを取得したドメインです。 完全修飾ドメイン名を入力する必要があります。 また、テストドメインは通常、Container Service に実装されています。 テストドメインのプレフィックスを入力できます。 以下の手順に従って、Ingress を設定します。

  1. Container Service コンソールにログインします。 左側のナビゲーションウィンドウで、[Ingress とロードバランシング] > [Ingress] の順にクリックします。 右上にある [作成] をクリックして、Ingress を作成します。
  2. Ingress の作成後、[Ingress] ページで Ingress のドメインとエンドポイントを確認します。 Ingress のエンドポイントは、クラスターに接続されている SLB インスタンスのパブリック IP アドレスです。

サービス機能のテスト

テストドメインまたは本番ドメインを使用すると、Kubernetes クラスターにデプロイされているサービスにアクセスできます。 本番ドメインが SLB インスタンスのパブリック IP アドレスを指すように DNS 設定を更新していない場合、ローカルコンピューターの本番ドメインに IP アドレスを紐付ける必要があります。 サンプルドメインは以下のとおりです。
テストドメインまたは本番ドメインに基づいて回帰テストを実行し、Kubernetes サービスが期待どおりに機能することを確認します。

ログの確認

アプリケーションのログ設定を移行する」で説明されているように 、Swarm と Kubernetes ではログ生成に異なるルールが採用されています。 Swarm サービスと Kubernetes サービスのログは同じプロジェクトに保存されますが、ログライブラリが異なります。 テストプロセス中に、Kubernetes で作成されたログライブラリを確認して、Kubernetes サービスが正常に実行されているかを確認できます。

  1. Log Service コンソールにログインして、 [プロジェクト名] をクリックします。
  2. [ログライブラリ] タブには、次のログライブラリが表示されます。
  3. 対象のログライブラリを選択して、[検索と分析] をクリックし、出力が正常かどうかを確認します。

モニタリング設定の確認

ログライブラリのログが正常であることを確認したのち、ARMS (Application Real-Time Monitoring Service) や LogShipper などの対応するモニタリングサービスが正しく設定されているかどうかを確認する必要があります。 詳細については、「 リアルタイム消費 」をご参照ください。 実際のニーズに基づいて設定を確認してください。

この例では、CloudMonitor を使用して swarm-piggymetrics の実行ステータスをモニターします。

  1. ホストのモニタリングデータを表示します。 詳細については、「Cloud Monitor コンソールで指定された日付のモニタリングデータを表示するにはどのようにすればよいですか ?」をご参照ください。

    Kubernetes クラスターを作成する際、ECSノードで [CloudMonitor エージェント] のインストールを選択できます。 各ノードのワークロードとネットワークステータスをモニターし、テストトラフィックが Kubernetes クラスターにルーティングされているかどうかを確認できます。

  2. ログモニタリングデータを表示します。 詳細については、「Log Service」をご参照ください。
    ARMS を使用すると、サービスをさらに詳細にモニターできます。 この例では、 findAccountCount_k8s という名前のログモニタリングタスクを作成し、クラスターノードのログをモニターし、解析ルールに基づいてログデータを処理します。 モニタリングチャートを使用してテストトラフィックを検出できます。
    上図から、アカウントクエリが短期間で着実に増加していることが分かります。 これは、クラスター k8s-piggymetrics-cluster がテストトラフィックを処理し、クラスター外にサービスを提供していることを示しています 。