Every node is now both control plane and worker, giving real tolerance for losing any single machine (etcd quorum needs 3, not 1). A Talos VIP gives the cluster one stable address regardless of which node answers. Also pre-installs Longhorn for replicated storage, backed by a Talos UserVolume on each node's second disk (>=900GB, non-system) rather than the default path — mirroring the pattern from the homescale repo. Docs renumbered to make room for 06-longhorn.md; checklist, glossary, network map, and CLAUDE.md's guided-bootstrap instructions updated to match, including asking the user for node IPs, VIP, and disk info before generating any Talos config. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
28 lines
1.1 KiB
YAML
28 lines
1.1 KiB
YAML
# A ConfigMap is just a bag of key/value data — in this case, a small HTML
|
|
# file — that lives in the cluster as its own object, separate from the
|
|
# Pod that uses it. We mount it into the nginx container below instead of
|
|
# baking the page into a custom container image.
|
|
#
|
|
# Why this matters for the GitOps story: this is the file you'll edit in
|
|
# docs/07-your-first-change.md. Change the text here, commit, push, and
|
|
# watch Argo CD notice the difference in Git and push it into the cluster
|
|
# for you — no `kubectl` command involved. That's the whole loop, proven
|
|
# with one line of HTML.
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: demo-page
|
|
namespace: demo
|
|
data:
|
|
index.html: |
|
|
<!doctype html>
|
|
<html>
|
|
<head><title>It works!</title></head>
|
|
<body style="font-family: sans-serif; text-align: center; margin-top: 10%;">
|
|
<h1>It works!</h1>
|
|
<p>This page is being served from a Kubernetes cluster that Argo CD
|
|
deployed straight from Git. Edit <code>apps/demo/configmap.yaml</code>,
|
|
commit, push, and refresh this page.</p>
|
|
</body>
|
|
</html>
|