|
| 1 | +# Talos Linux |
| 2 | + |
| 3 | +```bash |
| 4 | +# https://github.com/siderolabs/talos/releases |
| 5 | +curl -LO https://github.com/siderolabs/talos/releases/download/v1.10.9/metal-amd64.iso |
| 6 | +$ shasum -a 256 metal-amd64.iso |
| 7 | +7843b527f06f9a35e13fd9e974d1dfd1403b8da42610e4bc477e1c6bc34010ca metal-amd64.iso |
| 8 | + |
| 9 | +virt-install \ |
| 10 | + --connect qemu:///system \ |
| 11 | + --name talos-cluster \ |
| 12 | + --boot hd,cdrom \ |
| 13 | + --cdrom /var/lib/libvirt/iso/metal-amd64.iso \ |
| 14 | + --disk pool=default,format=qcow2,bus=virtio,size=60 \ |
| 15 | + --memory 4096 \ |
| 16 | + --vcpus 2 \ |
| 17 | + --os-variant linux2022 \ |
| 18 | + --network network=host-network,model=virtio \ |
| 19 | + --graphics spice \ |
| 20 | + --noautoconsole |
| 21 | + |
| 22 | +# Talos boots into RAM-only live mode |
| 23 | +virt-viewer talos-cluster & |
| 24 | +``` |
| 25 | + |
| 26 | +``` |
| 27 | +# Make sure you grab the same version of talosctl |
| 28 | +curl -LO https://github.com/siderolabs/talos/releases/download/v1.10.9/talosctl-linux-amd64 |
| 29 | +$ shasum -a 256 talosctl-linux-amd64 |
| 30 | +59aebb338eea4c3b7c5a5ef20f2817981c091fe00dfc3f9c79c47c39b9305b68 talosctl-linux-amd64 |
| 31 | +sudo cp talosctl-linux-amd64 /usr/local/bin/talosctl |
| 32 | +sudo chmod +x /usr/local/bin/talosctl |
| 33 | +
|
| 34 | +$ talosctl version |
| 35 | +Client: |
| 36 | + Tag: v1.10.9 |
| 37 | + SHA: c48f7ede |
| 38 | + Built: |
| 39 | + Go version: go1.24.11 |
| 40 | + OS/Arch: linux/amd64 |
| 41 | +Server: |
| 42 | +error constructing client: failed to determine endpoint |
| 43 | +
|
| 44 | +# get IP from console |
| 45 | +TALOS_IP=10.63.33.141 |
| 46 | +
|
| 47 | +$ talosctl get disks --nodes 10.63.33.141 --insecure |
| 48 | +NODE NAMESPACE TYPE ID VERSION SIZE READ ONLY TRANSPORT ROTATIONAL WWID MODEL SERIAL |
| 49 | + runtime Disk loop0 2 78 MB true |
| 50 | + runtime Disk sr0 2 315 MB false sata true QEMU DVD-ROM |
| 51 | + runtime Disk vda 2 64 GB false virtio true |
| 52 | +
|
| 53 | +talosctl gen config talos-cluster https://10.63.33.141:6443 --install-disk /dev/vda -o configs/ |
| 54 | +talosctl apply-config --nodes 10.63.33.141 --insecure --file configs/controlplane.yaml |
| 55 | +talosctl bootstrap --nodes 10.63.33.141 -e 10.63.33.141 --talosconfig configs/talosconfig |
| 56 | +talosctl dashboard --nodes 10.63.33.141 -e 10.63.33.141 --talosconfig configs/talosconfig |
| 57 | +
|
| 58 | +talosctl logs -f -n 10.63.33.141 -e 10.63.33.141 --talosconfig configs/talosconfig etcd |
| 59 | +talosctl -n 10.63.33.141 -e 10.63.33.141 --talosconfig configs/talosconfig service |
| 60 | +``` |
| 61 | + |
| 62 | +```bash |
| 63 | +# Make sure the version of kubectl you use is within one minor difference of your cluster |
| 64 | +# Kubernetes: v1.33.6 |
| 65 | + |
| 66 | +curl -LO https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubectl |
| 67 | +curl -LO https://dl.k8s.io/release/v1.34.0/bin/linux/amd64/kubectl.sha256 |
| 68 | +sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl |
| 69 | + |
| 70 | +chmod +x kubectl |
| 71 | +mkdir -p ~/.local/bin |
| 72 | +mv ./kubectl ~/.local/bin/kubectl |
| 73 | +# and then append (or prepend) ~/.local/bin to $PATH |
| 74 | + |
| 75 | +talosctl -n 10.63.33.141 -e 10.63.33.141 --talosconfig configs/talosconfig kubeconfig ./kubeconfig |
| 76 | +export KUBECONFIG=./kubeconfig |
| 77 | +$ kubectl get nodes |
| 78 | +NAME STATUS ROLES AGE VERSION |
| 79 | +talos-m27-blz Ready control-plane 23m v1.33.6 |
| 80 | +``` |
| 81 | + |
| 82 | +``` |
| 83 | +# https://docs.siderolabs.com/talos/v1.10/deploy-and-manage-workloads/workers-on-controlplane |
| 84 | +vi configs/controlplane.yaml |
| 85 | +# Uncomment: allowSchedulingOnControlPlanes: true |
| 86 | +
|
| 87 | +talosctl apply-config --nodes 10.63.33.141 -e 10.63.33.141 --talosconfig configs/talosconfig --file configs/controlplane.yaml |
| 88 | +$ kubectl get pods -A |
| 89 | +NAMESPACE NAME READY STATUS RESTARTS AGE |
| 90 | +kube-system coredns-78d87fb69b-m2mf6 1/1 Running 0 36m |
| 91 | +kube-system coredns-78d87fb69b-tchzm 1/1 Running 0 36m |
| 92 | +kube-system kube-apiserver-talos-m27-blz 1/1 Running 0 35m |
| 93 | +kube-system kube-controller-manager-talos-m27-blz 1/1 Running 2 (37m ago) 35m |
| 94 | +kube-system kube-flannel-4b7t4 1/1 Running 0 36m |
| 95 | +kube-system kube-proxy-jvv66 1/1 Running 0 36m |
| 96 | +kube-system kube-scheduler-talos-m27-blz 1/1 Running 2 (37m ago) 35 |
| 97 | +``` |
| 98 | + |
| 99 | +```bash |
| 100 | +virsh destroy talos |
| 101 | +virsh undefine talos --nvram --remove-all-storage |
| 102 | +``` |
0 commit comments