infrapuzzle/README.md

44 lines
1.5 KiB
Markdown

# Infrapuzzle
Infrapuzzle is the newly restructured way of implementing my private infrastructure. Currently the following things are in project scope:
* single node k8s "cluster" implemented with kubespray
* development with Vagrant
* host directory storage
* Ingress via host network
## terraform
[Documentation in subfolder](./terraform/README.md). It takes care of setting DNS records on OVH nameservers.
## bootstrap
[Documentation in subfolder](./bootstrap/README.md). It takes care of setting up the k8s cluster itself, including a vagrant dev environment.
## k8s
[Documentation in subfolder](./k8s/README.md). The services themselfes.
## AI & Agents
The cluster hosts local AI capabilities and agents.
### LLM (Ollama)
Hosts a local LLM (Llama 3 8B) for inference.
* **Deploy**: `kubectl apply -f k8s/llm/ollama.yaml`
* **Verification**: Check pods in `llm` namespace.
### OpenClaw
An autonomous AI agent platform.
1. **Create Namespace**: `kubectl apply -f k8s/openclaw/namespace.yaml`
2. **Configure Secrets**:
* Edit `k8s/openclaw/openclaw.secret.yaml`.
* Replace `change-me` with your Gemini API Key.
* **Encrypt**: Ensure the file is encrypted with `git crypt` before committing!
3. **Deploy**: `kubectl apply -f k8s/openclaw/openclaw.secret.yaml`
4. **Access**: `https://openclaw.haumdaucher.de`
## Links used
* [ingress via host network](https://kubernetes.github.io/ingress-nginx/deploy/baremetal/#via-the-host-network)
* [Install K8s with Kubespray](https://kubernetes.io/docs/setup/production-environment/tools/kubespray/)