refactor: bootstrap использует cluster_service_users вместо отдельного ansible-пользователя
Проблема: bootstrap создавал отдельного пользователя ansible (k3s_admin_user),
хотя у нас уже есть cluster_service_users с k8s и devops.
Решение:
- k3s_admin_user: devops (один из cluster_service_users, не отдельный пользователь)
- bootstrap phase 1: создаёт ВСЕХ пользователей из cluster_service_users через k8s-user role
- bootstrap phase 2: деплоит SSH ключ Ansible runner только в authorized_keys k3s_admin_user
- roles/bootstrap/tasks/main.yml: удалено создание пользователя/группы/sudoers (теперь в k8s-user)
- roles/bootstrap/defaults/main.yml: удалены k3s_admin_shell/comment/groups (не нужны)
- добавлена проверка: k3s_admin_user должен быть в cluster_service_users (assert)
group_vars/all/main.yml:
- ansible_user: "{{ k3s_admin_user }}" — все playbooks подключаются как k3s_admin_user
- ansible_ssh_private_key_file: "~/.ssh/id_rsa"
- k3s_admin_ssh_additional_keys: [] — для нескольких инженеров через vault
inventory/hosts.ini:
- убраны ansible_user=ubuntu с каждого хоста (теперь в group_vars)
- убран ansible_ssh_private_key_file из group vars (теперь в group_vars/all/main.yml)
This commit is contained in:
@@ -2,34 +2,35 @@
|
||||
# K3S HA кластер — inventory
|
||||
# Мастера: k3s server с embedded etcd (участвуют в Raft-кворуме)
|
||||
# Воркеры: k3s agent — только рабочие ноды, без etcd
|
||||
#
|
||||
# ansible_user НЕ указывается здесь — он берётся из group_vars:
|
||||
# k3s_admin_user: devops → ansible_user: "{{ k3s_admin_user }}"
|
||||
# Bootstrap подключается с паролем из host_vars/<node>/vault.yml
|
||||
# ─────────────────────────────────────────────────────────────────────────────
|
||||
|
||||
[k3s_master]
|
||||
master01 ansible_host=192.168.1.10 ansible_user=ubuntu
|
||||
worker01 ansible_host=192.168.1.11 ansible_user=ubuntu
|
||||
rpi01 ansible_host=192.168.1.12 ansible_user=pi ansible_python_interpreter=/usr/bin/python3
|
||||
master01 ansible_host=192.168.1.10
|
||||
worker01 ansible_host=192.168.1.11
|
||||
rpi01 ansible_host=192.168.1.12 ansible_python_interpreter=/usr/bin/python3
|
||||
|
||||
# Дополнительные мастера — добавляй сюда:
|
||||
# master04 ansible_host=192.168.1.14 ansible_user=ubuntu
|
||||
# master04 ansible_host=192.168.1.14
|
||||
|
||||
[k3s_workers]
|
||||
# Чистые воркеры (только k3s agent, без etcd) — добавляй сюда:
|
||||
# worker04 ansible_host=192.168.1.14 ansible_user=ubuntu
|
||||
# worker05 ansible_host=192.168.1.15 ansible_user=ubuntu
|
||||
# worker04 ansible_host=192.168.1.14
|
||||
# worker05 ansible_host=192.168.1.15
|
||||
|
||||
[k3s_cluster:children]
|
||||
k3s_master
|
||||
k3s_workers
|
||||
|
||||
[k3s_cluster:vars]
|
||||
ansible_ssh_private_key_file=~/.ssh/id_rsa
|
||||
|
||||
# NFS сервер — по умолчанию master, но можно вынести на отдельную машину
|
||||
[nfs_server]
|
||||
master01
|
||||
|
||||
# Если NFS на отдельной машине — закомментируй строку выше и раскомментируй:
|
||||
# nfshost ansible_host=192.168.1.20 ansible_user=ubuntu
|
||||
# nfshost ansible_host=192.168.1.20
|
||||
|
||||
# ─────────────────────────────────────────────────────────────────────────────
|
||||
# Лабораторные серверы (не входят в k3s кластер)
|
||||
|
||||
Reference in New Issue
Block a user