Based on: https://github.com/yamamoto-febc/sacloud-terraform-isucon
cp envs/example.tfvars envs/<your_env_name>.tfvarsswitch_name = ""
benchmarker_name = ""
app_name = ""variable "public_key_path" {
default = "<your_public_key_path>"
}terraform init
terraform workspace new <your_env_name> # or terraform workspace select <your_env_name>
terraform apply -var-file=envs/<your_env_name>.tfvarsただし、実行には環境変数としてSAKURACLOUD_ACCESS_TOKENとSAKURACLOUD_ACCESS_TOKEN_SECRETが必要です。
./script/netplan.shにプライベートIPを設定するスクリプトがあります。
./script/ip.txtを作成して、マシンのIPを1行に1つずつ書き、以下のコマンドを実行してください。
sh ./script/netplan.sh実行すると、./script/ip.txtに書かれたIPアドレスに対して192.168.0.2, 192.168.0.3... というようにプライベートIPが設定されます。
プライベートIPがわからなくなったら、直接SSHでログインしてip aを実行してください。
これをしないとプライベートネットワーク内で通信ができません。
数分後、SSHでログインできるようになるので、以下のコマンドでbenchmarkerのIPアドレスを取得してください。
terraform output benchmarker_ip_addressssh -i <your_private_key_path> ubuntu@<benchmarker_ip_address>sudo systemctl stop isuumo.go.service
sudo systemctl disable isuumo.go.serviceこれをやらないと、benchmarkerがappを起動してしまうため、パフォーマンスに影響が出る可能性があります。
terraform destroy -var-file=envs/<your_env_name>.tfvarssshをして以下のコマンドでDONEが出ているか見る
sudo tail -f /var/log/cloud-init-output.log「ISUCON」は、LINE株式会社の商標または登録商標です。