Skip to content
This repository has been archived by the owner on Sep 27, 2022. It is now read-only.

Commit

Permalink
Kernel documentation has changed to support 4.3.0
Browse files Browse the repository at this point in the history
  • Loading branch information
gmkurtzer committed May 4, 2022
1 parent 4b64932 commit 45ddba8
Showing 1 changed file with 24 additions and 3 deletions.
27 changes: 24 additions & 3 deletions docs/enchiridion/kernel.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,33 @@ id: kernel
title: Kernel Management
---

## Importing a Kernel
Warewulf nodes require a Linux kernel to boot. There are a number of ways to import a kernel into Warewulf, but this document is going to focus on the easiest and most widely used manner, which is to import it from the host.
# Node Kernels
Warewulf nodes require a Linux kernel to boot. There are multiple ways to do this, but the default, and easiest way is to install the kernel you wish to use for a particular container, into the container.

If your compute nodes have any special hardware configurations or need any customizations, make and test those customizations on the control node, and when your control node kernel is built and working as you like, you can import it into Warewulf with the following command:
Warewulf will locate the kernel automatically within the container and by default use that kernel for any node configured to use that container image.

You can see what kernel is included in a container by using the `wwctl container list` command:

```bash
# wwctl container list
CONTAINER NAME NODES KERNEL VERSION
alpine 0
rocky 0 4.18.0-348.12.2.el8_5.x86_64
rocky_updated 1 4.18.0-348.23.1.el8_5.x86_64
```

Here you will notice the alpine contianer that was imported has no kernel within it, and each of the rocky containers include a kernel.

This model was introduced in Warewulf 4.3.0. Previously, Warewulf managed the kernel and the container separately, which made it hard to build and distribute containers that have custom drivers and/or configurations included (e.g. OFED, GPUs, etc.).

# Kernel Overrides
It is still possible to specify a kernel to a container if it doesn't include it's own kernel, or if you wish to override the default kernel by using the `kernel override` capability.

You can specify this option either within the `nodes.conf` directly or via the command line with the `--kerneloverride` option to `wwctl node set` or `wwctl profile set` commands.

In this case you will also need to import a kernel specifically into Warewulf for this purpose using the `wwctl kernel import` command as follows:

```bash
$ sudo wwctl kernel import $(uname -r)
4.18.0-305.3.1.el8_4.x86_64: Done
```
Expand Down

0 comments on commit 45ddba8

Please sign in to comment.