サービスの管理

このページでは、サービスを作成する方法とサービスの情報を表示する方法について説明します。サービスは、Cloud Run for Anthos on Google Cloud の主なリソースです。

サービスの作成

コンテナ イメージを最初にデプロイするときに、新しいサービスが作成されます。新しいサービスをデプロイする場合は、これよりも操作が多くなります。

プロジェクトにあるサービスの一覧を表示する

Cloud Console または gcloud コマンドラインを使用して、プロジェクトで使用可能なサービスの一覧を表示できます。

Console

サービスリストを表示するには:

  1. Cloud Run for Anthos on Google Cloud に移動

  2. プロジェクトに表示されたサービスのリストを調べます。

    サービスのリスト

コマンドライン

プロジェクトのサービスを一覧表示するには:

gcloud kuberun core services list

割り当てられたラベルなど、サービス定義のプロパティを基準にこのリストをフィルタできます。

Cloud Code

Cloud Code でサービスを一覧表示するには、IntelliJVisual Studio Code に関する Cloud Run Explorer ガイドをご覧ください。

サービスをコピーする

Cloud Console または YAML を使用して、既存のサービスのコピーを作成できます。名前やリージョンなど、コピーに含まれる任意の要素を変更できます。

Console

サービスをコピーするには:

  1. Cloud Run for Anthos on Google Cloud に移動

  2. プロジェクトに関して表示されるサービスのリストから、コピーするサービスを選択します。

    サービスのリスト

    1. [コピー] をクリックします。

    2. サービスのコピーのページで、必要に応じて値(リージョンなど)を設定または変更します。同じリージョンを保持する場合は、サービスに新しい名前を付ける必要があります。

    3. [作成] をクリックするとコピーが作成され、新しいサービス名を使ってそれがデプロイされます。

YAML

YAML ファイルを使用して既存のサービスの構成を変更するには、現在の構成のコピーを取得し、その構成を変更してローカル ファイルに保存してから、これらの変更をサービスにデプロイします。

  1. YAML として表示し、サービスの構成をローカル ファイルにコピーします。例を示します。service.yaml:

    gcloud kuberun core services describe SERVICE --format yaml

    SERVICE は、Cloud Run for Anthos サービスの名前に置き換えます。

  2. さまざまな構成に関するページで説明されている手順に沿って、サービスに必要な構成の変更を行います。

     apiVersion: serving.knative.dev/v1
     kind: Service
     metadata:
       annotations:
         ...
       name: SERVICE
       ...
     spec:
       template:
         metadata:
           annotations:
           ...
           name: REVISION-NAME
    
    • 同じ Kubernetes クラスタにコピーをデプロイする場合は、SERVICE をそのコピーの名前に置き換えます。コピーを別の Kubernetes クラスタにデプロイする場合は、同じ名前を使用できます。

    • REVISION-NAME の値はサービス名(SERVICE)で始まる必要があります。たとえば、新しいサービス名が mynewfoo の場合、リビジョン名は mynewfoo-whatever という形式になる必要があります。あるいは、値全体を削除すると、新しいリビジョン名が自動的に作成されます。

  3. 次のコマンドを使用してサービスをコピーします。

    gcloud beta run services replace service.yaml
    コピーを別のリージョンにデプロイするには、--region フラグを使用します。

サービスに関する詳細を表示する

サービスの詳細を表示するには、次の操作を行います。

Console

サービスの詳細を表示するには:

  1. Cloud Run for Anthos on Google Cloud に移動

  2. 表示されているサービスの一覧で目的のサービスをクリックし、サービスの詳細ビューを開きます。

    リビジョンのリスト

  3. [リビジョン]、[ログ]、[詳細] の各タブを確認します。[リビジョン] タブにはリビジョンのリストが表示されます。[ログ] タブにはサービスログが表示されます。[詳細] タブには、現在の認証または接続の設定が表示されます。

コマンドライン

サービスの詳細を表示するには:

gcloud kuberun core services describe SERVICE
SERVICE は、サービスの名前に置き換えます。

--format フラグを使用して出力をフォーマットできます。たとえば、YAML としてフォーマットします。

gcloud kuberun core services describe SERVICE --format yaml

--format フラグを使用して、サービスの URL を取得することもできます。

gcloud kuberun core services describe SERVICE --format='value(status.url)'

Cloud Code

Cloud Code でサービスの詳細を表示するには、IntelliJVisual Studio Code に関する Cloud Run Explorer ガイドをご覧ください。

サービスのリビジョンの詳細については、リビジョンの管理をご覧ください。

サービスの接続設定を変更する

Cloud Run for Anthos on Google Cloud サービスには、次の 2 つの接続オプションがあります。

  • 外部。外部からサービスへのアクセスを許可します。

  • 内部。他の Cloud Run for Anthos on Google Cloud サービスまたは Istio を使用するクラスタ内のサービスに対するアクセスのみが許可されます。

設定を変更するには、Console または gcloud コマンドライン ツールを使用します。

Console

サービスの接続設定を変更するには:

  1. Cloud Run for Anthos on Google Cloud に移動

  2. 表示されているサービスの一覧で目的のサービスをクリックし、サービスの詳細ビューを開きます。

  3. [トリガー] タブをクリックします。

  4. 目的の設定を選択して、[保存] をクリックします。

コマンドライン

サービスの接続設定を変更するには、サービスを目的の接続設定に更新します。

gcloud kuberun core services update [SERVICE] --connectivity=[OPTION]
  • [SERVICE] は、更新するサービスの名前に置き換えます。このパラメータは省略できますが、省略するとサービス名の入力を求められます。

  • [OPTION] は、internal または external に置き換えます。

既存のサービスを削除する

サービスを削除すると、トラフィック処理中であるかどうかにかかわらず、このサービスに関連するすべてのリソースが削除されます。このサービスのリビジョンもすべて削除されます。

サービスを削除しても、削除されたリビジョンで使用されているコンテナ イメージは Container Registry から自動的に削除されません。Container Registry からコンテナ イメージを削除する方法については、イメージの削除をご覧ください。

サービスは完全に削除されます。元に戻すことも、復元することもできません。サービスを削除した後、同じクラスタに同じ名前で新しいサービスをデプロイすると、同じエンドポイント URL が使用されます。

Console

サービスを削除するには:

  1. Cloud Run for Anthos on Google Cloud に移動

  2. 削除するサービスをサービスリストで探し、そのチェックボックスをクリックして選択します。

  3. [削除] をクリックします。これにより、サービスのすべてのリビジョンが削除されます。

コマンドライン

サービスを削除するには、次のコマンドを使用します。

gcloud kuberun core services delete [SERVICE]

[SERVICE] は、実際のサービス名に置き換えます。