[[TrainTicket]]を構築する。 ```shell export PROJECT_ID=$(gcloud config list --format 'value(core.project)') export CLUSTER_NAME='train-ticket-01' ``` ```shell gcloud container clusters create $CLUSTER_NAME \ --region asia-northeast1-b \ --cluster-version 1.23.5-gke.1501 \ --image-type=cos_containerd \ --machine-type e2-standard-2 \ --num-nodes 4 \ --workload-pool="${PROJECT_ID}.svc.id.goog" \ --workload-metadata=GKE_METADATA \ --no-enable-stackdriver-kubernetes ``` ```shell gcloud container node-pools create control-pool \ --region asia-northeast1-b \ --cluster $CLUSTER_NAME \ --machine-type e2-standard-2 \ --image-type=cos_containerd \ --num-nodes=1 \ --workload-metadata=GKE_METADATA ``` ```shell gcloud container node-pools create load-pool \ --region asia-northeast1-b \ --cluster $CLUSTER_NAME \ --machine-type e2-small \ --image-type=cos_containerd \ --num-nodes=1 \ --workload-metadata=GKE_METADATA ``` ```shell gcloud container node-pools create analytics-pool \ --region asia-northeast1-b \ --cluster $CLUSTER_NAME \ --machine-type e2-medium \ --image-type=cos_containerd \ --num-nodes=1 \ --workload-metadata=GKE_METADATA ``` ```shell gcloud iam service-accounts create $CLUSTER_NAME gcloud projects add-iam-policy-binding $PROJECT_ID --member serviceAccount:$CLUSTER_NAME@$PROJECT_ID.iam.gserviceaccount.com --role roles/storage.objectAdmin gcloud iam service-accounts add-iam-policy-binding --role roles/iam.workloadIdentityUser --member "serviceAccount:$PROJECT_ID.svc.id.goog[litmus/argo-chaos]" $CLUSTER_NAME@$PROJECT_ID.iam.gserviceaccount.com ``` - load-testとmonitoringはわけたほうがよさそう。 ## After - [[TrainTicket負荷生成]] - [[TrainTicket監視]]