4
0

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 1 year has passed since last update.

private-isuをVagrantで動かすメモ

Posted at

はじめに

ISUCONの練習サービスprivate-isuをVagrantで動かすときに少し詰まったのでその時のメモです。

環境

  • Ubuntu-22.04
  • Vagrant 2.2.19
  • Ansible core 2.14.6
  • VirtualBox 6.1

環境構築

Vagrantのインストール

$ sudo apt install vagrant

ansibleのインストール

AnsibleのDocumentationを参考にします。以下,2023/7/30時点でのコマンドです。

$ sudo apt update
$ sudo apt install software-properties-common
$ sudo add-apt-repository --yes --update ppa:ansible/ansible
$ sudo apt install ansible

VirtualBoxのインストール

公式サイトから最新版の7.0をインストールしたらvagrant upする際にエラーを吐かれたので,aptで6.1をインストールします。

$ sudo apt install virtualbox-6.1

Vagrantfileの修正

vagrant upで起動するとバージョン依存関係のエラーが出たので,Vagrantfileの4行目の"ubuntu/focal64"を"bento/ubuntu-22.04"に変更しました。

Vagrantfile
Vagrant.configure("2") do |config|
  # config.vm.box = "ubuntu/focal64"
  config.vm.box = "bento/ubuntu-22.04"
  config.vm.box_check_update = false
  ...

起動

Vagrant upで起動します。結構待たされます。

$ vagrant up

vscodeのremote explorerでsshするために,以下のコマンドでssh configを出力します。

$ vagrant ssh-config

出力は以下のようになると思うので,これを~/.ssh/configに貼り付けます。

config
Host app
  HostName 127.0.0.1
  User vagrant
  Port 2222
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile hogehoge/private-isu/.vagrant/machines/app/virtualbox/private_key
  IdentitiesOnly yes
  LogLevel FATAL
  PubkeyAcceptedKeyTypes +ssh-rsa
  HostKeyAlgorithms +ssh-rsa

Host bench
  HostName 127.0.0.1
  User vagrant
  Port 2200
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile hogehoge/private-isu/.vagrant/machines/bench/virtualbox/private_key
  IdentitiesOnly yes
  LogLevel FATAL
  PubkeyAcceptedKeyTypes +ssh-rsa
  HostKeyAlgorithms +ssh-rsa

ユーザーの変更

vagrantユーザーのままではvscodeで変更したコードを保存できないので,isuconユーザーでsshできるように変更します。

まずは,そのままvagrantユーザーでsshして,~/.ssh/authorized_keysをコピーします。

$ cat ~/.ssh/authorized_keys
ssh-rsa hogehogehogehoge......
....
↑これをコピーする

次に,isuconユーザーに切り替えてauthorized_keysを追加します。

$ sudo su isucon
$ vim ~/.ssh/authorized_keys
↑さっきコピーしたやつを追加して保存する

最後に,sshを切断して~/.ssh/configのUserをisuconに書き換えます。

config
Host app
  HostName 127.0.0.1
  User isucon
  ...

Host bench
  HostName 127.0.0.1
  User isucon
  ...

これで,vagrant upしてからsshして,コードの修正までを行えるようになったと思います。

おわりに

ISUCON頑張りたい,,

4
0
0

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
4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?