以前に Knative Serving の「無料トライアル」をインストールした場合は、まず GKE Enterprise フリートを使用するように VMware の Knative Serving をアップグレードする必要があります。
このページで説明する手順を使用して、Knative serving の新規インストールを構成するか、既存のフリート インストールを更新します。
始める前に
インストールの前提条件を満たしていることを確認する必要があります。
CloudRun
カスタム リソースを構成する
インストールを構成するには、CloudRun
カスタム リソースを手動で作成して構成する必要があります。
CloudRun
カスタム リソースを手動で作成するには、以下の手順を行います。
必要なモニタリング指標の書き込みロール(
monitoring.metricWriter
)が付与されたサービス アカウントを作成するか、既存のサービス アカウントが必要です。新しいサービス アカウントを作成して鍵をダウンロードするには、サービス アカウントの使用をご覧ください。
必要な権限を持つ既存のサービス アカウントがある場合は、そのサービス アカウントを作成したときにダウンロードしたキーを探します。
knative-serving
名前空間を作成します。kubectl create namespace knative-serving
monitoring.metricWriter
権限を持つサービス アカウントを保持する Secret をknative-serving
名前空間に作成します。kubectl create secret -n knative-serving generic SECRET_NAME --from-file=PATH_TO_KEY_FILE/SECRET_KEY
次のように置き換えます。
- SECRET_NAME を、Secret に選択した名前に置き換えます。
- SECRET_KEY は、認証情報が含まれるファイルの名前に置き換えます。例:
key.json
- PATH_TO_KEY_FILE は、SECRET_KEY のディレクトリへのパスに置き換えます。
オプション フラグなどの詳細については、
kubectl create secret
リファレンスをご覧ください。次の属性を使用して YAML ファイル(例:
cloudrunanthos.yaml
)を作成します。apiVersion: operator.run.cloud.google.com/v1alpha1 kind: CloudRun metadata: name: cloud-run 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 機能コンポーネントが有効になっていることを確認します。
コンソール
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 --kubeconfig=KUBECONFIG --context=CONTEXT --config=CONFIG_FILE
以下を置き換えます。
- KUBECONFIG: kubectl 構成ファイルへの絶対パス。
- CONTEXT: kubectl 構成ファイル内の接続に使用するコンテキスト名。
- 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 固有のデプロイがすべて実行中であることを確認します。