このページは、新規インストールをカスタマイズするため、または Knative serving の既存のフリート インストールを構成するために使用します。たとえば、限定公開クラスタの構成や、Cloud Monitoring の認証情報の設定を行うことができます。
デフォルトのインストール手順では、次の CloudRun
カスタム リソースを自動的にデプロイします。これにより、GKE Enterprise on Google Cloud クラスタで指標が有効になります。
apiVersion: operator.run.cloud.google.com/v1alpha1
kind: CloudRun
metadata:
name: cloud-run
カスタム リソースの概要については、カスタム リソースをご覧ください。
始める前に
インストールの前提条件を満たしていることを確認する必要があります。
Knative serving がクラスタにインストールされている場合、これらのフリート コンポーネントのインストール手順を行う前に、「GKE アドオン」が存在しないことを確認する必要があります。「アドオン」がインストールされている場合は、GKE Enterprise フリートのアップグレード手順を行う必要があります。
「GKE アドオン」がインストールされているかどうかを確認します。
Knative serving のインストールが「GKE アドオン」であるかどうかを確認するには、次のコマンドを実行します。
gcloud container clusters describe \ CLUSTER_NAME \ --region CLUSTER_LOCATION \ --project PROJECT_ID --format='get(addonsConfig.cloudRunConfig)'
次のように置き換えます。
- CLUSTER_NAME は、使用するクラスタの名前に置き換えます。
- CLUSTER_LOCATION は、クラスタが配置されているロケーションに置き換えます。
- PROJECT_ID は、Google Cloud プロジェクトの ID です。
結果:
- 「GKE アドオンがインストールされていない」:
- アドオンがインストールされていない場合、ターミナルにはなにも返されません。
- アドオンがすでにアンインストールされている場合、
disabled=true
が返されます。
- 「GKE アドオンがインストールされている」: アドオンがクラスタにインストールされている場合は、アドオンの構成の詳細が返されます。例:
loadBalancerType=LOAD_BALANCER_TYPE_EXTERNAL
- 例:
- 次の例では、「GKE アドオン」によって
my-addon-cluster
クラスタに Knative serving がインストールされ、外部トラフィックを処理するように構成されていることを示します。gcloud container clusters describe my-addon-cluster \ --region us-central1-c --project my-gcp-project \ --format='get(addonsConfig.cloudRunConfig)'
レスポンス:
loadBalancerType=LOAD_BALANCER_TYPE_EXTERNAL
CloudRun
カスタム リソースを構成する
インストールを構成するには、CloudRun
カスタム リソースを手動で作成して構成する必要があります。
CloudRun
カスタム リソースを手動で作成するには:
YAML ファイルを作成し、デフォルトの構成(例:
cloudrunanthos.yaml
)を指定します。apiVersion: operator.run.cloud.google.com/v1alpha1 kind: CloudRun metadata: name: cloud-run
cloudrunanthos.yaml
では、spec
セクションに次の属性を 1 つ以上構成することで、インストールをカスタマイズできます。限定公開クラスタ: Knative serving を Google Cloud で限定公開クラスタにインストールするには、
clusterConfig
とisPrivate
の属性セットを追加する必要があります。clusterConfig
属性とisPrivate
属性:spec: clusterConfig: isPrivate: true
デフォルトでは、限定公開クラスタは認証局と通信できないため、この設定によってマネージド TLS が無効になります。
指標:
metricscollector
属性セットを追加して、Cloud Monitoring を構成します。Google Cloud クラスタ上の GKE Enterprise の指標はデフォルトで有効になっています。spec: metricscollector: stackdriver: projectid: PROJECT_ID gcpzone: CLUSTER_LOCATION clustername: CLUSTER_NAME secretname: SECRET_NAME secretkey: SECRET_KEY
次のように置き換えます。
- PROJECT_ID: Google Cloud プロジェクトの ID。
- CLUSTER_LOCATION: クラスタが配置されているリージョンまたはゾーン。
- CLUSTER_NAME: クラスタの ID またはクラスタの完全修飾識別子。
- SECRET_NAME:
knative-serving
名前空間のサービス アカウントの Secret の名前。 SECRET_KEY:
knative-serving
名前空間のサービス アカウントの Secret のキー。例:key.json
サービス アカウントの詳細については、以下をご覧ください。
この CloudRun
カスタム リソースの例では、my-gcp-logging-secret
シークレットと key.json
キーを使用するように Cloud Monitoring の構成の詳細が指定されています。
apiVersion: operator.run.cloud.google.com/v1alpha1
kind: CloudRun
metadata:
name: cloud-run
spec:
metricscollector:
stackdriver:
projectid: my-gcp-project-id
gcpzone: us-central1-c
clustername: my-anthos-cluster-name
secretname: my-gcp-logging-secret
secretkey: key.json
```
Knative serving を有効にしてインストールする
GKE Enterprise フリートで Knative serving コンポーネントを有効にして、CloudRun
カスタム リソースをデプロイします。
フリートで Knative serving を有効にします。
gcloud container fleet cloudrun enable --project=PROJECT_ID
PROJECT_ID は、Google Cloud プロジェクトの ID に置き換えます。
詳細とその他のオプションについては、gcloud container fleet cloudrun enable のリファレンスをご覧ください。
省略可: Knative serving 機能コンポーネントが有効になっていることを確認します。
Console
Google Cloud コンソールで Knative serving コンポーネントが有効になっているかどうかを確認します。
コマンドライン
appdevexperience
の状態がACTIVE
であるかどうかを確認します。gcloud container fleet features list --project=PROJECT_ID
PROJECT_ID は、Google Cloud プロジェクトの ID に置き換えます。
詳細と他のオプションについては、gcloud container fleet features list をご覧ください。
結果:
NAME STATE appdevexperience ACTIVE
Knative serving をインストールする GKE Enterprise クラスタごとに、
CloudRun
カスタム リソースをデプロイする必要があります。gcloud
gcloud container fleet cloudrun apply --gke-cluster=CLUSTER_LOCATION/CLUSTER_NAME --config=CONFIG_FILE
以下を置き換えます。
- CLUSTER_LOCATION: クラスタが配置されているリージョンまたはゾーン。
- CLUSTER_NAME: クラスタの ID またはクラスタの完全修飾識別子。
- CONFIG_FILE:
cloudRun
カスタム リソースへのファイル名の相対パス。(例:cloudrunanthos.yaml
)。
詳細とその他のオプションについては、gcloud container fleet cloudrun apply のリファレンスをご覧ください。
kubectl
kubectl apply --kubeconfig=KUBECONFIG --filename CONFIG_FILE
以下を置き換えます。
- KUBECONFIG: kubectl 構成ファイルへの絶対パス。
- CONFIG_FILE は、
cloudRun
カスタム リソース定義のファイル名と相対パスに置き換えます(例:cloudrunanthos.yaml
)。
詳細と他のオプションについては、kubectl apply のリファレンスをご覧ください。
- クラスタで Knative serving が有効になっていることを確認します。
- Google Cloud コンソールを開きます。
- クラスタの名前をクリックして、詳細ペインを開きます。
- 次のコマンドを実行して、Knative serving バージョンの詳細が表示されるかどうかを確認します。
kubectl get namespace knative-serving -o 'go-template={{index .metadata.labels "serving.knative.dev/release"}}'
knative-serving
とappdevexperience
の名前空間で、Knative serving 固有のデプロイがすべて実行中であることを確認します。