Исправлено вычисление nodes индекс
This commit is contained in:
parent
63a2d92f12
commit
7ffe475cb3
58
README.md
58
README.md
@ -1,51 +1,51 @@
|
|||||||
Что содержит проект
|
Что содержит проект
|
||||||
|
|
||||||
Модуль OpenTofu для создания Kubernetes-нод в Proxmox.
|
Модуль OpenTofu для создания Kubernetes-нод в Proxmox.
|
||||||
|
|
||||||
Генерацию cloud-init конфигураций.
|
Генерацию cloud-init конфигураций.
|
||||||
|
|
||||||
Параметризованную выдачу VMID, IP, hostname.
|
Параметризованную выдачу VMID, IP, hostname.
|
||||||
|
|
||||||
Готовый root-конфиг, использующий модуль k8s-node.
|
Готовый root-конфиг, использующий модуль k8s-node.
|
||||||
|
|
||||||
Возможность добавлять и удалять конкретные ноды без count.
|
Возможность добавлять и удалять конкретные ноды без count.
|
||||||
|
|
||||||
Подготовку виртуальных машин к установке Kubernetes.
|
Подготовку виртуальных машин к установке Kubernetes.
|
||||||
|
|
||||||
Структура репозитория
|
|
||||||
├── README.md
|
|
||||||
├── locals.tf
|
|
||||||
├── main.tf
|
|
||||||
├── modules
|
|
||||||
│ └── k8s-node
|
|
||||||
│ ├── cloud-config
|
|
||||||
│ ├── locals.tf
|
|
||||||
│ ├── main.tf
|
|
||||||
│ ├── outputs.tf
|
|
||||||
│ └── variables.tf
|
|
||||||
├── outputs.tf
|
|
||||||
├── providers.tf
|
|
||||||
├── terraform.tfstate
|
|
||||||
├── terraform.tfstate.backup
|
|
||||||
├── terraform.tfvars
|
|
||||||
└── variables.tf
|
|
||||||
|
|
||||||
Быстрый старт
|
Быстрый старт
|
||||||
1. Инициализация проекта
|
|
||||||
tofu init
|
|
||||||
2. Проверка плана
|
|
||||||
tofu plan
|
|
||||||
3. Создание инфраструктуры
|
|
||||||
tofu apply
|
|
||||||
|
|
||||||
|
1. Инициализация проекта
|
||||||
|
```
|
||||||
|
tofu init
|
||||||
|
```
|
||||||
|
2. Проверка плана
|
||||||
|
```
|
||||||
|
tofu plan
|
||||||
|
```
|
||||||
|
3. Создание инфраструктуры
|
||||||
|
```
|
||||||
|
tofu apply
|
||||||
|
```
|
||||||
После выполнения этой команды Proxmox создаст виртуальные машины, сгенерирует userdata для cloud-init и развернёт требуемые ноды.
|
После выполнения этой команды Proxmox создаст виртуальные машины, сгенерирует userdata для cloud-init и развернёт требуемые ноды.
|
||||||
|
|
||||||
Управление нодами
|
Управление нодами
|
||||||
|
|
||||||
Модуль принимает объект вида:
|
Модуль принимает объект вида:
|
||||||
|
```
|
||||||
nodes = {
|
nodes = {
|
||||||
master1 = { role = "master", cpu = 2, memory = 4096 }
|
|
||||||
worker1 = { role = "worker", cpu = 2, memory = 4096 }
|
|
||||||
worker2 = { role = "worker", cpu = 2, memory = 4096 }
|
|
||||||
}
|
|
||||||
|
|
||||||
|
master1 = { role = "master", cpu = 2, memory = 4096 }
|
||||||
|
|
||||||
|
worker1 = { role = "worker", cpu = 2, memory = 4096 }
|
||||||
|
|
||||||
|
worker2 = { role = "worker", cpu = 2, memory = 4096 }
|
||||||
|
|
||||||
|
}
|
||||||
|
```
|
||||||
Вы можете:
|
Вы можете:
|
||||||
|
|
||||||
Добавить новую ноду, просто вписав её в map.
|
Добавить новую ноду, просто вписав её в map.
|
||||||
|
|
||||||
Удалить ноду, удалив её ключ из map.
|
Удалить ноду, удалив её ключ из map.
|
||||||
|
|
||||||
Иметь несколько кластеров, копируя модуль в разные окружения.
|
Иметь несколько кластеров, копируя модуль в разные окружения.
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user