MIGRATION ROADMAP — 全17工程
- ① SSH、ユーザー追加
- ② IPv4/IPv6追加、netplan、ufw
- ③ Apache2
- ④ Let's Encrypt
- ⑤ PHP
- ⑥ MariaDB
- ⑦ WordPress
- ⑧ Dovecot、Postfix
- ⑨ Vsftpd
- ⑩ Python
- ⑪ llama.cpp、ChromaDB
- ⑫ Anaconda、Keras、TensorFlow
- ⑬ Node.js
- ⑭ MongoDB
- ⑮ Mosquitto
- ⑯ RabbitMQ
- ⑰ Supervisor
01標準リポジトリだけで完結
MongoDBの回ではUbuntu 26.04向けの公式リポジトリがまだなく回避策が必要だったが、RabbitMQとその依存であるErlangは、Ubuntu 26.04の標準リポジトリに最初から含まれていた。追加リポジトリの設定は不要。
$ sudo apt update
$ sudo apt install erlang rabbitmq-server -y
$ sudo systemctl enable rabbitmq-server
$ sudo systemctl start rabbitmq-server
$ sudo systemctl status rabbitmq-server
Active: active (running)
02設定はデフォルトのまま
RabbitMQのデフォルトのguestアカウントは、セキュリティ上localhostからの接続のみに制限されている。
⑩のPython(RabbitMQコンシューマー)、⑬のNode.js(amqplib)とも同じサーバー上で動く前提のため、この制約が障害にならず、設定変更なしで進められた。
03動作確認:RAGシステムのconsumer.pyを実行
RAGシステムの実際のコンシューマーを起動し、embeddingモデル(intfloat/multilingual-e5-small)のダウンロード、MongoDB接続、RabbitMQ接続、キューの購読まで一通り確認した。
$ python consumer.py
📦 [Consumer] モデルを読み込み中...
(embeddingモデルのダウンロード)
📦 [Consumer] MongoDB に接続中...
✅ [Consumer] MongoDB 接続完了
✅ [Consumer] 初期化完了
🐇 [Consumer] RabbitMQ に接続中: localhost:5672
✅ [Consumer] 'rag_request' キューを購読中...
🚀 [Consumer] 稼働中 — Ctrl+C で終了
✅ [Consumer] キャンセルキュー購読中
$ sudo rabbitmqctl list_queues
name messages
rag_request 0
rag_cancel 0
rag_reply 0
確認完了
RAGシステムが実際に必要とする3つのキュー(rag_request、rag_cancel、rag_reply)がすべて存在し、consumer.pyからの接続・購読が正常に完了。
04ここまでの状態
- Erlang・RabbitMQとも標準リポジトリからインストール、追加リポジトリ不要
- 設定はデフォルトのまま(guestアカウントのlocalhost限定という既定の制約と実運用が合致)
- RAGシステムのconsumer.pyで実地確認、MongoDB・RabbitMQ両方への接続と3キューの購読を確認