9
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

isucon8の予選の環境構築

Last updated at Posted at 2019-07-25

なぜこの記事を書いたか?

自分自身が環境構築で手間取ったため、もし同じような人がいた場合の助けになればと思い書きました
便利なスクリプトの存在なども、あとから気づいたので同じ轍を踏まないようにと備忘録的なことと
vagrantほとんどわからないところからいくつか学びがあったので、そのメモも兼ねています

解析編はこちら

前提

  • MacBookPro
  • vagrantインストール済み
  • VirtualBoxインストール済み
  • matsuuさんのvagrant-isuconを利用しての環境構築
  • 今回の対象はisucon8-qualifier
  • 上記のページに説明が書かれていますので、そちらで充分な方はそちらを直接見ていただいたほうが早いかもしれません
  • 実行対象のアプリケーションはgo

vagrantでの環境立ち上げまで

1.Vagrantfileをclone

git clone https://github.com/matsuu/vagrant-isucon.git

2.ネットワーク設定を有効化

cd vagrant-isucon/isucon8-qualifier
vim Vagrantfile

※config.vm.network "private_network", ip: "192.168.33.10"のコメントを外す

3.vagrantを起動して変更をリロード

vagrant up

### 必要であれば
vagrant provision

ログイン〜データベース初期化

1.アプリ用サーバにsshログイン

vagrant ssh webapp

2.isuconユーザーにスイッチ

sudo -i -u isucon

3.DB(mariadb)の起動

sudo systemctl start mariadb.service

4.データベース初期化、アプリが動くのに最低限必要なデータ投入

cd torb
./db/init.sh

アプリケーションの起動

1.goのアプリケーションを起動

### おそらく初期でperlが動いているので停止
sudo systemctl stop torb.perl

sudo systemctl start torb.go

2.Webサーバ(h2o)の起動

sudo systemctl start h2o.service

3.ブラウザで確認
↓の結果で表示されたIPアドレスを入力して画面が出てくれば立ち上げ完了

ip addr

ベンチの起動

1.ログイン

vagrant ssh bench
sudo -i -u isucon

2.ベンチアプリのコンパイル

cd torb/bench/
make deps
make

3.初期データ生成

./bin/gen-initial-dataset

4.ベンチマーク実行

./bin/bench -remotes=[アプリケーションのIPアドレス] -output result.json

5.ベンチ結果の確認

jq . < result.json

おまけ

アプリログの確認

sudo journalctl -f -u torb.go

参考

https://github.com/matsuu/vagrant-isucon/tree/master/isucon8-qualifier
https://github.com/isucon/isucon8-qualify

vagrant関連

https://teratail.com/questions/95371
https://qiita.com/srockstyle/items/233ef326a75362200a91

9
3
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?