vulcanus

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit b7b02d8a8fa13fa336b70d3eb0d3e20735c20d13
parent 7b4d9ab14ea5474e2cc89df3badf603b9960b92d
Author: Minerva_juppiter <94231606+minerva-jupiter@users.noreply.github.com>
Date:   Sat, 16 May 2026 22:36:19 +0900

Update README with Vulcanus Ansible playbook details

Added detailed documentation for Vulcanus Ansible playbook, including features, directory structure, prerequisites, and operational steps.
Diffstat:
MREADME.md | 53++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 52 insertions(+), 1 deletion(-)

diff --git a/README.md b/README.md @@ -1 +1,52 @@ -Here is Vulcanus to administrate my persoanl servers. +# Vulcanus + +インフラ環境における複数OS(Debian, Ubuntu, Gentoo Linux)の一元的なパッケージアップデートを自動化するための Ansible プレイブック。 + +## 特徴 + +- **異種OS混在環境への対応**: `apt` を使用する Debian/Ubuntu 系と、`emerge` (Portage) を使用する Gentoo Linux のアップデートを単一のコマンドで並行実行。 +- **柔軟な権限昇格**: 一般ユーザーからの `sudo` による昇格に加え、ミニマル環境(`devcontainer` 等)における `doas` を用いた権限昇格にホスト単位で対応。 + +## ディレクトリ構成 + +```text +ansible/ +├── inventory.ini # ホスト定義および接続・権限昇格設定 +├── site.yml # 全体制御プレイブック +└── roles/ + ├── debian_base/ # Debian/Ubuntu 向けパッケージ更新タスク + │ └── tasks/ + │ └── main.yml + └── gentoo_base/ # Gentoo 向け Portage 同期・@world 更新タスク + └── tasks/ + └── main.yml + +``` + +## 事前準備 + +### 1. SSH公開鍵の配置 + +コントロールノードの公開鍵を、対象ホストの各接続ユーザー(`root` または `tetsu`)の `~/.ssh/authorized_keys` に事前に登録すること。 + +### 2. インベントリの設定 + +`inventory.ini` を環境に合わせて変更する。接続ユーザーや、`doas` を使用するホスト固有の設定はインベントリ内で定義する。 + +## 運用・実行手順 + +### 疎通確認 (Ping) + +すべての対象ホストに対してSSH経由で正常に介入できるかを確認する。 + +```bash +ANSIBLE_HOST_KEY_CHECKING=False ansible all -m ping -i inventory.ini +``` + +### アップデートの実行 + +権限昇格(`sudo` / `doas`)のパスワード対話入力を有効にしてプレイブックを実行する。 + +```bash +ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook -i inventory.ini site.yml -K +```