Skip to content

Commit

Permalink
docs: fork docs for Talos 1.6
Browse files Browse the repository at this point in the history
Create a copy of documentation for Talos 1.6.

Signed-off-by: Andrey Smirnov <[email protected]>
  • Loading branch information
smira committed Aug 17, 2023
1 parent 92ad18c commit 676db97
Show file tree
Hide file tree
Showing 145 changed files with 32,972 additions and 167 deletions.
8 changes: 4 additions & 4 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -1007,10 +1007,10 @@ RUN protoc \
/protos/time/*.proto

FROM scratch AS docs
COPY --from=docs-build /tmp/configuration.md /website/content/v1.5/reference/
COPY --from=docs-build /tmp/cli.md /website/content/v1.5/reference/
COPY --from=docs-build /tmp/schemas /website/content/v1.5/schemas/
COPY --from=proto-docs-build /tmp/api.md /website/content/v1.5/reference/
COPY --from=docs-build /tmp/configuration.md /website/content/v1.6/reference/
COPY --from=docs-build /tmp/cli.md /website/content/v1.6/reference/
COPY --from=docs-build /tmp/schemas /website/content/v1.6/schemas/
COPY --from=proto-docs-build /tmp/api.md /website/content/v1.6/reference/

# The talosctl-cni-bundle builds the CNI bundle for talosctl.

Expand Down
Binary file modified api/api.descriptors
Binary file not shown.
162 changes: 1 addition & 161 deletions hack/release.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ github_repo = "siderolabs/talos"
match_deps = "^github.com/((talos-systems|siderolabs)/[a-zA-Z0-9-]+)$"

# previous release
previous = "v1.4.0"
previous = "v1.5.0"

pre_release = true

Expand All @@ -15,166 +15,6 @@ preface = """\

[notes]

[notes.updates]
title = "Component Updates"
description="""\
* Linux: 6.1.42
* containerd: 1.6.22
* runc: 1.1.8
* etcd: 3.5.9
* Kubernetes: 1.28.0
* Flannel: 0.22.1
Talos is built with Go 1.20.7.
"""

[notes.quota]
title = "XFS Quota"
description="""\
Talos 1.5+ enables XFS project quota support by default, also enabling by default
kubelet feature gate `LocalStorageCapacityIsolationFSQuotaMonitoring` to use xfs quotas
to monitor volume usage instead of `du`.
This feature is controlled by the `.machine.features.diskQuotaSupport` field in the machine config,
it is set to true for new clusters.
When upgrading from a previous version, the feature can be enabled by setting the field to true.
On the first mount of a volume, the quota information will be recalculated, which may take some time.
"""

[notes.ifnames]
title = "Predictable Network Interface Names"
description="""\
Starting with version Talos 1.5, network interfaces are renamed to [predictable names](https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/)
same way as `systemd` does that in other Linux distributions.
The naming schema `enx78e7d1ea46da` (based on MAC addresses) is enabled by default, the order of interface naming decisions is:
* firmware/BIOS provided index numbers for on-board devices (example: `eno1`)
* firmware/BIOS provided PCI Express hotplug slot index numbers (example: `ens1`)
* physical/geographical location of the connector of the hardware (example: `enp2s0`)
* interfaces's MAC address (example: `enx78e7d1ea46da`)
The predictable network interface names features can be disabled by specifying `net.ifnames=0` in the kernel command line.
Talos automatically adds the `net.ifnames=0` kernel argument when upgrading from Talos versions before 1.5.
This change doesn't affect "cloud" platforms, like AWS, as Talos automatically adds `net.ifnames=0` to the kernel command line.
"""

[notes.machineconfig]
title = "Machine Config option `.machine.install.bootloader`"
description="""\
The `.machine.install.bootloader` option in the machine config is deprecated and will be removed in Talos 1.6.
This was a no-op for a long time. The bootloader is always installed.
"""

[notes.rdma-rxe]
title = "RDMA/RoCE support"
description="""\
Talos no longer loads by default `rdma_rxe` Linux driver, which is required for RoCE support.
If the driver is required, it can be enabled by specifying `rdma_rxe` in the `.machine.kernel.modules` field in the machine config.
"""

[notes.kubeprism]
title = "KubePrism - Kubernetes API Server In-Cluster Load Balancer"
description="""\
Talos now supports configuring the KubePrism - Kubernetes API Server in-cluster load balancer with machine config
`features.kubePrism.port` and `features.kubePrism.enabled` fields.
If enabled, KubePrism binds to `localhost` and runs on the same port on every machine in the cluster.
The default value for KubePrism endpoint is https://localhost:7445.
The KubePrism is used by the `kubelet`, `kube-scheduler`, `kube-controller-manager`
and `kube-proxy` by default and can be passed to the CNIs like Cilium and Calico.
The KubePrism provides access to the Kubernetes API endpoint even if the external loadbalancer
is not healthy, provided that the worker nodes can reach to the controlplane machine addresses directly.
"""

[notes.secureboot]
title = "SecureBoot"
description="""\
Talos now supports generating a custom iso that can be used with SecureBoot. Key generation and enrolling has to be done manually.
"""

[notes.extensions]
title = "Extension Services"
description="""\
Talos now supports setting `environmentFile` for an extension service container spec. Refer: https://www.talos.dev/v1.5/advanced/extension-services/#container
The extension waits for the file to be present before starting the service.
"""

[notes.kms-encryption-keys]
title = "Network KMS Disk Encryption"
description="""\
Talos now supports new type of encryption keys which are sealed/unsealed with an external KMS server:
```
systemDiskEncryption:
ephemeral:
keys:
- kms:
endpoint: https://1.2.3.4:443
slot: 0
```
gRPC API definitions and a simple reference implementation of the KMS server can be found in this
[repository](https://github.com/siderolabs/kms-client/blob/main/cmd/kms-server/main.go).
"""

[notes.tpm-encryption-]
title = "TPM Disk Encryption"
description="""\
Talos now supports encrypting STATE/EPHEMERAL with keys bound to a TPM device. The TPM device must be TPM2.0 compatible.
This is ideally supported when booting with new Talos SecureBoot UKI ISOs/Metal images. This feature would still work if SecureBoot
is not enabled for UKI images, but not recommended since there is no way to verify the trust of the bootloader.
Example machine config:
```
systemDiskEncryption:
ephemeral:
provider: luks2
keys:
- slot: 0
tpm: {}
state:
provider: luks2
keys:
- slot: 0
tpm: {}
```
"""

[notes.talosctl-images]
title = "`talosctl images` Command"
description="""\
The command `talosctl images` was renamed to `talosctl image default`.
The backward-compatible alias is kept in Talos 1.5, but it will be dropped in Talos 1.6.
"""

[notes.talosctl-image]
title = "`talosctl image` Command"
description="""\
A new set of commands was introduced to manage container images in the CRI:
* `talosctl image list` shows list of available images
* `talosctl image pull` allows to pre-pull an image into the CRI
Both new commands accept `--namespace` flag with two possible values:
* `cri` (default): images managed by the CRI (Kubernetes workloads)
* `system`: images managed by Talos (`etcd` and `kubelet`)
"""

[notes.upgrade-k8s]
title = "`talosctl upgrade-k8s` Image Pre-pulling"
description="""\
The command `talosctl upgrade-k8s` now by default pre-pulls images for Kubernetes controlplane components
and kubelet. This provides an early check for missing images, and minimizes downtime during Kubernetes
rolling component update.
"""

[make_deps]

[make_deps.tools]
Expand Down
4 changes: 4 additions & 0 deletions website/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,10 @@ offlineSearch = false
# Enable syntax highlighting and copy buttons on code blocks with Prism
prism_syntax_highlighting = false

[[params.versions]]
url = "/v1.6/"
version = "v1.6 (pre-release)"

[[params.versions]]
url = "/v1.5/"
version = "v1.5 (latest)"
Expand Down
4 changes: 2 additions & 2 deletions website/content/v1.5/introduction/support-matrix.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ description: "Table of supported Talos Linux versions and respective platforms."
| - SBCs | Banana Pi M64, Jetson Nano, Libre Computer Board ALL-H3-CC, Nano Pi R4S, Pine64, Pine64 Rock64, Radxa ROCK Pi 4c, Raspberry Pi 4B, Raspberry Pi Compute Module 4 | Banana Pi M64, Jetson Nano, Libre Computer Board ALL-H3-CC, Nano Pi R4S, Pine64, Pine64 Rock64, Radxa ROCK Pi 4c, Raspberry Pi 4B, Raspberry Pi Compute Module 4 |
| - local | Docker, QEMU | Docker, QEMU |
| **Cluster API** | | |
| [CAPI Bootstrap Provider Talos](https://github.com/siderolabs/cluster-api-bootstrap-provider-talos) | >= 0.7.0 | >= 0.6.0 |
| [CAPI Control Plane Provider Talos](https://github.com/siderolabs/cluster-api-control-plane-provider-talos) | >= 0.4.10 | >= 0.4.10 |
| [CAPI Bootstrap Provider Talos](https://github.com/siderolabs/cluster-api-bootstrap-provider-talos) | >= 0.6.1 | >= 0.6.0 |
| [CAPI Control Plane Provider Talos](https://github.com/siderolabs/cluster-api-control-plane-provider-talos) | >= 0.5.2 | >= 0.4.10 |
| [Sidero](https://www.sidero.dev/) | >= 0.6.0 | >= 0.6.0 |

## Platform Tiers
Expand Down
58 changes: 58 additions & 0 deletions website/content/v1.6/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
---
title: Welcome
no_list: true
linkTitle: "Documentation"
cascade:
type: docs
lastRelease: v1.6.0-alpha.0
kubernetesRelease: "1.29.0"
prevKubernetesRelease: "1.28.0"
theilaRelease: "v0.2.1"
nvidiaContainerToolkitRelease: "v1.13.5"
nvidiaDriverRelease: "535.54.03"
iscsiToolsRelease: "v0.1.4"
preRelease: true
---

## Welcome

Welcome to the Talos documentation.
If you are just getting familiar with Talos, we recommend starting here:

- [What is Talos]({{< relref "introduction/what-is-talos" >}}): a quick description of Talos
- [Quickstart]({{< relref "introduction/quickstart" >}}): the fastest way to get a Talos cluster up and running
- [Getting Started]({{< relref "introduction/getting-started" >}}): a long-form, guided tour of getting a full Talos cluster deployed

## Open Source

### Community

- GitHub: [repo](https://github.com/siderolabs/talos)
- Slack: Join our [slack channel](https://slack.dev.talos-systems.io)
- Matrix: Join our Matrix channels:
- Community: [#talos:matrix.org](https://matrix.to/#/#talos:matrix.org)
- Support: [#talos-support:matrix.org](https://matrix.to/#/#talos-support:matrix.org)
- Support: Questions, bugs, feature requests [GitHub Discussions](https://github.com/siderolabs/talos/discussions)
- Forum: [community](https://groups.google.com/a/siderolabs.com/forum/#!forum/community)
- Twitter: [@SideroLabs](https://twitter.com/talossystems)
- Email: [[email protected]](mailto:[email protected])

If you're interested in this project and would like to help in engineering efforts, or have general usage questions, we are happy to have you!
We hold a weekly meeting that all audiences are welcome to attend.

We would appreciate your feedback so that we can make Talos even better!
To do so, you can take our [survey](https://docs.google.com/forms/d/1TUna5YTYGCKot68Y9YN_CLobY6z9JzLVCq1G7DoyNjA/edit).

### Office Hours

- When: Mondays at 16:30 UTC.
- Where: [Google Meet](https://meet.google.com/day-pxhv-zky).

You can subscribe to this meeting by joining the community forum above.

## Enterprise

If you are using Talos in a production setting, and need consulting services to get started or to integrate Talos into your existing environment, we can help.
Sidero Labs, Inc. offers support contracts with SLA (Service Level Agreement)-bound terms for mission-critical environments.

[Learn More](https://www.siderolabs.com/support/)
4 changes: 4 additions & 0 deletions website/content/v1.6/advanced/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
title: "Advanced Guides"
weight: 60
---
108 changes: 108 additions & 0 deletions website/content/v1.6/advanced/advanced-networking.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
---
title: "Advanced Networking"
description: "How to configure advanced networking options on Talos Linux."
aliases:
- ../guides/advanced-networking
---

## Static Addressing

Static addressing is comprised of specifying `addresses`, `routes` ( remember to add your default gateway ), and `interface`.
Most likely you'll also want to define the `nameservers` so you have properly functioning DNS.

```yaml
machine:
network:
hostname: talos
nameservers:
- 10.0.0.1
interfaces:
- interface: eth0
addresses:
- 10.0.0.201/8
mtu: 8765
routes:
- network: 0.0.0.0/0
gateway: 10.0.0.1
- interface: eth1
ignore: true
time:
servers:
- time.cloudflare.com
```
## Additional Addresses for an Interface
In some environments you may need to set additional addresses on an interface.
In the following example, we set two additional addresses on the loopback interface.
```yaml
machine:
network:
interfaces:
- interface: lo
addresses:
- 192.168.0.21/24
- 10.2.2.2/24
```
## Bonding
The following example shows how to create a bonded interface.
```yaml
machine:
network:
interfaces:
- interface: bond0
dhcp: true
bond:
mode: 802.3ad
lacpRate: fast
xmitHashPolicy: layer3+4
miimon: 100
updelay: 200
downdelay: 200
interfaces:
- eth0
- eth1
```
## Setting Up a Bridge
The following example shows how to set up a bridge between two interfaces with an assigned static address.
```yaml
machine:
network:
interfaces:
- interface: br0
addresses:
- 192.168.0.42/24
bridge:
stp:
enabled: true
interfaces:
- eth0
- eth1
```
## VLANs
To setup vlans on a specific device use an array of VLANs to add.
The master device may be configured without addressing by setting dhcp to false.
```yaml
machine:
network:
interfaces:
- interface: eth0
dhcp: false
vlans:
- vlanId: 100
addresses:
- "192.168.2.10/28"
routes:
- network: 0.0.0.0/0
gateway: 192.168.2.1
```
Loading

0 comments on commit 676db97

Please sign in to comment.