Skip to content

Commit 9946a18

Browse files
apeirora-service-user[bot]andreasschlosserdhagueStillRefactoringfmui
committed
Release 2.2.1
Adding proposed NVIDIA co-author Co-authored-by: Andreas Schlosser <[email protected]> Co-authored-by: Darren Hague <[email protected]> Co-authored-by: Erwin Margewitsch <[email protected]> Co-authored-by: Florian Mueller <[email protected]> Co-authored-by: Florian Müller <[email protected]> Co-authored-by: Florian Wilhelm <[email protected]> Co-authored-by: Marc Vornetran <[email protected]> Co-authored-by: Marco Skradde <[email protected]> Co-authored-by: Maximilian Lenkeit <[email protected]> Co-authored-by: Maximilian Lenkeit <[email protected]>Co-authored-by: Vasu Chandrasekhara <[email protected]> Co-authored-by: Nele Hornbostel <[email protected]> Co-authored-by: Niclas Moldenhauer <[email protected]> Co-authored-by: Pavel Pavlov <[email protected]> Co-authored-by: Pavel Pavlov <[email protected]> Co-authored-by: Simon Olander <[email protected]> Co-authored-by: Vasu Chandrasekhara <[email protected]> Co-authored-by: apeirora-service-user[bot] <138167+apeirora-service-user[bot]@users.noreply.github.tools.sap> Co-authored-by: hyperspace-insights[bot] <106787+hyperspace-insights[bot]@users.noreply.github.tools.sap> Co-authored-by: klocke-io <[email protected]> Co-authored-by: mskradde <[email protected]> Co-authored-by: mskradde <[email protected]> Co-authored-by: ospo-renovate[bot] <40221+ospo-renovate[bot]@users.noreply.github.tools.sap> Co-authored-by: rfranzke <[email protected]>
1 parent 6b9709e commit 9946a18

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+2181
-114
lines changed

.github/workflows/gh-pages.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
- uses: actions/checkout@v5
1616
with:
1717
fetch-depth: 0
18-
- uses: actions/setup-node@v4
18+
- uses: actions/setup-node@v5
1919
with:
2020
node-version: 18
2121
cache: npm

.vitepress/components/Figure.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ const hrefVal = computed(() => props.href ? withBase(props.href) : '')
1414
<a v-if="hrefVal" :href="hrefVal" target="_blank" rel="noopener noreferrer">
1515
<img :src="srcVal" :alt="altVal" />
1616
</a>
17-
<img v-else :src="srcVal" :alt="altVal" />
17+
<img v-else :src="srcVal" :alt="altVal" :width="width" />
1818
<figcaption>
1919
{{ captionVal }}
2020
<div class="source" v-if="sourceLink">

.vitepress/theme/blog-sidebar.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import { generateSidebar } from 'vitepress-sidebar';
22
import { SidebarItem } from 'vitepress-sidebar/types';
33
import { getBlogDate, rewriteBlogPath } from '../util/blog';
4+
import matter from 'gray-matter';
5+
import { readFileSync } from 'fs';
46

57
export const blogSidebarConfig = {
68
documentRootPath: '/',
@@ -19,13 +21,19 @@ export default function blogSidebar () {
1921
const blogPostItems: SidebarItem[] = generatedSidebar['/blog/'].items
2022
const byYear = blogPostItems
2123
.map(it => {
24+
const filepath = `./blog/${it.link}${it.link?.endsWith('.md') ? '' : '.md'}`
25+
const contents = readFileSync(filepath, 'utf-8');
26+
const { data } = matter(contents);
2227
return {
2328
...it,
2429
link: rewriteBlogPath('/blog/' + it.link),
30+
__filepath: filepath,
31+
__frontmatter: data,
2532
__date: getBlogDate(it.link!)
2633
}
2734
})
2835
.filter(it => !!it.__date)
36+
.filter(it => it.__frontmatter.published !== false)
2937
.sort((a, b) => {
3038
// sort descending by date
3139
return a.__date! < b.__date! ? 1 : -1

apeiro-terms.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -282,5 +282,9 @@
282282
},
283283
"Unified Metadata Service": {
284284
"alias": "ums"
285+
},
286+
"audit relevant logs": {
287+
"description": "Audit Logging and Audit Relevant Logs are usually system-generated logs of security-related events or user actions. These often contains data that can be crucial for maintaining system integrity, compliance or investigating malicious activity. For example, logs emitted on write-operations to sensitive files, login attempts or delete-operations made on a system.",
288+
"url": "/docs/best-practices/observability"
285289
}
286290
}

blog/2025-03-25-kcp-multi-tenant-control-planes.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ The paradigm shift is clear: **move from managing fleets of clusters to managing
7373

7474
[^1]: [Enterprises To Adopt Composable Platforms For Flexibility In 2025 | Predictions by Mirantis](https://tfir.io/enterprises-to-adopt-composable-platforms-for-flexibility-in-2025-predictions-by-mirantis/) by Stephen Frassetti, Mirantis
7575

76-
[^2]: [Crossplane: The cloud native control plane framework](https://www.crossplane.io/#:~:text=Upbound%20built%20Crossplane%20to%20help,to%20become%20an%20infrastructure%20expert)
76+
[^2]: [Crossplane: The cloud-native control plane framework](https://www.crossplane.io/#:~:text=Upbound%20built%20Crossplane%20to%20help,to%20become%20an%20infrastructure%20expert)
7777

7878
[^3]: [Kubernetes CRDs = Huge Pain In Multi-Tenant Clusters](https://www.loft.sh/blog/kubernetes-crds-huge-pain-in-multi-tenant-clusters#:~:text=Compared%20to%20managing%20multiple%2C%20individual,managing%20individual%20clusters%20become%20more) by Volodymyr Grin
7979

blog/2025-07-07-from-desired-state-to-the-status-of-a-resource.md

Lines changed: 282 additions & 0 deletions
Large diffs are not rendered by default.

blog/2025-08-07-kubernetes-api-server-and-controller-archetypes.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -189,7 +189,7 @@ Even in the straight assignment case, you may want the controller to be highly a
189189

190190
This opens up the question about the limits of scalability of a single, active controller instance. How much reconciliation work can one instance coordinate in parallel? How much memory is and how many threads are feasible?
191191

192-
At cloud scale, you may want to distribute the required reconciliation work across multiple, simultaneously active controller instances. The following paper describes an approach that allows scaling horizontally without sacrificing availability or performance: [Horizontally Scalable Kubernetes Controllers](https://github.com/timebertt/masters-thesis-controller-sharding/releases/download/v1.0/Horizontally_Scalable_Kubernetes_Controllers.pdf)
192+
At cloud scale, you may want to distribute the required reconciliation work across multiple, simultaneously active controller instances. The following paper describes an approach that allows scaling horizontally without sacrificing availability or performance: [Horizontally Scalable Kubernetes Controllers](https://github.com/timebertt/kubernetes-controller-sharding) (or Kubernetes Controller Sharding).
193193
:::
194194

195195
The only other way to circumvent this synchronization is to establish a formal partitioning of the resource set. This leads to the next archetype: environment sharding.

changelog.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,21 @@
22
title: Changelog
33
---
44

5+
## v2.2.0 (2025-10-13)
6+
7+
**New content**
8+
9+
- [Konfidence](./docs/best-practices/lcm/konfidence/index.md) - software delivery framework for microservice-based software-as-a-service (SaaS) in Apeiro
10+
- [Gardener](./docs/best-practices/multi-cluster-federation/managed-kubernetes-as-a-service.md) - Kubernetes-as-a-Service in Apeiro
11+
- [Operating Systems](./docs/best-practices/operating-system/index.md) - modern cloud-native operating systems such as Garden Linux in Apeiro
12+
- [Baremetal](./docs/best-practices/baremetal/index.md) - control plane capable for managing the entire physical lifecycle of hardware resource
13+
- [Data and Control Plane State](./docs/best-practices/control-planes/data-and-control-plane-state.md) - about the role of state in Kubernetes data and control planes
14+
15+
**Updated content**
16+
17+
- [Architecture Overview](./docs/architecture/index.md) - link to Konfidence, Gardener, Garden Linux, and Baremetal
18+
- [Observability](./docs/best-practices/observability/index.md) - explanation of different observability signals
19+
520
## v2.1.0 (2025-08-25)
621

722
- Blog post: Garden Linux: Enabling AI on Kubernetes with NVIDIA GPUs

docs/apeiro-terms.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -282,5 +282,9 @@
282282
},
283283
"Unified Metadata Service": {
284284
"alias": "ums"
285+
},
286+
"audit relevant logs": {
287+
"description": "Audit Logging and Audit Relevant Logs are usually system-generated logs of security-related events or user actions. These often contains data that can be crucial for maintaining system integrity, compliance or investigating malicious activity. For example, logs emitted on write-operations to sensitive files, login attempts or delete-operations made on a system.",
288+
"url": "/:version/best-practices/observability"
285289
}
286290
}

docs/architecture/index.md

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,28 +25,29 @@ Apeiro conceptually pursues a _declarative approach_ across its components, just
2525

2626
- **[Data Fabric](./../best-practices/data-fabric/index.md)** provides standards and tooling for decentralized self-describing of application resources leading to a mesh architecture.
2727

28-
- **Konfidence** is the software development and release framework of Apeiro for microservice-based SaaS applications. It comes with support for ring deployments, feature toggle management and a delivery process, all based on best practices from the CNCF landscape[^cncf-landscape].
28+
- **[Konfidence](./../best-practices/lcm/konfidence/index.md)** is the software delivery framework of Apeiro for microservice-based SaaS applications. It comes with support for ring deployments, feature toggle management and a delivery process, all based on best practices from the CNCF landscape[^cncf-landscape].
2929

3030
_Note that additional information will be added in the future._
3131

32-
- **Kubernetes** is the layer in Apeiro for hosting your cloud native workloads. Note that this is vanilla Kubernetes.
32+
- **Kubernetes** is the layer in Apeiro for hosting your cloud-native workloads. Note that this is vanilla Kubernetes.
3333

34-
- **Gardener** provides managed Kubernetes-as-a-Service in Apeiro across infrastructure providers. It will come with support for IronCore and CobaltCore out of the box and be extended for additional IaaS stacks.
34+
- **[Gardener](./../best-practices//multi-cluster-federation/managed-kubernetes-as-a-service.md)** provides managed Kubernetes-as-a-Service in Apeiro across infrastructure providers. It will come with support for IronCore and CobaltCore out of the box and be extended for additional IaaS stacks.
35+
36+
Gardener-managed Kubernetes nodes use **[Garden Linux](./../best-practices/operating-system/index.md)** - a small, reproducible and auditable Linux image based on Debian GNU/Linux with a focus on Linux containers and virtual machines.
3537

3638
_Note that additional information will be added in the future._
3739

3840
- **IronCore and CobaltCore** are two infrastructure flavors of Apeiro that provide compute, network, and storage. While CobaltCore exposes an OpenStack-compatible API, IronCore comes with a declarative Kubernetes-style interface.
3941

4042
_Note that additional information will be added in the future._
4143

42-
- **Bare Metal Automation** provides functionality to manage bare metal infrastructure in Apeiro through Kubernetes principles. By leveraging Baseboard Management Controllers (BMCs) and the [Redfish API](https://www.dmtf.org/standards/redfish), it enables streamlined and automated server discovery, provisioning, and lifecycle management.
44+
- **[Bare Metal Automation](./../best-practices/baremetal/index.md)** provides functionality to manage bare metal infrastructure in Apeiro through Kubernetes principles. By leveraging Baseboard Management Controllers (BMCs) and the [Redfish API](https://www.dmtf.org/standards/redfish), it enables streamlined and automated server discovery, provisioning, and lifecycle management.
4345

4446
_Note that additional information will be added in the future._
4547

46-
4748
## Cross Cutting Concerns
4849

49-
- **[Lifecycle Tooling](./../best-practices/lcm/index.md)** based on cloud native principles is considered essential by Apeiro in order to managing software lifecycle at scale.
50+
- **[Lifecycle Tooling](./../best-practices/lcm/index.md)** based on cloud-native principles is considered essential by Apeiro in order to managing software lifecycle at scale.
5051

5152
- **[Security & Compliance](./../best-practices/security/index.md)** are built into Apeiro across the different layers.
5253

0 commit comments

Comments
 (0)