このページは、新規インストールをカスタマイズする場合、または Knative serving の既存のフリート インストールを構成する場合に使用します。たとえば、限定公開クラスタ用に構成したり、Cloud Monitoring の認証情報を設定できます。
デフォルトのインストール手順では、次の CloudRun
カスタム リソースを自動的にデプロイします。これにより、Google Cloud クラスタで GKE Enterprise の指標が有効になります。
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
- 例:
-
次の例では、Knative serving が GKE アドオンによって
my-addon-cluster
クラスタにインストールされ、外部トラフィックを処理するように構成されていることを示します。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
Namespace のサービス アカウントの Secret の名前。 SECRET_KEY:
knative-serving
Namespace のサービス アカウントの Secret のキー。例:key.json
サービス アカウントの詳細については、以下をご覧ください。
この CloudRun
カスタム リソースの例では、my-gcp-logging-secret
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 機能コンポーネントが有効になっていることを確認します。
コンソール
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
の Namespace で、Knative serving 固有の Deployment すべて実行中であることを確認します。