Raspberry Pi 5 (Ubuntu Server 24.04.4 LTS 64-bit) の初期セットアップを自動化する Ansible playbook です。
このリポジトリは Giocci Platform の性能計測を行う際に利用する Raspberry Pi 5 x 3 台のセットアップ自動化を目的としています。
※性能計測を行うためには giocci client 、giocci relay 、 giocci engine を動作させる実機が 3 台必要です。
- Raspberry Pi Imager で Ubuntu Server 24.04.4 LTS (64-bit) を SD に焼く
- Imager の設定でユーザー作成と SSH 公開鍵登録を済ませている
- 起動後、SSH 接続が可能な状態になっている
- ホストマシンに Ansible がインストール済み
Raspberry Pi Imager で以下を設定してから SD を作成します。
- ユーザー名/パスワード
- SSH を有効化し公開鍵を登録
- (必要なら) Wi-Fi 設定
Ubuntu 起動後は sudo nmap -sn 192.168.0.0/24 などで IP を把握してください。
inventory.yml の IP とユーザーを実機に合わせます。
ansible_host: 192.168.0.3 # `sudo nmap -sn 192.168.0.0/24` などで把握した IP アドレス
ansible_user: ubuntuinventory.yml の鍵パスを設定します。
ansible_ssh_private_key_file: ~/.ssh/set_your_keymake ping
make ssh-check各ターゲットごとに固定 IP を設定します。
ansible-playbook -l rpi5-00 -e "static_ip=192.168.0.100 netmask=24 gateway=192.168.0.1 dns_servers=['8.8.8.8','8.8.4.4']" playbooks/setup-static-ip.yml実行後は inventory.yml の rpi5-00 の ansible_host を以下のように更新します。
ansible_host: 192.168.0.100ansible-playbook -l rpi5-01 -e "static_ip=192.168.0.101 netmask=24 gateway=192.168.0.1 dns_servers=['8.8.8.8','8.8.4.4']" playbooks/setup-static-ip.yml実行後は inventory.yml の rpi5-01 の ansible_host を以下のように更新します。
ansible_host: 192.168.0.101ansible-playbook -l rpi5-02 -e "static_ip=192.168.0.102 netmask=24 gateway=192.168.0.1 dns_servers=['8.8.8.8','8.8.4.4']" playbooks/setup-static-ip.yml実行後は inventory.yml の rpi5-02 の ansible_host を以下のように更新します。
ansible_host: 192.168.0.102make check-ipWi-Fi を使わない場合は DHCP を無効化します。無効化後、wlan0 は IP を持たなくなります。
eth0 に static IP が設定されていない場合は失敗するようにしています。
make disable-dhcp-wlan0eth0 に static IP が設定されていない場合は失敗するようにしています。
make disable-dhcp-eth0make rebooteth0 が static IP のみになっていることを確認します。
make check-ipmake disable-auto-update
make rebootmake apt-upgrade は /etc/apt/sources.list.d/ubuntu.sources の Suites: に noble-updates が無い場合だけ追記してからアップグレードを実行します。
make apt-upgrade
make rebootmake install-chrony
make check-time-syncmake install-dockermake install-zenohmake install-misemake install-dev-toolsmake helpで利用可能なコマンド一覧を表示できます。- inventory.yml の host 識別子を (ex. rpi5-00) 書き換える場合は、リポジトリ内の識別子を検索し置換するようにしてください。