matsuu / cloud-init-isucon Goto Github PK
View Code? Open in Web Editor NEWISUCON過去問環境を構築するためのcloud-config集
License: MIT License
ISUCON過去問環境を構築するためのcloud-config集
License: MIT License
環境のご用意ありがとうございます!!
手順通りにmultipassでisucon11qの環境を構築したのですが、benchを回そうとしたときにbenchディレクトリが無いようです。
isucon@isucon11q:~$ cd bench
-bash: cd: bench: No such file or directory
isucon@isucon11q:~$ ls -la
total 84
drwxr-xr-x 16 isucon isucon 4096 May 11 14:49 .
drwxr-xr-x 5 root root 4096 May 11 08:37 ..
drwxrwxr-x 3 isucon isucon 4096 May 11 08:38 .ansible
-rw------- 1 isucon isucon 312 May 11 18:29 .bash_history
-rw-r--r-- 1 isucon isucon 220 Feb 25 2020 .bash_logout
-rw-r--r-- 1 isucon isucon 4643 May 11 08:49 .bashrc
drwxrwxr-x 3 isucon isucon 4096 May 11 08:52 .bundle
drwxrwxr-x 5 isucon isucon 4096 May 11 08:52 .cache
drwxrwxr-x 4 isucon isucon 4096 May 11 08:52 .cargo
drwx------ 4 isucon isucon 4096 May 11 08:52 .config
drwxrwxr-x 3 isucon isucon 4096 May 11 08:40 .cpanm
drwxrwxr-x 3 isucon isucon 4096 May 11 08:48 .local
drwxrwxr-x 4 isucon isucon 4096 May 11 08:38 .npm
drwxrwxr-x 5 isucon isucon 4096 May 11 08:50 .perl-cpm
-rw-r--r-- 1 isucon isucon 828 May 11 08:48 .profile
drwxrwxr-x 6 isucon isucon 4096 May 11 08:49 .rustup
drwx------ 2 isucon isucon 4096 May 11 08:37 .ssh
drwxrwxr-x 3 isucon isucon 4096 May 11 08:50 go
drwxrwxr-x 8 isucon isucon 4096 May 11 08:46 local
drwxr-xr-x 11 isucon isucon 4096 May 11 08:50 webapp
お手数ですが、ご確認をお願いいたします
multipass をインストールし、下記のコマンドを実行しました。
multipass launch --name isucon12q --cpus 2 --disk 20G --memory 4G --timeout 86400 --cloud-init isucon12q/isucon12q.cfg 22.04
下記のように出力されました。
Launched: isucon12q
しかし、 multipass shell でログインし、操作してみると、必要なディレクトリが作成されていませんでした。
cloud-init-output.log を確認すると下記のように無数のエラーが出力されていました。
less /var/log/cloud-init-output.log
エラーの一部は下記のとおりです。
Err:1 http://ports.ubuntu.com/ubuntu-ports jammy/main arm64 bzip2 arm64 1.0.8-5build1
Cannot initiate the connection to ports.ubuntu.com:80 (2620:2d:4000:1::19). - connect (101: Network is unreachable) Cannot initiate the connection to ports.ubuntu.com:80 (2620:2d:4000:1::16). - connect (101: Network is unreachable) Could not connect to ports.ubuntu.com:80 (185.125.190.36), connection timed out Could not connect to ports.ubuntu.com:80 (185.125.190.39), connection timed out
Ign:2 http://ports.ubuntu.com/ubuntu-ports jammy-updates/main arm64 gcc-11-base arm64 11.4.0-1ubuntu1~22.04
Err:3 http://ports.ubuntu.com/ubuntu-ports jammy/main arm64 libisl23 arm64 0.24-2build1
Cannot initiate the connection to ports.ubuntu.com:80 (2620:2d:4000:1::19). - connect (101: Network is unreachable) Cannot initiate the connection to ports.ubuntu.com:80 (2620:2d:4000:1::16). - connect (101: Network is unreachable)
Err:4 http://ports.ubuntu.com/ubuntu-ports jammy/main arm64 libmpc3 arm64 1.2.1-2build1
Cannot initiate the connection to ports.ubuntu.com:80 (2620:2d:4000:1::19). - connect (101: Network is unreachable) Cannot initiate the connection to ports.ubuntu.com:80 (2620:2d:4000:1::16). - connect (101: Network is unreachable)
Ign:5 http://ports.ubuntu.com/ubuntu-ports jammy-updates/main arm64 cpp-11 arm64 11.4.0-1ubuntu1~22.04
Err:6 http://ports.ubuntu.com/ubuntu-ports jammy/main arm64 cpp arm64 4:11.2.0-1ubuntu1
Cannot initiate the connection to ports.ubuntu.com:80 (2620:2d:4000:1::19). - connect (101: Network is unreachable) Cannot initiate the connection to ports.ubuntu.com:80 (2620:2d:4000:1::16). - connect (101: Network is unreachable)
Err:7 http://ports.ubuntu.com/ubuntu-ports jammy/main arm64 fonts-dejavu-core all 2.37-2build1
Cannot initiate the connection to ports.ubuntu.com:80 (2620:2d:4000:1::19). - connect (101: Network is unreachable) Cannot initiate the connection to ports.ubuntu.com:80 (2620:2d:4000:1::16). - connect (101: Network is unreachable)
他のパッケージに関しても同様なエラーが続きます。
これに関して、どのように対処したら良いでしょうか?
private-isuのREADMEの手順で環境を作成した際に、PHPのバージョン問題が発生しました。
catatsuy/private-isuはUbuntu 22.04以外のサポートを打ち切っているため、READMEの記述と実際の状況に相違が見られます。
catatsuy/private-isu#401 (comment)
バージョン変更して起動コマンドを実行したところ、無事に環境構築が完了したことを確認しています。
multipass launch --name private-isu --cpus 2 --disk 16G --mem 4G --cloud-init standalone.cfg 22.04
❯ sw_vers
ProductName: macOS
ProductVersion: 12.4
BuildVersion: 21F79
❯ multipass version
multipass 1.9.1+mac
multipassd 1.9.1+mac
READMEにある通り
cloud-init-isucon/isucon10q on main
❯ multipass launch --name isucon10q --cpus 2 --disk 16G --mem 4G --cloud-init isucon10q.cfg 18.04
launch failed: The following errors occurred:
timed out waiting for initialization to complete
を実行した後にログインしたところ
cloud-init-isucon/isucon10q on main underwent 5m40s
❯ multipass shell isucon10q
Welcome to Ubuntu 18.04.6 LTS (GNU/Linux 4.15.0-180-generic aarch64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
System information as of Tue Jun 7 13:35:43 JST 2022
System load: 1.84 Processes: 126
Usage of /: 24.9% of 15.34GB Users logged in: 0
Memory usage: 12% IP address for enp0s1: 192.168.64.15
Swap usage: 0%
16 updates can be applied immediately.
12 of these updates are standard security updates.
To see these additional updates run: apt list --upgradable
New release '20.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.
*** System restart required ***
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.
一時間くらい待ち、ログを確認すると以下の通りになっておりbenchディレクトリが有りませんでした
ubuntu@isucon10q:~$ sudo tail -f /var/log/cloud-init-output.log
TASK [langs : Add PATH for deno] ***********************************************
Tuesday 07 June 2022 13:33:45 +0900 (0:00:06.500) 0:02:54.794 **********
changed: [allinone]
TASK [langs : install xbuild] **************************************************
Tuesday 07 June 2022 13:33:45 +0900 (0:00:00.069) 0:02:54.864 **********
ok: [allinone]
TASK [langs : Install PHP] *****************************************************
Tuesday 07 June 2022 13:33:45 +0900 (0:00:00.628) 0:02:55.492 **********
changed: [allinone]
TASK [langs : Add PATH for PHP] ************************************************
Tuesday 07 June 2022 13:37:11 +0900 (0:03:25.852) 0:06:21.345 **********
changed: [allinone]
TASK [langs : Install Ruby v2.7.1] *********************************************
Tuesday 07 June 2022 13:37:11 +0900 (0:00:00.072) 0:06:21.417 **********
fatal: [allinone]: FAILED! => {"changed": true, "cmd": ["/tmp/xbuild/ruby-install", "2.7.1", "/home/isucon/local/ruby"], "delta": "0:02:15.441277", "end": "2022-06-07 13:39:27.244410", "msg": "non-zero return code", "rc": 1, "start": "2022-06-07 13:37:11.803133", "stderr": "error: RPC failed; curl 52 GnuTLS recv error (-110): The TLS connection was non-properly terminated.\nfatal: The remote end hung up unexpectedly", "stderr_lines": ["error: RPC failed; curl 52 GnuTLS recv error (-110): The TLS connection was non-properly terminated.", "fatal: The remote end hung up unexpectedly"], "stdout": "cloning latest ruby-build.\nfailed to download ruby-build", "stdout_lines": ["cloning latest ruby-build.", "failed to download ruby-build"]}
to retry, use: --limit @/root/isucon10-qualify/provisioning/ansible/allinone.retry
PLAY RECAP *********************************************************************
allinone : ok=16 changed=13 unreachable=0 failed=1
Tuesday 07 June 2022 13:39:27 +0900 (0:02:15.510) 0:08:36.928 **********
===============================================================================
langs : Install PHP --------------------------------------------------- 205.85s
langs : Install Ruby v2.7.1 ------------------------------------------- 135.51s
common : Install Package(Build) --------------------------------------- 125.32s
langs : Install Rust --------------------------------------------------- 26.60s
langs : Install v1.46.0 ------------------------------------------------ 14.13s
langs : Install Deno v1.3.2 --------------------------------------------- 6.50s
common : install xbuild ------------------------------------------------- 0.98s
langs : install xbuild -------------------------------------------------- 0.63s
Gathering Facts --------------------------------------------------------- 0.33s
common : Add sudoers ---------------------------------------------------- 0.21s
common : Create isucon user --------------------------------------------- 0.18s
common : Replace fast repository ---------------------------------------- 0.14s
langs : Add PATH for Rust ----------------------------------------------- 0.14s
common : Create isucon group -------------------------------------------- 0.14s
langs : Set v1.46.0 as default ------------------------------------------ 0.09s
langs : Add PATH for PHP ------------------------------------------------ 0.07s
langs : Add PATH for deno ----------------------------------------------- 0.07s
Cloud-init v. 22.1-14-g2e17a0d6-0ubuntu1~18.04.3 running 'modules:final' at Tue, 07 Jun 2022 04:29:47 +0000. Up 17.28 seconds.
2022-06-07 04:39:27,283 - cc_scripts_user.py[WARNING]: Failed to run module scripts-user (scripts in /var/lib/cloud/instance/scripts)
2022-06-07 04:39:27,284 - util.py[WARNING]: Running module scripts-user (<module 'cloudinit.config.cc_scripts_user' from '/usr/lib/python3/dist-packages/cloudinit/config/cc_scripts_user.py'>) failed
Cloud-init v. 22.1-14-g2e17a0d6-0ubuntu1~18.04.3 finished at Tue, 07 Jun 2022 04:39:27 +0000. Datasource DataSourceNoCloud [seed=/dev/vda][dsmode=net]. Up 597.53 seconds
何が原因でうまくいかないのでしょうか
M1 macでmultipassを実行すると以下のエラーが表示されます
$ multipass launch --name isucon11q --cpus 2 --disk 16G --mem 4G --cloud-init isucon11q.cfg 20.04
error loading cloud-init config: yaml-cpp: error at line 26, column 66: illegal map value
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.