feat: добавлены роли mdadm и k8s-user с полной оркестрацией SSH ключей
Роль mdadm: - автоопределение RAID массива через mdadm --detail --scan - монтирование в /storage через fstab (UUID-based, nofail) - автоопределение fstype через blkid - обновление mdadm.conf + initramfs - флаг mdadm_enabled для отключения на отдельных нодах Роль k8s-user: - создание пользователя k8s + группа + sudo без пароля (visudo validation) - генерация RSA 4096 ключевой пары на первом мастере (идемпотентно, creates:) - раскладка приватного и публичного ключа на все ноды кластера - добавление public key в authorized_keys — SSH с любой ноды на любую - обновление /etc/hosts блоками через blockinfile (k3s_cluster + lab_hosts) - поддержка lab_hosts: создание пользователя и деплой ключей через пароль из vault Плейбуки: - k8s-user.yml — полная оркестрация (5 plays: create → generate → distribute → hosts → lab) - mdadm.yml — запуск роли mdadm на k3s_cluster Инфраструктура: - inventory: добавлена группа [lab_hosts] с примерами - host_vars/nas01/vault.yml.example — шаблон credentials для лаб-серверов - group_vars/all/main.yml: переменные mdadm_enabled и k8s_service_user_* - Makefile: цели k8s-user и mdadm - docker/entrypoint.sh: команды k8s-user и mdadm
This commit is contained in:
@@ -59,6 +59,8 @@ print_help() {
|
||||
echo ""
|
||||
echo -e "${BOLD}Доступные команды:${NC}"
|
||||
echo " bootstrap — создать пользователя + задеплоить SSH ключ"
|
||||
echo " k8s-user — создать k8s пользователя + разложить SSH ключи"
|
||||
echo " mdadm — найти RAID массив и смонтировать в /storage"
|
||||
echo " install — полный стек (site.yml)"
|
||||
echo " install-k3s — только K3S"
|
||||
echo " install-kubevip — только kube-vip"
|
||||
@@ -204,6 +206,18 @@ case "${COMMAND}" in
|
||||
exec ansible-playbook bootstrap.yml "$@"
|
||||
;;
|
||||
|
||||
# ── k8s-user ──────────────────────────────────────────────────────────────
|
||||
k8s-user)
|
||||
log "Создание k8s пользователя и деплой SSH ключей..."
|
||||
run_playbook k8s-user.yml "$@"
|
||||
;;
|
||||
|
||||
# ── mdadm ─────────────────────────────────────────────────────────────────
|
||||
mdadm)
|
||||
log "Настройка mdadm RAID и монтирование /storage..."
|
||||
run_playbook mdadm.yml "$@"
|
||||
;;
|
||||
|
||||
# ── Основные команды ───────────────────────────────────────────────────────
|
||||
install)
|
||||
log "Разворачиваю полный K3S стек..."
|
||||
|
||||
Reference in New Issue
Block a user