nix/README.md

67 lines
1006 B
Markdown
Raw Normal View History

2025-01-25 00:53:44 +00:00
# Deploy NixOS
2023-09-08 12:41:16 +00:00
2025-01-25 00:53:44 +00:00
## Copy Config
2023-09-08 12:41:16 +00:00
2023-10-23 14:59:32 +00:00
```bash
2025-01-26 22:07:18 +00:00
scp -r * root@10.10.10.10:/etc/nixos
2025-01-25 00:53:44 +00:00
```
2023-09-08 12:41:16 +00:00
2025-01-25 00:53:44 +00:00
## Partition Drives
2023-09-08 12:41:16 +00:00
2025-01-25 00:53:44 +00:00
```bash
2025-01-25 16:50:54 +00:00
# Validate Disk
2025-01-25 19:17:40 +00:00
ls -l /dev/disk/by-id
2025-01-25 00:53:44 +00:00
# Partition Disk
2025-01-28 01:22:18 +00:00
# WARNING: This will destroy all data on the disk(s)
2025-01-25 00:53:44 +00:00
sudo nix \
--experimental-features "nix-command flakes" \
run github:nix-community/disko -- \
--mode disko \
2025-01-26 22:07:18 +00:00
--flake /etc/nixos#lin-va-rke1
2023-09-08 12:41:16 +00:00
```
2025-01-25 00:53:44 +00:00
## Install NixOS
2023-09-08 12:41:16 +00:00
2023-10-23 14:59:32 +00:00
```bash
2025-01-25 00:53:44 +00:00
# Install
2025-01-26 22:07:18 +00:00
sudo nixos-install --flake /etc/nixos#lin-va-rke1
2025-01-25 00:53:44 +00:00
# Reboot
sudo reboot
2023-10-23 14:59:32 +00:00
```
2025-01-26 22:07:18 +00:00
## Copy Config Back to Host
2025-01-25 00:53:44 +00:00
```bash
2025-01-28 01:22:18 +00:00
scp -r * nixos@10.0.20.201:/etc/nixos
2025-01-25 00:53:44 +00:00
```
2023-10-23 14:59:32 +00:00
2025-01-25 00:53:44 +00:00
## Rebuild NixOS
2023-10-23 14:59:32 +00:00
```bash
2025-01-25 00:53:44 +00:00
sudo nixos-rebuild switch
2023-09-08 12:41:16 +00:00
```
2025-01-26 22:07:18 +00:00
# Install Kubernetes (RKE2)
```
# Deploy First Node
sudo nixos-install --flake /etc/nixos#lin-va-rke1
# Reboot & Get Token
cat /var/lib/rancher/rke2/server/node-token
# Deploy Following Nodes
2025-01-28 01:22:18 +00:00
echo "<TOKEN>" > rke2-token
2025-01-26 22:07:18 +00:00
sudo nixos-install --flake /etc/nixos#lin-va-rke2
```
2025-01-26 22:41:52 +00:00
2025-01-28 01:22:18 +00:00
## Notes
2025-01-26 22:41:52 +00:00
2025-01-28 01:22:18 +00:00
## Kasten Port Forward
```bash
kubectl port-forward -n kasten svc/gateway 8000:80
```