Based on: https://github.com/yamamoto-febc/sacloud-terraform-isucon
cp envs/example.tfvars envs/<your_env_name>.tfvars
switch_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
が必要です。
数分後、SSHでログインできるようになるので、以下のコマンドでbenchmarkerのIPアドレスを取得してください。
terraform output benchmarker_ip_address
ssh -i <your_private_key_path> ubuntu@<benchmarker_ip_address>
scp -i <your_private_key_path> script/disable.sh ubuntu@<benchmarker_ip_address>:~/
benchmarkerにloginして、cloud-initプロセスが完了していることを確認したのち、
./disable.sh
を実行する。
これをやらないと、benchmarkerがappを起動してしまうため、パフォーマンスに影響が出る可能性があります。
terraform destroy -var-file=envs/<your_env_name>.tfvars
「ISUCON」は、LINE株式会社の商標または登録商標です。
3台構成にするには、既存のcloud-initが1台向け構成になっているため構築が必要です。
- [s1]
~/env.sh
を自身のlocal ipにする(これもip aで見れる、192.*のやつ)ISUCON13_POWERDNS_SUBDOMAIN_ADDRESS="192.168.0.3"
- [s1]
sudo systemctl restart pdns
- [s1]
/home/isucon/webapp/pdns/init_zone.sh
- [s1]
pdnsutil delete-zone u.isucon.local
- [s1]
sudo rm -f /opt/aws-env-isucon-subdomain-address.sh.lock
- [s1]
sudo reboot