init
This commit is contained in:
108
talos-k8s/README.md
Normal file
108
talos-k8s/README.md
Normal file
@@ -0,0 +1,108 @@
|
||||
# Talos
|
||||
|
||||
## Что такое Talos?
|
||||
|
||||
[Talos Linux](https://www.talos.dev/) — это **Linux**, разработанный для [Kubernetes](https://kubernetes.io/): безопасный, неизменяемый и минималистичный.
|
||||
|
||||
- Поддерживает **облачные платформы, «голое железо» и платформы виртуализации**
|
||||
- Все **управление системой осуществляется через API**. Нет SSH, оболочки или консоли
|
||||
- Готовность к работе: **поддерживает одни из крупнейших Kubernetes-кластеров в мире**
|
||||
- Проект с открытым исходным кодом от команды [Sidero Labs](https://www.siderolabs.com/)
|
||||
|
||||
ISO-образы для архитектур amd64 и arm64 доступны на [странице релизов Talos](https://github.com/siderolabs/talos/releases/).
|
||||
|
||||
[руководству по началу работы](https://www.talos.dev/v1.9/introduction/getting-started/)
|
||||
[фабрика по сборке iso](https://factory.talos.dev/)
|
||||
|
||||
## Генерация и установка
|
||||
|
||||
эту часть делает ренератор generator.sh
|
||||
|
||||
```bash
|
||||
talosctl gen secrets -o config/secrets.yaml
|
||||
|
||||
talosctl gen config --kubernetes-version 1.33.2 --with-secrets config/secrets.yaml talos-demo https://192.168.23.51:6443 --config-patch @patch.yaml
|
||||
|
||||
talosctl machineconfig patch config/controlplane.yaml --patch @cp1.patch --output config/cp1.yaml
|
||||
talosctl machineconfig patch config/controlplane.yaml --patch @cp2.patch --output config/cp2.yaml
|
||||
talosctl machineconfig patch config/controlplane.yaml --patch @cp3.patch --output config/cp3.yaml
|
||||
|
||||
talosctl machineconfig patch config/worker.yaml --patch @worker1.patch --output config/worker1.yaml
|
||||
talosctl machineconfig patch config/worker.yaml --patch @worker2.patch --output config/worker2.yaml
|
||||
```
|
||||
|
||||
эту часть делаем мы
|
||||
|
||||
```bash
|
||||
talosctl apply-config --insecure -n 192.168.23.51 --file config/cp1.yaml
|
||||
talosctl bootstrap --nodes 192.168.23.51 --endpoints 192.168.23.51 --talosconfig=config/talosconfig
|
||||
|
||||
talosctl apply-config --insecure -n 192.168.23.52 --file config/cp2.yaml
|
||||
talosctl apply-config --insecure -n 192.168.23.53 --file config/cp3.yaml
|
||||
|
||||
talosctl apply-config --insecure -n 192.168.23.54 --file config/worker1.yaml
|
||||
talosctl apply-config --insecure -n 192.168.23.55 --file config/worker2.yaml
|
||||
|
||||
talosctl kubeconfig ~/.kube/talos-demo.yaml --nodes 192.168.23.51 --endpoints 192.168.23.51 --talosconfig config/talosconfig
|
||||
```
|
||||
|
||||
## Cilium
|
||||
|
||||
```bash
|
||||
helm repo add cilium https://helm.cilium.io/
|
||||
helm repo update
|
||||
|
||||
helm upgrade \
|
||||
--install \
|
||||
cilium \
|
||||
cilium/cilium \
|
||||
--version 1.17.5 \
|
||||
--namespace kube-system \
|
||||
--values cilium/values.yaml \
|
||||
--set cluster.name=talos-demo \
|
||||
--set cluster.id=1
|
||||
|
||||
kubectl apply -f cilium/ippool.yaml
|
||||
kubectl apply -f cilium/l2-announcement-policy.yaml
|
||||
```
|
||||
|
||||
## Re-Apply configs
|
||||
|
||||
```bash
|
||||
talosctl --talosconfig config/talosconfig apply-config -n 192.168.23.51 --file config/cp1.yaml
|
||||
talosctl --talosconfig config/talosconfig apply-config -n 192.168.23.52 --file config/cp2.yaml
|
||||
talosctl --talosconfig config/talosconfig apply-config -n 192.168.23.53 --file config/cp3.yaml
|
||||
|
||||
talosctl --talosconfig config/talosconfig apply-config -n 192.168.23.54 --file config/worker1.yaml
|
||||
talosctl --talosconfig config/talosconfig apply-config -n 192.168.23.55 --file config/worker2.yaml
|
||||
```
|
||||
|
||||
## Re-Apply configs and reboot
|
||||
|
||||
```bash
|
||||
talosctl --talosconfig config/talosconfig apply-config -n 192.168.23.51 --file config/cp1.yaml --mode=reboot
|
||||
talosctl --talosconfig config/talosconfig apply-config -n 192.168.23.52 --file config/cp2.yaml --mode=reboot
|
||||
talosctl --talosconfig config/talosconfig apply-config -n 192.168.23.53 --file config/cp3.yaml --mode=reboot
|
||||
|
||||
talosctl --talosconfig config/talosconfig apply-config -n 192.168.23.54 --file config/worker1.yaml --mode=reboot
|
||||
talosctl --talosconfig config/talosconfig apply-config -n 192.168.23.55 --file config/worker2.yaml --mode=reboot
|
||||
```
|
||||
|
||||
## Upgrade
|
||||
|
||||
```bash
|
||||
IMAGE=factory.talos.dev/metal-installer/956b9107edd250304169d2e7a765cdd4e0c31f9097036e2e113b042e6c01bb98:v1.10.4
|
||||
|
||||
talosctl --talosconfig config/talosconfig upgrade --nodes 192.168.23.51 --image ${IMAGE}
|
||||
talosctl --talosconfig config/talosconfig upgrade --nodes 192.168.23.52 --image ${IMAGE}
|
||||
talosctl --talosconfig config/talosconfig upgrade --nodes 192.168.23.53 --image ${IMAGE}
|
||||
|
||||
talosctl --talosconfig config/talosconfig upgrade --nodes 192.168.23.53 --image ${IMAGE}
|
||||
talosctl --talosconfig config/talosconfig upgrade --nodes 192.168.23.55 --image ${IMAGE}
|
||||
```
|
||||
|
||||
## Upgrade k8s
|
||||
|
||||
```bash
|
||||
talosctl --nodes 192.168.23.100 --talosconfig config/talosconfig upgrade-k8s --to 1.33.2
|
||||
```
|
||||
Reference in New Issue
Block a user