You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs(readme): unwrap hard-wrapped prose into single lines
Reflow the remaining hard-wrapped prose paragraphs so each paragraph is one continuous line, letting the renderer wrap to viewer width. Formatting only; tables, code blocks and YAML are left untouched.
Assisted-By: Claude <noreply@anthropic.com>
Signed-off-by: Aleksei Sviridkin <f@lex.la>
Copy file name to clipboardExpand all lines: README.md
+14-46Lines changed: 14 additions & 46 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,9 +12,7 @@ Supported targets:
12
12
13
13
Cloud-image users **must** set `cozystack_flush_iptables: true` for multi-master k3s to bootstrap — Ubuntu cloud images ship with `REJECT icmp-host-prohibited` in INPUT that blocks etcd peer port 2380 between nodes. See **Node Prerequisites → Known limitations** below.
14
14
15
-
Deploys the Cozystack operator and Platform Package using the
16
-
`kubernetes.core.helm` module with automatic Helm and helm-diff
17
-
installation.
15
+
Deploys the Cozystack operator and Platform Package using the `kubernetes.core.helm` module with automatic Helm and helm-diff installation.
on the control-plane node. No manual Helm installation is needed.
31
+
The role automatically installs Helm and the [helm-diff](https://github.com/databus23/helm-diff) plugin on the control-plane node. No manual Helm installation is needed.
36
32
37
33
### Node Prerequisites
38
34
@@ -182,9 +178,7 @@ Written as a drop-in that containerd merges on top of k3s's generated `config.to
182
178
183
179
#### Known limitations
184
180
185
-
ZFS support depends on the OS ecosystem and kernel flavor. The prepare
186
-
playbooks skip ZFS automation gracefully in these cases and emit an
187
-
informational notice:
181
+
ZFS support depends on the OS ecosystem and kernel flavor. The prepare playbooks skip ZFS automation gracefully in these cases and emit an informational notice:
188
182
189
183
| OS / kernel | ZFS automation | Reason |
190
184
| --- | --- | --- |
@@ -225,9 +219,7 @@ Enable and start:
225
219
226
220
#### iptables (cloud providers)
227
221
228
-
Cloud providers (OCI, AWS, GCP) may ship images with restrictive iptables
etcd 2379-2380) even when security groups allow it.
222
+
Cloud providers (OCI, AWS, GCP) may ship images with restrictive iptables INPUT rules that block inter-node Kubernetes traffic (API 6443, kubelet 10250, etcd 2379-2380) even when security groups allow it.
231
223
232
224
Fix: flush the INPUT chain and set policy to ACCEPT before deploying k3s.
233
225
@@ -261,11 +253,7 @@ cluster-cidr: 10.42.0.0/16
261
253
service-cidr: 10.43.0.0/16
262
254
```
263
255
264
-
These CIDRs are the k3s defaults. The example prepare playbooks
265
-
(e.g., `examples/ubuntu/prepare-ubuntu.yml`) set them via the
266
-
`server_config_yaml`variable used by `k3s.orchestration`. The role
267
-
variables `cozystack_pod_cidr` and `cozystack_svc_cidr` must match —
268
-
they default to the same values.
256
+
These CIDRs are the k3s defaults. The example prepare playbooks (e.g., `examples/ubuntu/prepare-ubuntu.yml`) set them via the `server_config_yaml` variable used by `k3s.orchestration`. The role variables `cozystack_pod_cidr` and `cozystack_svc_cidr` must match — they default to the same values.
269
257
270
258
## Installation
271
259
@@ -285,8 +273,7 @@ collections:
285
273
286
274
## Quick start
287
275
288
-
1. Create your environment (pick your distro — see `examples/ubuntu/`,
289
-
`examples/rhel/`, or `examples/suse/`):
276
+
1. Create your environment (pick your distro — see `examples/ubuntu/`, `examples/rhel/`, or `examples/suse/`):
290
277
291
278
```text
292
279
my-env/
@@ -326,9 +313,7 @@ Both stages are handled automatically by the `cozystack` role.
326
313
327
314
## Role: cozystack.installer.cozystack
328
315
329
-
Installs Cozystack via the official `cozy-installer` Helm chart using
330
-
the `kubernetes.core.helm` module with automatic Helm and helm-diff
331
-
installation.
316
+
Installs Cozystack via the official `cozy-installer` Helm chart using the `kubernetes.core.helm` module with automatic Helm and helm-diff installation.
332
317
333
318
Runs on `server[0]` only.
334
319
@@ -365,9 +350,7 @@ Runs on `server[0]` only.
365
350
366
351
### Example playbook variables
367
352
368
-
These variables are consumed only by the example prepare playbooks in
369
-
`examples/*/`, not by the role itself. Set them as inventory host/group
370
-
vars to opt out of the corresponding prepare step:
353
+
These variables are consumed only by the example prepare playbooks in `examples/*/`, not by the role itself. Set them as inventory host/group vars to opt out of the corresponding prepare step:
371
354
372
355
| Variable | Default | Description |
373
356
| --- | --- | --- |
@@ -383,8 +366,7 @@ vars to opt out of the corresponding prepare step:
383
366
384
367
This collection is designed to work alongside [k3s.orchestration](https://github.com/k3s-io/k3s-ansible). The inventory structure (groups: `cluster`, `server`, `agent`) is fully compatible.
385
368
386
-
Example full pipeline (`site.yml`) — see `examples/ubuntu/`, `examples/rhel/`,
387
-
or `examples/suse/`:
369
+
Example full pipeline (`site.yml`) — see `examples/ubuntu/`, `examples/rhel/`, or `examples/suse/`:
388
370
389
371
```yaml
390
372
- name: Prepare nodes
@@ -405,12 +387,9 @@ On cloud providers with NAT (OCI, AWS, GCP), nodes have internal IPs different f
405
387
406
388
### Multi-master setup (kube-ovn RAFT)
407
389
408
-
Kube-ovn requires `MASTER_NODES` — a comma-separated list of all
409
-
control-plane node IPs for OVN RAFT consensus. By default, the role
410
-
auto-detects these IPs from the `server` inventory group host keys.
390
+
Kube-ovn requires `MASTER_NODES` — a comma-separated list of all control-plane node IPs for OVN RAFT consensus. By default, the role auto-detects these IPs from the `server` inventory group host keys.
411
391
412
-
This works when host keys are internal IPs (the recommended inventory
413
-
pattern):
392
+
This works when host keys are internal IPs (the recommended inventory pattern):
414
393
415
394
```yaml
416
395
server:
@@ -421,30 +400,19 @@ server:
421
400
ansible_host: 203.0.113.11
422
401
```
423
402
424
-
If your inventory uses hostnames or non-IP host keys, set
425
-
`cozystack_master_nodes` explicitly:
403
+
If your inventory uses hostnames or non-IP host keys, set `cozystack_master_nodes` explicitly:
[helm-diff](https://github.com/databus23/helm-diff) plugin on the
435
-
target node automatically. The `helm-diff` plugin enables true
436
-
idempotency — repeated runs report no changes when the release is
437
-
already up to date.
411
+
The role installs Helm and the [helm-diff](https://github.com/databus23/helm-diff) plugin on the target node automatically. The `helm-diff` plugin enables true idempotency — repeated runs report no changes when the release is already up to date.
438
412
439
413
### Customizing variables
440
414
441
-
The example prepare playbooks define internal variables (like
442
-
`cozystack_k3s_server_args`) in the play `vars` section. User-facing
443
-
variables such as `cozystack_k3s_extra_args` and
444
-
`cozystack_flush_iptables`should be set **in the inventory**, not in
445
-
the playbook. Ansible play `vars` take precedence over inventory
446
-
variables, so defining them in both places causes the inventory values
447
-
to be silently ignored.
415
+
The example prepare playbooks define internal variables (like `cozystack_k3s_server_args`) in the play `vars` section. User-facing variables such as `cozystack_k3s_extra_args` and `cozystack_flush_iptables` should be set **in the inventory**, not in the playbook. Ansible play `vars` take precedence over inventory variables, so defining them in both places causes the inventory values to be silently ignored.
0 commit comments